@tripwire-sh/cli 0.1.5 → 0.1.7
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 +230 -213
- package/package.json +1 -1
package/dist/tripwire.js
CHANGED
|
@@ -1,179 +1,179 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as
|
|
3
|
-
`)}displayWidth(e){return
|
|
2
|
+
import{createRequire as Kz}from"node:module";var jz=Object.create;var{getPrototypeOf:Dz,defineProperty:Oa,getOwnPropertyNames:Mz}=Object;var fw=Object.prototype.hasOwnProperty;function qz(e){return this[e]}var Fz,Uz,In=(e,t,r)=>{var n=e!=null&&typeof e==="object";if(n){var o=t?Fz??=new WeakMap:Uz??=new WeakMap,s=o.get(e);if(s)return s}r=e!=null?jz(Dz(e)):{};let i=t||!e||!e.__esModule||!fw.call(e,"default")?Oa(r,"default",{value:e,enumerable:!0}):r;if(e&&typeof e==="object"||typeof e==="function"){for(let a of Mz(e))if(!fw.call(i,a))Oa(i,a,{get:qz.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 Wz=(e)=>e;function Vz(e,t){this[e]=Wz.bind(null,t)}var Zz=(e,t)=>{for(var r in t)Oa(e,r,{get:t[r],enumerable:!0,configurable:!0,set:Vz.bind(t,r)})};var Bz=(e,t,r)=>{for(var n in t)Oa(e,n,{get:t[n],set:r[n],enumerable:!0,configurable:!0})},kr=Kz(import.meta.url);var ks=E(function(Hz){class qd 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 mw extends qd{constructor(e){super(1,"commander.invalidArgument",e);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}Hz.CommanderError=qd;Hz.InvalidArgumentError=mw});var Ia=E(function(Qz){var{InvalidArgumentError:Yz}=ks();class hw{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 Yz(`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 Xz(e){let t=e.name()+(e.variadic===!0?"...":"");return e.required?"<"+t+">":"["+t+"]"}Qz.Argument=hw;Qz.humanReadableArgName=Xz});var Fd=E(function(nN){var{humanReadableArgName:rN}=Ia();class gw{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)=>rN(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 yw(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map((t)=>{if(t==="[options]")return this.styleOptionText(t);if(t==="[command]")return this.styleSubcommandText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleCommandText(t)}).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map((t)=>{if(t==="[options]")return this.styleOptionText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleSubcommandText(t)}).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,t){return Math.max(t.longestOptionTermLength(e,t),t.longestGlobalOptionTermLength(e,t),t.longestSubcommandTermLength(e,t),t.longestArgumentTermLength(e,t))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,t,r,n){let s=" ".repeat(2);if(!r)return s+e;let i=e.padEnd(t+e.length-n.displayWidth(e)),a=2,u=(this.helpWidth??80)-t-a-2,l;if(u<this.minWidthToWrap||n.preformatted(r))l=r;else l=n.boxWrap(r,u).replace(/\n/g,`
|
|
4
4
|
`+" ".repeat(t+a));return s+i+" ".repeat(a)+l.replace(/\n/g,`
|
|
5
5
|
${s}`)}boxWrap(e,t){if(t<this.minWidthToWrap)return e;let r=e.split(/\r\n|\n/),n=/[\s]*[^\s]+/g,o=[];return r.forEach((s)=>{let i=s.match(n);if(i===null){o.push("");return}let a=[i.shift()],c=this.displayWidth(a[0]);i.forEach((u)=>{let l=this.displayWidth(u);if(c+l<=t){a.push(u),c+=l;return}o.push(a.join(""));let d=u.trimStart();a=[d],c=this.displayWidth(d)}),o.push(a.join(""))}),o.join(`
|
|
6
|
-
`)}}function
|
|
6
|
+
`)}}function yw(e){let t=/\x1b\[\d*(;\d*)*m/g;return e.replace(t,"")}nN.Help=gw;nN.stripColor=yw});var Ud=E(function(cN){var{InvalidArgumentError:iN}=ks();class bw{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=aN(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 iN(`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 ww(this.name().replace(/^no-/,""));return ww(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 _w{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 ww(e){return e.split("-").reduce((t,r)=>t+r[0].toUpperCase()+r.slice(1))}function aN(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}}cN.Option=bw;cN.DualOptions=_w});var vw=E(function(fN){function dN(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 pN(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=dN(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""}fN.suggestSimilar=pN});var $w=E(function(vN){var hN=kr("node:events").EventEmitter,ao=kr("node:child_process"),We=kr("node:path"),Mr=kr("node:fs"),V=kr("node:process"),{Argument:gN,humanReadableArgName:yN}=Ia(),{CommanderError:Wd}=ks(),{Help:wN,stripColor:bN}=Fd(),{Option:Sw,DualOptions:_N}=Ud(),{suggestSimilar:kw}=vw();class Zd extends hN{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:()=>Vd()??(V.stdout.isTTY&&V.stdout.hasColors?.()),getErrHasColors:()=>Vd()??(V.stderr.isTTY&&V.stderr.hasColors?.()),stripColor:(t)=>bN(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 Zd(e)}createHelp(){return Object.assign(new wN,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 gN(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 Wd(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 Sw(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 Sw)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(Mr.existsSync(e))return;let n=t?`searched for local subcommand relative to directory '${t}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",o=`'${e}' does not exist
|
|
19
19
|
- if '${r}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
|
|
20
20
|
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
|
|
21
|
-
- ${n}`;throw Error(o)}_executeSubCommand(e,t){t=t.slice();let r=!1,n=[".js",".ts",".tsx",".mjs",".cjs"];function o(u,l){let d=
|
|
21
|
+
- ${n}`;throw Error(o)}_executeSubCommand(e,t){t=t.slice();let r=!1,n=[".js",".ts",".tsx",".mjs",".cjs"];function o(u,l){let d=We.resolve(u,l);if(Mr.existsSync(d))return d;if(n.includes(We.extname(l)))return;let f=n.find((m)=>Mr.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=Mr.realpathSync(this._scriptPath)}catch{u=this._scriptPath}i=We.resolve(We.dirname(u),i)}if(i){let u=o(i,s);if(!u&&!e._executableFile&&this._scriptPath){let l=We.basename(this._scriptPath,We.extname(this._scriptPath));if(l!==this._name)u=o(i,`${l}-${e._name}`)}s=u||s}r=n.includes(We.extname(s));let a;if(V.platform!=="win32")if(r)t.unshift(s),t=xw(V.execArgv).concat(t),a=ao.spawn(V.argv[0],t,{stdio:"inherit"});else a=ao.spawn(s,t,{stdio:"inherit"});else this._checkForMissingExecutable(s,i,e._name),t.unshift(s),t=xw(V.execArgv).concat(t),a=ao.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 Wd(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 Wd(1,"commander.executeSubCommandAsync","(error)");l.nestedError=u,c(l)}}),this.runningCommand=a}_dispatchSubcommand(e,t,r){let n=this._findCommand(e);if(!n)this.help({error:!0});n._prepareForParse();let o;return o=this._chainOrCallSubCommandHook(o,n,"preSubcommand"),o=this._chainOrCall(o,()=>{if(n._executableHandler)this._executeSubCommand(n,t.concat(r));else return n._parseCommand(t,r)}),o}_dispatchHelpCommand(e){if(!e)this.help();let t=this._findCommand(e);if(t&&!t._executableHandler)t.help();return this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach((e,t)=>{if(e.required&&this.args[t]==null)this.missingArgument(e.name())}),this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)return;if(this.args.length>this.registeredArguments.length)this._excessArguments(this.args)}_processArguments(){let e=(r,n,o)=>{let s=n;if(n!==null&&r.parseArg){let i=`error: command-argument value '${n}' is invalid for argument '${r.name()}'.`;s=this._callParseArg(r,n,o,i)}return s};this._checkNumberOfArguments();let t=[];this.registeredArguments.forEach((r,n)=>{let o=r.defaultValue;if(r.variadic){if(n<this.args.length){if(o=this.args.slice(n),r.parseArg)o=o.reduce((s,i)=>e(r,i,s),r.defaultValue)}else if(o===void 0)o=[]}else if(n<this.args.length){if(o=this.args[n],r.parseArg)o=e(r,o,r.defaultValue)}t[n]=o}),this.processedArgs=t}_chainOrCall(e,t){if(e?.then&&typeof e.then==="function")return e.then(()=>t());return t()}_chainOrCallHooks(e,t){let r=e,n=[];if(this._getCommandAndAncestors().reverse().filter((o)=>o._lifeCycleHooks[t]!==void 0).forEach((o)=>{o._lifeCycleHooks[t].forEach((s)=>{n.push({hookedCommand:o,callback:s})})}),t==="postAction")n.reverse();return n.forEach((o)=>{r=this._chainOrCall(r,()=>o.callback(o.hookedCommand,this))}),r}_chainOrCallSubCommandHook(e,t,r){let n=e;if(this._lifeCycleHooks[r]!==void 0)this._lifeCycleHooks[r].forEach((o)=>{n=this._chainOrCall(n,()=>o(this,t))});return n}_parseCommand(e,t){let r=this.parseOptions(t);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(r.operands),t=r.unknown,this.args=e.concat(t),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),t);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(t),this._dispatchSubcommand(this._defaultCommandName,e,t);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(r.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let n=()=>{if(r.unknown.length>0)this.unknownOption(r.unknown[0])},o=`command:${this.name()}`;if(this._actionHandler){n(),this._processArguments();let s;if(s=this._chainOrCallHooks(s,"preAction"),s=this._chainOrCall(s,()=>this._actionHandler(this.processedArgs)),this.parent)s=this._chainOrCall(s,()=>{this.parent.emit(o,e,t)});return s=this._chainOrCallHooks(s,"postAction"),s}if(this.parent?.listenerCount(o))n(),this._processArguments(),this.parent.emit(o,e,t);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,t);if(this.listenerCount("command:*"))this.emit("command:*",e,t);else if(this.commands.length)this.unknownCommand();else n(),this._processArguments()}else if(this.commands.length)n(),this.help({error:!0});else n(),this._processArguments()}_findCommand(e){if(!e)return;return this.commands.find((t)=>t._name===e||t._aliases.includes(e))}_findOption(e){return this.options.find((t)=>t.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach((e)=>{e.options.forEach((t)=>{if(t.mandatory&&e.getOptionValue(t.attributeName())===void 0)e.missingMandatoryOptionValue(t)})})}_checkForConflictingLocalOptions(){let e=this.options.filter((r)=>{let n=r.attributeName();if(this.getOptionValue(n)===void 0)return!1;return this.getOptionValueSource(n)!=="default"});e.filter((r)=>r.conflictsWith.length>0).forEach((r)=>{let n=e.find((o)=>r.conflictsWith.includes(o.attributeName()));if(n)this._conflictingOption(r,n)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach((e)=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let t=[],r=[],n=t;function o(u){return u.length>1&&u[0]==="-"}let s=(u)=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(u))return!1;return!this._getCommandAndAncestors().some((l)=>l.options.map((d)=>d.short).some((d)=>/^-\d$/.test(d)))},i=null,a=null,c=0;while(c<e.length||a){let u=a??e[c++];if(a=null,u==="--"){if(n===r)n.push(u);n.push(...e.slice(c));break}if(i&&(!o(u)||s(u))){this.emit(`option:${i.name()}`,u);continue}if(i=null,o(u)){let l=this._findOption(u);if(l){if(l.required){let d=e[c++];if(d===void 0)this.optionMissingArgument(l);this.emit(`option:${l.name()}`,d)}else if(l.optional){let d=null;if(c<e.length&&(!o(e[c])||s(e[c])))d=e[c++];this.emit(`option:${l.name()}`,d)}else this.emit(`option:${l.name()}`);i=l.variadic?l:null;continue}}if(u.length>2&&u[0]==="-"&&u[1]!=="-"){let l=this._findOption(`-${u[1]}`);if(l){if(l.required||l.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${l.name()}`,u.slice(2));else this.emit(`option:${l.name()}`),a=`-${u.slice(2)}`;continue}}if(/^--[^=]+=/.test(u)){let l=u.indexOf("="),d=this._findOption(u.slice(0,l));if(d&&(d.required||d.optional)){this.emit(`option:${d.name()}`,u.slice(l+1));continue}}if(n===t&&o(u)&&!(this.commands.length===0&&s(u)))n=r;if((this._enablePositionalOptions||this._passThroughOptions)&&t.length===0&&r.length===0){if(this._findCommand(u)){t.push(u),r.push(...e.slice(c));break}else if(this._getHelpCommand()&&u===this._getHelpCommand().name()){t.push(u,...e.slice(c));break}else if(this._defaultCommandName){r.push(u,...e.slice(c));break}}if(this._passThroughOptions){n.push(u,...e.slice(c));break}n.push(u)}return{operands:t,unknown:r}}opts(){if(this._storeOptionsAsProperties){let e={},t=this.options.length;for(let r=0;r<t;r++){let n=this.options[r].attributeName();e[n]=n===this._versionOptionName?this._version:this[n]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,t)=>Object.assign(e,t.opts()),{})}error(e,t){if(this._outputConfiguration.outputError(`${e}
|
|
22
22
|
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
|
|
23
23
|
`);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
|
|
24
|
-
`),this.outputHelp({error:!0});let r=t||{},n=r.exitCode||1,o=r.code||"commander.error";this._exit(n,o,e)}_parseOptionsEnv(){this.options.forEach((e)=>{if(e.envVar&&e.envVar in V.env){let t=e.attributeName();if(this.getOptionValue(t)===void 0||["default","config","env"].includes(this.getOptionValueSource(t)))if(e.required||e.optional)this.emit(`optionEnv:${e.name()}`,V.env[e.envVar]);else this.emit(`optionEnv:${e.name()}`)}})}_parseOptionsImplied(){let e=new
|
|
25
|
-
`),this._exit(0,"commander.version",e)}),this}description(e,t){if(e===void 0&&t===void 0)return this._description;if(this._description=e,t)this._argsDescription=t;return this}summary(e){if(e===void 0)return this._summary;return this._summary=e,this}alias(e){if(e===void 0)return this._aliases[0];let t=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)t=this.commands[this.commands.length-1];if(e===t._name)throw Error("Command alias can't be the same as its name");let r=this.parent?._findCommand(e);if(r){let n=[r.name()].concat(r.aliases()).join("|");throw Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${n}'`)}return t._aliases.push(e),this}aliases(e){if(e===void 0)return this._aliases;return e.forEach((t)=>this.alias(t)),this}usage(e){if(e===void 0){if(this._usage)return this._usage;let t=this.registeredArguments.map((r)=>
|
|
24
|
+
`),this.outputHelp({error:!0});let r=t||{},n=r.exitCode||1,o=r.code||"commander.error";this._exit(n,o,e)}_parseOptionsEnv(){this.options.forEach((e)=>{if(e.envVar&&e.envVar in V.env){let t=e.attributeName();if(this.getOptionValue(t)===void 0||["default","config","env"].includes(this.getOptionValueSource(t)))if(e.required||e.optional)this.emit(`optionEnv:${e.name()}`,V.env[e.envVar]);else this.emit(`optionEnv:${e.name()}`)}})}_parseOptionsImplied(){let e=new _N(this.options),t=(r)=>this.getOptionValue(r)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(r));this.options.filter((r)=>r.implied!==void 0&&t(r.attributeName())&&e.valueFromOption(this.getOptionValue(r.attributeName()),r)).forEach((r)=>{Object.keys(r.implied).filter((n)=>!t(n)).forEach((n)=>{this.setOptionValueWithSource(n,r.implied[n],"implied")})})}missingArgument(e){let t=`error: missing required argument '${e}'`;this.error(t,{code:"commander.missingArgument"})}optionMissingArgument(e){let t=`error: option '${e.flags}' argument missing`;this.error(t,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let t=`error: required option '${e.flags}' not specified`;this.error(t,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,t){let r=(s)=>{let i=s.attributeName(),a=this.getOptionValue(i),c=this.options.find((l)=>l.negate&&i===l.attributeName()),u=this.options.find((l)=>!l.negate&&i===l.attributeName());if(c&&(c.presetArg===void 0&&a===!1||c.presetArg!==void 0&&a===c.presetArg))return c;return u||s},n=(s)=>{let i=r(s),a=i.attributeName();if(this.getOptionValueSource(a)==="env")return`environment variable '${i.envVar}'`;return`option '${i.flags}'`},o=`error: ${n(e)} cannot be used with ${n(t)}`;this.error(o,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let t="";if(e.startsWith("--")&&this._showSuggestionAfterError){let n=[],o=this;do{let s=o.createHelp().visibleOptions(o).filter((i)=>i.long).map((i)=>i.long);n=n.concat(s),o=o.parent}while(o&&!o._enablePositionalOptions);t=kw(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=kw(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)=>yN(r));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?t:[]).join(" ")}return this._usage=e,this}name(e){if(e===void 0)return this._name;return this._name=e,this}helpGroup(e){if(e===void 0)return this._helpGroupHeading??"";return this._helpGroupHeading=e,this}commandsGroup(e){if(e===void 0)return this._defaultCommandGroup??"";return this._defaultCommandGroup=e,this}optionsGroup(e){if(e===void 0)return this._defaultOptionGroup??"";return this._defaultOptionGroup=e,this}_initOptionGroup(e){if(this._defaultOptionGroup&&!e.helpGroupHeading)e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){if(this._defaultCommandGroup&&!e.helpGroup())e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=We.basename(e,We.extname(e)),this}executableDir(e){if(e===void 0)return this._executableDir;return this._executableDir=e,this}helpInformation(e){let t=this.createHelp(),r=this._getOutputContext(e);t.prepareContext({error:r.error,helpWidth:r.helpWidth,outputHasColors:r.hasColors});let n=t.formatHelp(this,t);if(r.hasColors)return n;return this._outputConfiguration.stripColor(n)}_getOutputContext(e){e=e||{};let t=!!e.error,r,n,o;if(t)r=(i)=>this._outputConfiguration.writeErr(i),n=this._outputConfiguration.getErrHasColors(),o=this._outputConfiguration.getErrHelpWidth();else r=(i)=>this._outputConfiguration.writeOut(i),n=this._outputConfiguration.getOutHasColors(),o=this._outputConfiguration.getOutHelpWidth();return{error:t,write:(i)=>{if(!n)i=this._outputConfiguration.stripColor(i);return r(i)},hasColors:n,helpWidth:o}}outputHelp(e){let t;if(typeof e==="function")t=e,e=void 0;let r=this._getOutputContext(e),n={error:r.error,write:r.write,command:this};this._getCommandAndAncestors().reverse().forEach((s)=>s.emit("beforeAllHelp",n)),this.emit("beforeHelp",n);let o=this.helpInformation({error:r.error});if(t){if(o=t(o),typeof o!=="string"&&!Buffer.isBuffer(o))throw Error("outputHelp callback must return a string or a Buffer")}if(r.write(o),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",n),this._getCommandAndAncestors().forEach((s)=>s.emit("afterAllHelp",n))}helpOption(e,t){if(typeof e==="boolean"){if(e){if(this._helpOption===null)this._helpOption=void 0;if(this._defaultOptionGroup)this._initOptionGroup(this._getHelpOption())}else this._helpOption=null;return this}if(this._helpOption=this.createOption(e??"-h, --help",t??"display help for command"),e||t)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let t=Number(V.exitCode??0);if(t===0&&e&&typeof e!=="function"&&e.error)t=1;this._exit(t,"commander.help","(outputHelp)")}addHelpText(e,t){let r=["beforeAll","before","after","afterAll"];if(!r.includes(e))throw Error(`Unexpected value for position to addHelpText.
|
|
26
26
|
Expecting one of '${r.join("', '")}'`);let n=`${e}Help`;return this.on(n,(o)=>{let s;if(typeof t==="function")s=t({error:o.error,command:o.command});else s=t;if(s)o.write(`${s}
|
|
27
|
-
`)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();if(t&&e.find((n)=>t.is(n)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function
|
|
28
|
-
`)}}
|
|
29
|
-
`)?
|
|
27
|
+
`)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();if(t&&e.find((n)=>t.is(n)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function xw(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 Vd(){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}vN.Command=Zd;vN.useColor=Vd});var Qc=E(function(Ppe,hm){var Xc=process||{},N0=Xc.argv||[],Yc=Xc.env||{},LF=!(!!Yc.NO_COLOR||N0.includes("--no-color"))&&(!!Yc.FORCE_COLOR||N0.includes("--color")||Xc.platform==="win32"||(Xc.stdout||{}).isTTY&&Yc.TERM!=="dumb"||!!Yc.CI),jF=(e,t,r=e)=>(n)=>{let o=""+n,s=o.indexOf(t,e.length);return~s?e+DF(o,t,r,s)+t:e+o+t},DF=(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)},L0=(e=LF)=>{let t=e?jF:()=>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")}};hm.exports=L0();hm.exports.createColors=L0});var vm=E(function(qpe,a$){var _m={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"},TU={up:(e=1)=>"\x1B[S".repeat(e),down:(e=1)=>"\x1B[T".repeat(e)},EU={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?_m.up():"");if(e)t+=_m.left;return t}};a$.exports={cursor:_m,scroll:TU,erase:EU,beep:"\x07"}});var ce=E(function(RW){var Km=Symbol.for("yaml.alias"),oT=Symbol.for("yaml.document"),mu=Symbol.for("yaml.map"),sT=Symbol.for("yaml.pair"),Hm=Symbol.for("yaml.scalar"),hu=Symbol.for("yaml.seq"),Or=Symbol.for("yaml.node.type"),$W=(e)=>!!e&&typeof e==="object"&&e[Or]===Km,TW=(e)=>!!e&&typeof e==="object"&&e[Or]===oT,EW=(e)=>!!e&&typeof e==="object"&&e[Or]===mu,PW=(e)=>!!e&&typeof e==="object"&&e[Or]===sT,iT=(e)=>!!e&&typeof e==="object"&&e[Or]===Hm,OW=(e)=>!!e&&typeof e==="object"&&e[Or]===hu;function aT(e){if(e&&typeof e==="object")switch(e[Or]){case mu:case hu:return!0}return!1}function IW(e){if(e&&typeof e==="object")switch(e[Or]){case Km:case mu:case Hm:case hu:return!0}return!1}var AW=(e)=>(iT(e)||aT(e))&&!!e.anchor;RW.ALIAS=Km;RW.DOC=oT;RW.MAP=mu;RW.NODE_TYPE=Or;RW.PAIR=sT;RW.SCALAR=Hm;RW.SEQ=hu;RW.hasAnchor=AW;RW.isAlias=$W;RW.isCollection=aT;RW.isDocument=TW;RW.isMap=EW;RW.isNode=IW;RW.isPair=PW;RW.isScalar=iT;RW.isSeq=OW});var Ri=E(function(GW){var Fe=ce(),pt=Symbol("break visit"),cT=Symbol("skip children"),ur=Symbol("remove node");function gu(e,t){let r=uT(t);if(Fe.isDocument(e)){if(jo(null,e.contents,r,Object.freeze([e]))===ur)e.contents=null}else jo(null,e,r,Object.freeze([]))}gu.BREAK=pt;gu.SKIP=cT;gu.REMOVE=ur;function jo(e,t,r,n){let o=lT(e,t,r,n);if(Fe.isNode(o)||Fe.isPair(o))return dT(e,n,o),jo(e,o,r,n);if(typeof o!=="symbol"){if(Fe.isCollection(t)){n=Object.freeze(n.concat(t));for(let s=0;s<t.items.length;++s){let i=jo(s,t.items[s],r,n);if(typeof i==="number")s=i-1;else if(i===pt)return pt;else if(i===ur)t.items.splice(s,1),s-=1}}else if(Fe.isPair(t)){n=Object.freeze(n.concat(t));let s=jo("key",t.key,r,n);if(s===pt)return pt;else if(s===ur)t.key=null;let i=jo("value",t.value,r,n);if(i===pt)return pt;else if(i===ur)t.value=null}}return o}async function yu(e,t){let r=uT(t);if(Fe.isDocument(e)){if(await Do(null,e.contents,r,Object.freeze([e]))===ur)e.contents=null}else await Do(null,e,r,Object.freeze([]))}yu.BREAK=pt;yu.SKIP=cT;yu.REMOVE=ur;async function Do(e,t,r,n){let o=await lT(e,t,r,n);if(Fe.isNode(o)||Fe.isPair(o))return dT(e,n,o),Do(e,o,r,n);if(typeof o!=="symbol"){if(Fe.isCollection(t)){n=Object.freeze(n.concat(t));for(let s=0;s<t.items.length;++s){let i=await Do(s,t.items[s],r,n);if(typeof i==="number")s=i-1;else if(i===pt)return pt;else if(i===ur)t.items.splice(s,1),s-=1}}else if(Fe.isPair(t)){n=Object.freeze(n.concat(t));let s=await Do("key",t.key,r,n);if(s===pt)return pt;else if(s===ur)t.key=null;let i=await Do("value",t.value,r,n);if(i===pt)return pt;else if(i===ur)t.value=null}}return o}function uT(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 lT(e,t,r,n){if(typeof r==="function")return r(e,t,n);if(Fe.isMap(t))return r.Map?.(e,t,n);if(Fe.isSeq(t))return r.Seq?.(e,t,n);if(Fe.isPair(t))return r.Pair?.(e,t,n);if(Fe.isScalar(t))return r.Scalar?.(e,t,n);if(Fe.isAlias(t))return r.Alias?.(e,t,n);return}function dT(e,t,r){let n=t[t.length-1];if(Fe.isCollection(n))n.items[e]=r;else if(Fe.isPair(n))if(e==="key")n.key=r;else n.value=r;else if(Fe.isDocument(n))n.contents=r;else{let o=Fe.isAlias(n)?"alias":"scalar";throw Error(`Cannot replace node with ${o} parent`)}}GW.visit=gu;GW.visitAsync=yu});var Gm=E(function(tV){var pT=ce(),XW=Ri(),QW={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},eV=(e)=>e.replace(/[!,[\]{}]/g,(t)=>QW[t]);class Nt{constructor(e,t){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Nt.defaultYaml,e),this.tags=Object.assign({},Nt.defaultTags,t)}clone(){let e=new Nt(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new Nt(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Nt.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Nt.defaultTags);break}return e}add(e,t){if(this.atNextDocument)this.yaml={explicit:Nt.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Nt.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+eV(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&&pT.isNode(e.contents)){let o={};XW.visit(e.contents,(s,i)=>{if(pT.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
|
+
`)}}Nt.defaultYaml={explicit:!1,version:"1.2"};Nt.defaultTags={"!!":"tag:yaml.org,2002:"};tV.Directives=Nt});var wu=E(function(iV){var fT=ce(),nV=Ri();function oV(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 mT(e){let t=new Set;return nV.visit(e,{Value(r,n){if(n.anchor)t.add(n.anchor)}}),t}function hT(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function sV(e,t){let r=[],n=new Map,o=null;return{onAnchor:(s)=>{r.push(s),o??(o=mT(e));let i=hT(t,o);return o.add(i),i},setAnchors:()=>{for(let s of r){let i=n.get(s);if(typeof i==="object"&&i.anchor&&(fT.isScalar(i.node)||fT.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}}iV.anchorIsValid=oV;iV.anchorNames=mT;iV.createNodeAnchors=sV;iV.findNewAnchor=hT});var Jm=E(function(dV){function Ci(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=Ci(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=Ci(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=Ci(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=Ci(e,n,o,s);if(i===void 0)delete n[o];else if(i!==s)n[o]=i}return e.call(t,r,n)}dV.applyReviver=Ci});var Yr=E(function(mV){var fV=ce();function gT(e,t,r){if(Array.isArray(e))return e.map((n,o)=>gT(n,String(o),r));if(e&&typeof e.toJSON==="function"){if(!r||!fV.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}mV.toJS=gT});var bu=E(function(wV){var gV=Jm(),yT=ce(),yV=Yr();class wT{constructor(e){Object.defineProperty(this,yT.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(!yT.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=yV.toJS(this,"",s);if(typeof n==="function")for(let{count:a,res:c}of s.anchors.values())n(c,a);return typeof o==="function"?gV.applyReviver(o,{"":i},"",i):i}}wV.NodeBase=wT});var zi=E(function(xV){var _V=wu(),vV=Ri(),Mo=ce(),SV=bu(),kV=Yr();class bT extends SV.NodeBase{constructor(e){super(Mo.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=[],vV.visit(e,{Node:(o,s)=>{if(Mo.isAlias(s)||Mo.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)kV.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=_u(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(_V.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 _u(e,t,r){if(Mo.isAlias(t)){let n=t.resolve(e),o=r&&n&&r.get(n);return o?o.count*o.aliasCount:0}else if(Mo.isCollection(t)){let n=0;for(let o of t.items){let s=_u(e,o,r);if(s>n)n=s}return n}else if(Mo.isPair(t)){let n=_u(e,t.key,r),o=_u(e,t.value,r);return Math.max(n,o)}return 1}xV.Alias=bT});var Le=E(function(IV){var TV=ce(),EV=bu(),PV=Yr(),OV=(e)=>!e||typeof e!=="function"&&typeof e!=="object";class Un extends EV.NodeBase{constructor(e){super(TV.SCALAR);this.value=e}toJSON(e,t){return t?.keep?this.value:PV.toJS(this.value,e,t)}toString(){return String(this.value)}}Un.BLOCK_FOLDED="BLOCK_FOLDED";Un.BLOCK_LITERAL="BLOCK_LITERAL";Un.PLAIN="PLAIN";Un.QUOTE_DOUBLE="QUOTE_DOUBLE";Un.QUOTE_SINGLE="QUOTE_SINGLE";IV.Scalar=Un;IV.isScalarValue=OV});var Ni=E(function(jV){var CV=zi(),Wn=ce(),_T=Le(),zV="tag:yaml.org,2002:";function NV(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 LV(e,t,r){if(Wn.isDocument(e))e=e.contents;if(Wn.isNode(e))return e;if(Wn.isPair(e)){let d=r.schema[Wn.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 CV.Alias(c.anchor);else c={anchor:null,node:null},a.set(e,c);if(t?.startsWith("!!"))t=zV+t.slice(2);let u=NV(e,t,i.tags);if(!u){if(e&&typeof e.toJSON==="function")e=e.toJSON();if(!e||typeof e!=="object"){let d=new _T.Scalar(e);if(c)c.node=d;return d}u=e instanceof Map?i[Wn.MAP]:(Symbol.iterator in Object(e))?i[Wn.SEQ]:i[Wn.MAP]}if(s)s(u),delete r.onTagObj;let l=u?.createNode?u.createNode(r.schema,e,r):typeof u?.nodeClass?.from==="function"?u.nodeClass.from(r.schema,e,r):new _T.Scalar(e);if(t)l.tag=t;else if(!u.default)l.tag=u.tag;if(c)c.node=l;return l}jV.createNode=LV});var vu=E(function(FV){var MV=Ni(),lr=ce(),qV=bu();function Ym(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 MV.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 vT=(e)=>e==null||typeof e==="object"&&!!e[Symbol.iterator]().next().done;class ST extends qV.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)=>lr.isNode(r)||lr.isPair(r)?r.clone(e):r),this.range)t.range=this.range.slice();return t}addIn(e,t){if(vT(e))this.add(t);else{let[r,...n]=e,o=this.get(r,!0);if(lr.isCollection(o))o.addIn(n,t);else if(o===void 0&&this.schema)this.set(r,Ym(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(lr.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&&lr.isScalar(o)?o.value:o;else return lr.isCollection(o)?o.getIn(n,t):void 0}hasAllNullValues(e){return this.items.every((t)=>{if(!lr.isPair(t))return!1;let r=t.value;return r==null||e&&lr.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 lr.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(lr.isCollection(o))o.setIn(n,t);else if(o===void 0&&this.schema)this.set(r,Ym(this.schema,n,t));else throw Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}}}FV.Collection=ST;FV.collectionFromPath=Ym;FV.isEmptyPath=vT});var Li=E(function(KV){var ZV=(e)=>e.replace(/^(?!$)(?: $)?/gm,"#");function Xm(e,t){if(/^\n+$/.test(e))return e.substring(1);return t?e.replace(/^(?! *$)/gm,t):e}var BV=(e,t,r)=>e.endsWith(`
|
|
29
|
+
`)?Xm(r,t):r.includes(`
|
|
30
30
|
`)?`
|
|
31
|
-
`+
|
|
32
|
-
`){if(r==="block")g=
|
|
31
|
+
`+Xm(r,t):(e.endsWith(" ")?"":" ")+r;KV.indentComment=Xm;KV.lineComment=BV;KV.stringifyComment=ZV});var xT=E(function(XV){function YV(e,t,r="flow",{indentAtStart:n,lineWidth:o=80,minContentWidth:s=20,onFold:i,onOverflow:a}={}){if(!o||o<0)return e;if(o<s)s=0;let c=Math.max(1+s,1+o-t.length);if(e.length<=c)return e;let u=[],l={},d=o-t.length;if(typeof n==="number")if(n>o-Math.max(2,s))u.push(0);else d=o-n;let f=void 0,m=void 0,h=!1,g=-1,y=-1,b=-1;if(r==="block"){if(g=kT(e,g,t.length),g!==-1)d=g+c}for(let S;S=e[g+=1];){if(r==="quoted"&&S==="\\"){switch(y=g,e[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}b=g}if(S===`
|
|
32
|
+
`){if(r==="block")g=kT(e,g,t.length);d=g+t.length+c,f=void 0}else{if(S===" "&&m&&m!==" "&&m!==`
|
|
33
33
|
`&&m!=="\t"){let I=e[g+1];if(I&&I!==" "&&I!==`
|
|
34
|
-
`&&I!=="\t")f=g}if(g>=d)if(f)u.push(f),d=f+c,f=void 0;else if(r==="quoted"){while(m===" "||m==="\t")m=S,S=e[g+=1],h=!0;let I=g>
|
|
34
|
+
`&&I!=="\t")f=g}if(g>=d)if(f)u.push(f),d=f+c,f=void 0;else if(r==="quoted"){while(m===" "||m==="\t")m=S,S=e[g+=1],h=!0;let I=g>b+1?g-2:y-1;if(l[I])return e;u.push(I),l[I]=!0,d=I+c,f=void 0}else h=!0}m=S}if(h&&a)a();if(u.length===0)return e;if(i)i();let T=e.slice(0,u[0]);for(let S=0;S<u.length;++S){let I=u[S],_=u[S+1]||e.length;if(I===0)T=`
|
|
35
35
|
${t}${e.slice(0,_)}`;else{if(r==="quoted"&&l[I])T+=`${e[I]}\\`;T+=`
|
|
36
|
-
${t}${e.slice(I+1,_)}`}}return T}function
|
|
37
|
-
`);n=t,o=t+1,s=e[o]}return n}
|
|
38
|
-
`){if(s-i>n)return!0;if(i=s+1,o-i<=n)return!1}return!0}function
|
|
36
|
+
${t}${e.slice(I+1,_)}`}}return T}function kT(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}XV.FOLD_BLOCK="block";XV.FOLD_FLOW="flow";XV.FOLD_QUOTED="quoted";XV.foldFlowLines=YV});var Di=E(function(iZ){var Ht=Le(),Xr=xT(),ku=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),xu=(e)=>/^(%|---|\.\.\.)/m.test(e);function nZ(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 ji(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:n}=t,o=t.options.doubleQuotedMinMultiLineLength,s=t.indent||(xu(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:Xr.foldFlowLines(i,s,Xr.FOLD_QUOTED,ku(t,!1))}function Qm(e,t){if(t.options.singleQuote===!1||t.implicitKey&&e.includes(`
|
|
42
|
+
`)||/[ \t]\n|\n[ \t]/.test(e))return ji(e,t);let r=t.indent||(xu(e)?" ":""),n="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
43
|
+
${r}`)+"'";return t.implicitKey?n:Xr.foldFlowLines(n,r,Xr.FOLD_FLOW,ku(t,!1))}function qo(e,t){let{singleQuote:r}=t.options,n;if(r===!1)n=ji;else{let o=e.includes('"'),s=e.includes("'");if(o&&!s)n=Qm;else if(s&&!o)n=ji;else n=r?Qm:ji}return n(e,t)}var eh;try{eh=new RegExp(`(^|(?<!
|
|
44
44
|
))
|
|
45
45
|
+(?!
|
|
46
|
-
|$)`,"g")}catch{
|
|
46
|
+
|$)`,"g")}catch{eh=/\n+(?!\n|$)/g}function Su({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 qo(r,n);let u=n.indent||(n.forceBlockIndent||xu(r)?" ":""),l=i==="literal"?!0:i==="folded"||t===Ht.Scalar.BLOCK_FOLDED?!1:t===Ht.Scalar.BLOCK_LITERAL?!0:!nZ(r,c,u.length);if(!r)return l?`|
|
|
47
47
|
`:`>
|
|
48
48
|
`;let d,f;for(f=r.length;f>0;--f){let _=r[f-1];if(_!==`
|
|
49
49
|
`&&_!=="\t"&&_!==" ")break}let m=r.substring(f),h=m.indexOf(`
|
|
50
50
|
`);if(h===-1)d="-";else if(r===m||h!==m.length-1){if(d="+",s)s()}else d="";if(m){if(r=r.slice(0,-m.length),m[m.length-1]===`
|
|
51
|
-
`)m=m.slice(0,-1);m=m.replace(
|
|
52
|
-
`)
|
|
53
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`),v=!1,
|
|
51
|
+
`)m=m.slice(0,-1);m=m.replace(eh,`$&${u}`)}let g=!1,y,b=-1;for(y=0;y<r.length;++y){let _=r[y];if(_===" ")g=!0;else if(_===`
|
|
52
|
+
`)b=y;else break}let T=r.substring(0,b<y?b+1:y);if(T)r=r.substring(T.length),T=T.replace(/\n+/g,`$&${u}`);let I=(g?u?"2":"1":"")+d;if(e){if(I+=" "+a(e.replace(/ ?[\r\n]+/g," ")),o)o()}if(!l){let _=r.replace(/\n+/g,`
|
|
53
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`),v=!1,x=ku(n,!0);if(i!=="folded"&&t!==Ht.Scalar.BLOCK_FOLDED)x.onOverflow=()=>{v=!0};let A=Xr.foldFlowLines(`${T}${_}${m}`,u,Xr.FOLD_BLOCK,x);if(!v)return`>${I}
|
|
54
54
|
${u}${A}`}return r=r.replace(/\n+/g,`$&${u}`),`|${I}
|
|
55
|
-
${u}${T}${r}${m}`}function
|
|
56
|
-
`)||l&&/[[\]{},]/.test(s))return
|
|
57
|
-
`)?
|
|
58
|
-
`))return
|
|
59
|
-
${c}`);if(i){let f=(g)=>g.default&&g.tag!=="tag:yaml.org,2002:str"&&g.test?.test(d),{compat:m,tags:h}=t.doc.schema;if(h.some(f)||m?.some(f))return
|
|
60
|
-
${t.indent}${a}`}
|
|
61
|
-
${a}:`}else if(y=`${y}:`,f)y+=
|
|
62
|
-
`:"",T){let
|
|
63
|
-
${
|
|
55
|
+
${u}${T}${r}${m}`}function oZ(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 qo(s,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(s))return a||l||!s.includes(`
|
|
57
|
+
`)?qo(s,t):Su(e,t,r,n);if(!a&&!l&&o!==Ht.Scalar.PLAIN&&s.includes(`
|
|
58
|
+
`))return Su(e,t,r,n);if(xu(s)){if(c==="")return t.forceBlockIndent=!0,Su(e,t,r,n);else if(a&&c===u)return qo(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 qo(s,t)}return a?d:Xr.foldFlowLines(d,c,Xr.FOLD_FLOW,ku(t,!1))}function sZ(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!==Ht.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value))a=Ht.Scalar.QUOTE_DOUBLE}let c=(l)=>{switch(l){case Ht.Scalar.BLOCK_FOLDED:case Ht.Scalar.BLOCK_LITERAL:return o||s?qo(i.value,t):Su(i,t,r,n);case Ht.Scalar.QUOTE_DOUBLE:return ji(i.value,t);case Ht.Scalar.QUOTE_SINGLE:return Qm(i.value,t);case Ht.Scalar.PLAIN:return oZ(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}iZ.stringifyString=sZ});var Mi=E(function(hZ){var cZ=wu(),Qr=ce(),uZ=Li(),lZ=Di();function dZ(e,t){let r=Object.assign({blockQuote:!0,commentString:uZ.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 pZ(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(Qr.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 fZ(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let o=[],s=(Qr.isScalar(e)||Qr.isCollection(e))&&e.anchor;if(s&&cZ.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 mZ(e,t,r,n){if(Qr.isPair(e))return e.toString(t,r,n);if(Qr.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=Qr.isNode(e)?e:t.doc.createNode(e,{onTagObj:(c)=>o=c});o??(o=pZ(t.doc.schema.tags,s));let i=fZ(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):Qr.isScalar(s)?lZ.stringifyString(s,t,r,n):s.toString(t,r,n);if(!i)return a;return Qr.isScalar(s)||a[0]==="{"||a[0]==="["?`${i} ${a}`:`${i}
|
|
60
|
+
${t.indent}${a}`}hZ.createStringifyContext=dZ;hZ.stringify=mZ});var ET=E(function(bZ){var Ir=ce(),$T=Le(),TT=Mi(),qi=Li();function wZ({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=Ir.isNode(e)&&e.comment||null;if(d){if(f)throw Error("With simple keys, key nodes cannot have comments");if(Ir.isCollection(e)||!Ir.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||Ir.isCollection(e)||(Ir.isScalar(e)?e.type===$T.Scalar.BLOCK_FOLDED||e.type===$T.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=TT.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+=qi.lineComment(y,r.indent,u(f));else if(g&&o)o();return y}if(h)f=null;if(m){if(f)y+=qi.lineComment(y,r.indent,u(f));y=`? ${y}
|
|
61
|
+
${a}:`}else if(y=`${y}:`,f)y+=qi.lineComment(y,r.indent,u(f));let b,T,S;if(Ir.isNode(t))b=!!t.spaceBefore,T=t.commentBefore,S=t.comment;else if(b=!1,T=null,S=null,t&&typeof t==="object")t=i.createNode(t);if(r.implicitKey=!1,!m&&!f&&Ir.isScalar(t))r.indentAtStart=y.length+1;if(g=!1,!l&&c.length>=2&&!r.inFlow&&!m&&Ir.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor)r.indent=r.indent.substring(2);let I=!1,_=TT.stringify(t,r,()=>I=!0,()=>g=!0),v=" ";if(f||b||T){if(v=b?`
|
|
62
|
+
`:"",T){let x=u(T);v+=`
|
|
63
|
+
${qi.indentComment(x,r.indent)}`}if(_===""&&!r.inFlow){if(v===`
|
|
64
64
|
`&&S)v=`
|
|
65
65
|
|
|
66
66
|
`}else v+=`
|
|
67
|
-
${r.indent}`}else if(!m&&
|
|
68
|
-
`),
|
|
67
|
+
${r.indent}`}else if(!m&&Ir.isCollection(t)){let x=_[0],A=_.indexOf(`
|
|
68
|
+
`),j=A!==-1,Y=r.inFlow??t.flow??t.items.length===0;if(j||!Y){let ie=!1;if(j&&(x==="&"||x==="!")){let ae=_.indexOf(" ");if(x==="&"&&ae!==-1&&ae<A&&_[ae+1]==="!")ae=_.indexOf(" ",ae+1);if(ae===-1||A<ae)ie=!0}if(!ie)v=`
|
|
69
69
|
${r.indent}`}}else if(_===""||_[0]===`
|
|
70
|
-
`)v="";if(y+=v+_,r.inFlow){if(I&&n)n()}else if(S&&!I)y+=
|
|
70
|
+
`)v="";if(y+=v+_,r.inFlow){if(I&&n)n()}else if(S&&!I)y+=qi.lineComment(y,r.indent,u(S));else if(g&&o)o();return y}bZ.stringifyPair=wZ});var th=E(function(kZ){var PT=kr("process");function vZ(e,...t){if(e==="debug")console.log(...t)}function SZ(e,t){if(e==="debug"||e==="warn")if(typeof PT.emitWarning==="function")PT.emitWarning(t);else console.warn(t)}kZ.debug=vZ;kZ.warn=SZ});var Pu=E(function(EZ){var Eu=ce(),OT=Le(),$u="<<",Tu={identify:(e)=>e===$u||typeof e==="symbol"&&e.description===$u,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new OT.Scalar(Symbol($u)),{addToJSMap:IT}),stringify:()=>$u},TZ=(e,t)=>(Tu.identify(t)||Eu.isScalar(t)&&(!t.type||t.type===OT.Scalar.PLAIN)&&Tu.identify(t.value))&&e?.doc.schema.tags.some((r)=>r.tag===Tu.tag&&r.default);function IT(e,t,r){let n=AT(e,r);if(Eu.isSeq(n))for(let o of n.items)rh(e,t,o);else if(Array.isArray(n))for(let o of n)rh(e,t,o);else rh(e,t,n)}function rh(e,t,r){let n=AT(e,r);if(!Eu.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 AT(e,t){return e&&Eu.isAlias(t)?t.resolve(e.doc,e):t}EZ.addMergeToJSMap=IT;EZ.isMergeKey=TZ;EZ.merge=Tu});var oh=E(function(NZ){var AZ=th(),RT=Pu(),RZ=Mi(),CT=ce(),nh=Yr();function CZ(e,t,{key:r,value:n}){if(CT.isNode(r)&&r.addToJSMap)r.addToJSMap(e,t,n);else if(RT.isMergeKey(e,r))RT.addMergeToJSMap(e,t,n);else{let o=nh.toJS(r,"",e);if(t instanceof Map)t.set(o,nh.toJS(n,o,e));else if(t instanceof Set)t.add(o);else{let s=zZ(r,o,e),i=nh.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 zZ(e,t,r){if(t===null)return"";if(typeof t!=="object")return String(t);if(CT.isNode(e)&&r?.doc){let n=RZ.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)+'..."';AZ.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)}NZ.addPairToJSMap=CZ});var en=E(function(qZ){var zT=Ni(),jZ=ET(),DZ=oh(),Ou=ce();function MZ(e,t,r){let n=zT.createNode(e,void 0,r),o=zT.createNode(t,void 0,r);return new Iu(n,o)}class Iu{constructor(e,t=null){Object.defineProperty(this,Ou.NODE_TYPE,{value:Ou.PAIR}),this.key=e,this.value=t}clone(e){let{key:t,value:r}=this;if(Ou.isNode(t))t=t.clone(e);if(Ou.isNode(r))r=r.clone(e);return new Iu(t,r)}toJSON(e,t){let r=t?.mapAsMap?new Map:{};return DZ.addPairToJSMap(t,r,this)}toString(e,t,r){return e?.doc?jZ.stringifyPair(this,e,t,r):JSON.stringify(this)}}qZ.Pair=Iu;qZ.createPair=MZ});var sh=E(function(BZ){var Vn=ce(),NT=Mi(),Au=Li();function WZ(e,t,r){return(t.inFlow??e.flow?ZZ:VZ)(e,t,r)}function VZ({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(Vn.isNode(g)){if(!d&&g.spaceBefore)f.push("");if(Ru(r,f,g.commentBefore,d),g.comment)y=g.comment}else if(Vn.isPair(g)){let T=Vn.isNode(g.key)?g.key:null;if(T){if(!d&&T.spaceBefore)f.push("");Ru(r,f,T.commentBefore,d)}}d=!1;let b=NT.stringify(g,l,()=>y=null,()=>d=!0);if(y)b+=Au.lineComment(b,s,u(y));if(d&&y)d=!1;f.push(n+b)}let m;if(f.length===0)m=o.start+o.end;else{m=f[0];for(let h=1;h<f.length;++h){let g=f[h];m+=g?`
|
|
71
71
|
${c}${g}`:`
|
|
72
72
|
`}}if(e){if(m+=`
|
|
73
|
-
`+
|
|
74
|
-
`)),h<e.length-1)
|
|
73
|
+
`+Au.indentComment(u(e),c),a)a()}else if(d&&i)i();return m}function ZZ({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(Vn.isNode(g)){if(g.spaceBefore)d.push("");if(Ru(t,d,g.commentBefore,!1),g.comment)y=g.comment}else if(Vn.isPair(g)){let T=Vn.isNode(g.key)?g.key:null;if(T){if(T.spaceBefore)d.push("");if(Ru(t,d,T.commentBefore,!1),T.comment)u=!0}let S=Vn.isNode(g.value)?g.value:null;if(S){if(S.comment)y=S.comment;if(S.commentBefore)u=!0}else if(g.value==null&&T?.comment)y=T.comment}if(y)u=!0;let b=NT.stringify(g,c,()=>y=null);if(u||(u=d.length>l||b.includes(`
|
|
74
|
+
`)),h<e.length-1)b+=",";else if(t.options.trailingComma){if(t.options.lineWidth>0)u||(u=d.reduce((T,S)=>T+S.length+2,2)+(b.length+2)>t.options.lineWidth);if(u)b+=","}if(y)b+=Au.lineComment(b,n,a(y));d.push(b),l=d.length}let{start:f,end:m}=r;if(d.length===0)return f+m;else{if(!u){let h=d.reduce((g,y)=>g+y.length+2,2);u=t.options.lineWidth>0&&h>t.options.lineWidth}if(u){let h=f;for(let g of d)h+=g?`
|
|
75
75
|
${s}${o}${g}`:`
|
|
76
76
|
`;return`${h}
|
|
77
|
-
${o}${m}`}else return`${f}${i}${d.join(" ")}${i}${m}`}}function
|
|
78
|
-
`:" ")}return
|
|
77
|
+
${o}${m}`}else return`${f}${i}${d.join(" ")}${i}${m}`}}function Ru({indent:e,options:{commentString:t}},r,n,o){if(n&&o)n=n.replace(/^\n+/,"");if(n){let s=Au.indentComment(t(n),e);r.push(s.trimStart())}}BZ.stringifyCollection=WZ});var rn=E(function(XZ){var HZ=sh(),GZ=oh(),JZ=vu(),tn=ce(),Cu=en(),YZ=Le();function Fi(e,t){let r=tn.isScalar(t)?t.value:t;for(let n of e)if(tn.isPair(n)){if(n.key===t||n.key===r)return n;if(tn.isScalar(n.key)&&n.key.value===r)return n}return}class LT extends JZ.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(tn.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(Cu.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(tn.isPair(e))r=e;else if(!e||typeof e!=="object"||!("key"in e))r=new Cu.Pair(e,e?.value);else r=new Cu.Pair(e.key,e.value);let n=Fi(this.items,r.key),o=this.schema?.sortMapEntries;if(n){if(!t)throw Error(`Key ${r.key} already set`);if(tn.isScalar(n.value)&&YZ.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=Fi(this.items,e);if(!t)return!1;return this.items.splice(this.items.indexOf(t),1).length>0}get(e,t){let n=Fi(this.items,e)?.value;return(!t&&tn.isScalar(n)?n.value:n)??void 0}has(e){return!!Fi(this.items,e)}set(e,t){this.add(new Cu.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)GZ.addPairToJSMap(t,n,o);return n}toString(e,t,r){if(!e)return JSON.stringify(this);for(let n of this.items)if(!tn.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 HZ.stringifyCollection(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:r,onComment:t})}}XZ.YAMLMap=LT;XZ.findPair=Fi});var Fo=E(function(n4){var t4=ce(),jT=rn(),r4={collection:"map",default:!0,nodeClass:jT.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){if(!t4.isMap(e))t("Expected a mapping for this tag");return e},createNode:(e,t,r)=>jT.YAMLMap.from(e,t,r)};n4.map=r4});var nn=E(function(l4){var s4=Ni(),i4=sh(),a4=vu(),Nu=ce(),c4=Le(),u4=Yr();class DT extends a4.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(Nu.SEQ,e);this.items=[]}add(e){this.items.push(e)}delete(e){let t=zu(e);if(typeof t!=="number")return!1;return this.items.splice(t,1).length>0}get(e,t){let r=zu(e);if(typeof r!=="number")return;let n=this.items[r];return!t&&Nu.isScalar(n)?n.value:n}has(e){let t=zu(e);return typeof t==="number"&&t<this.items.length}set(e,t){let r=zu(e);if(typeof r!=="number")throw Error(`Expected a valid index, not ${e}.`);let n=this.items[r];if(Nu.isScalar(n)&&c4.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(u4.toJS(o,String(n++),t));return r}toString(e,t,r){if(!e)return JSON.stringify(this);return i4.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(s4.createNode(i,void 0,r))}}return o}}function zu(e){let t=Nu.isScalar(e)?e.value:e;if(t&&typeof t==="string")t=Number(t);return typeof t==="number"&&Number.isInteger(t)&&t>=0?t:null}l4.YAMLSeq=DT});var Uo=E(function(m4){var p4=ce(),MT=nn(),f4={collection:"seq",default:!0,nodeClass:MT.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){if(!p4.isSeq(e))t("Expected a sequence for this tag");return e},createNode:(e,t,r)=>MT.YAMLSeq.from(e,t,r)};m4.seq=f4});var Ui=E(function(w4){var g4=Di(),y4={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),g4.stringifyString(e,t,r,n)}};w4.string=y4});var Lu=E(function(_4){var qT=Le(),FT={identify:(e)=>e==null,createNode:()=>new qT.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new qT.Scalar(null),stringify:({source:e},t)=>typeof e==="string"&&FT.test.test(e)?e:t.options.nullStr};_4.nullTag=FT});var ih=E(function(k4){var S4=Le(),UT={identify:(e)=>typeof e==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(e)=>new S4.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&UT.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};k4.boolTag=UT});var Wo=E(function(T4){function $4({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}T4.stringifyNumber=$4});var ch=E(function(R4){var P4=Le(),ah=Wo(),O4={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:ah.stringifyNumber},I4={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():ah.stringifyNumber(e)}},A4={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 P4.Scalar(parseFloat(e)),r=e.indexOf(".");if(r!==-1&&e[e.length-1]==="0")t.minFractionDigits=e.length-r-1;return t},stringify:ah.stringifyNumber};R4.float=A4;R4.floatExp=I4;R4.floatNaN=O4});var lh=E(function(M4){var WT=Wo(),ju=(e)=>typeof e==="bigint"||Number.isInteger(e),uh=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function VT(e,t,r){let{value:n}=e;if(ju(n)&&n>=0)return r+n.toString(t);return WT.stringifyNumber(e)}var L4={identify:(e)=>ju(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>uh(e,2,8,r),stringify:(e)=>VT(e,8,"0o")},j4={identify:ju,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>uh(e,0,10,r),stringify:WT.stringifyNumber},D4={identify:(e)=>ju(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>uh(e,2,16,r),stringify:(e)=>VT(e,16,"0x")};M4.int=j4;M4.intHex=D4;M4.intOct=L4});var ZT=E(function(G4){var W4=Fo(),V4=Lu(),Z4=Uo(),B4=Ui(),K4=ih(),dh=ch(),ph=lh(),H4=[W4.map,Z4.seq,B4.string,V4.nullTag,K4.boolTag,ph.intOct,ph.int,ph.intHex,dh.floatNaN,dh.floatExp,dh.float];G4.schema=H4});var KT=E(function(n9){var Y4=Le(),X4=Fo(),Q4=Uo();function BT(e){return typeof e==="bigint"||Number.isInteger(e)}var Du=({value:e})=>JSON.stringify(e),e9=[{identify:(e)=>typeof e==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(e)=>e,stringify:Du},{identify:(e)=>e==null,createNode:()=>new Y4.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Du},{identify:(e)=>typeof e==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(e)=>e==="true",stringify:Du},{identify:BT,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})=>BT(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:Du}],t9={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},r9=[X4.map,Q4.seq].concat(e9,t9);n9.schema=r9});var mh=E(function(a9){var Wi=kr("buffer"),fh=Le(),s9=Di(),i9={identify:(e)=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Wi.Buffer==="function")return Wi.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 Wi.Buffer==="function")a=i instanceof Wi.Buffer?i.toString("base64"):Wi.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=fh.Scalar.BLOCK_LITERAL),t!==fh.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===fh.Scalar.BLOCK_LITERAL?`
|
|
78
|
+
`:" ")}return s9.stringifyString({comment:e,type:t,value:a},n,o,s)}};a9.binary=i9});var qu=E(function(p9){var Mu=ce(),hh=en(),u9=Le(),l9=nn();function HT(e,t){if(Mu.isSeq(e))for(let r=0;r<e.items.length;++r){let n=e.items[r];if(Mu.isPair(n))continue;else if(Mu.isMap(n)){if(n.items.length>1)t("Each pair must have its own sequence indicator");let o=n.items[0]||new hh.Pair(new u9.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]=Pu.isPair(n)?n:new Ym.Pair(n)}else t("Expected a sequence for this tag");return e}function _E(e,t,r){let{replacer:n}=r,o=new o4.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(Ym.createPair(a,c,r))}return o}var s4={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:wE,createNode:_E};i4.createPairs=_E;i4.pairs=s4;i4.resolvePairs=wE});var Qm=E(function(p4){var vE=ce(),Xm=Zr(),Li=Jr(),l4=Yr(),SE=Iu();class qn extends l4.YAMLSeq{constructor(){super();this.add=Li.YAMLMap.prototype.add.bind(this),this.delete=Li.YAMLMap.prototype.delete.bind(this),this.get=Li.YAMLMap.prototype.get.bind(this),this.has=Li.YAMLMap.prototype.has.bind(this),this.set=Li.YAMLMap.prototype.set.bind(this),this.tag=qn.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(vE.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=SE.createPairs(e,t,r),o=new this;return o.items=n.items,o}}qn.tag="tag:yaml.org,2002:omap";var d4={collection:"seq",identify:(e)=>e instanceof Map,nodeClass:qn,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=SE.resolvePairs(e,t),n=[];for(let{key:o}of r.items)if(vE.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 qn,r)},createNode:(e,t,r)=>qn.from(e,t,r)};p4.YAMLOMap=qn;p4.omap=d4});var TE=E(function(h4){var kE=ze();function xE({value:e,source:t},r){if(t&&(e?$E:EE).test.test(t))return t;return e?r.options.trueStr:r.options.falseStr}var $E={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 kE.Scalar(!0),stringify:xE},EE={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 kE.Scalar(!1),stringify:xE};h4.falseTag=EE;h4.trueTag=$E});var OE=E(function(S4){var b4=ze(),eh=No(),w4={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:eh.stringifyNumber},_4={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():eh.stringifyNumber(e)}},v4={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 b4.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:eh.stringifyNumber};S4.float=v4;S4.floatExp=_4;S4.floatNaN=w4});var IE=E(function(I4){var PE=No(),Di=(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 th(e,t,r){let{value:n}=e;if(Di(n)){let o=n.toString(t);return n<0?"-"+r+o.substr(1):r+o}return PE.stringifyNumber(e)}var E4={identify:Di,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)=>th(e,2,"0b")},T4={identify:Di,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)=>th(e,8,"0")},O4={identify:Di,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>Au(e,0,10,r),stringify:PE.stringifyNumber},P4={identify:Di,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)=>th(e,16,"0x")};I4.int=O4;I4.intBin=E4;I4.intHex=P4;I4.intOct=T4});var rh=E(function(L4){var zu=ce(),Ru=Hr(),Cu=Jr();class Fn extends Cu.YAMLMap{constructor(e){super(e);this.tag=Fn.tag}add(e){let t;if(zu.isPair(e))t=e;else if(e&&typeof e==="object"&&"key"in e&&"value"in e&&e.value===null)t=new Ru.Pair(e.key,null);else t=new Ru.Pair(e,null);if(!Cu.findPair(this.items,t.key))this.items.push(t)}get(e,t){let r=Cu.findPair(this.items,e);return!t&&zu.isPair(r)?zu.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=Cu.findPair(this.items,e);if(r&&!t)this.items.splice(this.items.indexOf(r),1);else if(!r&&t)this.items.push(new Ru.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(Ru.createPair(s,null,r))}return o}}Fn.tag="tag:yaml.org,2002:set";var N4={collection:"map",identify:(e)=>e instanceof Set,nodeClass:Fn,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Fn.from(e,t,r),resolve(e,t){if(zu.isMap(e))if(e.hasAllNullValues(!0))return Object.assign(new Fn,e);else t("Set items must all have null values");else t("Expected a mapping for this tag");return e}};L4.YAMLSet=Fn;L4.set=N4});var oh=E(function(U4){var M4=No();function nh(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 AE(e){let{value:t}=e,r=(i)=>i;if(typeof t==="bigint")r=(i)=>BigInt(i);else if(isNaN(t)||!isFinite(t))return M4.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 q4={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})=>nh(e,r),stringify:AE},F4={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)=>nh(e,!1),stringify:AE},RE={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(RE.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=nh(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$/,"")??""};U4.floatTime=F4;U4.intTime=q4;U4.timestamp=RE});var zE=E(function(r9){var B4=Co(),K4=Eu(),H4=zo(),G4=zi(),J4=Jm(),CE=TE(),sh=OE(),Nu=IE(),Y4=bu(),X4=Qm(),Q4=Iu(),e9=rh(),ih=oh(),t9=[B4.map,H4.seq,G4.string,K4.nullTag,CE.trueTag,CE.falseTag,Nu.intBin,Nu.intOct,Nu.int,Nu.intHex,sh.floatNaN,sh.floatExp,sh.float,J4.binary,Y4.merge,X4.omap,Q4.pairs,e9.set,ih.intTime,ih.floatTime,ih.timestamp];r9.schema=t9});var VE=E(function(d9){var jE=Co(),o9=Eu(),ME=zo(),s9=zi(),i9=Um(),ah=Vm(),ch=Bm(),a9=gE(),c9=bE(),qE=Jm(),ji=bu(),FE=Qm(),UE=Iu(),NE=zE(),WE=rh(),Lu=oh(),LE=new Map([["core",a9.schema],["failsafe",[jE.map,ME.seq,s9.string]],["json",c9.schema],["yaml11",NE.schema],["yaml-1.1",NE.schema]]),DE={binary:qE.binary,bool:i9.boolTag,float:ah.float,floatExp:ah.floatExp,floatNaN:ah.floatNaN,floatTime:Lu.floatTime,int:ch.int,intHex:ch.intHex,intOct:ch.intOct,intTime:Lu.intTime,map:jE.map,merge:ji.merge,null:o9.nullTag,omap:FE.omap,pairs:UE.pairs,seq:ME.seq,set:WE.set,timestamp:Lu.timestamp},u9={"tag:yaml.org,2002:binary":qE.binary,"tag:yaml.org,2002:merge":ji.merge,"tag:yaml.org,2002:omap":FE.omap,"tag:yaml.org,2002:pairs":UE.pairs,"tag:yaml.org,2002:set":WE.set,"tag:yaml.org,2002:timestamp":Lu.timestamp};function l9(e,t,r){let n=LE.get(t);if(n&&!e)return r&&!n.includes(ji.merge)?n.concat(ji.merge):n.slice();let o=n;if(!o)if(Array.isArray(e))o=[];else{let s=Array.from(LE.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(ji.merge);return o.reduce((s,i)=>{let a=typeof i==="string"?DE[i]:i;if(!a){let c=JSON.stringify(i),u=Object.keys(DE).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},[])}d9.coreKnownTags=u9;d9.getTags=l9});var dh=E(function(b9){var uh=ce(),m9=Co(),h9=zo(),g9=zi(),Du=VE(),y9=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;class lh{constructor({compat:e,customTags:t,merge:r,resolveKnownTags:n,schema:o,sortMapEntries:s,toStringDefaults:i}){this.compat=Array.isArray(e)?Du.getTags(e,"compat"):e?Du.getTags(null,e):null,this.name=typeof o==="string"&&o||"core",this.knownTags=n?Du.coreKnownTags:{},this.tags=Du.getTags(t,this.name,r),this.toStringOptions=i??null,Object.defineProperty(this,uh.MAP,{value:m9.map}),Object.defineProperty(this,uh.SCALAR,{value:g9.string}),Object.defineProperty(this,uh.SEQ,{value:h9.seq}),this.sortMapEntries=typeof s==="function"?s:s===!0?y9:null}clone(){let e=Object.create(lh.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}b9.Schema=lh});var ZE=E(function(S9){var _9=ce(),ph=Ai(),Mi=Oi();function v9(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=ph.createStringifyContext(e,t),{commentString:s}=o.options;if(e.commentBefore){if(r.length!==1)r.unshift("");let c=s(e.commentBefore);r.unshift(Mi.indentComment(c,""))}let i=!1,a=null;if(e.contents){if(_9.isNode(e.contents)){if(e.contents.spaceBefore&&n)r.push("");if(e.contents.commentBefore){let l=s(e.contents.commentBefore);r.push(Mi.indentComment(l,""))}o.forceBlockIndent=!!e.comment,a=e.contents.comment}let c=a?void 0:()=>i=!0,u=ph.stringify(e.contents,o,()=>a=null,c);if(a)u+=Mi.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(ph.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]=Mu.isPair(n)?n:new hh.Pair(n)}else t("Expected a sequence for this tag");return e}function GT(e,t,r){let{replacer:n}=r,o=new l9.YAMLSeq(e);o.tag="tag:yaml.org,2002:pairs";let s=0;if(t&&Symbol.iterator in Object(t))for(let i of t){if(typeof n==="function")i=n.call(t,String(s++),i);let a,c;if(Array.isArray(i))if(i.length===2)a=i[0],c=i[1];else throw TypeError(`Expected [key, value] tuple: ${i}`);else if(i&&i instanceof Object){let u=Object.keys(i);if(u.length===1)a=u[0],c=i[a];else throw TypeError(`Expected tuple with one key, not ${u.length} keys`)}else a=i;o.items.push(hh.createPair(a,c,r))}return o}var d9={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:HT,createNode:GT};p9.createPairs=GT;p9.pairs=d9;p9.resolvePairs=HT});var yh=E(function(w9){var JT=ce(),gh=Yr(),Vi=rn(),g9=nn(),YT=qu();class Zn extends g9.YAMLSeq{constructor(){super();this.add=Vi.YAMLMap.prototype.add.bind(this),this.delete=Vi.YAMLMap.prototype.delete.bind(this),this.get=Vi.YAMLMap.prototype.get.bind(this),this.has=Vi.YAMLMap.prototype.has.bind(this),this.set=Vi.YAMLMap.prototype.set.bind(this),this.tag=Zn.tag}toJSON(e,t){if(!t)return super.toJSON(e);let r=new Map;if(t?.onCreate)t.onCreate(r);for(let n of this.items){let o,s;if(JT.isPair(n))o=gh.toJS(n.key,"",t),s=gh.toJS(n.value,o,t);else o=gh.toJS(n,"",t);if(r.has(o))throw Error("Ordered maps must not include duplicate keys");r.set(o,s)}return r}static from(e,t,r){let n=YT.createPairs(e,t,r),o=new this;return o.items=n.items,o}}Zn.tag="tag:yaml.org,2002:omap";var y9={collection:"seq",identify:(e)=>e instanceof Map,nodeClass:Zn,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=YT.resolvePairs(e,t),n=[];for(let{key:o}of r.items)if(JT.isScalar(o))if(n.includes(o.value))t(`Ordered maps must not include duplicate keys: ${o.value}`);else n.push(o.value);return Object.assign(new Zn,r)},createNode:(e,t,r)=>Zn.from(e,t,r)};w9.YAMLOMap=Zn;w9.omap=y9});var rE=E(function(v9){var XT=Le();function QT({value:e,source:t},r){if(t&&(e?eE:tE).test.test(t))return t;return e?r.options.trueStr:r.options.falseStr}var eE={identify:(e)=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new XT.Scalar(!0),stringify:QT},tE={identify:(e)=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new XT.Scalar(!1),stringify:QT};v9.falseTag=tE;v9.trueTag=eE});var nE=E(function(P9){var x9=Le(),wh=Wo(),$9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(e)=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:wh.stringifyNumber},T9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(e)=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():wh.stringifyNumber(e)}},E9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new x9.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");if(n[n.length-1]==="0")t.minFractionDigits=n.length}return t},stringify:wh.stringifyNumber};P9.float=E9;P9.floatExp=T9;P9.floatNaN=$9});var sE=E(function(L9){var oE=Wo(),Zi=(e)=>typeof e==="bigint"||Number.isInteger(e);function Fu(e,t,r,{intAsBigInt:n}){let o=e[0];if(o==="-"||o==="+")t+=1;if(e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let i=BigInt(e);return o==="-"?BigInt(-1)*i:i}let s=parseInt(e,r);return o==="-"?-1*s:s}function bh(e,t,r){let{value:n}=e;if(Zi(n)){let o=n.toString(t);return n<0?"-"+r+o.substr(1):r+o}return oE.stringifyNumber(e)}var R9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>Fu(e,2,2,r),stringify:(e)=>bh(e,2,"0b")},C9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>Fu(e,1,8,r),stringify:(e)=>bh(e,8,"0")},z9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>Fu(e,0,10,r),stringify:oE.stringifyNumber},N9={identify:Zi,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>Fu(e,2,16,r),stringify:(e)=>bh(e,16,"0x")};L9.int=z9;L9.intBin=R9;L9.intHex=N9;L9.intOct=C9});var _h=E(function(U9){var Vu=ce(),Uu=en(),Wu=rn();class Bn extends Wu.YAMLMap{constructor(e){super(e);this.tag=Bn.tag}add(e){let t;if(Vu.isPair(e))t=e;else if(e&&typeof e==="object"&&"key"in e&&"value"in e&&e.value===null)t=new Uu.Pair(e.key,null);else t=new Uu.Pair(e,null);if(!Wu.findPair(this.items,t.key))this.items.push(t)}get(e,t){let r=Wu.findPair(this.items,e);return!t&&Vu.isPair(r)?Vu.isScalar(r.key)?r.key.value:r.key:r}set(e,t){if(typeof t!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let r=Wu.findPair(this.items,e);if(r&&!t)this.items.splice(this.items.indexOf(r),1);else if(!r&&t)this.items.push(new Uu.Pair(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,r){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,r);else throw Error("Set items must all have null values")}static from(e,t,r){let{replacer:n}=r,o=new this(e);if(t&&Symbol.iterator in Object(t))for(let s of t){if(typeof n==="function")s=n.call(t,s,s);o.items.push(Uu.createPair(s,null,r))}return o}}Bn.tag="tag:yaml.org,2002:set";var F9={collection:"map",identify:(e)=>e instanceof Set,nodeClass:Bn,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Bn.from(e,t,r),resolve(e,t){if(Vu.isMap(e))if(e.hasAllNullValues(!0))return Object.assign(new Bn,e);else t("Set items must all have null values");else t("Expected a mapping for this tag");return e}};U9.YAMLSet=Bn;U9.set=F9});var Sh=E(function(H9){var Z9=Wo();function vh(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,o=(i)=>t?BigInt(i):Number(i),s=n.replace(/_/g,"").split(":").reduce((i,a)=>i*o(60)+o(a),o(0));return r==="-"?o(-1)*s:s}function iE(e){let{value:t}=e,r=(i)=>i;if(typeof t==="bigint")r=(i)=>BigInt(i);else if(isNaN(t)||!isFinite(t))return Z9.stringifyNumber(e);let n="";if(t<0)n="-",t*=r(-1);let o=r(60),s=[t%o];if(t<60)s.unshift(0);else if(t=(t-s[0])/o,s.unshift(t%o),t>=60)t=(t-s[0])/o,s.unshift(t);return n+s.map((i)=>String(i).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var B9={identify:(e)=>typeof e==="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>vh(e,r),stringify:iE},K9={identify:(e)=>typeof e==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(e)=>vh(e,!1),stringify:iE},aE={identify:(e)=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(aE.test);if(!t)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,o,s,i,a]=t.map(Number),c=t[7]?Number((t[7]+"00").substr(1,3)):0,u=Date.UTC(r,n-1,o,s||0,i||0,a||0,c),l=t[8];if(l&&l!=="Z"){let d=vh(l,!1);if(Math.abs(d)<30)d*=60;u-=60000*d}return new Date(u)},stringify:({value:e})=>e?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};H9.floatTime=K9;H9.intTime=B9;H9.timestamp=aE});var uE=E(function(cB){var X9=Fo(),Q9=Lu(),eB=Uo(),tB=Ui(),rB=mh(),cE=rE(),kh=nE(),Zu=sE(),nB=Pu(),oB=yh(),sB=qu(),iB=_h(),xh=Sh(),aB=[X9.map,eB.seq,tB.string,Q9.nullTag,cE.trueTag,cE.falseTag,Zu.intBin,Zu.intOct,Zu.int,Zu.intHex,kh.floatNaN,kh.floatExp,kh.float,rB.binary,nB.merge,oB.omap,sB.pairs,iB.set,xh.intTime,xh.floatTime,xh.timestamp];cB.schema=aB});var bE=E(function(yB){var fE=Fo(),lB=Lu(),mE=Uo(),dB=Ui(),pB=ih(),$h=ch(),Th=lh(),fB=ZT(),mB=KT(),hE=mh(),Bi=Pu(),gE=yh(),yE=qu(),lE=uE(),wE=_h(),Bu=Sh(),dE=new Map([["core",fB.schema],["failsafe",[fE.map,mE.seq,dB.string]],["json",mB.schema],["yaml11",lE.schema],["yaml-1.1",lE.schema]]),pE={binary:hE.binary,bool:pB.boolTag,float:$h.float,floatExp:$h.floatExp,floatNaN:$h.floatNaN,floatTime:Bu.floatTime,int:Th.int,intHex:Th.intHex,intOct:Th.intOct,intTime:Bu.intTime,map:fE.map,merge:Bi.merge,null:lB.nullTag,omap:gE.omap,pairs:yE.pairs,seq:mE.seq,set:wE.set,timestamp:Bu.timestamp},hB={"tag:yaml.org,2002:binary":hE.binary,"tag:yaml.org,2002:merge":Bi.merge,"tag:yaml.org,2002:omap":gE.omap,"tag:yaml.org,2002:pairs":yE.pairs,"tag:yaml.org,2002:set":wE.set,"tag:yaml.org,2002:timestamp":Bu.timestamp};function gB(e,t,r){let n=dE.get(t);if(n&&!e)return r&&!n.includes(Bi.merge)?n.concat(Bi.merge):n.slice();let o=n;if(!o)if(Array.isArray(e))o=[];else{let s=Array.from(dE.keys()).filter((i)=>i!=="yaml11").map((i)=>JSON.stringify(i)).join(", ");throw Error(`Unknown schema "${t}"; use one of ${s} or define customTags array`)}if(Array.isArray(e))for(let s of e)o=o.concat(s);else if(typeof e==="function")o=e(o.slice());if(r)o=o.concat(Bi.merge);return o.reduce((s,i)=>{let a=typeof i==="string"?pE[i]:i;if(!a){let c=JSON.stringify(i),u=Object.keys(pE).map((l)=>JSON.stringify(l)).join(", ");throw Error(`Unknown custom tag ${c}; use one of ${u}`)}if(!s.includes(a))s.push(a);return s},[])}yB.coreKnownTags=hB;yB.getTags=gB});var Oh=E(function(xB){var Eh=ce(),_B=Fo(),vB=Uo(),SB=Ui(),Ku=bE(),kB=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;class Ph{constructor({compat:e,customTags:t,merge:r,resolveKnownTags:n,schema:o,sortMapEntries:s,toStringDefaults:i}){this.compat=Array.isArray(e)?Ku.getTags(e,"compat"):e?Ku.getTags(null,e):null,this.name=typeof o==="string"&&o||"core",this.knownTags=n?Ku.coreKnownTags:{},this.tags=Ku.getTags(t,this.name,r),this.toStringOptions=i??null,Object.defineProperty(this,Eh.MAP,{value:_B.map}),Object.defineProperty(this,Eh.SCALAR,{value:SB.string}),Object.defineProperty(this,Eh.SEQ,{value:vB.seq}),this.sortMapEntries=typeof s==="function"?s:s===!0?kB:null}clone(){let e=Object.create(Ph.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}xB.Schema=Ph});var _E=E(function(PB){var TB=ce(),Ih=Mi(),Ki=Li();function EB(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let c=e.directives.toString(e);if(c)r.push(c),n=!0;else if(e.directives.docStart)n=!0}if(n)r.push("---");let o=Ih.createStringifyContext(e,t),{commentString:s}=o.options;if(e.commentBefore){if(r.length!==1)r.unshift("");let c=s(e.commentBefore);r.unshift(Ki.indentComment(c,""))}let i=!1,a=null;if(e.contents){if(TB.isNode(e.contents)){if(e.contents.spaceBefore&&n)r.push("");if(e.contents.commentBefore){let l=s(e.contents.commentBefore);r.push(Ki.indentComment(l,""))}o.forceBlockIndent=!!e.comment,a=e.contents.comment}let c=a?void 0:()=>i=!0,u=Ih.stringify(e.contents,o,()=>a=null,c);if(a)u+=Ki.lineComment(u,"",s(a));if((u[0]==="|"||u[0]===">")&&r[r.length-1]==="---")r[r.length-1]=`--- ${u}`;else r.push(u)}else r.push(Ih.stringify(e.contents,o));if(e.directives?.docEnd)if(e.comment){let c=s(e.comment);if(c.includes(`
|
|
81
|
+
`))r.push("..."),r.push(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
|
+
`}PB.stringifyDocument=EB});var Hi=E(function(jB){var IB=zi(),Vo=vu(),Lt=ce(),AB=en(),RB=Yr(),CB=Oh(),zB=_E(),Ah=wu(),NB=Jm(),LB=Ni(),Rh=Gm();class Ch{constructor(e,t,r){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Lt.NODE_TYPE,{value:Lt.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 Rh.Directives({version:s});this.setSchema(s,r),this.contents=e===void 0?null:this.createNode(e,n,r)}clone(){let e=Object.create(Ch.prototype,{[Lt.NODE_TYPE]:{value:Lt.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=Lt.isNode(this.contents)?this.contents.clone(e.schema):this.contents,this.range)e.range=this.range.slice();return e}add(e){if(Zo(this.contents))this.contents.add(e)}addIn(e,t){if(Zo(this.contents))this.contents.addIn(e,t)}createAlias(e,t){if(!e.anchor){let r=Ah.anchorNames(this);e.anchor=!t||r.has(t)?Ah.findNewAnchor(t||"a",r):t}return new IB.Alias(e.anchor)}createNode(e,t,r){let n=void 0;if(typeof t==="function")e=t.call({"":e},"",e),n=t;else if(Array.isArray(t)){let g=(b)=>typeof b==="number"||b instanceof String||b instanceof Number,y=t.filter(g).map(String);if(y.length>0)t=t.concat(y);n=t}else if(r===void 0&&t)r=t,t=void 0;let{aliasDuplicateObjects:o,anchorPrefix:s,flow:i,keepUndefined:a,onTagObj:c,tag:u}=r??{},{onAnchor:l,setAnchors:d,sourceObjects:f}=Ah.createNodeAnchors(this,s||"a"),m={aliasDuplicateObjects:o??!0,keepUndefined:a??!1,onAnchor:l,onTagObj:c,replacer:n,schema:this.schema,sourceObjects:f},h=LB.createNode(e,u,m);if(i&&Lt.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 AB.Pair(n,o)}delete(e){return Zo(this.contents)?this.contents.delete(e):!1}deleteIn(e){if(Vo.isEmptyPath(e)){if(this.contents==null)return!1;return this.contents=null,!0}return Zo(this.contents)?this.contents.deleteIn(e):!1}get(e,t){return Lt.isCollection(this.contents)?this.contents.get(e,t):void 0}getIn(e,t){if(Vo.isEmptyPath(e))return!t&&Lt.isScalar(this.contents)?this.contents.value:this.contents;return Lt.isCollection(this.contents)?this.contents.getIn(e,t):void 0}has(e){return Lt.isCollection(this.contents)?this.contents.has(e):!1}hasIn(e){if(Vo.isEmptyPath(e))return this.contents!==void 0;return Lt.isCollection(this.contents)?this.contents.hasIn(e):!1}set(e,t){if(this.contents==null)this.contents=Vo.collectionFromPath(this.schema,[e],t);else if(Zo(this.contents))this.contents.set(e,t)}setIn(e,t){if(Vo.isEmptyPath(e))this.contents=t;else if(this.contents==null)this.contents=Vo.collectionFromPath(this.schema,Array.from(e),t);else if(Zo(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 Rh.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 Rh.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 CB.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=RB.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"?NB.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 zB.stringifyDocument(this,e)}}function Zo(e){if(Lt.isCollection(e))return!0;throw Error("Expected a YAML collection as document contents")}jB.Document=Ch});var Gi=E(function(qB){class Hu extends Error{constructor(e,t,r,n){super();this.name=e,this.code=r,this.message=n,this.pos=t}}class vE extends Hu{constructor(e,t,r){super("YAMLParseError",e,t,r)}}class SE extends Hu{constructor(e,t,r){super("YAMLWarning",e,t,r)}}var MB=(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
|
-
`+S.comment;else T.comment=S.comment;let I=new
|
|
92
|
-
`+v.comment;else u.comment=v.comment;d=v.end;continue}if(!i&&r.options.strict&&
|
|
93
|
-
`+
|
|
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
|
+
`}};qB.YAMLError=Hu;qB.YAMLParseError=vE;qB.YAMLWarning=SE;qB.prettifyError=MB});var Ji=E(function(BB){function ZB(e,{flow:t,indicator:r,next:n,offset:o,onError:s,parentIndent:i,startOnNewline:a}){let c=!1,u=a,l=a,d="",f="",m=!1,h=!1,g=null,y=null,b=null,T=null,S=null,I=null,_=null;for(let A of e){if(h){if(A.type!=="space"&&A.type!=="newline"&&A.type!=="comma")s(A.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");h=!1}if(g){if(u&&A.type!=="comment"&&A.type!=="newline")s(g,"TAB_AS_INDENT","Tabs are not allowed as indentation");g=null}switch(A.type){case"space":if(!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&A.source.includes("\t"))g=A;l=!0;break;case"comment":{if(!l)s(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let j=A.source.substring(1)||" ";if(!d)d=j;else d+=f+j;f="",u=!1;break}case"newline":if(u){if(d)d+=A.source;else if(!I||r!=="seq-item-ind")c=!0}else f+=A.source;if(u=!0,m=!0,y||b)T=A;l=!0;break;case"anchor":if(y)s(A,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(A.source.endsWith(":"))s(A.offset+A.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);y=A,_??(_=A.offset),u=!1,l=!1,h=!0;break;case"tag":{if(b)s(A,"MULTIPLE_TAGS","A node can have at most one tag");b=A,_??(_=A.offset),u=!1,l=!1,h=!0;break}case r:if(y||b)s(A,"BAD_PROP_ORDER",`Anchors and tags must be after the ${A.source} indicator`);if(I)s(A,"UNEXPECTED_TOKEN",`Unexpected ${A.source} in ${t??"collection"}`);I=A,u=r==="seq-item-ind"||r==="explicit-key-ind",l=!1;break;case"comma":if(t){if(S)s(A,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`);S=A,u=!1,l=!1;break}default:s(A,"UNEXPECTED_TOKEN",`Unexpected ${A.type} token`),u=!1,l=!1}}let v=e[e.length-1],x=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:S,found:I,spaceBefore:c,comment:d,hasNewline:m,anchor:y,tag:b,newlineAfterProp:T,end:x,start:_??x}}BB.resolveProps=ZB});var Gu=E(function(HB){function zh(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(zh(t.key)||zh(t.value))return!0}return!1;default:return!0}}HB.containsNewline=zh});var Nh=E(function(XB){var JB=Gu();function YB(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];if(n.indent===e&&(n.source==="]"||n.source==="}")&&JB.containsNewline(t))r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}XB.flowIndentCheck=YB});var Lh=E(function(tK){var kE=ce();function eK(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let o=typeof n==="function"?n:(s,i)=>s===i||kE.isScalar(s)&&kE.isScalar(i)&&s.value===i.value;return t.some((s)=>o(s.key,r))}tK.mapIncludes=eK});var PE=E(function(aK){var xE=en(),nK=rn(),$E=Ji(),oK=Gu(),TE=Nh(),sK=Lh(),EE="All mapping items must start at the same column";function iK({composeNode:e,composeEmptyNode:t},r,n,o,s){let a=new(s?.nodeClass??nK.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=$E.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",EE)}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||oK.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",EE);r.atKey=!0;let b=g.end,T=f?e(r,f,g,o):t(r,b,d,null,g,o);if(r.schema.compat)TE.flowIndentCheck(n.indent,f,o);if(r.atKey=!1,sK.mapIncludes(r,a.items,T))o(b,"DUPLICATE_KEY","Map keys must be unique");let S=$E.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=S.end,S.found){if(y){if(h?.type==="block-map"&&!S.hasNewline)o(c,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(r.options.strict&&g.start<S.found.offset-1024)o(T.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let I=h?e(r,h,S,o):t(r,c,m,null,S,o);if(r.schema.compat)TE.flowIndentCheck(n.indent,h,o);c=I.range[2];let _=new xE.Pair(T,I);if(r.options.keepSourceTokens)_.srcToken=l;a.items.push(_)}else{if(y)o(T.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(S.comment)if(T.comment)T.comment+=`
|
|
91
|
+
`+S.comment;else T.comment=S.comment;let I=new xE.Pair(T);if(r.options.keepSourceTokens)I.srcToken=l;a.items.push(I)}}if(u&&u<c)o(u,"IMPOSSIBLE","Map comment with trailing content");return a.range=[n.offset,c,u??c],a}aK.resolveBlockMap=iK});var OE=E(function(fK){var uK=nn(),lK=Ji(),dK=Nh();function pK({composeNode:e,composeEmptyNode:t},r,n,o,s){let a=new(s?.nodeClass??uK.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=lK.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)dK.flowIndentCheck(n.indent,d,o);c=m.range[2],a.items.push(m)}return a.range=[n.offset,c,u??c],a}fK.resolveBlockSeq=pK});var Bo=E(function(gK){function hK(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}}gK.resolveEnd=hK});var RE=E(function($K){var wK=ce(),bK=en(),IE=rn(),_K=nn(),vK=Bo(),AE=Ji(),SK=Gu(),kK=Lh(),jh="Block collections are not allowed within flow collections",Dh=(e)=>e&&(e.type==="block-map"||e.type==="block-seq");function xK({composeNode:e,composeEmptyNode:t},r,n,o,s){let i=n.start.source==="{",a=i?"flow map":"flow sequence",u=new(s?.nodeClass??(i?IE.YAMLMap:_K.YAMLSeq))(r.schema);u.flow=!0;let l=r.atRoot;if(l)r.atRoot=!1;if(r.atKey)r.atKey=!1;let d=n.offset+n.start.source.length;for(let y=0;y<n.items.length;++y){let b=n.items[y],{start:T,key:S,sep:I,value:_}=b,v=AE.resolveProps(T,{flow:a,indicator:"explicit-key-ind",next:S??I?.[0],offset:d,onError:o,parentIndent:n.indent,startOnNewline:!1});if(!v.found){if(!v.anchor&&!v.tag&&!I&&!_){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&&SK.containsNewline(S))o(S,"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 x="";e:for(let A of T)switch(A.type){case"comma":case"space":break;case"comment":x=A.source.substring(1);break e;default:break e}if(x){let A=u.items[u.items.length-1];if(wK.isPair(A))A=A.value??A.key;if(A.comment)A.comment+=`
|
|
93
|
+
`+x;else A.comment=x;v.comment=v.comment.substring(x.length+1)}}}if(!i&&!I&&!v.found){let x=_?e(r,_,v,o):t(r,v.end,I,null,v,o);if(u.items.push(x),d=x.range[2],Dh(_))o(x.range,"BLOCK_IN_FLOW",jh)}else{r.atKey=!0;let x=v.end,A=S?e(r,S,v,o):t(r,x,T,null,v,o);if(Dh(S))o(A.range,"BLOCK_IN_FLOW",jh);r.atKey=!1;let j=AE.resolveProps(I??[],{flow:a,indicator:"map-value-ind",next:_,offset:A.range[2],onError:o,parentIndent:n.indent,startOnNewline:!1});if(j.found){if(!i&&!v.found&&r.options.strict){if(I)for(let ae of I){if(ae===j.found)break;if(ae.type==="newline"){o(ae,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(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(_)if("source"in _&&_.source?.[0]===":")o(_,"MISSING_CHAR",`Missing space after : in ${a}`);else o(j.start,"MISSING_CHAR",`Missing , or : between ${a} items`);let Y=_?e(r,_,j,o):j.found?t(r,j.end,I,null,j,o):null;if(Y){if(Dh(_))o(Y.range,"BLOCK_IN_FLOW",jh)}else if(j.comment)if(A.comment)A.comment+=`
|
|
94
|
+
`+j.comment;else A.comment=j.comment;let ie=new bK.Pair(A,Y);if(r.options.keepSourceTokens)ie.srcToken=b;if(i){let ae=u;if(kK.mapIncludes(r,ae.items,A))o(x,"DUPLICATE_KEY","Map keys must be unique");ae.items.push(ie)}else{let ae=new IE.YAMLMap(r.schema);ae.flow=!0,ae.items.push(ie);let Me=(Y??A).range;ae.range=[A.range[0],Me[1],Me[2]],u.items.push(ae)}d=Y?Y.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),b=l?`${y} must end with a ${f}`:`${y} in block collection must be sufficiently indented and end with a ${f}`;if(o(d,l?"MISSING_CHAR":"BAD_INDENT",b),m&&m.source.length!==1)h.unshift(m)}if(h.length>0){let y=vK.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}$K.resolveFlowCollection=xK});var CE=E(function(NK){var EK=ce(),PK=Le(),OK=rn(),IK=nn(),AK=PE(),RK=OE(),CK=RE();function Mh(e,t,r,n,o,s){let i=r.type==="block-map"?AK.resolveBlockMap(e,t,r,n,s):r.type==="block-seq"?RK.resolveBlockSeq(e,t,r,n,s):CK.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 zK(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===OK.YAMLMap.tagName&&a==="map"||i===IK.YAMLSeq.tagName&&a==="seq")return Mh(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 Mh(e,t,r,o,i)}}let u=Mh(e,t,r,o,i,c),l=c.resolve?.(u,(f)=>o(s,"TAG_RESOLVE_FAILED",f),t.options)??u,d=EK.isNode(l)?l:new PK.Scalar(l);if(d.range=u.range,d.tag=i,c?.format)d.format=c.format;return d}NK.composeCollection=zK});var Fh=E(function(qK){var qh=Le();function jK(e,t,r){let n=t.offset,o=DK(t,e.options.strict,r);if(!o)return{value:"",type:null,comment:"",range:[n,n,n]};let s=o.mode===">"?qh.Scalar.BLOCK_FOLDED:qh.Scalar.BLOCK_LITERAL,i=t.source?MK(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,b]=i[g];if(b===""||b==="\r"){if(o.indent===0&&y.length>c)c=y.length}else{if(y.length<c)r(u+y.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(o.indent===0)c=y.length;if(l=g,c===0&&!e.atRoot)r(u,"BAD_INDENT","Block scalar values in collections must be indented");break}u+=y.length+b.length+1}for(let g=i.length-1;g>=a;--g)if(i[g][0].length>c)a=g+1;let d="",f="",m=!1;for(let g=0;g<l;++g)d+=i[g][0].slice(c)+`
|
|
97
|
+
`;for(let g=l;g<a;++g){let[y,b]=i[g];u+=y.length+b.length+1;let T=b[b.length-1]==="\r";if(T)b=b.slice(0,-1);if(b&&y.length<c){let I=`Block scalar lines must not be less indented than their ${o.indent?"explicit indentation indicator":"first line"}`;r(u-b.length-(T?2:1),"BAD_INDENT",I),y=""}if(s===qh.Scalar.BLOCK_LITERAL)d+=f+y.slice(c)+b,f=`
|
|
98
|
+
`;else if(y.length>c||b[0]==="\t"){if(f===" ")f=`
|
|
99
99
|
`;else if(!m&&f===`
|
|
100
100
|
`)f=`
|
|
101
101
|
|
|
102
|
-
`;d+=f+y.slice(c)+
|
|
103
|
-
`,m=!0}else if(
|
|
102
|
+
`;d+=f+y.slice(c)+b,f=`
|
|
103
|
+
`,m=!0}else if(b==="")if(f===`
|
|
104
104
|
`)d+=`
|
|
105
105
|
`;else f=`
|
|
106
|
-
`;else d+=f+
|
|
106
|
+
`;else d+=f+b,f=" ",m=!1}switch(o.chomp){case"-":break;case"+":for(let g=a;g<i.length;++g)d+=`
|
|
107
107
|
`+i[g][0].slice(c);if(d[d.length-1]!==`
|
|
108
108
|
`)d+=`
|
|
109
109
|
`;break;default:d+=`
|
|
110
|
-
`}let h=n+o.length+t.source.length;return{value:d,type:s,comment:o.comment,range:[n,h,h]}}function
|
|
110
|
+
`}let h=n+o.length+t.source.length;return{value:d,type:s,comment:o.comment,range:[n,h,h]}}function DK({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 MK(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}qK.resolveBlockScalar=jK});var Wh=E(function(JK){var Uh=Le(),UK=Bo();function WK(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=Uh.Scalar.PLAIN,c=VK(s,u);break;case"single-quoted-scalar":a=Uh.Scalar.QUOTE_SINGLE,c=ZK(s,u);break;case"double-quoted-scalar":a=Uh.Scalar.QUOTE_DOUBLE,c=BK(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=UK.resolveEnd(i,l,t,r);return{value:c,type:a,comment:d.comment,range:[n,l,d.offset]}}function VK(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 zE(e)}function ZK(e,t){if(e[e.length-1]!=="'"||e.length===1)t(e.length,"MISSING_CHAR","Missing closing 'quote");return zE(e.slice(1,-1)).replace(/''/g,"'")}function zE(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 BK(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}=KK(e,n);r+=s,n=i}else if(o==="\\"){let s=e[++n],i=HK[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+=GK(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 KK(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 HK={"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 GK(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}}JK.resolveFlowScalar=WK});var LE=E(function(nH){var Kn=ce(),NE=Le(),XK=Fh(),QK=Wh();function eH(e,t,r,n){let{value:o,type:s,comment:i,range:a}=t.type==="block-scalar"?XK.resolveBlockScalar(e,t,n):QK.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[Kn.SCALAR];else if(c)u=tH(e.schema,o,c,r,n);else if(t.type==="scalar")u=rH(e,o,t,n);else u=e.schema[Kn.SCALAR];let l;try{let d=u.resolve(o,(f)=>n(r??t,"TAG_RESOLVE_FAILED",f),e.options);l=Kn.isScalar(d)?d:new NE.Scalar(d)}catch(d){let f=d instanceof Error?d.message:String(d);n(r??t,"TAG_RESOLVE_FAILED",f),l=new NE.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 tH(e,t,r,n,o){if(r==="!")return e[Kn.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[Kn.SCALAR]}function rH({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[Kn.SCALAR];if(r.compat){let a=r.compat.find((c)=>c.default&&c.test?.test(n))??r[Kn.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}nH.composeScalar=eH});var jE=E(function(iH){function sH(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}iH.emptyScalarPosition=sH});var qE=E(function(hH){var cH=zi(),uH=ce(),lH=CE(),DE=LE(),dH=Bo(),pH=jE(),fH={composeNode:ME,composeEmptyNode:Vh};function ME(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=mH(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=DE.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=lH.composeCollection(fH,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=Vh(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&&(!uH.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 Vh(e,t,r,n,{spaceBefore:o,comment:s,anchor:i,tag:a,end:c},u){let l={type:"scalar",offset:pH.emptyScalarPosition(t,r,n),indent:-1,source:""},d=DE.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 mH({options:e},{offset:t,source:r,end:n},o){let s=new cH.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=dH.resolveEnd(n,i,e.strict,o);if(s.range=[t,i,a.offset],a.comment)s.comment=a.comment;return s}hH.composeEmptyNode=Vh;hH.composeNode=ME});var UE=E(function(SH){var wH=Hi(),FE=qE(),bH=Bo(),_H=Ji();function vH(e,t,{offset:r,start:n,value:o,end:s},i){let a=Object.assign({_directives:t},e),c=new wH.Document(void 0,a),u={atKey:!1,atRoot:!0,directives:c.directives,options:c.options,schema:c.schema},l=_H.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?FE.composeNode(u,o,l,i):FE.composeEmptyNode(u,l.end,n,null,l,i);let d=c.contents.range[2],f=bH.resolveEnd(s,d,!1,i);if(f.comment)c.comment=f.comment;return c.range=[r,d,f.offset],c}SH.composeDoc=vH});var Zh=E(function(OH){var xH=kr("process"),$H=Gm(),TH=Hi(),Yi=Gi(),WE=ce(),EH=UE(),PH=Bo();function Xi(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 VE(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 ZE{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(t,r,n,o)=>{let s=Xi(t);if(o)this.warnings.push(new Yi.YAMLWarning(s,r,n));else this.errors.push(new Yi.YAMLParseError(s,r,n))},this.directives=new $H.Directives({version:e.version||"1.2"}),this.options=e}decorate(e,t){let{comment:r,afterEmptyLine:n}=VE(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(WE.isCollection(o)&&!o.flow&&o.items.length>0){let s=o.items[0];if(WE.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:VE(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(xH.env.LOG_STREAM)console.dir(e,{depth:null});switch(e.type){case"directive":this.directives.add(e.source,(t,r,n)=>{let o=Xi(e);o[0]+=t,this.onError(o,"BAD_DIRECTIVE",r,n)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{let t=EH.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 Yi.YAMLParseError(Xi(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 Yi.YAMLParseError(Xi(e),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let t=PH.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 Yi.YAMLParseError(Xi(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 TH.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}}}OH.Composer=ZE});var HE=E(function(DH){var AH=Fh(),RH=Wh(),CH=Gi(),BE=Di();function zH(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 CH.YAMLParseError([a,a+1],s,i)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return RH.resolveFlowScalar(e,t,n);case"block-scalar":return AH.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function NH(e,t){let{implicitKey:r=!1,indent:n,inFlow:o=!1,offset:s=-1,type:i="PLAIN"}=t,a=BE.stringifyString({type:i,value:e},{implicitKey:r,indent:n>0?" ".repeat(n):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}}),c=t.end??[{type:"newline",offset:-1,indent:n,source:`
|
|
133
133
|
`}];switch(a[0]){case"|":case">":{let u=a.indexOf(`
|
|
134
134
|
`),l=a.substring(0,u),d=a.substring(u+1)+`
|
|
135
|
-
`,f=[{type:"block-scalar-header",offset:s,indent:n,source:l}];if(!
|
|
136
|
-
`});return{type:"block-scalar",offset:s,indent:n,props:f,source:d}}case'"':return{type:"double-quoted-scalar",offset:s,indent:n,source:a,end:c};case"'":return{type:"single-quoted-scalar",offset:s,indent:n,source:a,end:c};default:return{type:"scalar",offset:s,indent:n,source:a,end:c}}}function
|
|
135
|
+
`,f=[{type:"block-scalar-header",offset:s,indent:n,source:l}];if(!KE(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 LH(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=BE.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">":jH(e,c);break;case'"':Bh(e,c,"double-quoted-scalar");break;case"'":Bh(e,c,"single-quoted-scalar");break;default:Bh(e,c,"scalar")}}function jH(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(!KE(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 KE(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 Bh(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})}}}DH.createScalarToken=NH;DH.resolveAsScalar=zH;DH.setScalarValue=LH});var GE=E(function(WH){var UH=(e)=>("type"in e)?Yu(e):Ju(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+=Ju(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=Ju(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=Ju(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 Ju({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}WH.stringify=UH});var XE=E(function(BH){var Kh=Symbol("break visit"),ZH=Symbol("skip children"),JE=Symbol("remove item");function Hn(e,t){if("type"in e&&e.type==="document")e={start:e.start,value:e.value};YE(Object.freeze([]),e,t)}Hn.BREAK=Kh;Hn.SKIP=ZH;Hn.REMOVE=JE;Hn.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};Hn.parentCollection=(e,t)=>{let r=Hn.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 YE(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=YE(Object.freeze(e.concat([[o,i]])),s.items[i],r);if(typeof a==="number")i=a-1;else if(a===Kh)return Kh;else if(a===JE)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}BH.visit=Hn});var Xu=E(function(eG){var Hh=HE(),HH=GE(),GH=XE(),Gh="\uFEFF",Jh="\x02",Yh="\x18",Xh="\x1F",JH=(e)=>!!e&&("items"in e),YH=(e)=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function XH(e){switch(e){case Gh:return"<BOM>";case Jh:return"<DOC>";case Yh:return"<FLOW_END>";case Xh:return"<SCALAR>";default:return JSON.stringify(e)}}function QH(e){switch(e){case Gh:return"byte-order-mark";case Jh:return"doc-mode";case Yh:return"flow-error-end";case Xh: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}eG.createScalarToken=Hh.createScalarToken;eG.resolveAsScalar=Hh.resolveAsScalar;eG.setScalarValue=Hh.setScalarValue;eG.stringify=HH.stringify;eG.visit=GH.visit;eG.BOM=Gh;eG.DOCUMENT=Jh;eG.FLOW_END=Yh;eG.SCALAR=Xh;eG.isCollection=JH;eG.isScalar=YH;eG.prettyToken=XH;eG.tokenType=QH});var eg=E(function(gG){var Qi=Xu();function Gt(e){switch(e){case void 0:case" ":case`
|
|
143
|
+
`:case"\r":case"\t":return!0;default:return!1}}var QE=new Set("0123456789ABCDEFabcdef"),mG=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Qu=new Set(",[]{}"),hG=new Set(` ,[]{}
|
|
144
|
+
\r `),Qh=(e)=>!e||hG.has(e);class eP{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==="...")&&Gt(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]===Qi.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 Qi.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==="...")&&Gt(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&&!Gt(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===":")&&Gt(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(Qh),"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("..."))&&Gt(n[3])){if(!(r===this.indentNext-1&&this.flowLevel===1&&(n[0]==="]"||n[0]==="}")))return this.flowLevel=0,yield Qi.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(Qh),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let s=this.charAt(1);if(this.flowKey||Gt(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)=>Gt(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 Qi.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(Gt(o)||e&&Qu.has(o))break;t=r}else if(Gt(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&&Qu.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&&Qu.has(n))break;t=r}if(!n&&!this.atEnd)return this.setNext("plain-scalar");return yield Qi.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(Qh),e+=yield*this.pushSpaces(!0);continue e;case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(Gt(r)||t&&Qu.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(!Gt(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(mG.has(t))t=this.buffer[++e];else if(t==="%"&&QE.has(this.buffer[e+1])&&QE.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)}}gG.Lexer=eP});var tg=E(function(wG){class tP{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}}}}wG.LineCounter=tP});var rg=E(function(SG){var _G=kr("process"),rP=Xu(),vG=eg();function on(e,t){for(let r=0;r<e.length;++r)if(e[r].type===t)return!0;return!1}function nP(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 sP(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 el(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 Ko(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 tl(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 oP(e){if(e.start.type==="flow-seq-start"){for(let t of e.items)if(t.sep&&!t.value&&!on(t.start,"explicit-key-ind")&&!on(t.sep,"map-value-ind")){if(t.key)t.value=t.key;if(delete t.key,sP(t.value))if(t.value.end)tl(t.value.end,t.sep);else t.value.end=t.sep;else tl(t.start,t.sep);delete t.sep}}}class iP{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 vG.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,_G.env.LOG_TOKENS)console.log("|",rP.prettyToken(e));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}let t=rP.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")oP(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&&nP(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(nP(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=el(this.peek(2)),r=Ko(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)){tl(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(on(t.start,"newline"))Object.assign(t,{key:null,sep:[this.sourceToken]});else{let s=Ko(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(on(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(sP(t.key)&&!on(t.sep,"newline")){let s=Ko(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(on(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&&!on(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)){tl(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||on(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=el(r),o=Ko(n);oP(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=Vu(e),r=Mo(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=Vu(e),r=Mo(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()}}}gH.Parser=AT});var LT=E(function($H){var RT=Th(),bH=qi(),Bi=Fi(),wH=Dm(),_H=ce(),vH=Dh(),CT=jh();function zT(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new vH.LineCounter||null,prettyErrors:t}}function SH(e,t={}){let{lineCounter:r,prettyErrors:n}=zT(t),o=new CT.Parser(r?.addNewLine),s=new RT.Composer(t),i=Array.from(s.compose(o.parse(e)));if(n&&r)for(let a of i)a.errors.forEach(Bi.prettifyError(e,r)),a.warnings.forEach(Bi.prettifyError(e,r));if(i.length>0)return i;return Object.assign([],{empty:!0},s.streamInfo())}function NT(e,t={}){let{lineCounter:r,prettyErrors:n}=zT(t),o=new CT.Parser(r?.addNewLine),s=new RT.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 Bi.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(n&&r)i.errors.forEach(Bi.prettifyError(e,r)),i.warnings.forEach(Bi.prettifyError(e,r));return i}function kH(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=NT(e,r);if(!o)return null;if(o.warnings.forEach((s)=>wH.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 xH(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(_H.isDocument(e)&&!n)return e.toString(r);return new bH.Document(e,n,r).toString(r)}$H.parse=kH;$H.parseAllDocuments=SH;$H.parseDocument=NT;$H.stringify=xH});var oa=E(function(UO){Object.defineProperty(UO,"__esModule",{value:!0});UO.regexpCode=UO.getEsmExportName=UO.getProperty=UO.safeStringify=UO.stringify=UO.strConcat=UO.addCodeArg=UO.str=UO._=UO.nil=UO._Code=UO.Name=UO.IDENTIFIER=UO._CodeOrName=void 0;class hl{}UO._CodeOrName=hl;UO.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class Vo extends hl{constructor(e){super();if(!UO.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}}}UO.Name=Vo;class Kt extends hl{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 Vo)t[r.str]=(t[r.str]||0)+1;return t},{})}}UO._Code=Kt;UO.nil=new Kt("");function qO(e,...t){let r=[e[0]],n=0;while(n<t.length)Eg(r,t[n]),r.push(e[++n]);return new Kt(r)}UO._=qO;var $g=new Kt("+");function FO(e,...t){let r=[na(e[0])],n=0;while(n<t.length)r.push($g),Eg(r,t[n]),r.push($g,na(e[++n]));return CJ(r),new Kt(r)}UO.str=FO;function Eg(e,t){if(t instanceof Kt)e.push(...t._items);else if(t instanceof Vo)e.push(t);else e.push(LJ(t))}UO.addCodeArg=Eg;function CJ(e){let t=1;while(t<e.length-1){if(e[t]===$g){let r=zJ(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function zJ(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof Vo||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 Vo))return`"${e}${t.slice(1)}`;return}function NJ(e,t){return t.emptyStr()?e:e.emptyStr()?t:FO`${e}${t}`}UO.strConcat=NJ;function LJ(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:na(Array.isArray(e)?e.join(","):e)}function DJ(e){return new Kt(na(e))}UO.stringify=DJ;function na(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}UO.safeStringify=na;function jJ(e){return typeof e=="string"&&UO.IDENTIFIER.test(e)?new Kt(`.${e}`):qO`[${e}]`}UO.getProperty=jJ;function MJ(e){if(typeof e=="string"&&UO.IDENTIFIER.test(e))return new Kt(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}UO.getEsmExportName=MJ;function qJ(e){return new Kt(e.toString())}UO.regexpCode=qJ});var Ig=E(function(BO){Object.defineProperty(BO,"__esModule",{value:!0});BO.ValueScope=BO.ValueScopeName=BO.Scope=BO.varKinds=BO.UsedValueState=void 0;var ye=oa();class VO extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var yl;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(yl||(BO.UsedValueState=yl={}));BO.varKinds={const:new ye.Name("const"),let:new ye.Name("let"),var:new ye.Name("var")};class Og{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}}}BO.Scope=Og;class Pg 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}]`}}BO.ValueScopeName=Pg;var QJ=ye._`\n`;class ZO extends Og{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?QJ:ye.nil}}get(){return this._scope}name(e){return new Pg(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,yl.Started);let u=t(c);if(u){let l=this.opts.es5?BO.varKinds.var:BO.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 VO(c);a.set(c,yl.Completed)})}return o}}BO.ValueScope=ZO});var ee=E(function(pt){Object.defineProperty(pt,"__esModule",{value:!0});pt.or=pt.and=pt.not=pt.CodeGen=pt.operators=pt.varKinds=pt.ValueScopeName=pt.ValueScope=pt.Scope=pt.Name=pt.regexpCode=pt.stringify=pt.getProperty=pt.nil=pt.strConcat=pt.str=pt._=void 0;var M=oa(),Oe=Ig(),rn=oa();Object.defineProperty(pt,"_",{enumerable:!0,get:function(){return rn._}});Object.defineProperty(pt,"str",{enumerable:!0,get:function(){return rn.str}});Object.defineProperty(pt,"strConcat",{enumerable:!0,get:function(){return rn.strConcat}});Object.defineProperty(pt,"nil",{enumerable:!0,get:function(){return rn.nil}});Object.defineProperty(pt,"getProperty",{enumerable:!0,get:function(){return rn.getProperty}});Object.defineProperty(pt,"stringify",{enumerable:!0,get:function(){return rn.stringify}});Object.defineProperty(pt,"regexpCode",{enumerable:!0,get:function(){return rn.regexpCode}});Object.defineProperty(pt,"Name",{enumerable:!0,get:function(){return rn.Name}});var kl=Ig();Object.defineProperty(pt,"Scope",{enumerable:!0,get:function(){return kl.Scope}});Object.defineProperty(pt,"ValueScope",{enumerable:!0,get:function(){return kl.ValueScope}});Object.defineProperty(pt,"ValueScopeName",{enumerable:!0,get:function(){return kl.ValueScopeName}});Object.defineProperty(pt,"varKinds",{enumerable:!0,get:function(){return kl.varKinds}});pt.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 nn{optimizeNodes(){return this}optimizeNames(e,t){return this}}class HO extends nn{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?Oe.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=Bo(this.rhs,e,t);return this}get names(){return this.rhs instanceof M._CodeOrName?this.rhs.names:{}}}class Cg extends nn{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=Bo(this.rhs,e,t),this}get names(){let e=this.lhs instanceof M.Name?{}:{...this.lhs.names};return Sl(e,this.rhs)}}class GO extends Cg{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class JO extends nn{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class YO extends nn{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class XO extends nn{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class QO extends nn{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=Bo(this.code,e,t),this}get names(){return this.code instanceof M._CodeOrName?this.code.names:{}}}class xl extends nn{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;n6(e,o.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>Kn(e,t.names),{})}}class on extends xl{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class eP extends xl{}class sa extends on{}sa.kind="else";class Ir extends on{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 sa(r):r}if(t){if(e===!1)return t instanceof Ir?t:t.nodes;if(this.nodes.length)return this;return new Ir(sP(e),t instanceof Ir?[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=Bo(this.condition,e,t),this}get names(){let e=super.names;if(Sl(e,this.condition),this.else)Kn(e,this.else.names);return e}}Ir.kind="if";class Zo extends on{}Zo.kind="for";class tP extends Zo{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=Bo(this.iteration,e,t),this}get names(){return Kn(super.names,this.iteration.names)}}class rP extends Zo{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?Oe.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=Sl(super.names,this.from);return Sl(e,this.to)}}class Ag extends Zo{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=Bo(this.iterable,e,t),this}get names(){return Kn(super.names,this.iterable.names)}}class bl extends on{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)}}bl.kind="func";class wl extends xl{render(e){return"return "+super.render(e)}}wl.kind="return";class nP extends on{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)Kn(e,this.catch.names);if(this.finally)Kn(e,this.finally.names);return e}}class _l extends on{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}_l.kind="catch";class vl extends on{render(e){return"finally"+super.render(e)}}vl.kind="finally";class oP{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
|
|
166
|
-
`:""},this._extScope=e,this._scope=new Oe.Scope({parent:e}),this._nodes=[new eP]}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 HO(e,o,r)),o}const(e,t,r){return this._def(Oe.varKinds.const,e,t,r)}let(e,t,r){return this._def(Oe.varKinds.let,e,t,r)}var(e,t,r){return this._def(Oe.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new Cg(e,t,r))}add(e,t){return this._leafNode(new GO(e,pt.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==M.nil)this._leafNode(new QO(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 Ir(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 Ir(e))}else(){return this._elseNode(new sa)}endIf(){return this._endBlockNode(Ir,sa)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new tP(e),t)}forRange(e,t,r,n,o=this.opts.es5?Oe.varKinds.var:Oe.varKinds.let){let s=this._scope.toName(e);return this._for(new rP(o,s,t,r),()=>n(s))}forOf(e,t,r,n=Oe.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 Ag("of",n,o,t),()=>r(o))}forIn(e,t,r,n=this.opts.es5?Oe.varKinds.var:Oe.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 Ag("in",n,o,t),()=>r(o))}endFor(){return this._endBlockNode(Zo)}label(e){return this._leafNode(new JO(e))}break(e){return this._leafNode(new YO(e))}return(e){let t=new wl;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(wl)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new nP;if(this._blockNode(n),this.code(e),t){let o=this.name("e");this._currNode=n.catch=new _l(o),t(o)}if(r)this._currNode=n.finally=new vl,this.code(r);return this._endBlockNode(_l,vl)}throw(e){return this._leafNode(new XO(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 bl(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(bl)}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 Ir))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}}pt.CodeGen=oP;function Kn(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Sl(e,t){return t instanceof M._CodeOrName?Kn(e,t.names):e}function Bo(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 n6(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function sP(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:M._`!${Rg(e)}`}pt.not=sP;var o6=iP(pt.operators.AND);function s6(...e){return e.reduce(o6)}pt.and=s6;var i6=iP(pt.operators.OR);function a6(...e){return e.reduce(i6)}pt.or=a6;function iP(e){return(t,r)=>t===M.nil?r:r===M.nil?t:M._`${Rg(t)} ${e} ${Rg(r)}`}function Rg(e){return e instanceof M.Name?e:M._`(${e})`}});var ue=E(function(gP){Object.defineProperty(gP,"__esModule",{value:!0});gP.checkStrictMode=gP.getErrorPath=gP.Type=gP.useFunc=gP.setEvaluated=gP.evaluatedPropsToName=gP.mergeEvaluated=gP.eachItem=gP.unescapeJsonPointer=gP.escapeJsonPointer=gP.escapeFragment=gP.unescapeFragment=gP.schemaRefOrVal=gP.schemaHasRulesButRef=gP.schemaHasRules=gP.checkUnknownRules=gP.alwaysValidSchema=gP.toHash=void 0;var B=ee(),lP=oa();function d6(e){let t={};for(let r of e)t[r]=!0;return t}gP.toHash=d6;function p6(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return dP(e,t),!pP(t,e.self.RULES.all)}gP.alwaysValidSchema=p6;function dP(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])hP(e,`unknown keyword: "${s}"`)}gP.checkUnknownRules=dP;function pP(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}gP.schemaHasRules=pP;function f6(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}gP.schemaHasRulesButRef=f6;function m6({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)}`}gP.schemaRefOrVal=m6;function h6(e){return fP(decodeURIComponent(e))}gP.unescapeFragment=h6;function g6(e){return encodeURIComponent(Ng(e))}gP.escapeFragment=g6;function Ng(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}gP.escapeJsonPointer=Ng;function fP(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}gP.unescapeJsonPointer=fP;function y6(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}gP.eachItem=y6;function cP({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}}gP.mergeEvaluated={props:cP({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} || {}`),Lg(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:mP}),items:cP({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 mP(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",B._`{}`);if(t!==void 0)Lg(e,r,t);return r}gP.evaluatedPropsToName=mP;function Lg(e,t,r){Object.keys(r).forEach((n)=>e.assign(B._`${t}${B.getProperty(n)}`,!0))}gP.setEvaluated=Lg;var uP={};function b6(e,t){return e.scopeValue("func",{ref:t,code:uP[t.code]||(uP[t.code]=new lP._Code(t.code))})}gP.useFunc=b6;var zg;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(zg||(gP.Type=zg={}));function w6(e,t,r){if(e instanceof B.Name){let n=t===zg.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():"/"+Ng(e)}gP.getErrorPath=w6;function hP(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}gP.checkStrictMode=hP});var Ar=E(function(bP){Object.defineProperty(bP,"__esModule",{value:!0});var de=ee(),D6={data:new de.Name("data"),valCxt:new de.Name("valCxt"),instancePath:new de.Name("instancePath"),parentData:new de.Name("parentData"),parentDataProperty:new de.Name("parentDataProperty"),rootData:new de.Name("rootData"),dynamicAnchors:new de.Name("dynamicAnchors"),vErrors:new de.Name("vErrors"),errors:new de.Name("errors"),this:new de.Name("this"),self:new de.Name("self"),scope:new de.Name("scope"),json:new de.Name("json"),jsonPos:new de.Name("jsonPos"),jsonLen:new de.Name("jsonLen"),jsonPart:new de.Name("jsonPart")};bP.default=D6});var ia=E(function(SP){Object.defineProperty(SP,"__esModule",{value:!0});SP.extendErrors=SP.resetErrorsCount=SP.reportExtraError=SP.reportError=SP.keyword$DataError=SP.keywordError=void 0;var F=ee(),sn=ue(),ot=Ar();SP.keywordError={message:({keyword:e})=>F.str`must pass "${e}" keyword validation`};SP.keyword$DataError={message:({keyword:e,schemaType:t})=>t?F.str`"${e}" keyword must be ${t} ($data)`:F.str`"${e}" keyword is invalid ($data)`};function M6(e,t=SP.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=vP(e,t,r);if(n!==null&&n!==void 0?n:i||a)wP(s,c);else _P(o,F._`[${c}]`)}SP.reportError=M6;function q6(e,t=SP.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=vP(e,t,r);if(wP(o,a),!(s||i))_P(n,ot.default.vErrors)}SP.reportExtraError=q6;function F6(e,t){e.assign(ot.default.errors,t),e.if(F._`${ot.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(F._`${ot.default.vErrors}.length`,t),()=>e.assign(ot.default.vErrors,null)))}SP.resetErrorsCount=F6;function U6({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,ot.default.errors,(a)=>{if(e.const(i,F._`${ot.default.vErrors}[${a}]`),e.if(F._`${i}.instancePath === undefined`,()=>e.assign(F._`${i}.instancePath`,F.strConcat(ot.default.instancePath,s.errorPath))),e.assign(F._`${i}.schemaPath`,F.str`${s.errSchemaPath}/${t}`),s.opts.verbose)e.assign(F._`${i}.schema`,r),e.assign(F._`${i}.data`,n)})}SP.extendErrors=U6;function wP(e,t){let r=e.const("err",t);e.if(F._`${ot.default.vErrors} === null`,()=>e.assign(ot.default.vErrors,F._`[${r}]`),F._`${ot.default.vErrors}.push(${r})`),e.code(F._`${ot.default.errors}++`)}function _P(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;if(o.$async)r.throw(F._`new ${e.ValidationError}(${t})`);else r.assign(F._`${n}.errors`,t),r.return(!1)}var Hn={keyword:new F.Name("keyword"),schemaPath:new F.Name("schemaPath"),params:new F.Name("params"),propertyName:new F.Name("propertyName"),message:new F.Name("message"),schema:new F.Name("schema"),parentSchema:new F.Name("parentSchema")};function vP(e,t,r){let{createErrors:n}=e.it;if(n===!1)return F._`{}`;return W6(e,t,r)}function W6(e,t,r={}){let{gen:n,it:o}=e,s=[V6(o,r),Z6(e,r)];return B6(e,t,s),n.object(...s)}function V6({errorPath:e},{instancePath:t}){let r=t?F.str`${e}${sn.getErrorPath(t,sn.Type.Str)}`:e;return[ot.default.instancePath,F.strConcat(ot.default.instancePath,r)]}function Z6({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:F.str`${t}/${e}`;if(r)o=F.str`${o}${sn.getErrorPath(r,sn.Type.Str)}`;return[Hn.schemaPath,o]}function B6(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([Hn.keyword,o],[Hn.params,typeof t=="function"?t(e):t||F._`{}`]),c.messages)n.push([Hn.message,typeof r=="function"?r(e):r]);if(c.verbose)n.push([Hn.schema,i],[Hn.parentSchema,F._`${l}${d}`],[ot.default.data,s]);if(u)n.push([Hn.propertyName,u])}});var PP=E(function(TP){Object.defineProperty(TP,"__esModule",{value:!0});TP.boolOrEmptySchema=TP.topBoolOrEmptySchema=void 0;var xP=ia(),$P=ee(),Y6=Ar(),X6={message:"boolean schema is false"};function Q6(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)EP(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(Y6.default.data);else t.assign($P._`${n}.errors`,null),t.return(!0)}TP.topBoolOrEmptySchema=Q6;function e5(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),EP(e);else r.var(t,!0)}TP.boolOrEmptySchema=e5;function EP(e,t){let{gen:r,data:n}=e;xP.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},X6,void 0,t)}});var jg=E(function(IP){Object.defineProperty(IP,"__esModule",{value:!0});IP.getRules=IP.isJSONType=void 0;var r5=["string","number","integer","boolean","null","object","array"],n5=new Set(r5);function o5(e){return typeof e=="string"&&n5.has(e)}IP.isJSONType=o5;function s5(){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:{}}}IP.getRules=s5});var Mg=E(function(zP){Object.defineProperty(zP,"__esModule",{value:!0});zP.shouldUseRule=zP.shouldUseGroup=zP.schemaHasRulesForType=void 0;function a5({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&RP(e,n)}zP.schemaHasRulesForType=a5;function RP(e,t){return t.rules.some((r)=>CP(e,r))}zP.shouldUseGroup=RP;function CP(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))}zP.shouldUseRule=CP});var aa=E(function(FP){Object.defineProperty(FP,"__esModule",{value:!0});FP.reportTypeError=FP.checkDataTypes=FP.checkDataType=FP.coerceAndCheckDataType=FP.getJSONTypes=FP.getSchemaTypes=FP.DataType=void 0;var LP=jg(),DP=Mg(),jP=ia(),L=ee(),El=ue(),Ko;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(Ko||(FP.DataType=Ko={}));function l5(e){let t=MP(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}FP.getSchemaTypes=l5;function MP(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(LP.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}FP.getJSONTypes=MP;function d5(e,t){let{gen:r,data:n,opts:o}=e,s=p5(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&DP.schemaHasRulesForType(e,t[0]));if(i){let a=Fg(t,n,o.strictNumbers,Ko.Wrong);r.if(a,()=>{if(s.length)f5(e,t,s);else Ug(e)})}return i}FP.coerceAndCheckDataType=d5;var qP=new Set(["string","number","integer","boolean","null"]);function p5(e,t){return t?e.filter((r)=>qP.has(r)||t==="array"&&r==="array"):[]}function f5(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(Fg(t,o,s.strictNumbers),()=>n.assign(a,o)));n.if(L._`${a} !== undefined`);for(let u of r)if(qP.has(u)||u==="array"&&s.coerceTypes==="array")c(u);n.else(),Ug(e),n.endIf(),n.if(L._`${a} !== undefined`,()=>{n.assign(o,a),m5(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
|
|
165
|
+
`,t)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let t=el(e),r=Ko(t);return r.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let t=el(e),r=Ko(t);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,t){if(this.type!=="comment")return!1;if(this.indent<=t)return!1;return e.every((r)=>r.type==="newline"||r.type==="space")}*documentEnd(e){if(this.type!=="doc-mode"){if(e.end)e.end.push(this.sourceToken);else e.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(e.end)e.end.push(this.sourceToken);else e.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}SG.Parser=iP});var dP=E(function(AG){var aP=Zh(),xG=Hi(),ea=Gi(),$G=th(),TG=ce(),EG=tg(),cP=rg();function uP(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new EG.LineCounter||null,prettyErrors:t}}function PG(e,t={}){let{lineCounter:r,prettyErrors:n}=uP(t),o=new cP.Parser(r?.addNewLine),s=new aP.Composer(t),i=Array.from(s.compose(o.parse(e)));if(n&&r)for(let a of i)a.errors.forEach(ea.prettifyError(e,r)),a.warnings.forEach(ea.prettifyError(e,r));if(i.length>0)return i;return Object.assign([],{empty:!0},s.streamInfo())}function lP(e,t={}){let{lineCounter:r,prettyErrors:n}=uP(t),o=new cP.Parser(r?.addNewLine),s=new aP.Composer(t),i=null;for(let a of s.compose(o.parse(e),!0,e.length))if(!i)i=a;else if(i.options.logLevel!=="silent"){i.errors.push(new ea.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(n&&r)i.errors.forEach(ea.prettifyError(e,r)),i.warnings.forEach(ea.prettifyError(e,r));return i}function OG(e,t,r){let n=void 0;if(typeof t==="function")n=t;else if(r===void 0&&t&&typeof t==="object")r=t;let o=lP(e,r);if(!o)return null;if(o.warnings.forEach((s)=>$G.warn(o.options.logLevel,s)),o.errors.length>0)if(o.options.logLevel!=="silent")throw o.errors[0];else o.errors=[];return o.toJS(Object.assign({reviver:n},r))}function IG(e,t,r){let n=null;if(typeof t==="function"||Array.isArray(t))n=t;else if(r===void 0&&t)r=t;if(typeof r==="string")r=r.length;if(typeof r==="number"){let o=Math.round(r);r=o<1?void 0:o>8?{indent:8}:{indent:o}}if(e===void 0){let{keepUndefined:o}=r??t??{};if(!o)return}if(TG.isDocument(e)&&!n)return e.toString(r);return new xG.Document(e,n,r).toString(r)}AG.parse=OG;AG.parseAllDocuments=PG;AG.parseDocument=lP;AG.stringify=IG});var pa=E(function(yO){Object.defineProperty(yO,"__esModule",{value:!0});yO.regexpCode=yO.getEsmExportName=yO.getProperty=yO.safeStringify=yO.stringify=yO.strConcat=yO.addCodeArg=yO.str=yO._=yO.nil=yO._Code=yO.Name=yO.IDENTIFIER=yO._CodeOrName=void 0;class $l{}yO._CodeOrName=$l;yO.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class Xo extends $l{constructor(e){super();if(!yO.IDENTIFIER.test(e))throw Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}yO.Name=Xo;class Yt extends $l{constructor(e){super();this._items=typeof e==="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((t,r)=>`${t}${r}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((t,r)=>{if(r instanceof Xo)t[r.str]=(t[r.str]||0)+1;return t},{})}}yO._Code=Yt;yO.nil=new Yt("");function hO(e,...t){let r=[e[0]],n=0;while(n<t.length)Vg(r,t[n]),r.push(e[++n]);return new Yt(r)}yO._=hO;var Wg=new Yt("+");function gO(e,...t){let r=[da(e[0])],n=0;while(n<t.length)r.push(Wg),Vg(r,t[n]),r.push(Wg,da(e[++n]));return M6(r),new Yt(r)}yO.str=gO;function Vg(e,t){if(t instanceof Yt)e.push(...t._items);else if(t instanceof Xo)e.push(t);else e.push(U6(t))}yO.addCodeArg=Vg;function M6(e){let t=1;while(t<e.length-1){if(e[t]===Wg){let r=q6(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function q6(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof Xo||e[e.length-1]!=='"')return;if(typeof t!="string")return`${e.slice(0,-1)}${t}"`;if(t[0]==='"')return e.slice(0,-1)+t.slice(1);return}if(typeof t=="string"&&t[0]==='"'&&!(e instanceof Xo))return`"${e}${t.slice(1)}`;return}function F6(e,t){return t.emptyStr()?e:e.emptyStr()?t:gO`${e}${t}`}yO.strConcat=F6;function U6(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:da(Array.isArray(e)?e.join(","):e)}function W6(e){return new Yt(da(e))}yO.stringify=W6;function da(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}yO.safeStringify=da;function V6(e){return typeof e=="string"&&yO.IDENTIFIER.test(e)?new Yt(`.${e}`):hO`[${e}]`}yO.getProperty=V6;function Z6(e){if(typeof e=="string"&&yO.IDENTIFIER.test(e))return new Yt(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}yO.getEsmExportName=Z6;function B6(e){return new Yt(e.toString())}yO.regexpCode=B6});var Hg=E(function(vO){Object.defineProperty(vO,"__esModule",{value:!0});vO.ValueScope=vO.ValueScopeName=vO.Scope=vO.varKinds=vO.UsedValueState=void 0;var we=pa();class bO extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var El;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(El||(vO.UsedValueState=El={}));vO.varKinds={const:new we.Name("const"),let:new we.Name("let"),var:new we.Name("var")};class Bg{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof we.Name?e:this.name(e)}name(e){return new we.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){var t,r;if(((r=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||r===void 0?void 0:r.has(e))||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}}vO.Scope=Bg;class Kg extends we.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=we._`.${new we.Name(t)}[${r}]`}}vO.ValueScopeName=Kg;var s5=we._`\n`;class _O extends Bg{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?s5:we.nil}}get(){return this._scope}name(e){return new Kg(e,this._newName(e))}value(e,t){var r;if(t.ref===void 0)throw Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:o}=n,s=(r=t.key)!==null&&r!==void 0?r:t.ref,i=this._values[o];if(i){let u=i.get(s);if(u)return u}else i=this._values[o]=new Map;i.set(s,n);let a=this._scope[o]||(this._scope[o]=[]),c=a.length;return a[c]=t.ref,n.setValue(t,{property:o,itemIndex:c}),n}getValue(e,t){let r=this._values[e];if(!r)return;return r.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,(r)=>{if(r.scopePath===void 0)throw Error(`CodeGen: name "${r}" has no value`);return we._`${e}${r.scopePath}`})}scopeCode(e=this._values,t,r){return this._reduceValues(e,(n)=>{if(n.value===void 0)throw Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,r)}_reduceValues(e,t,r={},n){let o=we.nil;for(let s in e){let i=e[s];if(!i)continue;let a=r[s]=r[s]||new Map;i.forEach((c)=>{if(a.has(c))return;a.set(c,El.Started);let u=t(c);if(u){let l=this.opts.es5?vO.varKinds.var:vO.varKinds.const;o=we._`${o}${l} ${c} = ${u};${this.opts._n}`}else if(u=n===null||n===void 0?void 0:n(c))o=we._`${o}${u}${this.opts._n}`;else throw new bO(c);a.set(c,El.Completed)})}return o}}vO.ValueScope=_O});var ee=E(function(ft){Object.defineProperty(ft,"__esModule",{value:!0});ft.or=ft.and=ft.not=ft.CodeGen=ft.operators=ft.varKinds=ft.ValueScopeName=ft.ValueScope=ft.Scope=ft.Name=ft.regexpCode=ft.stringify=ft.getProperty=ft.nil=ft.strConcat=ft.str=ft._=void 0;var M=pa(),Ie=Hg(),un=pa();Object.defineProperty(ft,"_",{enumerable:!0,get:function(){return un._}});Object.defineProperty(ft,"str",{enumerable:!0,get:function(){return un.str}});Object.defineProperty(ft,"strConcat",{enumerable:!0,get:function(){return un.strConcat}});Object.defineProperty(ft,"nil",{enumerable:!0,get:function(){return un.nil}});Object.defineProperty(ft,"getProperty",{enumerable:!0,get:function(){return un.getProperty}});Object.defineProperty(ft,"stringify",{enumerable:!0,get:function(){return un.stringify}});Object.defineProperty(ft,"regexpCode",{enumerable:!0,get:function(){return un.regexpCode}});Object.defineProperty(ft,"Name",{enumerable:!0,get:function(){return un.Name}});var Cl=Hg();Object.defineProperty(ft,"Scope",{enumerable:!0,get:function(){return Cl.Scope}});Object.defineProperty(ft,"ValueScope",{enumerable:!0,get:function(){return Cl.ValueScope}});Object.defineProperty(ft,"ValueScopeName",{enumerable:!0,get:function(){return Cl.ValueScopeName}});Object.defineProperty(ft,"varKinds",{enumerable:!0,get:function(){return Cl.varKinds}});ft.operators={GT:new M._Code(">"),GTE:new M._Code(">="),LT:new M._Code("<"),LTE:new M._Code("<="),EQ:new M._Code("==="),NEQ:new M._Code("!=="),NOT:new M._Code("!"),OR:new M._Code("||"),AND:new M._Code("&&"),ADD:new M._Code("+")};class ln{optimizeNodes(){return this}optimizeNames(e,t){return this}}class kO extends ln{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?Ie.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${r} ${this.name}${n};`+t}optimizeNames(e,t){if(!e[this.name.str])return;if(this.rhs)this.rhs=es(this.rhs,e,t);return this}get names(){return this.rhs instanceof M._CodeOrName?this.rhs.names:{}}}class Yg extends ln{constructor(e,t,r){super();this.lhs=e,this.rhs=t,this.sideEffects=r}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(this.lhs instanceof M.Name&&!e[this.lhs.str]&&!this.sideEffects)return;return this.rhs=es(this.rhs,e,t),this}get names(){let e=this.lhs instanceof M.Name?{}:{...this.lhs.names};return Rl(e,this.rhs)}}class xO extends Yg{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class $O extends ln{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class TO extends ln{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class EO extends ln{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class PO extends ln{constructor(e){super();this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=es(this.code,e,t),this}get names(){return this.code instanceof M._CodeOrName?this.code.names:{}}}class zl extends ln{constructor(e=[]){super();this.nodes=e}render(e){return this.nodes.reduce((t,r)=>t+r.render(e),"")}optimizeNodes(){let{nodes:e}=this,t=e.length;while(t--){let r=e[t].optimizeNodes();if(Array.isArray(r))e.splice(t,1,...r);else if(r)e[t]=r;else e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:r}=this,n=r.length;while(n--){let o=r[n];if(o.optimizeNames(e,t))continue;u5(e,o.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>Xn(e,t.names),{})}}class dn extends zl{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class OO extends zl{}class fa extends dn{}fa.kind="else";class Cr extends dn{constructor(e,t){super(t);this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);if(this.else)t+="else "+this.else.render(e);return t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let r=t.optimizeNodes();t=this.else=Array.isArray(r)?new fa(r):r}if(t){if(e===!1)return t instanceof Cr?t:t.nodes;if(this.nodes.length)return this;return new Cr(zO(e),t instanceof Cr?[t]:t.nodes)}if(e===!1||!this.nodes.length)return;return this}optimizeNames(e,t){var r;if(this.else=(r=this.else)===null||r===void 0?void 0:r.optimizeNames(e,t),!(super.optimizeNames(e,t)||this.else))return;return this.condition=es(this.condition,e,t),this}get names(){let e=super.names;if(Rl(e,this.condition),this.else)Xn(e,this.else.names);return e}}Cr.kind="if";class Qo extends dn{}Qo.kind="for";class IO extends Qo{constructor(e){super();this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iteration=es(this.iteration,e,t),this}get names(){return Xn(super.names,this.iteration.names)}}class AO extends Qo{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?Ie.varKinds.var:this.varKind,{name:r,from:n,to:o}=this;return`for(${t} ${r}=${n}; ${r}<${o}; ${r}++)`+super.render(e)}get names(){let e=Rl(super.names,this.from);return Rl(e,this.to)}}class Gg extends Qo{constructor(e,t,r,n){super();this.loop=e,this.varKind=t,this.name=r,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iterable=es(this.iterable,e,t),this}get names(){return Xn(super.names,this.iterable.names)}}class Pl extends dn{constructor(e,t,r){super();this.name=e,this.args=t,this.async=r}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}Pl.kind="func";class Ol extends zl{render(e){return"return "+super.render(e)}}Ol.kind="return";class RO extends dn{render(e){let t="try"+super.render(e);if(this.catch)t+=this.catch.render(e);if(this.finally)t+=this.finally.render(e);return t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(e,t){var r,n;return super.optimizeNames(e,t),(r=this.catch)===null||r===void 0||r.optimizeNames(e,t),(n=this.finally)===null||n===void 0||n.optimizeNames(e,t),this}get names(){let e=super.names;if(this.catch)Xn(e,this.catch.names);if(this.finally)Xn(e,this.finally.names);return e}}class Il extends dn{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}Il.kind="catch";class Al extends dn{render(e){return"finally"+super.render(e)}}Al.kind="finally";class CO{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
|
|
166
|
+
`:""},this._extScope=e,this._scope=new Ie.Scope({parent:e}),this._nodes=[new OO]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let r=this._extScope.value(e,t);return(this._values[r.prefix]||(this._values[r.prefix]=new Set)).add(r),r}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,r,n){let o=this._scope.toName(t);if(r!==void 0&&n)this._constants[o.str]=r;return this._leafNode(new kO(e,o,r)),o}const(e,t,r){return this._def(Ie.varKinds.const,e,t,r)}let(e,t,r){return this._def(Ie.varKinds.let,e,t,r)}var(e,t,r){return this._def(Ie.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new Yg(e,t,r))}add(e,t){return this._leafNode(new xO(e,ft.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==M.nil)this._leafNode(new PO(e));return this}object(...e){let t=["{"];for(let[r,n]of e){if(t.length>1)t.push(",");if(t.push(r),r!==n||this.opts.es5)t.push(":"),M.addCodeArg(t,n)}return t.push("}"),new M._Code(t)}if(e,t,r){if(this._blockNode(new Cr(e)),t&&r)this.code(t).else().code(r).endIf();else if(t)this.code(t).endIf();else if(r)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Cr(e))}else(){return this._elseNode(new fa)}endIf(){return this._endBlockNode(Cr,fa)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new IO(e),t)}forRange(e,t,r,n,o=this.opts.es5?Ie.varKinds.var:Ie.varKinds.let){let s=this._scope.toName(e);return this._for(new AO(o,s,t,r),()=>n(s))}forOf(e,t,r,n=Ie.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let s=t instanceof M.Name?t:this.var("_arr",t);return this.forRange("_i",0,M._`${s}.length`,(i)=>{this.var(o,M._`${s}[${i}]`),r(o)})}return this._for(new Gg("of",n,o,t),()=>r(o))}forIn(e,t,r,n=this.opts.es5?Ie.varKinds.var:Ie.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,M._`Object.keys(${t})`,r);let o=this._scope.toName(e);return this._for(new Gg("in",n,o,t),()=>r(o))}endFor(){return this._endBlockNode(Qo)}label(e){return this._leafNode(new $O(e))}break(e){return this._leafNode(new TO(e))}return(e){let t=new Ol;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Ol)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new RO;if(this._blockNode(n),this.code(e),t){let o=this.name("e");this._currNode=n.catch=new Il(o),t(o)}if(r)this._currNode=n.finally=new Al,this.code(r);return this._endBlockNode(Il,Al)}throw(e){return this._leafNode(new EO(e))}block(e,t){if(this._blockStarts.push(this._nodes.length),e)this.code(e).endBlock(t);return this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error("CodeGen: not in self-balancing block");let r=this._nodes.length-t;if(r<0||e!==void 0&&r!==e)throw Error(`CodeGen: wrong number of nodes: ${r} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=M.nil,r,n){if(this._blockNode(new Pl(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(Pl)}optimize(e=1){while(e-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let r=this._currNode;if(r instanceof e||t&&r instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof Cr))throw Error('CodeGen: "else" without "if"');return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}}ft.CodeGen=CO;function Xn(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Rl(e,t){return t instanceof M._CodeOrName?Xn(e,t.names):e}function es(e,t,r){if(e instanceof M.Name)return n(e);if(!o(e))return e;return new M._Code(e._items.reduce((s,i)=>{if(i instanceof M.Name)i=n(i);if(i instanceof M._Code)s.push(...i._items);else s.push(i);return s},[]));function n(s){let i=r[s.str];if(i===void 0||t[s.str]!==1)return s;return delete t[s.str],i}function o(s){return s instanceof M._Code&&s._items.some((i)=>i instanceof M.Name&&t[i.str]===1&&r[i.str]!==void 0)}}function u5(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function zO(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:M._`!${Jg(e)}`}ft.not=zO;var l5=NO(ft.operators.AND);function d5(...e){return e.reduce(l5)}ft.and=d5;var p5=NO(ft.operators.OR);function f5(...e){return e.reduce(p5)}ft.or=f5;function NO(e){return(t,r)=>t===M.nil?r:r===M.nil?t:M._`${Jg(t)} ${e} ${Jg(r)}`}function Jg(e){return e instanceof M.Name?e:M._`(${e})`}});var ue=E(function(ZO){Object.defineProperty(ZO,"__esModule",{value:!0});ZO.checkStrictMode=ZO.getErrorPath=ZO.Type=ZO.useFunc=ZO.setEvaluated=ZO.evaluatedPropsToName=ZO.mergeEvaluated=ZO.eachItem=ZO.unescapeJsonPointer=ZO.escapeJsonPointer=ZO.escapeFragment=ZO.unescapeFragment=ZO.schemaRefOrVal=ZO.schemaHasRulesButRef=ZO.schemaHasRules=ZO.checkUnknownRules=ZO.alwaysValidSchema=ZO.toHash=void 0;var B=ee(),MO=pa();function y5(e){let t={};for(let r of e)t[r]=!0;return t}ZO.toHash=y5;function w5(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return qO(e,t),!FO(t,e.self.RULES.all)}ZO.alwaysValidSchema=w5;function qO(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema)return;if(typeof t==="boolean")return;let o=n.RULES.keywords;for(let s in t)if(!o[s])VO(e,`unknown keyword: "${s}"`)}ZO.checkUnknownRules=qO;function FO(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}ZO.schemaHasRules=FO;function b5(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}ZO.schemaHasRulesButRef=b5;function _5({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return B._`${r}`}return B._`${e}${t}${B.getProperty(n)}`}ZO.schemaRefOrVal=_5;function v5(e){return UO(decodeURIComponent(e))}ZO.unescapeFragment=v5;function S5(e){return encodeURIComponent(Qg(e))}ZO.escapeFragment=S5;function Qg(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}ZO.escapeJsonPointer=Qg;function UO(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}ZO.unescapeJsonPointer=UO;function k5(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}ZO.eachItem=k5;function jO({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof B.Name?(s instanceof B.Name?e(o,s,i):t(o,s,i),i):s instanceof B.Name?(t(o,i,s),s):r(s,i);return a===B.Name&&!(c instanceof B.Name)?n(o,c):c}}ZO.mergeEvaluated={props:jO({mergeNames:(e,t,r)=>e.if(B._`${r} !== true && ${t} !== undefined`,()=>{e.if(B._`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,B._`${r} || {}`).code(B._`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if(B._`${r} !== true`,()=>{if(t===!0)e.assign(r,!0);else e.assign(r,B._`${r} || {}`),ey(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:WO}),items:jO({mergeNames:(e,t,r)=>e.if(B._`${r} !== true && ${t} !== undefined`,()=>e.assign(r,B._`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if(B._`${r} !== true`,()=>e.assign(r,t===!0?!0:B._`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function WO(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",B._`{}`);if(t!==void 0)ey(e,r,t);return r}ZO.evaluatedPropsToName=WO;function ey(e,t,r){Object.keys(r).forEach((n)=>e.assign(B._`${t}${B.getProperty(n)}`,!0))}ZO.setEvaluated=ey;var DO={};function x5(e,t){return e.scopeValue("func",{ref:t,code:DO[t.code]||(DO[t.code]=new MO._Code(t.code))})}ZO.useFunc=x5;var Xg;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Xg||(ZO.Type=Xg={}));function $5(e,t,r){if(e instanceof B.Name){let n=t===Xg.Num;return r?n?B._`"[" + ${e} + "]"`:B._`"['" + ${e} + "']"`:n?B._`"/" + ${e}`:B._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?B.getProperty(e).toString():"/"+Qg(e)}ZO.getErrorPath=$5;function VO(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}ZO.checkStrictMode=VO});var zr=E(function(KO){Object.defineProperty(KO,"__esModule",{value:!0});var de=ee(),W5={data:new de.Name("data"),valCxt:new de.Name("valCxt"),instancePath:new de.Name("instancePath"),parentData:new de.Name("parentData"),parentDataProperty:new de.Name("parentDataProperty"),rootData:new de.Name("rootData"),dynamicAnchors:new de.Name("dynamicAnchors"),vErrors:new de.Name("vErrors"),errors:new de.Name("errors"),this:new de.Name("this"),self:new de.Name("self"),scope:new de.Name("scope"),json:new de.Name("json"),jsonPos:new de.Name("jsonPos"),jsonLen:new de.Name("jsonLen"),jsonPart:new de.Name("jsonPart")};KO.default=W5});var ma=E(function(YO){Object.defineProperty(YO,"__esModule",{value:!0});YO.extendErrors=YO.resetErrorsCount=YO.reportExtraError=YO.reportError=YO.keyword$DataError=YO.keywordError=void 0;var F=ee(),pn=ue(),st=zr();YO.keywordError={message:({keyword:e})=>F.str`must pass "${e}" keyword validation`};YO.keyword$DataError={message:({keyword:e,schemaType:t})=>t?F.str`"${e}" keyword must be ${t} ($data)`:F.str`"${e}" keyword is invalid ($data)`};function Z5(e,t=YO.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=JO(e,t,r);if(n!==null&&n!==void 0?n:i||a)HO(s,c);else GO(o,F._`[${c}]`)}YO.reportError=Z5;function B5(e,t=YO.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=JO(e,t,r);if(HO(o,a),!(s||i))GO(n,st.default.vErrors)}YO.reportExtraError=B5;function K5(e,t){e.assign(st.default.errors,t),e.if(F._`${st.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(F._`${st.default.vErrors}.length`,t),()=>e.assign(st.default.vErrors,null)))}YO.resetErrorsCount=K5;function H5({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw Error("ajv implementation error");let i=e.name("err");e.forRange("i",o,st.default.errors,(a)=>{if(e.const(i,F._`${st.default.vErrors}[${a}]`),e.if(F._`${i}.instancePath === undefined`,()=>e.assign(F._`${i}.instancePath`,F.strConcat(st.default.instancePath,s.errorPath))),e.assign(F._`${i}.schemaPath`,F.str`${s.errSchemaPath}/${t}`),s.opts.verbose)e.assign(F._`${i}.schema`,r),e.assign(F._`${i}.data`,n)})}YO.extendErrors=H5;function HO(e,t){let r=e.const("err",t);e.if(F._`${st.default.vErrors} === null`,()=>e.assign(st.default.vErrors,F._`[${r}]`),F._`${st.default.vErrors}.push(${r})`),e.code(F._`${st.default.errors}++`)}function GO(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;if(o.$async)r.throw(F._`new ${e.ValidationError}(${t})`);else r.assign(F._`${n}.errors`,t),r.return(!1)}var Qn={keyword:new F.Name("keyword"),schemaPath:new F.Name("schemaPath"),params:new F.Name("params"),propertyName:new F.Name("propertyName"),message:new F.Name("message"),schema:new F.Name("schema"),parentSchema:new F.Name("parentSchema")};function JO(e,t,r){let{createErrors:n}=e.it;if(n===!1)return F._`{}`;return G5(e,t,r)}function G5(e,t,r={}){let{gen:n,it:o}=e,s=[J5(o,r),Y5(e,r)];return X5(e,t,s),n.object(...s)}function J5({errorPath:e},{instancePath:t}){let r=t?F.str`${e}${pn.getErrorPath(t,pn.Type.Str)}`:e;return[st.default.instancePath,F.strConcat(st.default.instancePath,r)]}function Y5({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:F.str`${t}/${e}`;if(r)o=F.str`${o}${pn.getErrorPath(r,pn.Type.Str)}`;return[Qn.schemaPath,o]}function X5(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;if(n.push([Qn.keyword,o],[Qn.params,typeof t=="function"?t(e):t||F._`{}`]),c.messages)n.push([Qn.message,typeof r=="function"?r(e):r]);if(c.verbose)n.push([Qn.schema,i],[Qn.parentSchema,F._`${l}${d}`],[st.default.data,s]);if(u)n.push([Qn.propertyName,u])}});var oI=E(function(rI){Object.defineProperty(rI,"__esModule",{value:!0});rI.boolOrEmptySchema=rI.topBoolOrEmptySchema=void 0;var QO=ma(),eI=ee(),nY=zr(),oY={message:"boolean schema is false"};function sY(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)tI(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(nY.default.data);else t.assign(eI._`${n}.errors`,null),t.return(!0)}rI.topBoolOrEmptySchema=sY;function iY(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),tI(e);else r.var(t,!0)}rI.boolOrEmptySchema=iY;function tI(e,t){let{gen:r,data:n}=e;QO.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},oY,void 0,t)}});var ry=E(function(sI){Object.defineProperty(sI,"__esModule",{value:!0});sI.getRules=sI.isJSONType=void 0;var cY=["string","number","integer","boolean","null","object","array"],uY=new Set(cY);function lY(e){return typeof e=="string"&&uY.has(e)}sI.isJSONType=lY;function dY(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}sI.getRules=dY});var ny=E(function(uI){Object.defineProperty(uI,"__esModule",{value:!0});uI.shouldUseRule=uI.shouldUseGroup=uI.schemaHasRulesForType=void 0;function fY({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&aI(e,n)}uI.schemaHasRulesForType=fY;function aI(e,t){return t.rules.some((r)=>cI(e,r))}uI.shouldUseGroup=aI;function cI(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some((n)=>e[n]!==void 0))}uI.shouldUseRule=cI});var ha=E(function(gI){Object.defineProperty(gI,"__esModule",{value:!0});gI.reportTypeError=gI.checkDataTypes=gI.checkDataType=gI.coerceAndCheckDataType=gI.getJSONTypes=gI.getSchemaTypes=gI.DataType=void 0;var dI=ry(),pI=ny(),fI=ma(),L=ee(),Ll=ue(),ts;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ts||(gI.DataType=ts={}));function gY(e){let t=mI(e.type);if(t.includes("null")){if(e.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(e.nullable===!0)t.push("null")}return t}gI.getSchemaTypes=gY;function mI(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(dI.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}gI.getJSONTypes=mI;function yY(e,t){let{gen:r,data:n,opts:o}=e,s=wY(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&pI.schemaHasRulesForType(e,t[0]));if(i){let a=sy(t,n,o.strictNumbers,ts.Wrong);r.if(a,()=>{if(s.length)bY(e,t,s);else iy(e)})}return i}gI.coerceAndCheckDataType=yY;var hI=new Set(["string","number","integer","boolean","null"]);function wY(e,t){return t?e.filter((r)=>hI.has(r)||t==="array"&&r==="array"):[]}function bY(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",L._`typeof ${o}`),a=n.let("coerced",L._`undefined`);if(s.coerceTypes==="array")n.if(L._`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,L._`${o}[0]`).assign(i,L._`typeof ${o}`).if(sy(t,o,s.strictNumbers),()=>n.assign(a,o)));n.if(L._`${a} !== undefined`);for(let u of r)if(hI.has(u)||u==="array"&&s.coerceTypes==="array")c(u);n.else(),iy(e),n.endIf(),n.if(L._`${a} !== undefined`,()=>{n.assign(o,a),_Y(e,a)});function c(u){switch(u){case"string":n.elseIf(L._`${i} == "number" || ${i} == "boolean"`).assign(a,L._`"" + ${o}`).elseIf(L._`${o} === null`).assign(a,L._`""`);return;case"number":n.elseIf(L._`${i} == "boolean" || ${o} === null
|
|
167
167
|
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,L._`+${o}`);return;case"integer":n.elseIf(L._`${i} === "boolean" || ${o} === null
|
|
168
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 m5({gen:e,parentData:t,parentDataProperty:r},n){e.if(L._`${t} !== undefined`,()=>e.assign(L._`${t}[${r}]`,n))}function qg(e,t,r,n=Ko.Correct){let o=n===Ko.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===Ko.Correct?s:L.not(s);function i(a=L.nil){return L.and(L._`typeof ${t} == "number"`,a,r?L._`isFinite(${t})`:L.nil)}}FP.checkDataType=qg;function Fg(e,t,r,n){if(e.length===1)return qg(e[0],t,r,n);let o,s=El.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,qg(i,t,r,n));return o}FP.checkDataTypes=Fg;var h5={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?L._`{type: ${e}}`:L._`{type: ${t}}`};function Ug(e){let t=g5(e);jP.reportError(t,h5)}FP.reportTypeError=Ug;function g5(e){let{gen:t,data:r,schema:n}=e,o=El.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var KP=E(function(ZP){Object.defineProperty(ZP,"__esModule",{value:!0});ZP.assignDefaults=void 0;var Lt=ee(),VP=ue();function k5(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)WP(e,o,r[o].default);else if(t==="array"&&Array.isArray(n))n.forEach((o,s)=>WP(e,s,o.default))}ZP.assignDefaults=k5;function WP(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=Lt._`${s}${Lt.getProperty(t)}`;if(o){VP.checkStrictMode(e,`default is ignored for: ${a}`);return}let c=Lt._`${a} === undefined`;if(i.useDefaults==="empty")c=Lt._`${c} || ${a} === null || ${a} === ""`;n.if(c,Lt._`${a} = ${Lt.stringify(r)}`)}});var Dt=E(function(YP){Object.defineProperty(YP,"__esModule",{value:!0});YP.validateUnion=YP.validateArray=YP.usePattern=YP.callValidateCode=YP.schemaProperties=YP.allSchemaProperties=YP.noPropertyInData=YP.propertyInData=YP.isOwnProperty=YP.hasPropFunc=YP.reportMissingProp=YP.checkMissingProp=YP.checkReportMissingProp=void 0;var H=ee(),Ho=ue(),an=Ar(),HP=ue();function x5(e,t){let{gen:r,data:n,it:o}=e;r.if(Vg(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:H._`${t}`},!0),e.error()})}YP.checkReportMissingProp=x5;function $5({gen:e,data:t,it:{opts:r}},n,o){return H.or(...n.map((s)=>H.and(Vg(e,t,s,r.ownProperties),H._`${o} = ${s}`)))}YP.checkMissingProp=$5;function E5(e,t){e.setParams({missingProperty:t},!0),e.error()}YP.reportMissingProp=E5;function GP(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:H._`Object.prototype.hasOwnProperty`})}YP.hasPropFunc=GP;function Wg(e,t,r){return H._`${GP(e)}.call(${t}, ${r})`}YP.isOwnProperty=Wg;function T5(e,t,r,n){let o=H._`${t}${H.getProperty(r)} !== undefined`;return n?H._`${o} && ${Wg(e,t,r)}`:o}YP.propertyInData=T5;function Vg(e,t,r,n){let o=H._`${t}${H.getProperty(r)} === undefined`;return n?H.or(o,H.not(Wg(e,t,r))):o}YP.noPropertyInData=Vg;function JP(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}YP.allSchemaProperties=JP;function O5(e,t){return JP(t).filter((r)=>!Ho.alwaysValidSchema(e,t[r]))}YP.schemaProperties=O5;function P5({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?H._`${e}, ${t}, ${n}${o}`:t,d=[[an.default.instancePath,H.strConcat(an.default.instancePath,s)],[an.default.parentData,i.parentData],[an.default.parentDataProperty,i.parentDataProperty],[an.default.rootData,an.default.rootData]];if(i.opts.dynamicRef)d.push([an.default.dynamicAnchors,an.default.dynamicAnchors]);let f=H._`${l}, ${r.object(...d)}`;return c!==H.nil?H._`${a}.call(${c}, ${f})`:H._`${a}(${f})`}YP.callValidateCode=P5;var I5=H._`new RegExp`;function A5({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:H._`${o.code==="new RegExp"?I5:HP.useFunc(e,o)}(${r}, ${n})`})}YP.usePattern=A5;function R5(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",H._`${r}.length`);t.forRange("i",0,c,(u)=>{e.subschema({keyword:n,dataProp:u,dataPropType:Ho.Type.Num},s),t.if(H.not(s),a)})}}YP.validateArray=R5;function C5(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((c)=>Ho.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,H._`${i} || ${a}`),!e.mergeValidEvaluated(l,a))t.if(H.not(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}YP.validateUnion=C5});var sI=E(function(nI){Object.defineProperty(nI,"__esModule",{value:!0});nI.validateKeywordUsage=nI.validSchemaType=nI.funcKeywordCode=nI.macroKeywordCode=void 0;var me=ee(),Gn=Ar(),eI=Dt(),tI=ia();function B5(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=rI(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))}nI.macroKeywordCode=B5;function K5(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;G5(c,t);let u=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,l=rI(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)QP(e);y(()=>e.error())}else{let w=t.async?m():h();if(t.modifying)QP(e);y(()=>H5(e,w))}}function m(){let w=n.let("ruleErrs",null);return n.try(()=>g(me._`await `),(T)=>n.assign(d,!1).if(me._`${T} instanceof ${c.ValidationError}`,()=>n.assign(w,me._`${T}.errors`),()=>n.throw(T))),w}function h(){let w=me._`${l}.errors`;return n.assign(w,null),g(me.nil),w}function g(w=t.async?me._`await `:me.nil){let T=c.opts.passContext?Gn.default.this:Gn.default.self,S=!(("compile"in t)&&!a||t.schema===!1);n.assign(d,me._`${w}${eI.callValidateCode(e,l,T,S)}`,t.modifying)}function y(w){var T;n.if(me.not((T=t.valid)!==null&&T!==void 0?T:d),w)}}nI.funcKeywordCode=K5;function QP(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,me._`${n.parentData}[${n.parentDataProperty}]`))}function H5(e,t){let{gen:r}=e;r.if(me._`Array.isArray(${t})`,()=>{r.assign(Gn.default.vErrors,me._`${Gn.default.vErrors} === null ? ${t} : ${Gn.default.vErrors}.concat(${t})`).assign(Gn.default.errors,me._`${Gn.default.vErrors}.length`),tI.extendErrors(e)},()=>e.error())}function G5({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function rI(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 J5(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")}nI.validSchemaType=J5;function Y5({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)}}}nI.validateKeywordUsage=Y5});var cI=E(function(iI){Object.defineProperty(iI,"__esModule",{value:!0});iI.extendSubschemaMode=iI.extendSubschemaData=iI.getSubschema=void 0;var Ne=ee(),Tl=ue();function t7(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:Ne._`${e.schemaPath}${Ne.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:Ne._`${e.schemaPath}${Ne.getProperty(t)}${Ne.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${Tl.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')}iI.getSubschema=t7;function r7(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",Ne._`${t.data}${Ne.getProperty(r)}`,!0);c(f),e.errorPath=Ne.str`${u}${Tl.getErrorPath(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=Ne._`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(o!==void 0){let u=o instanceof Ne.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]}}iI.extendSubschemaData=r7;function n7(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}iI.extendSubschemaMode=n7});var Zg=E(function(b_e,uI){uI.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 dI=E(function(w_e,lI){var cn=lI.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)};cn.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};cn.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};cn.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};cn.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 cn.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 cn.propsKeywords){if(d&&typeof d=="object")for(var m in d)Ol(e,t,r,d[m],o+"/"+l+"/"+i7(m),s,o,l,n,m)}else if(l in cn.keywords||e.allKeys&&!(l in cn.skipKeywords))Ol(e,t,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function i7(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ca=E(function(gI){Object.defineProperty(gI,"__esModule",{value:!0});gI.getSchemaRefs=gI.resolveUrl=gI.normalizeId=gI._getFullPath=gI.getFullPath=gI.inlineRef=void 0;var pI=ue(),a7=Zg(),c7=dI(),u7=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function l7(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!Bg(e);if(!t)return!1;return fI(e)<=t}gI.inlineRef=l7;var d7=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Bg(e){for(let t in e){if(d7.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Bg))return!0;if(typeof r=="object"&&Bg(r))return!0}return!1}function fI(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,u7.has(r))continue;if(typeof e[r]=="object")pI.eachItem(e[r],(n)=>t+=fI(n));if(t===1/0)return 1/0}return t}function mI(e,t="",r){if(r!==!1)t=Go(t);let n=e.parse(t);return hI(e,n)}gI.getFullPath=mI;function hI(e,t){return e.serialize(t).split("#")[0]+"#"}gI._getFullPath=hI;var p7=/#\/?$/;function Go(e){return e?e.replace(p7,""):""}gI.normalizeId=Go;function f7(e,t,r){return r=Go(r),e.resolve(t,r)}gI.resolveUrl=f7;var m7=/^[a-z_][-a-z0-9._]*$/i;function h7(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Go(e[r]||t),s={"":o},i=mI(n,o,!1),a={},c=new Set;return c7(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=w.call(this,d[r]);T.call(this,d.$anchor),T.call(this,d.$dynamicAnchor),s[f]=y;function w(S){let I=this.opts.uriResolver.resolve;if(S=Go(y?I(y,S):S),c.has(S))throw l(S);c.add(S);let _=this.refs[S];if(typeof _=="string")_=this.refs[_];if(typeof _=="object")u(d,_.schema,S);else if(S!==Go(g))if(S[0]==="#")u(d,a[S],S),a[S]=d;else this.refs[S]=g;return S}function T(S){if(typeof S=="string"){if(!m7.test(S))throw Error(`invalid anchor "${S}"`);w.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!a7(d,f))throw l(m)}function l(d){return Error(`reference "${d}" resolves to more than one schema`)}}gI.getSchemaRefs=h7});var ua=E(function(RI){Object.defineProperty(RI,"__esModule",{value:!0});RI.getData=RI.KeywordCxt=RI.validateFunctionCode=void 0;var Il=PP(),Pl=aa(),Yo=Mg(),un=aa(),vI=KP(),ir=sI(),Jo=cI(),R=ee(),X=Ar(),SI=ca(),Be=ue(),sr=ia();function v7(e){if($I(e)){if(EI(e),xI(e)){x7(e);return}}kI(e,()=>Il.topBoolOrEmptySchema(e))}RI.validateFunctionCode=v7;function kI({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){if(o.code.es5)e.func(t,R._`${X.default.data}, ${X.default.valCxt}`,n.$async,()=>{e.code(R._`"use strict"; ${bI(r,o)}`),k7(e,o),e.code(s)});else e.func(t,R._`${X.default.data}, ${S7(o)}`,n.$async,()=>e.code(bI(r,o)).code(s))}function S7(e){return R._`{${X.default.instancePath}="", ${X.default.parentData}, ${X.default.parentDataProperty}, ${X.default.rootData}=${X.default.data}${e.dynamicRef?R._`, ${X.default.dynamicAnchors}={}`:R.nil}}={}`}function k7(e,t){e.if(X.default.valCxt,()=>{if(e.var(X.default.instancePath,R._`${X.default.valCxt}.${X.default.instancePath}`),e.var(X.default.parentData,R._`${X.default.valCxt}.${X.default.parentData}`),e.var(X.default.parentDataProperty,R._`${X.default.valCxt}.${X.default.parentDataProperty}`),e.var(X.default.rootData,R._`${X.default.valCxt}.${X.default.rootData}`),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`${X.default.valCxt}.${X.default.dynamicAnchors}`)},()=>{if(e.var(X.default.instancePath,R._`""`),e.var(X.default.parentData,R._`undefined`),e.var(X.default.parentDataProperty,R._`undefined`),e.var(X.default.rootData,X.default.data),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`{}`)})}function x7(e){let{schema:t,opts:r,gen:n}=e;kI(e,()=>{if(r.$comment&&t.$comment)OI(e);if(P7(e),n.let(X.default.vErrors,null),n.let(X.default.errors,0),r.unevaluated)$7(e);TI(e),R7(e)});return}function $7(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 bI(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?R._`/*# sourceURL=${r} */`:R.nil}function E7(e,t){if($I(e)){if(EI(e),xI(e)){T7(e,t);return}}Il.boolOrEmptySchema(e,t)}function xI({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 $I(e){return typeof e.schema!="boolean"}function T7(e,t){let{schema:r,gen:n,opts:o}=e;if(o.$comment&&r.$comment)OI(e);I7(e),A7(e);let s=n.const("_errs",X.default.errors);TI(e,s),n.var(t,R._`${s} === ${X.default.errors}`)}function EI(e){Be.checkUnknownRules(e),O7(e)}function TI(e,t){if(e.opts.jtd)return wI(e,[],!1,t);let r=Pl.getSchemaTypes(e.schema),n=Pl.coerceAndCheckDataType(e,r);wI(e,r,!n,t)}function O7(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Be.schemaHasRulesButRef(t,o.RULES))o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function P7(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Be.checkStrictMode(e,"default is ignored in the schema root")}function I7(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=SI.resolveUrl(e.opts.uriResolver,e.baseId,t)}function A7(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function OI({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code(R._`${X.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=R.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(R._`${X.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function R7(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;if(r.$async)t.if(R._`${X.default.errors} === 0`,()=>t.return(X.default.data),()=>t.throw(R._`new ${o}(${X.default.vErrors})`));else{if(t.assign(R._`${n}.errors`,X.default.vErrors),s.unevaluated)C7(e);t.return(R._`${X.default.errors} === 0`)}}function C7({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 wI(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||!Be.schemaHasRulesButRef(s,l))){o.block(()=>II(e,"$ref",l.all.$ref.definition));return}if(!c.jtd)z7(e,t);o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){if(!Yo.shouldUseGroup(s,f))return;if(f.type){if(o.if(un.checkDataType(f.type,i,c.strictNumbers)),_I(e,f),t.length===1&&t[0]===f.type&&r)o.else(),un.reportTypeError(e);o.endIf()}else _I(e,f);if(!a)o.if(R._`${X.default.errors} === ${n||0}`)}}function _I(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;if(o)vI.assignDefaults(e,t.type);r.block(()=>{for(let s of t.rules)if(Yo.shouldUseRule(n,s))II(e,s.keyword,s.definition,t.type)})}function z7(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(N7(e,t),!e.opts.allowUnionTypes)L7(e,t);D7(e,e.dataTypes)}function N7(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!PI(e.dataTypes,r))Kg(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),M7(e,t)}function L7(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))Kg(e,"use allowUnionTypes to allow union type keyword")}function D7(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&Yo.shouldUseRule(e.schema,o)){let{type:s}=o.definition;if(s.length&&!s.some((i)=>j7(t,i)))Kg(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function j7(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function PI(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function M7(e,t){let r=[];for(let n of e.dataTypes)if(PI(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function Kg(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Be.checkStrictMode(e,t,e.opts.strictTypes)}class Hg{constructor(e,t,r){if(ir.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=Be.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",AI(this.$data,e));else if(this.schemaCode=this.schemaValue,!ir.validSchemaType(this.schema,t.schemaType,t.allowUndefined))throw Error(`${r} value must be ${JSON.stringify(t.schemaType)}`);if("code"in t?t.trackErrors:t.errors!==!1)this.errsCount=e.gen.const("_errs",X.default.errors)}result(e,t,r){this.failResult(R.not(e),t,r)}failResult(e,t,r){if(this.gen.if(e),r)r();else this.error();if(t){if(this.gen.else(),t(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(e,t){this.failResult(R.not(e),void 0,t)}fail(e){if(e===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(e),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail(R._`${t} !== undefined && (${R.or(this.invalid$data(),e)})`)}error(e,t,r){if(t){this.setParams(t),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,t){(e?sr.reportExtraError:sr.reportError)(this,this.def.error,t)}$dataError(){sr.reportError(this,this.def.$dataError||sr.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');sr.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._`${un.checkDataTypes(a,t,o.opts.strictNumbers,un.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=Jo.getSubschema(this.it,e);Jo.extendSubschemaData(r,this.it,e),Jo.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return E7(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=Be.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Be.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}}RI.KeywordCxt=Hg;function II(e,t,r,n){let o=new Hg(e,r,t);if("code"in r)r.code(o,n);else if(o.$data&&r.validate)ir.funcKeywordCode(o,r);else if("macro"in r)ir.macroKeywordCode(o,r);else if(r.compile||r.validate)ir.funcKeywordCode(o,r)}var q7=/^\/(?:[^~]|~0|~1)*$/,F7=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function AI(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return X.default.rootData;if(e[0]==="/"){if(!q7.test(e))throw Error(`Invalid JSON-pointer: ${e}`);o=e,s=X.default.rootData}else{let u=F7.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(Be.unescapeJsonPointer(u))}`,i=R._`${i} && ${s}`;return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}RI.getData=AI});var Al=E(function(NI){Object.defineProperty(NI,"__esModule",{value:!0});class zI extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}NI.default=zI});var la=E(function(DI){Object.defineProperty(DI,"__esModule",{value:!0});var Xo=ca();class LI extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=Xo.resolveUrl(e,t,r),this.missingSchema=Xo.normalizeId(Xo.getFullPath(e,this.missingRef))}}DI.default=LI});var zl=E(function(qI){Object.defineProperty(qI,"__esModule",{value:!0});qI.resolveSchema=qI.getCompilingSchema=qI.resolveRef=qI.compileSchema=qI.SchemaEnv=void 0;var Pe=ee(),B7=Al(),Jn=Ar(),Ie=ca(),Rl=ue(),jI=ua();class da{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:Ie.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={}}}qI.SchemaEnv=da;function Jg(e){let t=MI.call(this,e);if(t)return t;let r=Ie.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Pe.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;if(e.$async)a=i.scopeValue("Error",{ref:B7.default,code:Pe._`require("ajv/dist/runtime/validation_error").default`});let c=i.scopeName("validate");e.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Jn.default.data,parentData:Jn.default.parentData,parentDataProperty:Jn.default.parentDataProperty,dataNames:[Jn.default.data],dataPathArr:[Pe.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:Pe.stringify(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Pe.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:Pe._`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),jI.validateFunctionCode(u),i.optimize(this.opts.code.optimize);let d=i.toString();if(l=`${i.scopeRefs(Jn.default.scope)}return ${d}`,this.opts.code.process)l=this.opts.code.process(l,e);let m=Function(`${Jn.default.self}`,`${Jn.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 Pe.Name?void 0:h,items:g instanceof Pe.Name?void 0:g,dynamicProps:h instanceof Pe.Name,dynamicItems:g instanceof Pe.Name},m.source)m.source.evaluated=Pe.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)}}qI.compileSchema=Jg;function K7(e,t,r){var n;r=Ie.resolveUrl(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=J7.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 da({schema:i,schemaId:a,root:e,baseId:t})}if(s===void 0)return;return e.refs[r]=H7.call(this,s)}qI.resolveRef=K7;function H7(e){if(Ie.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:Jg.call(this,e)}function MI(e){for(let t of this._compilations)if(G7(t,e))return t}qI.getCompilingSchema=MI;function G7(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function J7(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||Cl.call(this,e,t)}function Cl(e,t){let r=this.opts.uriResolver.parse(t),n=Ie._getFullPath(this.opts.uriResolver,r),o=Ie.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return Gg.call(this,r,e);let s=Ie.normalizeId(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Cl.call(this,e,i);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return Gg.call(this,r,a)}if(typeof(i===null||i===void 0?void 0:i.schema)!=="object")return;if(!i.validate)Jg.call(this,i);if(s===Ie.normalizeId(t)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];if(u)o=Ie.resolveUrl(this.opts.uriResolver,o,u);return new da({schema:a,schemaId:c,root:e,baseId:o})}return Gg.call(this,r,i)}qI.resolveSchema=Cl;var Y7=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Gg(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[Rl.unescapeFragment(a)];if(c===void 0)return;r=c;let u=typeof r==="object"&&r[this.opts.schemaId];if(!Y7.has(a)&&u)t=Ie.resolveUrl(this.opts.uriResolver,t,u)}let s;if(typeof r!="boolean"&&r.$ref&&!Rl.schemaHasRulesButRef(r,this.RULES)){let a=Ie.resolveUrl(this.opts.uriResolver,t,r.$ref);s=Cl.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new da({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s;return}});var UI=E(function($_e,rY){rY.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 Qg=E(function(E_e,HI){var nY=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),VI=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),Yg=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),ZI=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),oY=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 sY=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function WI(e){return e.length=0,!0}function iY(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 aY(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=iY;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=WI}else{o.push(u);continue}}if(o.length)if(a===WI)r.zone=o.join("");else if(i)n.push(o.join(""));else n.push(Xg(o));return r.address=n.join(""),r}function BI(e){if(cY(e,":")<2)return{host:e,isIPV6:!1};let t=aY(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 cY(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function uY(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 lY={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},dY=/[@/?#:]/g,pY=/[@/?#]/g;function KI(e,t){let r=t?pY:dY;return r.lastIndex=0,e.replace(r,(n)=>lY[n])}function fY(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(Yg(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(t&&ZI(i))r+=i;else r+="%"+s;n+=2;continue}}r+=e[n]}return r}function mY(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(Yg(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));if(s!=="."&&ZI(s))t+=s;else t+="%"+o;r+=2;continue}}if(oY(e[r]))t+=e[r];else t+=escape(e[r])}return t}function hY(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(Yg(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function gY(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(!VI(r)){let n=BI(r);if(n.isIPV6===!0)r=`[${n.escapedHost}]`;else r=KI(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}HI.exports={nonSimpleDomain:sY,recomposeAuthority:gY,reescapeHostDelimiters:KI,normalizePercentEncoding:fY,normalizePathEncoding:mY,escapePreservingEscapes:hY,removeDotSegments:uY,isIPv4:VI,isUUID:nY,normalizeIPv6:BI,stringArrayToHexStripped:Xg}});var QI=E(function(T_e,XI){var{isUUID:yY}=Qg(),bY=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,wY=["http","https","ws","wss","urn","urn:uuid"];function _Y(e){return wY.indexOf(e)!==-1}function ey(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 GI(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function JI(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 vY(e){return e.secure=ey(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function SY(e){if(e.port===(ey(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 kY(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(bY);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=ty(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 xY(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=ty(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 $Y(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!yY(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function EY(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var YI={scheme:"http",domainHost:!0,parse:GI,serialize:JI},TY={scheme:"https",domainHost:YI.domainHost,parse:GI,serialize:JI},Nl={scheme:"ws",domainHost:!0,parse:vY,serialize:SY},OY={scheme:"wss",domainHost:Nl.domainHost,parse:Nl.parse,serialize:Nl.serialize},PY={scheme:"urn",parse:kY,serialize:xY,skipNormalize:!0},IY={scheme:"urn:uuid",parse:$Y,serialize:EY,skipNormalize:!0},Ll={http:YI,https:TY,ws:Nl,wss:OY,urn:PY,"urn:uuid":IY};Object.setPrototypeOf(Ll,null);function ty(e){return e&&(Ll[e]||Ll[e.toLowerCase()])||void 0}XI.exports={wsIsSecure:ey,SCHEMES:Ll,isValidSchemeName:_Y,getSchemeHandler:ty}});var sA=E(function(O_e,Dl){var{normalizeIPv6:AY,removeDotSegments:pa,recomposeAuthority:RY,normalizePercentEncoding:CY,normalizePathEncoding:zY,escapePreservingEscapes:NY,reescapeHostDelimiters:LY,isIPv4:DY,nonSimpleDomain:jY}=Qg(),{SCHEMES:MY,getSchemeHandler:tA}=QI();function qY(e,t){if(typeof e==="string")e=BY(e,t);else if(typeof e==="object")e=Qo(Yn(e,t),t);return e}function FY(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=rA(Qo(e,n),Qo(t,n),n,!0);return n.skipEscape=!0,Yn(o,n)}function rA(e,t,r,n){let o={};if(!n)e=Qo(Yn(e,r),r),t=Qo(Yn(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=pa(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=pa(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=pa(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=pa(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 UY(e,t,r){let n=eA(e,r),o=eA(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Yn(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=tA(n.scheme||r.scheme);if(s&&s.serialize)s.serialize(r,n);if(r.path!==void 0)if(!n.skipEscape){if(r.path=NY(r.path),r.scheme!==void 0)r.path=r.path.split("%3A").join(":")}else r.path=CY(r.path);if(n.reference!=="suffix"&&r.scheme)o.push(r.scheme,":");let i=RY(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=pa(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 WY=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,VY=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/;function ZY(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 nA(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(VY);if(i!==null&&i[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",o=!0;let a=e.match(WY);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=ZY(n,a);if(c!==void 0)n.error=n.error||c,o=!0;if(n.host)if(DY(n.host)===!1){let d=AY(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=tA(r.scheme||n.scheme);if(!r.unicodeSupport&&(!u||!u.unicodeSupport)){if(n.host&&(r.domainHost||u&&u.domainHost)&&s===!1&&jY(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=LY(unescape(n.host),s)}if(n.path)n.path=zY(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 Qo(e,t){return nA(e,t).parsed}function BY(e,t){return oA(e,t).normalized}function oA(e,t){let{parsed:r,malformedAuthorityOrPort:n}=nA(e,t);return{normalized:n?e:Yn(r,t),malformedAuthorityOrPort:n}}function eA(e,t){if(typeof e==="string"){let{normalized:r,malformedAuthorityOrPort:n}=oA(e,t);return n?void 0:r}if(typeof e==="object")return Yn(e,t)}var ry={SCHEMES:MY,normalize:qY,resolve:FY,resolveComponent:rA,equal:UY,serialize:Yn,parse:Qo};Dl.exports=ry;Dl.exports.default=ry;Dl.exports.fastUri=ry});var cA=E(function(aA){Object.defineProperty(aA,"__esModule",{value:!0});var iA=sA();iA.code='require("ajv/dist/runtime/uri").default';aA.default=iA});var bA=E(function(Rr){Object.defineProperty(Rr,"__esModule",{value:!0});Rr.CodeGen=Rr.Name=Rr.nil=Rr.stringify=Rr.str=Rr._=Rr.KeywordCxt=void 0;var HY=ua();Object.defineProperty(Rr,"KeywordCxt",{enumerable:!0,get:function(){return HY.KeywordCxt}});var ts=ee();Object.defineProperty(Rr,"_",{enumerable:!0,get:function(){return ts._}});Object.defineProperty(Rr,"str",{enumerable:!0,get:function(){return ts.str}});Object.defineProperty(Rr,"stringify",{enumerable:!0,get:function(){return ts.stringify}});Object.defineProperty(Rr,"nil",{enumerable:!0,get:function(){return ts.nil}});Object.defineProperty(Rr,"Name",{enumerable:!0,get:function(){return ts.Name}});Object.defineProperty(Rr,"CodeGen",{enumerable:!0,get:function(){return ts.CodeGen}});var GY=Al(),fA=la(),mA=jg(),ar=zl(),hA=ee(),cr=ca(),ln=aa(),es=ue(),uA=UI(),JY=cA(),gA=(e,t)=>new RegExp(e,t);gA.code="new RegExp";var YY=["removeAdditional","useDefaults","coerceTypes"],XY=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),QY={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."},e8={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},lA=200;function t8(e){var t,r,n,o,s,i,a,c,u,l,d,f,m,h,g,y,w,T,S,I,_,v,k,A,D;let G=e.strict,ie=(t=e.code)===null||t===void 0?void 0:t.optimize,ae=ie===!0||ie===void 0?1:ie||0,De=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:gA,W=(o=e.uriResolver)!==null&&o!==void 0?o:JY.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:ae,regExp:De}:{optimize:ae,regExp:De},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:lA,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:lA,meta:(w=e.meta)!==null&&w!==void 0?w:!0,messages:(T=e.messages)!==null&&T!==void 0?T:!0,inlineRefs:(S=e.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(I=e.schemaId)!==null&&I!==void 0?I:"$id",addUsedSchema:(_=e.addUsedSchema)!==null&&_!==void 0?_:!0,validateSchema:(v=e.validateSchema)!==null&&v!==void 0?v:!0,validateFormats:(k=e.validateFormats)!==null&&k!==void 0?k:!0,unicodeRegExp:(A=e.unicodeRegExp)!==null&&A!==void 0?A:!0,int32range:(D=e.int32range)!==null&&D!==void 0?D:!0,uriResolver:W}}class jl{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,...t8(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new hA.ValueScope({scope:{},prefixes:XY,es5:t,lines:r}),this.logger=a8(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=mA.getRules(),dA.call(this,QY,e,"NOT SUPPORTED"),dA.call(this,e8,e,"DEPRECATED","warn"),this._metaOpts=s8.call(this),e.formats)n8.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)o8.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);r8.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=uA;if(r==="id")n={...uA},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 fA.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=cr.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=pA.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new ar.SchemaEnv({schema:{},schemaId:r});if(t=ar.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=pA.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=cr.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(u8.call(this,r,t),!t)return es.eachItem(r,(o)=>ny.call(this,o)),this;d8.call(this,t);let n={...t,type:ln.getJSONTypes(t.type),schemaType:ln.getJSONTypes(t.schemaType)};return es.eachItem(r,n.type.length===0?(o)=>ny.call(this,o,n):(o)=>n.type.forEach((s)=>ny.call(this,o,n,s))),this}getKeyword(e){let t=this.RULES.all[e];return typeof t=="object"?t.definition:!!t}removeKeyword(e){let{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(let r of t.rules){let n=r.rules.findIndex((o)=>o.keyword===e);if(n>=0)r.rules.splice(n,1)}return this}addFormat(e,t){if(typeof t=="string")t=new RegExp(t);return this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:r="data"}={}){if(!e||e.length===0)return"No errors";return e.map((n)=>`${r}${n.instancePath} ${n.message}`).reduce((n,o)=>n+t+o)}$dataMetaSchema(e,t){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of t){let o=n.split("/").slice(1),s=e;for(let i of o)s=s[i];for(let i in r){let a=r[i];if(typeof a!="object")continue;let{$data:c}=a.definition,u=s[i];if(c&&u)s[i]=yA(u)}}return e}_removeAllSchemas(e,t){for(let r in e){let n=e[r];if(!t||t.test(r)){if(typeof n=="string")delete e[r];else if(n&&!n.meta)this._cache.delete(n.schema),delete e[r]}}}_addSchema(e,t,r,n=this.opts.validateSchema,o=this.opts.addUsedSchema){let s,{schemaId:i}=this.opts;if(typeof e=="object")s=e[i];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof e!="boolean")throw Error("schema must be object or boolean");let a=this._cache.get(e);if(a!==void 0)return a;r=cr.normalizeId(s||r);let c=cr.getSchemaRefs.call(this,e,r);if(a=new ar.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 ar.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{ar.compileSchema.call(this,e)}finally{this.opts=t}}}jl.ValidationError=GY.default;jl.MissingRefError=fA.default;Rr.default=jl;function dA(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 pA(e){return e=cr.normalizeId(e),this.schemas[e]||this.refs[e]}function r8(){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 n8(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function o8(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 s8(){let e={...this.opts};for(let t of YY)delete e[t];return e}var i8={log(){},warn(){},error(){}};function a8(e){if(e===!1)return i8;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 c8=/^[a-z_$][a-z0-9_$:-]*$/i;function u8(e,t){let{RULES:r}=this;if(es.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!c8.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 ny(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:ln.getJSONTypes(t.type),schemaType:ln.getJSONTypes(t.schemaType)}};if(t.before)l8.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 l8(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 d8(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=yA(t);e.validateSchema=this.compile(t,!0)}var p8={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function yA(e){return{anyOf:[e,p8]}}});var _A=E(function(wA){Object.defineProperty(wA,"__esModule",{value:!0});var h8={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};wA.default=h8});var xA=E(function(SA){Object.defineProperty(SA,"__esModule",{value:!0});SA.callRef=SA.getValidate=void 0;var y8=la(),ql=Dt(),be=ee(),rs=Ar(),Fl=zl(),dn=ue(),b8={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=Fl.resolveRef.call(c,u,o,r);if(l===void 0)throw new y8.default(n.opts.uriResolver,o,r);if(l instanceof Fl.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Ml(e,i,s,s.$async);let h=t.scopeValue("root",{ref:u});return Ml(e,be._`${h}.validate`,u,u.$async)}function f(h){let g=vA(e,h);Ml(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"),w=e.subschema({schema:h,dataTypes:[],schemaPath:be.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(w),e.ok(y)}}};function vA(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):be._`${r.scopeValue("wrapper",{ref:t})}.validate`}SA.getValidate=vA;function Ml(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?rs.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 ${ql.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(ql.callValidateCode(e,t,u),()=>m(t),()=>f(t))}function f(h){let g=be._`${h}.errors`;o.assign(rs.default.vErrors,be._`${rs.default.vErrors} === null ? ${g} : ${rs.default.vErrors}.concat(${g})`),o.assign(rs.default.errors,be._`${rs.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=dn.mergeEvaluated.props(o,y.props,s.props)}else{let w=o.var("props",be._`${h}.evaluated.props`);s.props=dn.mergeEvaluated.props(o,w,s.props,be.Name)}if(s.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)s.items=dn.mergeEvaluated.items(o,y.items,s.items)}else{let w=o.var("items",be._`${h}.evaluated.items`);s.items=dn.mergeEvaluated.items(o,w,s.items,be.Name)}}}SA.callRef=Ml;SA.default=b8});var EA=E(function($A){Object.defineProperty($A,"__esModule",{value:!0});var v8=_A(),S8=xA(),k8=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",v8.default,S8.default];$A.default=k8});var OA=E(function(TA){Object.defineProperty(TA,"__esModule",{value:!0});var fn=ee(),pn=fn.operators,Ul={maximum:{okStr:"<=",ok:pn.LTE,fail:pn.GT},minimum:{okStr:">=",ok:pn.GTE,fail:pn.LT},exclusiveMaximum:{okStr:"<",ok:pn.LT,fail:pn.GTE},exclusiveMinimum:{okStr:">",ok:pn.GT,fail:pn.LTE}},$8={message:({keyword:e,schemaCode:t})=>fn.str`must be ${Ul[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>fn._`{comparison: ${Ul[e].okStr}, limit: ${t}}`},E8={keyword:Object.keys(Ul),type:"number",schemaType:"number",$data:!0,error:$8,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(fn._`${r} ${Ul[t].fail} ${n} || isNaN(${r})`)}};TA.default=E8});var IA=E(function(PA){Object.defineProperty(PA,"__esModule",{value:!0});var ur=ee(),O8={message:({schemaCode:e})=>ur.str`must be multiple of ${e}`,params:({schemaCode:e})=>ur._`{multipleOf: ${e}}`},P8={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:O8,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?ur._`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:ur._`${i} !== parseInt(${i})`;e.fail$data(ur._`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};PA.default=P8});var CA=E(function(RA){Object.defineProperty(RA,"__esModule",{value:!0});function AA(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}RA.default=AA;AA.code='require("ajv/dist/runtime/ucs2length").default'});var LA=E(function(NA){Object.defineProperty(NA,"__esModule",{value:!0});var ft=ee(),zA=ue(),R8=CA(),C8={message({keyword:e,schemaCode:t}){return ft.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>ft._`{limit: ${e}}`},z8={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:C8,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?ft.operators.GT:ft.operators.LT,i=o.opts.unicode===!1?ft._`${r}.length`:ft._`${zA.useFunc(e.gen,R8.default)}(${r})`;e.fail$data(ft._`${i} ${s} ${n}`)}};NA.default=z8});var qA=E(function(MA){Object.defineProperty(MA,"__esModule",{value:!0});var DA=Dt(),jA=ue(),jt=ee(),L8={message:({schemaCode:e})=>jt.str`must match pattern "${e}"`,params:({schemaCode:e})=>jt._`{pattern: ${e}}`},D8={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:L8,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"?jt._`new RegExp`:jA.useFunc(t,c),l=t.let("valid");t.try(()=>t.assign(l,jt._`${u}(${s}, ${a}).test(${r})`),()=>t.assign(l,!1)),e.fail$data(jt._`!${l}`)}else{let c=DA.usePattern(e,o);e.fail$data(jt._`!${c}.test(${r})`)}}};MA.default=D8});var UA=E(function(FA){Object.defineProperty(FA,"__esModule",{value:!0});var lr=ee(),M8={message({keyword:e,schemaCode:t}){return lr.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>lr._`{limit: ${e}}`},q8={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:M8,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?lr.operators.GT:lr.operators.LT;e.fail$data(lr._`Object.keys(${r}).length ${o} ${n}`)}};FA.default=q8});var ZA=E(function(VA){Object.defineProperty(VA,"__esModule",{value:!0});var dr=Dt(),pr=ee(),WA=ue(),U8={message:({params:{missingProperty:e}})=>pr.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>pr._`{missingProperty: ${e}}`},W8={keyword:"required",type:"object",schemaType:"array",$data:!0,error:U8,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)`;WA.checkStrictMode(i,w,i.opts.strictRequired)}}function u(){if(c||s)e.block$data(pr.nil,d);else for(let m of r)dr.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(dr.checkMissingProp(e,r,m)),dr.reportMissingProp(e,m),t.else()}function d(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(dr.noPropertyInData(t,o,m,a.ownProperties),()=>e.error())})}function f(m,h){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(h,dr.propertyInData(t,o,m,a.ownProperties)),t.if(pr.not(h),()=>{e.error(),t.break()})},pr.nil)}}};VA.default=W8});var KA=E(function(BA){Object.defineProperty(BA,"__esModule",{value:!0});var fr=ee(),Z8={message({keyword:e,schemaCode:t}){return fr.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>fr._`{limit: ${e}}`},B8={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:Z8,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?fr.operators.GT:fr.operators.LT;e.fail$data(fr._`${r}.length ${o} ${n}`)}};BA.default=B8});var Wl=E(function(GA){Object.defineProperty(GA,"__esModule",{value:!0});var HA=Zg();HA.code='require("ajv/dist/runtime/equal").default';GA.default=HA});var XA=E(function(YA){Object.defineProperty(YA,"__esModule",{value:!0});var ns=aa(),le=ee(),JA=ue(),G8=Wl(),J8={message:({params:{i:e,j:t}})=>le.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>le._`{i: ${e}, j: ${t}}`},Y8={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:J8,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?ns.getSchemaTypes(s.items):[];e.block$data(c,l,le._`${i} === false`),e.ok(c);function l(){let h=t.let("i",le._`${r}.length`),g=t.let("j");e.setParams({i:h,j:g}),t.assign(c,!0),t.if(le._`${h} > 1`,()=>(d()?f:m)(h,g))}function d(){return u.length>0&&!u.some((h)=>h==="object"||h==="array")}function f(h,g){let y=t.name("item"),w=ns.checkDataTypes(u,y,a.opts.strictNumbers,ns.DataType.Wrong),T=t.const("indices",le._`{}`);t.for(le._`;${h}--;`,()=>{if(t.let(y,le._`${r}[${h}]`),t.if(w,le._`continue`),u.length>1)t.if(le._`typeof ${y} == "string"`,le._`${y} += "_"`);t.if(le._`typeof ${T}[${y}] == "number"`,()=>{t.assign(g,le._`${T}[${y}]`),e.error(),t.assign(c,!1).break()}).code(le._`${T}[${y}] = ${h}`)})}function m(h,g){let y=JA.useFunc(t,G8.default),w=t.name("outer");t.label(w).for(le._`;${h}--;`,()=>t.for(le._`${g} = ${h}; ${g}--;`,()=>t.if(le._`${y}(${r}[${h}], ${r}[${g}])`,()=>{e.error(),t.assign(c,!1).break(w)})))}}};YA.default=Y8});var tR=E(function(eR){Object.defineProperty(eR,"__esModule",{value:!0});var os=ee(),QA=ue(),Q8=Wl(),eX={message:"must be equal to constant",params:({schemaCode:e})=>os._`{allowedValue: ${e}}`},tX={keyword:"const",$data:!0,error:eX,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;if(n||s&&typeof s=="object")e.fail$data(os._`!${QA.useFunc(t,Q8.default)}(${r}, ${o})`);else e.fail(os._`${s} !== ${r}`)}};eR.default=tX});var oR=E(function(nR){Object.defineProperty(nR,"__esModule",{value:!0});var mr=ee(),rR=ue(),nX=Wl(),oX={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>mr._`{allowedValues: ${e}}`},sX={keyword:"enum",schemaType:"array",$data:!0,error:oX,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=rR.useFunc(t,nX.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=mr.or(...o.map((h,g)=>f(m,g)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,(m)=>t.if(mr._`${u()}(${r}, ${m})`,()=>t.assign(l,!0).break()))}function f(m,h){let g=o[h];return typeof g==="object"&&g!==null?mr._`${u()}(${r}, ${m}[${h}])`:mr._`${r} === ${g}`}}};nR.default=sX});var iR=E(function(sR){Object.defineProperty(sR,"__esModule",{value:!0});var aX=OA(),cX=IA(),uX=LA(),lX=qA(),dX=UA(),pX=ZA(),fX=KA(),mX=XA(),hX=tR(),gX=oR(),yX=[aX.default,cX.default,uX.default,lX.default,dX.default,pX.default,fX.default,mX.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},hX.default,gX.default];sR.default=yX});var oy=E(function(cR){Object.defineProperty(cR,"__esModule",{value:!0});cR.validateAdditionalItems=void 0;var mt=ee(),ss=ue(),wX={message:({params:{len:e}})=>mt.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>mt._`{limit: ${e}}`},_X={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:wX,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){ss.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}aR(e,n)}};function aR(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",mt._`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(mt._`${a} <= ${t.length}`);else if(typeof n=="object"&&!ss.alwaysValidSchema(i,n)){let u=r.var("valid",mt._`${a} <= ${t.length}`);r.if(mt.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:ss.Type.Num},u),!i.allErrors)r.if(mt.not(u),()=>r.break())})}}cR.validateAdditionalItems=aR;cR.default=_X});var sy=E(function(pR){Object.defineProperty(pR,"__esModule",{value:!0});pR.validateTuple=void 0;var Vl=ee(),mn=ue(),lR=Dt(),SX={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return dR(e,"additionalItems",t);if(r.items=!0,mn.alwaysValidSchema(r,t))return;e.ok(lR.validateArray(e))}};function dR(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=mn.mergeEvaluated.items(n,r.length,a.items);let c=n.name("valid"),u=n.const("len",Vl._`${s}.length`);r.forEach((d,f)=>{if(mn.alwaysValidSchema(a,d))return;n.if(Vl._`${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}"`;mn.checkStrictMode(a,y,f.strictTuples)}}}pR.validateTuple=dR;pR.default=SX});var gR=E(function(hR){Object.defineProperty(hR,"__esModule",{value:!0});var mR=sy(),xX={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>mR.validateTuple(e,"items")};hR.default=xX});var vR=E(function(_R){Object.defineProperty(_R,"__esModule",{value:!0});var Zl=ee(),yR=ue(),bR=Dt(),wR=oy(),EX={message:({params:{len:e}})=>Zl.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>Zl._`{limit: ${e}}`},TX={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:EX,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;if(n.items=!0,yR.alwaysValidSchema(n,t))return;if(o)wR.validateAdditionalItems(e,o);else e.ok(bR.validateArray(e))}};_R.default=TX});var kR=E(function(SR){Object.defineProperty(SR,"__esModule",{value:!0});var Ee=ee(),hn=ue(),PX={message:({params:{min:e,max:t}})=>t===void 0?Ee.str`must contain at least ${e} valid item(s)`:Ee.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?Ee._`{minContains: ${e}}`:Ee._`{minContains: ${e}, maxContains: ${t}}`},IX={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:PX,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",Ee._`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){hn.checkStrictMode(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){hn.checkStrictMode(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(hn.alwaysValidSchema(s,r)){let g=Ee._`${l} >= ${i}`;if(a!==void 0)g=Ee._`${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(Ee._`${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,(w)=>{e.subschema({keyword:"contains",dataProp:w,dataPropType:hn.Type.Num,compositeRule:!0},g),y()})}function h(g){if(t.code(Ee._`${g}++`),a===void 0)t.if(Ee._`${g} >= ${i}`,()=>t.assign(d,!0).break());else if(t.if(Ee._`${g} > ${a}`,()=>t.assign(d,!1).break()),i===1)t.assign(d,!0);else t.if(Ee._`${g} >= ${i}`,()=>t.assign(d,!0))}}};SR.default=IX});var IR=E(function(TR){Object.defineProperty(TR,"__esModule",{value:!0});TR.validateSchemaDeps=TR.validatePropertyDeps=TR.error=void 0;var is=ee(),xR=ue(),hr=Dt();TR.error={message:({params:{property:e,depsCount:t,deps:r}})=>is.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>is._`{property: ${e},
|
|
169
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,L._`[${o}]`)}}}function _Y({gen:e,parentData:t,parentDataProperty:r},n){e.if(L._`${t} !== undefined`,()=>e.assign(L._`${t}[${r}]`,n))}function oy(e,t,r,n=ts.Correct){let o=n===ts.Correct?L.operators.EQ:L.operators.NEQ,s;switch(e){case"null":return L._`${t} ${o} null`;case"array":s=L._`Array.isArray(${t})`;break;case"object":s=L._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i(L._`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return L._`typeof ${t} ${o} ${e}`}return n===ts.Correct?s:L.not(s);function i(a=L.nil){return L.and(L._`typeof ${t} == "number"`,a,r?L._`isFinite(${t})`:L.nil)}}gI.checkDataType=oy;function sy(e,t,r,n){if(e.length===1)return oy(e[0],t,r,n);let o,s=Ll.toHash(e);if(s.array&&s.object){let i=L._`typeof ${t} != "object"`;o=s.null?i:L._`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=L.nil;if(s.number)delete s.integer;for(let i in s)o=L.and(o,oy(i,t,r,n));return o}gI.checkDataTypes=sy;var vY={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?L._`{type: ${e}}`:L._`{type: ${t}}`};function iy(e){let t=SY(e);fI.reportError(t,vY)}gI.reportTypeError=iy;function SY(e){let{gen:t,data:r,schema:n}=e,o=Ll.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var SI=E(function(_I){Object.defineProperty(_I,"__esModule",{value:!0});_I.assignDefaults=void 0;var qt=ee(),bI=ue();function OY(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)wI(e,o,r[o].default);else if(t==="array"&&Array.isArray(n))n.forEach((o,s)=>wI(e,s,o.default))}_I.assignDefaults=OY;function wI(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=qt._`${s}${qt.getProperty(t)}`;if(o){bI.checkStrictMode(e,`default is ignored for: ${a}`);return}let c=qt._`${a} === undefined`;if(i.useDefaults==="empty")c=qt._`${c} || ${a} === null || ${a} === ""`;n.if(c,qt._`${a} = ${qt.stringify(r)}`)}});var Ft=E(function(TI){Object.defineProperty(TI,"__esModule",{value:!0});TI.validateUnion=TI.validateArray=TI.usePattern=TI.callValidateCode=TI.schemaProperties=TI.allSchemaProperties=TI.noPropertyInData=TI.propertyInData=TI.isOwnProperty=TI.hasPropFunc=TI.reportMissingProp=TI.checkMissingProp=TI.checkReportMissingProp=void 0;var G=ee(),rs=ue(),fn=zr(),kI=ue();function IY(e,t){let{gen:r,data:n,it:o}=e;r.if(cy(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:G._`${t}`},!0),e.error()})}TI.checkReportMissingProp=IY;function AY({gen:e,data:t,it:{opts:r}},n,o){return G.or(...n.map((s)=>G.and(cy(e,t,s,r.ownProperties),G._`${o} = ${s}`)))}TI.checkMissingProp=AY;function RY(e,t){e.setParams({missingProperty:t},!0),e.error()}TI.reportMissingProp=RY;function xI(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:G._`Object.prototype.hasOwnProperty`})}TI.hasPropFunc=xI;function ay(e,t,r){return G._`${xI(e)}.call(${t}, ${r})`}TI.isOwnProperty=ay;function CY(e,t,r,n){let o=G._`${t}${G.getProperty(r)} !== undefined`;return n?G._`${o} && ${ay(e,t,r)}`:o}TI.propertyInData=CY;function cy(e,t,r,n){let o=G._`${t}${G.getProperty(r)} === undefined`;return n?G.or(o,G.not(ay(e,t,r))):o}TI.noPropertyInData=cy;function $I(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}TI.allSchemaProperties=$I;function zY(e,t){return $I(t).filter((r)=>!rs.alwaysValidSchema(e,t[r]))}TI.schemaProperties=zY;function NY({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?G._`${e}, ${t}, ${n}${o}`:t,d=[[fn.default.instancePath,G.strConcat(fn.default.instancePath,s)],[fn.default.parentData,i.parentData],[fn.default.parentDataProperty,i.parentDataProperty],[fn.default.rootData,fn.default.rootData]];if(i.opts.dynamicRef)d.push([fn.default.dynamicAnchors,fn.default.dynamicAnchors]);let f=G._`${l}, ${r.object(...d)}`;return c!==G.nil?G._`${a}.call(${c}, ${f})`:G._`${a}(${f})`}TI.callValidateCode=NY;var LY=G._`new RegExp`;function jY({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,s=o(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:G._`${o.code==="new RegExp"?LY:kI.useFunc(e,o)}(${r}, ${n})`})}TI.usePattern=jY;function DY(e){let{gen:t,data:r,keyword:n,it:o}=e,s=t.name("valid");if(o.allErrors){let a=t.let("valid",!0);return i(()=>t.assign(a,!1)),a}return t.var(s,!0),i(()=>t.break()),s;function i(a){let c=t.const("len",G._`${r}.length`);t.forRange("i",0,c,(u)=>{e.subschema({keyword:n,dataProp:u,dataPropType:rs.Type.Num},s),t.if(G.not(s),a)})}}TI.validateArray=DY;function MY(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((c)=>rs.alwaysValidSchema(o,c))&&!o.opts.unevaluated)return;let i=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);if(t.assign(i,G._`${i} || ${a}`),!e.mergeValidEvaluated(l,a))t.if(G.not(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}TI.validateUnion=MY});var zI=E(function(RI){Object.defineProperty(RI,"__esModule",{value:!0});RI.validateKeywordUsage=RI.validSchemaType=RI.funcKeywordCode=RI.macroKeywordCode=void 0;var he=ee(),eo=zr(),OI=Ft(),II=ma();function XY(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=AI(r,n,a);if(i.opts.validateSchema!==!1)i.self.validateSchema(a,!0);let u=r.name("valid");e.subschema({schema:a,schemaPath:he.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}RI.macroKeywordCode=XY;function QY(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;t7(c,t);let u=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,l=AI(n,o,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1){if(g(),t.modifying)PI(e);y(()=>e.error())}else{let b=t.async?m():h();if(t.modifying)PI(e);y(()=>e7(e,b))}}function m(){let b=n.let("ruleErrs",null);return n.try(()=>g(he._`await `),(T)=>n.assign(d,!1).if(he._`${T} instanceof ${c.ValidationError}`,()=>n.assign(b,he._`${T}.errors`),()=>n.throw(T))),b}function h(){let b=he._`${l}.errors`;return n.assign(b,null),g(he.nil),b}function g(b=t.async?he._`await `:he.nil){let T=c.opts.passContext?eo.default.this:eo.default.self,S=!(("compile"in t)&&!a||t.schema===!1);n.assign(d,he._`${b}${OI.callValidateCode(e,l,T,S)}`,t.modifying)}function y(b){var T;n.if(he.not((T=t.valid)!==null&&T!==void 0?T:d),b)}}RI.funcKeywordCode=QY;function PI(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,he._`${n.parentData}[${n.parentDataProperty}]`))}function e7(e,t){let{gen:r}=e;r.if(he._`Array.isArray(${t})`,()=>{r.assign(eo.default.vErrors,he._`${eo.default.vErrors} === null ? ${t} : ${eo.default.vErrors}.concat(${t})`).assign(eo.default.errors,he._`${eo.default.vErrors}.length`),II.extendErrors(e)},()=>e.error())}function t7({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function AI(e,t,r){if(r===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:he.stringify(r)})}function r7(e,t,r=!1){return!t.length||t.some((n)=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}RI.validSchemaType=r7;function n7({schema:e,opts:t,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw Error("ajv implementation error");let i=o.dependencies;if(i===null||i===void 0?void 0:i.some((a)=>!Object.prototype.hasOwnProperty.call(e,a)))throw Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema){if(!o.validateSchema(e[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw Error(c)}}}RI.validateKeywordUsage=n7});var jI=E(function(NI){Object.defineProperty(NI,"__esModule",{value:!0});NI.extendSubschemaMode=NI.extendSubschemaData=NI.getSubschema=void 0;var je=ee(),jl=ue();function a7(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(t!==void 0&&n!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:je._`${e.schemaPath}${je.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:je._`${e.schemaPath}${je.getProperty(t)}${je.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${jl.escapeFragment(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw Error('either "keyword" or "schema" must be passed')}NI.getSubschema=a7;function c7(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=a.let("data",je._`${t.data}${je.getProperty(r)}`,!0);c(f),e.errorPath=je.str`${u}${jl.getErrorPath(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=je._`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(o!==void 0){let u=o instanceof je.Name?o:a.let("data",o,!0);if(c(u),i!==void 0)e.propertyName=i}if(s)e.dataTypes=s;function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}NI.extendSubschemaData=c7;function u7(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){if(n!==void 0)e.compositeRule=n;if(o!==void 0)e.createErrors=o;if(s!==void 0)e.allErrors=s;e.jtdDiscriminator=t,e.jtdMetadata=r}NI.extendSubschemaMode=u7});var uy=E(function(cSe,DI){DI.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(s=Object.keys(t),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!e(t[i],r[i]))return!1}return!0}return t!==t&&r!==r}});var qI=E(function(uSe,MI){var mn=MI.exports=function(e,t,r){if(typeof t=="function")r=t,t={};r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Dl(t,n,o,e,"",e)};mn.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};mn.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};mn.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};mn.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Dl(e,t,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in mn.arrayKeywords)for(var f=0;f<d.length;f++)Dl(e,t,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in mn.propsKeywords){if(d&&typeof d=="object")for(var m in d)Dl(e,t,r,d[m],o+"/"+l+"/"+p7(m),s,o,l,n,m)}else if(l in mn.keywords||e.allKeys&&!(l in mn.skipKeywords))Dl(e,t,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function p7(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ga=E(function(ZI){Object.defineProperty(ZI,"__esModule",{value:!0});ZI.getSchemaRefs=ZI.resolveUrl=ZI.normalizeId=ZI._getFullPath=ZI.getFullPath=ZI.inlineRef=void 0;var FI=ue(),f7=uy(),m7=qI(),h7=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function g7(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!ly(e);if(!t)return!1;return UI(e)<=t}ZI.inlineRef=g7;var y7=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function ly(e){for(let t in e){if(y7.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(ly))return!0;if(typeof r=="object"&&ly(r))return!0}return!1}function UI(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,h7.has(r))continue;if(typeof e[r]=="object")FI.eachItem(e[r],(n)=>t+=UI(n));if(t===1/0)return 1/0}return t}function WI(e,t="",r){if(r!==!1)t=ns(t);let n=e.parse(t);return VI(e,n)}ZI.getFullPath=WI;function VI(e,t){return e.serialize(t).split("#")[0]+"#"}ZI._getFullPath=VI;var w7=/#\/?$/;function ns(e){return e?e.replace(w7,""):""}ZI.normalizeId=ns;function b7(e,t,r){return r=ns(r),e.resolve(t,r)}ZI.resolveUrl=b7;var _7=/^[a-z_][-a-z0-9._]*$/i;function v7(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=ns(e[r]||t),s={"":o},i=WI(n,o,!1),a={},c=new Set;return m7(e,{allKeys:!0},(d,f,m,h)=>{if(h===void 0)return;let g=i+f,y=s[h];if(typeof d[r]=="string")y=b.call(this,d[r]);T.call(this,d.$anchor),T.call(this,d.$dynamicAnchor),s[f]=y;function b(S){let I=this.opts.uriResolver.resolve;if(S=ns(y?I(y,S):S),c.has(S))throw l(S);c.add(S);let _=this.refs[S];if(typeof _=="string")_=this.refs[_];if(typeof _=="object")u(d,_.schema,S);else if(S!==ns(g))if(S[0]==="#")u(d,a[S],S),a[S]=d;else this.refs[S]=g;return S}function T(S){if(typeof S=="string"){if(!_7.test(S))throw Error(`invalid anchor "${S}"`);b.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!f7(d,f))throw l(m)}function l(d){return Error(`reference "${d}" resolves to more than one schema`)}}ZI.getSchemaRefs=v7});var ya=E(function(aA){Object.defineProperty(aA,"__esModule",{value:!0});aA.getData=aA.KeywordCxt=aA.validateFunctionCode=void 0;var ql=oI(),Ml=ha(),ss=ny(),hn=ha(),JI=SI(),pr=zI(),os=jI(),R=ee(),X=zr(),YI=ga(),Ke=ue(),dr=ma();function E7(e){if(eA(e)){if(tA(e),QI(e)){I7(e);return}}XI(e,()=>ql.topBoolOrEmptySchema(e))}aA.validateFunctionCode=E7;function XI({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){if(o.code.es5)e.func(t,R._`${X.default.data}, ${X.default.valCxt}`,n.$async,()=>{e.code(R._`"use strict"; ${KI(r,o)}`),O7(e,o),e.code(s)});else e.func(t,R._`${X.default.data}, ${P7(o)}`,n.$async,()=>e.code(KI(r,o)).code(s))}function P7(e){return R._`{${X.default.instancePath}="", ${X.default.parentData}, ${X.default.parentDataProperty}, ${X.default.rootData}=${X.default.data}${e.dynamicRef?R._`, ${X.default.dynamicAnchors}={}`:R.nil}}={}`}function O7(e,t){e.if(X.default.valCxt,()=>{if(e.var(X.default.instancePath,R._`${X.default.valCxt}.${X.default.instancePath}`),e.var(X.default.parentData,R._`${X.default.valCxt}.${X.default.parentData}`),e.var(X.default.parentDataProperty,R._`${X.default.valCxt}.${X.default.parentDataProperty}`),e.var(X.default.rootData,R._`${X.default.valCxt}.${X.default.rootData}`),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`${X.default.valCxt}.${X.default.dynamicAnchors}`)},()=>{if(e.var(X.default.instancePath,R._`""`),e.var(X.default.parentData,R._`undefined`),e.var(X.default.parentDataProperty,R._`undefined`),e.var(X.default.rootData,X.default.data),t.dynamicRef)e.var(X.default.dynamicAnchors,R._`{}`)})}function I7(e){let{schema:t,opts:r,gen:n}=e;XI(e,()=>{if(r.$comment&&t.$comment)nA(e);if(N7(e),n.let(X.default.vErrors,null),n.let(X.default.errors,0),r.unevaluated)A7(e);rA(e),D7(e)});return}function A7(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",R._`${r}.evaluated`),t.if(R._`${e.evaluated}.dynamicProps`,()=>t.assign(R._`${e.evaluated}.props`,R._`undefined`)),t.if(R._`${e.evaluated}.dynamicItems`,()=>t.assign(R._`${e.evaluated}.items`,R._`undefined`))}function KI(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?R._`/*# sourceURL=${r} */`:R.nil}function R7(e,t){if(eA(e)){if(tA(e),QI(e)){C7(e,t);return}}ql.boolOrEmptySchema(e,t)}function QI({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function eA(e){return typeof e.schema!="boolean"}function C7(e,t){let{schema:r,gen:n,opts:o}=e;if(o.$comment&&r.$comment)nA(e);L7(e),j7(e);let s=n.const("_errs",X.default.errors);rA(e,s),n.var(t,R._`${s} === ${X.default.errors}`)}function tA(e){Ke.checkUnknownRules(e),z7(e)}function rA(e,t){if(e.opts.jtd)return HI(e,[],!1,t);let r=Ml.getSchemaTypes(e.schema),n=Ml.coerceAndCheckDataType(e,r);HI(e,r,!n,t)}function z7(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Ke.schemaHasRulesButRef(t,o.RULES))o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function N7(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Ke.checkStrictMode(e,"default is ignored in the schema root")}function L7(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=YI.resolveUrl(e.opts.uriResolver,e.baseId,t)}function j7(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function nA({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code(R._`${X.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=R.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(R._`${X.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function D7(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;if(r.$async)t.if(R._`${X.default.errors} === 0`,()=>t.return(X.default.data),()=>t.throw(R._`new ${o}(${X.default.vErrors})`));else{if(t.assign(R._`${n}.errors`,X.default.vErrors),s.unevaluated)M7(e);t.return(R._`${X.default.errors} === 0`)}}function M7({gen:e,evaluated:t,props:r,items:n}){if(r instanceof R.Name)e.assign(R._`${t}.props`,r);if(n instanceof R.Name)e.assign(R._`${t}.items`,n)}function HI(e,t,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=e,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!Ke.schemaHasRulesButRef(s,l))){o.block(()=>sA(e,"$ref",l.all.$ref.definition));return}if(!c.jtd)q7(e,t);o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){if(!ss.shouldUseGroup(s,f))return;if(f.type){if(o.if(hn.checkDataType(f.type,i,c.strictNumbers)),GI(e,f),t.length===1&&t[0]===f.type&&r)o.else(),hn.reportTypeError(e);o.endIf()}else GI(e,f);if(!a)o.if(R._`${X.default.errors} === ${n||0}`)}}function GI(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;if(o)JI.assignDefaults(e,t.type);r.block(()=>{for(let s of t.rules)if(ss.shouldUseRule(n,s))sA(e,s.keyword,s.definition,t.type)})}function q7(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(F7(e,t),!e.opts.allowUnionTypes)U7(e,t);W7(e,e.dataTypes)}function F7(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!oA(e.dataTypes,r))dy(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Z7(e,t)}function U7(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))dy(e,"use allowUnionTypes to allow union type keyword")}function W7(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&ss.shouldUseRule(e.schema,o)){let{type:s}=o.definition;if(s.length&&!s.some((i)=>V7(t,i)))dy(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function V7(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function oA(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Z7(e,t){let r=[];for(let n of e.dataTypes)if(oA(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function dy(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Ke.checkStrictMode(e,t,e.opts.strictTypes)}class py{constructor(e,t,r){if(pr.validateKeywordUsage(e,t,r),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=r,this.data=e.data,this.schema=e.schema[r],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=Ke.schemaRefOrVal(e,this.schema,r,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const("vSchema",iA(this.$data,e));else if(this.schemaCode=this.schemaValue,!pr.validSchemaType(this.schema,t.schemaType,t.allowUndefined))throw Error(`${r} value must be ${JSON.stringify(t.schemaType)}`);if("code"in t?t.trackErrors:t.errors!==!1)this.errsCount=e.gen.const("_errs",X.default.errors)}result(e,t,r){this.failResult(R.not(e),t,r)}failResult(e,t,r){if(this.gen.if(e),r)r();else this.error();if(t){if(this.gen.else(),t(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(e,t){this.failResult(R.not(e),void 0,t)}fail(e){if(e===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(e),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail(R._`${t} !== undefined && (${R.or(this.invalid$data(),e)})`)}error(e,t,r){if(t){this.setParams(t),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,t){(e?dr.reportExtraError:dr.reportError)(this,this.def.error,t)}$dataError(){dr.reportError(this,this.def.$dataError||dr.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');dr.resetErrorsCount(this.gen,this.errsCount)}ok(e){if(!this.allErrors)this.gen.if(e)}setParams(e,t){if(t)Object.assign(this.params,e);else this.params=e}block$data(e,t,r=R.nil){this.gen.block(()=>{this.check$data(e,r),t()})}check$data(e=R.nil,t=R.nil){if(!this.$data)return;let{gen:r,schemaCode:n,schemaType:o,def:s}=this;if(r.if(R.or(R._`${n} === undefined`,t)),e!==R.nil)r.assign(e,!0);if(o.length||s.validateSchema){if(r.elseIf(this.invalid$data()),this.$dataError(),e!==R.nil)r.assign(e,!1)}r.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:r,def:n,it:o}=this;return R.or(s(),i());function s(){if(r.length){if(!(t instanceof R.Name))throw Error("ajv implementation error");let a=Array.isArray(r)?r:[r];return R._`${hn.checkDataTypes(a,t,o.opts.strictNumbers,hn.DataType.Wrong)}`}return R.nil}function i(){if(n.validateSchema){let a=e.scopeValue("validate$data",{ref:n.validateSchema});return R._`!${a}(${t})`}return R.nil}}subschema(e,t){let r=os.getSubschema(this.it,e);os.extendSubschemaData(r,this.it,e),os.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return R7(n,t),n}mergeEvaluated(e,t){let{it:r,gen:n}=this;if(!r.opts.unevaluated)return;if(r.props!==!0&&e.props!==void 0)r.props=Ke.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Ke.mergeEvaluated.items(n,e.items,r.items,t)}mergeValidEvaluated(e,t){let{it:r,gen:n}=this;if(r.opts.unevaluated&&(r.props!==!0||r.items!==!0))return n.if(t,()=>this.mergeEvaluated(e,R.Name)),!0}}aA.KeywordCxt=py;function sA(e,t,r,n){let o=new py(e,r,t);if("code"in r)r.code(o,n);else if(o.$data&&r.validate)pr.funcKeywordCode(o,r);else if("macro"in r)pr.macroKeywordCode(o,r);else if(r.compile||r.validate)pr.funcKeywordCode(o,r)}var B7=/^\/(?:[^~]|~0|~1)*$/,K7=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function iA(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return X.default.rootData;if(e[0]==="/"){if(!B7.test(e))throw Error(`Invalid JSON-pointer: ${e}`);o=e,s=X.default.rootData}else{let u=K7.exec(e);if(!u)throw Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=t)throw Error(c("property/index",l));return n[t-l]}if(l>t)throw Error(c("data",l));if(s=r[t-l],!o)return s}let i=s,a=o.split("/");for(let u of a)if(u)s=R._`${s}${R.getProperty(Ke.unescapeJsonPointer(u))}`,i=R._`${i} && ${s}`;return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}aA.getData=iA});var Fl=E(function(lA){Object.defineProperty(lA,"__esModule",{value:!0});class uA extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}lA.default=uA});var wa=E(function(pA){Object.defineProperty(pA,"__esModule",{value:!0});var is=ga();class dA extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=is.resolveUrl(e,t,r),this.missingSchema=is.normalizeId(is.getFullPath(e,this.missingRef))}}pA.default=dA});var Vl=E(function(hA){Object.defineProperty(hA,"__esModule",{value:!0});hA.resolveSchema=hA.getCompilingSchema=hA.resolveRef=hA.compileSchema=hA.SchemaEnv=void 0;var Ae=ee(),X7=Fl(),to=zr(),Re=ga(),Ul=ue(),fA=ya();class ba{constructor(e){var t;this.refs={},this.dynamicAnchors={};let r;if(typeof e.schema=="object")r=e.schema;this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(t=e.baseId)!==null&&t!==void 0?t:Re.normalizeId(r===null||r===void 0?void 0:r[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=r===null||r===void 0?void 0:r.$async,this.refs={}}}hA.SchemaEnv=ba;function my(e){let t=mA.call(this,e);if(t)return t;let r=Re.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Ae.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;if(e.$async)a=i.scopeValue("Error",{ref:X7.default,code:Ae._`require("ajv/dist/runtime/validation_error").default`});let c=i.scopeName("validate");e.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:to.default.data,parentData:to.default.parentData,parentDataProperty:to.default.parentDataProperty,dataNames:[to.default.data],dataPathArr:[Ae.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:Ae.stringify(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Ae.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:Ae._`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),fA.validateFunctionCode(u),i.optimize(this.opts.code.optimize);let d=i.toString();if(l=`${i.scopeRefs(to.default.scope)}return ${d}`,this.opts.code.process)l=this.opts.code.process(l,e);let m=Function(`${to.default.self}`,`${to.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=e.schema,m.schemaEnv=e,e.$async)m.$async=!0;if(this.opts.code.source===!0)m.source={validateName:c,validateCode:d,scopeValues:i._values};if(this.opts.unevaluated){let{props:h,items:g}=u;if(m.evaluated={props:h instanceof Ae.Name?void 0:h,items:g instanceof Ae.Name?void 0:g,dynamicProps:h instanceof Ae.Name,dynamicItems:g instanceof Ae.Name},m.source)m.source.evaluated=Ae.stringify(m.evaluated)}return e.validate=m,e}catch(d){if(delete e.validate,delete e.validateName,l)this.logger.error("Error compiling schema, function code:",l);throw d}finally{this._compilations.delete(e)}}hA.compileSchema=my;function Q7(e,t,r){var n;r=Re.resolveUrl(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=r8.call(this,e,r);if(s===void 0){let i=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;if(i)s=new ba({schema:i,schemaId:a,root:e,baseId:t})}if(s===void 0)return;return e.refs[r]=e8.call(this,s)}hA.resolveRef=Q7;function e8(e){if(Re.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:my.call(this,e)}function mA(e){for(let t of this._compilations)if(t8(t,e))return t}hA.getCompilingSchema=mA;function t8(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function r8(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||Wl.call(this,e,t)}function Wl(e,t){let r=this.opts.uriResolver.parse(t),n=Re._getFullPath(this.opts.uriResolver,r),o=Re.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return fy.call(this,r,e);let s=Re.normalizeId(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Wl.call(this,e,i);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return fy.call(this,r,a)}if(typeof(i===null||i===void 0?void 0:i.schema)!=="object")return;if(!i.validate)my.call(this,i);if(s===Re.normalizeId(t)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];if(u)o=Re.resolveUrl(this.opts.uriResolver,o,u);return new ba({schema:a,schemaId:c,root:e,baseId:o})}return fy.call(this,r,i)}hA.resolveSchema=Wl;var n8=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function fy(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r==="boolean")return;let c=r[Ul.unescapeFragment(a)];if(c===void 0)return;r=c;let u=typeof r==="object"&&r[this.opts.schemaId];if(!n8.has(a)&&u)t=Re.resolveUrl(this.opts.uriResolver,t,u)}let s;if(typeof r!="boolean"&&r.$ref&&!Ul.schemaHasRulesButRef(r,this.RULES)){let a=Re.resolveUrl(this.opts.uriResolver,t,r.$ref);s=Wl.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new ba({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s;return}});var yA=E(function(hSe,c8){c8.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var yy=E(function(gSe,kA){var u8=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),bA=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),hy=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),_A=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),l8=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function gy(e){let t="",r=0,n=0;for(n=0;n<e.length;n++){if(r=e[n].charCodeAt(0),r===48)continue;if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var d8=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function wA(e){return e.length=0,!0}function p8(e,t,r){if(e.length){let n=gy(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function f8(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=p8;for(let c=0;c<e.length;c++){let u=e[c];if(u==="["||u==="]")continue;if(u===":"){if(s===!0)i=!0;if(!a(o,n,r))break;if(++t>7){r.error=!0;break}if(c>0&&e[c-1]===":")s=!0;n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=wA}else{o.push(u);continue}}if(o.length)if(a===wA)r.zone=o.join("");else if(i)n.push(o.join(""));else n.push(gy(o));return r.address=n.join(""),r}function vA(e){if(m8(e,":")<2)return{host:e,isIPV6:!1};let t=f8(e);if(!t.error){let{address:r,address:n}=t;if(t.zone)r+="%"+t.zone,n+="%25"+t.zone;return{host:r,isIPV6:!0,escapedHost:n}}else return{host:e,isIPV6:!1}}function m8(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function h8(e){let t=e,r=[],n=-1,o=0;while(o=t.length){if(o===1)if(t===".")break;else if(t==="/"){r.push("/");break}else{r.push(t);break}else if(o===2){if(t[0]==="."){if(t[1]===".")break;else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."||t[1]==="/"){r.push("/");break}}}else if(o===3){if(t==="/.."){if(r.length!==0)r.pop();r.push("/");break}}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."){if(t[3]==="/"){if(t=t.slice(3),r.length!==0)r.pop();continue}}}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}var g8={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},y8=/[@/?#:]/g,w8=/[@/?#]/g;function SA(e,t){let r=t?w8:y8;return r.lastIndex=0,e.replace(r,(n)=>g8[n])}function b8(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let o=e.slice(n+1,n+3);if(hy(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(t&&_A(i))r+=i;else r+="%"+s;n+=2;continue}}r+=e[n]}return r}function _8(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(hy(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));if(s!=="."&&_A(s))t+=s;else t+="%"+o;r+=2;continue}}if(l8(e[r]))t+=e[r];else t+=escape(e[r])}return t}function v8(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(hy(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function S8(e){let t=[];if(e.userinfo!==void 0)t.push(e.userinfo),t.push("@");if(e.host!==void 0){let r=unescape(e.host);if(!bA(r)){let n=vA(r);if(n.isIPV6===!0)r=`[${n.escapedHost}]`;else r=SA(r,!1)}t.push(r)}if(typeof e.port==="number"||typeof e.port==="string")t.push(":"),t.push(String(e.port));return t.length?t.join(""):void 0}kA.exports={nonSimpleDomain:d8,recomposeAuthority:S8,reescapeHostDelimiters:SA,normalizePercentEncoding:b8,normalizePathEncoding:_8,escapePreservingEscapes:v8,removeDotSegments:h8,isIPv4:bA,isUUID:u8,normalizeIPv6:vA,stringArrayToHexStripped:gy}});var PA=E(function(ySe,EA){var{isUUID:k8}=yy(),x8=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,$8=["http","https","ws","wss","urn","urn:uuid"];function T8(e){return $8.indexOf(e)!==-1}function wy(e){if(e.secure===!0)return!0;else if(e.secure===!1)return!1;else if(e.scheme)return e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S");else return!1}function xA(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function $A(e){let t=String(e.scheme).toLowerCase()==="https";if(e.port===(t?443:80)||e.port==="")e.port=void 0;if(!e.path)e.path="/";return e}function E8(e){return e.secure=wy(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function P8(e){if(e.port===(wy(e)?443:80)||e.port==="")e.port=void 0;if(typeof e.secure==="boolean")e.scheme=e.secure?"wss":"ws",e.secure=void 0;if(e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function O8(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(x8);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let o=`${n}:${t.nid||e.nid}`,s=by(o);if(e.path=void 0,s)e=s.parse(e,t)}else e.error=e.error||"URN can not be parsed.";return e}function I8(e,t){if(e.nid===void 0)throw Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),o=`${r}:${t.nid||n}`,s=by(o);if(s)e=s.serialize(e,t);let i=e,a=e.nss;return i.path=`${n||t.nid}:${a}`,t.skipEscape=!0,i}function A8(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!k8(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function R8(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var TA={scheme:"http",domainHost:!0,parse:xA,serialize:$A},C8={scheme:"https",domainHost:TA.domainHost,parse:xA,serialize:$A},Zl={scheme:"ws",domainHost:!0,parse:E8,serialize:P8},z8={scheme:"wss",domainHost:Zl.domainHost,parse:Zl.parse,serialize:Zl.serialize},N8={scheme:"urn",parse:O8,serialize:I8,skipNormalize:!0},L8={scheme:"urn:uuid",parse:A8,serialize:R8,skipNormalize:!0},Bl={http:TA,https:C8,ws:Zl,wss:z8,urn:N8,"urn:uuid":L8};Object.setPrototypeOf(Bl,null);function by(e){return e&&(Bl[e]||Bl[e.toLowerCase()])||void 0}EA.exports={wsIsSecure:wy,SCHEMES:Bl,isValidSchemeName:T8,getSchemeHandler:by}});var zA=E(function(wSe,Kl){var{normalizeIPv6:j8,removeDotSegments:_a,recomposeAuthority:D8,normalizePercentEncoding:M8,normalizePathEncoding:q8,escapePreservingEscapes:F8,reescapeHostDelimiters:U8,isIPv4:W8,nonSimpleDomain:V8}=yy(),{SCHEMES:Z8,getSchemeHandler:IA}=PA();function B8(e,t){if(typeof e==="string")e=X8(e,t);else if(typeof e==="object")e=as(ro(e,t),t);return e}function K8(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=AA(as(e,n),as(t,n),n,!0);return n.skipEscape=!0,ro(o,n)}function AA(e,t,r,n){let o={};if(!n)e=as(ro(e,r),r),t=as(ro(t,r),r);if(r=r||{},!r.tolerant&&t.scheme)o.scheme=t.scheme,o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=_a(t.path||""),o.query=t.query;else{if(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=_a(t.path||""),o.query=t.query;else{if(!t.path)if(o.path=e.path,t.query!==void 0)o.query=t.query;else o.query=e.query;else{if(t.path[0]==="/")o.path=_a(t.path);else{if((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path)o.path="/"+t.path;else if(!e.path)o.path=t.path;else o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path;o.path=_a(o.path)}o.query=t.query}o.userinfo=e.userinfo,o.host=e.host,o.port=e.port}o.scheme=e.scheme}return o.fragment=t.fragment,o}function H8(e,t,r){let n=OA(e,r),o=OA(t,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function ro(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),o=[],s=IA(n.scheme||r.scheme);if(s&&s.serialize)s.serialize(r,n);if(r.path!==void 0)if(!n.skipEscape){if(r.path=F8(r.path),r.scheme!==void 0)r.path=r.path.split("%3A").join(":")}else r.path=M8(r.path);if(n.reference!=="suffix"&&r.scheme)o.push(r.scheme,":");let i=D8(r);if(i!==void 0){if(n.reference!=="suffix")o.push("//");if(o.push(i),r.path&&r.path[0]!=="/")o.push("/")}if(r.path!==void 0){let a=r.path;if(!n.absolutePath&&(!s||!s.absolutePath))a=_a(a);if(i===void 0&&a[0]==="/"&&a[1]==="/")a="/%2F"+a.slice(2);o.push(a)}if(r.query!==void 0)o.push("?",r.query);if(r.fragment!==void 0)o.push("#",r.fragment);return o.join("")}var G8=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,J8=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/;function Y8(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof e.port==="number"&&(e.port<0||e.port>65535))return"URI port is malformed.";return}function RA(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1;if(r.reference==="suffix")if(r.scheme)e=r.scheme+":"+e;else e="//"+e;let i=e.match(J8);if(i!==null&&i[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",o=!0;let a=e.match(G8);if(a){if(n.scheme=a[1],n.userinfo=a[3],n.host=a[4],n.port=parseInt(a[5],10),n.path=a[6]||"",n.query=a[7],n.fragment=a[8],isNaN(n.port))n.port=a[5];let c=Y8(n,a);if(c!==void 0)n.error=n.error||c,o=!0;if(n.host)if(W8(n.host)===!1){let d=j8(n.host);n.host=d.host.toLowerCase(),s=d.isIPV6}else s=!0;if(n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path)n.reference="same-document";else if(n.scheme===void 0)n.reference="relative";else if(n.fragment===void 0)n.reference="absolute";else n.reference="uri";if(r.reference&&r.reference!=="suffix"&&r.reference!==n.reference)n.error=n.error||"URI is not a "+r.reference+" reference.";let u=IA(r.scheme||n.scheme);if(!r.unicodeSupport&&(!u||!u.unicodeSupport)){if(n.host&&(r.domainHost||u&&u.domainHost)&&s===!1&&V8(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}}if(!u||u&&!u.skipNormalize){if(e.indexOf("%")!==-1){if(n.scheme!==void 0)n.scheme=unescape(n.scheme);if(n.host!==void 0)n.host=U8(unescape(n.host),s)}if(n.path)n.path=q8(n.path);if(n.fragment)try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}}if(u&&u.parse)u.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function as(e,t){return RA(e,t).parsed}function X8(e,t){return CA(e,t).normalized}function CA(e,t){let{parsed:r,malformedAuthorityOrPort:n}=RA(e,t);return{normalized:n?e:ro(r,t),malformedAuthorityOrPort:n}}function OA(e,t){if(typeof e==="string"){let{normalized:r,malformedAuthorityOrPort:n}=CA(e,t);return n?void 0:r}if(typeof e==="object")return ro(e,t)}var _y={SCHEMES:Z8,normalize:B8,resolve:K8,resolveComponent:AA,equal:H8,serialize:ro,parse:as};Kl.exports=_y;Kl.exports.default=_y;Kl.exports.fastUri=_y});var jA=E(function(LA){Object.defineProperty(LA,"__esModule",{value:!0});var NA=zA();NA.code='require("ajv/dist/runtime/uri").default';LA.default=NA});var KA=E(function(Nr){Object.defineProperty(Nr,"__esModule",{value:!0});Nr.CodeGen=Nr.Name=Nr.nil=Nr.stringify=Nr.str=Nr._=Nr.KeywordCxt=void 0;var eX=ya();Object.defineProperty(Nr,"KeywordCxt",{enumerable:!0,get:function(){return eX.KeywordCxt}});var us=ee();Object.defineProperty(Nr,"_",{enumerable:!0,get:function(){return us._}});Object.defineProperty(Nr,"str",{enumerable:!0,get:function(){return us.str}});Object.defineProperty(Nr,"stringify",{enumerable:!0,get:function(){return us.stringify}});Object.defineProperty(Nr,"nil",{enumerable:!0,get:function(){return us.nil}});Object.defineProperty(Nr,"Name",{enumerable:!0,get:function(){return us.Name}});Object.defineProperty(Nr,"CodeGen",{enumerable:!0,get:function(){return us.CodeGen}});var tX=Fl(),UA=wa(),WA=ry(),fr=Vl(),VA=ee(),mr=ga(),gn=ha(),cs=ue(),DA=yA(),rX=jA(),ZA=(e,t)=>new RegExp(e,t);ZA.code="new RegExp";var nX=["removeAdditional","useDefaults","coerceTypes"],oX=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),sX={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},iX={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},MA=200;function aX(e){var t,r,n,o,s,i,a,c,u,l,d,f,m,h,g,y,b,T,S,I,_,v,x,A,j;let Y=e.strict,ie=(t=e.code)===null||t===void 0?void 0:t.optimize,ae=ie===!0||ie===void 0?1:ie||0,Me=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:ZA,W=(o=e.uriResolver)!==null&&o!==void 0?o:rX.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:Y)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:Y)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:Y)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:Y)!==null&&f!==void 0?f:"log",strictRequired:(h=(m=e.strictRequired)!==null&&m!==void 0?m:Y)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:ae,regExp:Me}:{optimize:ae,regExp:Me},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:MA,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:MA,meta:(b=e.meta)!==null&&b!==void 0?b:!0,messages:(T=e.messages)!==null&&T!==void 0?T:!0,inlineRefs:(S=e.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(I=e.schemaId)!==null&&I!==void 0?I:"$id",addUsedSchema:(_=e.addUsedSchema)!==null&&_!==void 0?_:!0,validateSchema:(v=e.validateSchema)!==null&&v!==void 0?v:!0,validateFormats:(x=e.validateFormats)!==null&&x!==void 0?x:!0,unicodeRegExp:(A=e.unicodeRegExp)!==null&&A!==void 0?A:!0,int32range:(j=e.int32range)!==null&&j!==void 0?j:!0,uriResolver:W}}class Hl{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...aX(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new VA.ValueScope({scope:{},prefixes:oX,es5:t,lines:r}),this.logger=fX(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=WA.getRules(),qA.call(this,sX,e,"NOT SUPPORTED"),qA.call(this,iX,e,"DEPRECATED","warn"),this._metaOpts=dX.call(this),e.formats)uX.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)lX.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);cX.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=DA;if(r==="id")n={...DA},n.id=n.$id,delete n.$id;if(t&&e)this.addMetaSchema(n,n[r],!1)}defaultMeta(){let{meta:e,schemaId:t}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[t]||e:void 0}validate(e,t){let r;if(typeof e=="string"){if(r=this.getSchema(e),!r)throw Error(`no schema with key or ref "${e}"`)}else r=this.compile(e);let n=r(t);if(!("$async"in r))this.errors=r.errors;return n}compile(e,t){let r=this._addSchema(e,t);return r.validate||this._compileSchemaEnv(r)}compileAsync(e,t){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:r}=this.opts;return n.call(this,e,t);async function n(u,l){await o.call(this,u.$schema);let d=this._addSchema(u,l);return d.validate||s.call(this,d)}async function o(u){if(u&&!this.getSchema(u))await n.call(this,{$ref:u},!0)}async function s(u){try{return this._compileSchemaEnv(u)}catch(l){if(!(l instanceof UA.default))throw l;return i.call(this,l),await a.call(this,l.missingSchema),s.call(this,u)}}function i({missingSchema:u,missingRef:l}){if(this.refs[u])throw Error(`AnySchema ${u} is loaded but ${l} cannot be resolved`)}async function a(u){let l=await c.call(this,u);if(!this.refs[u])await o.call(this,l.$schema);if(!this.refs[u])this.addSchema(l,u,t)}async function c(u){let l=this._loading[u];if(l)return l;try{return await(this._loading[u]=r(u))}finally{delete this._loading[u]}}}addSchema(e,t,r,n=this.opts.validateSchema){if(Array.isArray(e)){for(let s of e)this.addSchema(s,void 0,r,n);return this}let o;if(typeof e==="object"){let{schemaId:s}=this.opts;if(o=e[s],o!==void 0&&typeof o!="string")throw Error(`schema ${s} must be string`)}return t=mr.normalizeId(t||o),this._checkUnique(t),this.schemas[t]=this._addSchema(e,r,t,n,!0),this}addMetaSchema(e,t,r=this.opts.validateSchema){return this.addSchema(e,t,!0,r),this}validateSchema(e,t){if(typeof e=="boolean")return!0;let r;if(r=e.$schema,r!==void 0&&typeof r!="string")throw Error("$schema must be a string");if(r=r||this.opts.defaultMeta||this.defaultMeta(),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(r,e);if(!n&&t){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw Error(o)}return n}getSchema(e){let t;while(typeof(t=FA.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new fr.SchemaEnv({schema:{},schemaId:r});if(t=fr.resolveSchema.call(this,n,e),!t)return;this.refs[e]=t}return t.validate||this._compileSchemaEnv(t)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let t=FA.call(this,e);if(typeof t=="object")this._cache.delete(t.schema);return delete this.schemas[e],delete this.refs[e],this}case"object":{let t=e;this._cache.delete(t);let r=e[this.opts.schemaId];if(r)r=mr.normalizeId(r),delete this.schemas[r],delete this.refs[r];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let r;if(typeof e=="string"){if(r=e,typeof t=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),t.keyword=r}else if(typeof e=="object"&&t===void 0){if(t=e,r=t.keyword,Array.isArray(r)&&!r.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(hX.call(this,r,t),!t)return cs.eachItem(r,(o)=>vy.call(this,o)),this;yX.call(this,t);let n={...t,type:gn.getJSONTypes(t.type),schemaType:gn.getJSONTypes(t.schemaType)};return cs.eachItem(r,n.type.length===0?(o)=>vy.call(this,o,n):(o)=>n.type.forEach((s)=>vy.call(this,o,n,s))),this}getKeyword(e){let t=this.RULES.all[e];return typeof t=="object"?t.definition:!!t}removeKeyword(e){let{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(let r of t.rules){let n=r.rules.findIndex((o)=>o.keyword===e);if(n>=0)r.rules.splice(n,1)}return this}addFormat(e,t){if(typeof t=="string")t=new RegExp(t);return this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:r="data"}={}){if(!e||e.length===0)return"No errors";return e.map((n)=>`${r}${n.instancePath} ${n.message}`).reduce((n,o)=>n+t+o)}$dataMetaSchema(e,t){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of t){let o=n.split("/").slice(1),s=e;for(let i of o)s=s[i];for(let i in r){let a=r[i];if(typeof a!="object")continue;let{$data:c}=a.definition,u=s[i];if(c&&u)s[i]=BA(u)}}return e}_removeAllSchemas(e,t){for(let r in e){let n=e[r];if(!t||t.test(r)){if(typeof n=="string")delete e[r];else if(n&&!n.meta)this._cache.delete(n.schema),delete e[r]}}}_addSchema(e,t,r,n=this.opts.validateSchema,o=this.opts.addUsedSchema){let s,{schemaId:i}=this.opts;if(typeof e=="object")s=e[i];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof e!="boolean")throw Error("schema must be object or boolean");let a=this._cache.get(e);if(a!==void 0)return a;r=mr.normalizeId(s||r);let c=mr.getSchemaRefs.call(this,e,r);if(a=new fr.SchemaEnv({schema:e,schemaId:i,meta:t,baseId:r,localRefs:c}),this._cache.set(a.schema,a),o&&!r.startsWith("#")){if(r)this._checkUnique(r);this.refs[r]=a}if(n)this.validateSchema(e,!0);return a}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta)this._compileMetaSchema(e);else fr.compileSchema.call(this,e);if(!e.validate)throw Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{fr.compileSchema.call(this,e)}finally{this.opts=t}}}Hl.ValidationError=tX.default;Hl.MissingRefError=UA.default;Nr.default=Hl;function qA(e,t,r,n="error"){for(let o in e){let s=o;if(s in t)this.logger[n](`${r}: option ${o}. ${e[s]}`)}}function FA(e){return e=mr.normalizeId(e),this.schemas[e]||this.refs[e]}function cX(){let e=this.opts.schemas;if(!e)return;if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function uX(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function lX(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];if(!r.keyword)r.keyword=t;this.addKeyword(r)}}function dX(){let e={...this.opts};for(let t of nX)delete e[t];return e}var pX={log(){},warn(){},error(){}};function fX(e){if(e===!1)return pX;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw Error("logger must implement log, warn and error methods")}var mX=/^[a-z_$][a-z0-9_$:-]*$/i;function hX(e,t){let{RULES:r}=this;if(cs.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!mX.test(n))throw Error(`Keyword ${n} has invalid name`)}),!t)return;if(t.$data&&!(("code"in t)||("validate"in t)))throw Error('$data keyword must have "code" or "validate" function')}function vy(e,t,r){var n;let o=t===null||t===void 0?void 0:t.post;if(r&&o)throw Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(!i)i={type:r,rules:[]},s.rules.push(i);if(s.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:gn.getJSONTypes(t.type),schemaType:gn.getJSONTypes(t.schemaType)}};if(t.before)gX.call(this,i,a,t.before);else i.rules.push(a);s.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach((c)=>this.addKeyword(c))}function gX(e,t,r){let n=e.rules.findIndex((o)=>o.keyword===r);if(n>=0)e.rules.splice(n,0,t);else e.rules.push(t),this.logger.warn(`rule ${r} is not defined`)}function yX(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=BA(t);e.validateSchema=this.compile(t,!0)}var wX={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function BA(e){return{anyOf:[e,wX]}}});var GA=E(function(HA){Object.defineProperty(HA,"__esModule",{value:!0});var vX={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};HA.default=vX});var QA=E(function(YA){Object.defineProperty(YA,"__esModule",{value:!0});YA.callRef=YA.getValidate=void 0;var kX=wa(),Jl=Ft(),be=ee(),ls=zr(),Yl=Vl(),yn=ue(),xX={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=Yl.resolveRef.call(c,u,o,r);if(l===void 0)throw new kX.default(n.opts.uriResolver,o,r);if(l instanceof Yl.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Gl(e,i,s,s.$async);let h=t.scopeValue("root",{ref:u});return Gl(e,be._`${h}.validate`,u,u.$async)}function f(h){let g=JA(e,h);Gl(e,g,h,h.$async)}function m(h){let g=t.scopeValue("schema",a.code.source===!0?{ref:h,code:be.stringify(h)}:{ref:h}),y=t.name("valid"),b=e.subschema({schema:h,dataTypes:[],schemaPath:be.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(b),e.ok(y)}}};function JA(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):be._`${r.scopeValue("wrapper",{ref:t})}.validate`}YA.getValidate=JA;function Gl(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?ls.default.this:be.nil;if(n)l();else d();function l(){if(!a.$async)throw Error("async schema referenced by sync schema");let h=o.let("valid");o.try(()=>{if(o.code(be._`await ${Jl.callValidateCode(e,t,u)}`),m(t),!i)o.assign(h,!0)},(g)=>{if(o.if(be._`!(${g} instanceof ${s.ValidationError})`,()=>o.throw(g)),f(g),!i)o.assign(h,!1)}),e.ok(h)}function d(){e.result(Jl.callValidateCode(e,t,u),()=>m(t),()=>f(t))}function f(h){let g=be._`${h}.errors`;o.assign(ls.default.vErrors,be._`${ls.default.vErrors} === null ? ${g} : ${ls.default.vErrors}.concat(${g})`),o.assign(ls.default.errors,be._`${ls.default.vErrors}.length`)}function m(h){var g;if(!s.opts.unevaluated)return;let y=(g=r===null||r===void 0?void 0:r.validate)===null||g===void 0?void 0:g.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps){if(y.props!==void 0)s.props=yn.mergeEvaluated.props(o,y.props,s.props)}else{let b=o.var("props",be._`${h}.evaluated.props`);s.props=yn.mergeEvaluated.props(o,b,s.props,be.Name)}if(s.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)s.items=yn.mergeEvaluated.items(o,y.items,s.items)}else{let b=o.var("items",be._`${h}.evaluated.items`);s.items=yn.mergeEvaluated.items(o,b,s.items,be.Name)}}}YA.callRef=Gl;YA.default=xX});var tR=E(function(eR){Object.defineProperty(eR,"__esModule",{value:!0});var EX=GA(),PX=QA(),OX=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",EX.default,PX.default];eR.default=OX});var nR=E(function(rR){Object.defineProperty(rR,"__esModule",{value:!0});var bn=ee(),wn=bn.operators,Xl={maximum:{okStr:"<=",ok:wn.LTE,fail:wn.GT},minimum:{okStr:">=",ok:wn.GTE,fail:wn.LT},exclusiveMaximum:{okStr:"<",ok:wn.LT,fail:wn.GTE},exclusiveMinimum:{okStr:">",ok:wn.GT,fail:wn.LTE}},AX={message:({keyword:e,schemaCode:t})=>bn.str`must be ${Xl[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>bn._`{comparison: ${Xl[e].okStr}, limit: ${t}}`},RX={keyword:Object.keys(Xl),type:"number",schemaType:"number",$data:!0,error:AX,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(bn._`${r} ${Xl[t].fail} ${n} || isNaN(${r})`)}};rR.default=RX});var sR=E(function(oR){Object.defineProperty(oR,"__esModule",{value:!0});var hr=ee(),zX={message:({schemaCode:e})=>hr.str`must be multiple of ${e}`,params:({schemaCode:e})=>hr._`{multipleOf: ${e}}`},NX={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:zX,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?hr._`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:hr._`${i} !== parseInt(${i})`;e.fail$data(hr._`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};oR.default=NX});var cR=E(function(aR){Object.defineProperty(aR,"__esModule",{value:!0});function iR(e){let t=e.length,r=0,n=0,o;while(n<t)if(r++,o=e.charCodeAt(n++),o>=55296&&o<=56319&&n<t){if(o=e.charCodeAt(n),(o&64512)===56320)n++}return r}aR.default=iR;iR.code='require("ajv/dist/runtime/ucs2length").default'});var dR=E(function(lR){Object.defineProperty(lR,"__esModule",{value:!0});var mt=ee(),uR=ue(),DX=cR(),MX={message({keyword:e,schemaCode:t}){return mt.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>mt._`{limit: ${e}}`},qX={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:MX,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?mt.operators.GT:mt.operators.LT,i=o.opts.unicode===!1?mt._`${r}.length`:mt._`${uR.useFunc(e.gen,DX.default)}(${r})`;e.fail$data(mt._`${i} ${s} ${n}`)}};lR.default=qX});var hR=E(function(mR){Object.defineProperty(mR,"__esModule",{value:!0});var pR=Ft(),fR=ue(),Ut=ee(),UX={message:({schemaCode:e})=>Ut.str`must match pattern "${e}"`,params:({schemaCode:e})=>Ut._`{pattern: ${e}}`},WX={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:UX,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?Ut._`new RegExp`:fR.useFunc(t,c),l=t.let("valid");t.try(()=>t.assign(l,Ut._`${u}(${s}, ${a}).test(${r})`),()=>t.assign(l,!1)),e.fail$data(Ut._`!${l}`)}else{let c=pR.usePattern(e,o);e.fail$data(Ut._`!${c}.test(${r})`)}}};mR.default=WX});var yR=E(function(gR){Object.defineProperty(gR,"__esModule",{value:!0});var gr=ee(),ZX={message({keyword:e,schemaCode:t}){return gr.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>gr._`{limit: ${e}}`},BX={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:ZX,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?gr.operators.GT:gr.operators.LT;e.fail$data(gr._`Object.keys(${r}).length ${o} ${n}`)}};gR.default=BX});var _R=E(function(bR){Object.defineProperty(bR,"__esModule",{value:!0});var yr=Ft(),wr=ee(),wR=ue(),HX={message:({params:{missingProperty:e}})=>wr.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>wr._`{missingProperty: ${e}}`},GX={keyword:"required",type:"object",schemaType:"array",$data:!0,error:HX,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:s,it:i}=e,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors)u();else l();if(a.strictRequired){let m=e.parentSchema.properties,{definedProperties:h}=e.it;for(let g of r)if((m===null||m===void 0?void 0:m[g])===void 0&&!h.has(g)){let y=i.schemaEnv.baseId+i.errSchemaPath,b=`required property "${g}" is not defined at "${y}" (strictRequired)`;wR.checkStrictMode(i,b,i.opts.strictRequired)}}function u(){if(c||s)e.block$data(wr.nil,d);else for(let m of r)yr.checkReportMissingProp(e,m)}function l(){let m=t.let("missing");if(c||s){let h=t.let("valid",!0);e.block$data(h,()=>f(m,h)),e.ok(h)}else t.if(yr.checkMissingProp(e,r,m)),yr.reportMissingProp(e,m),t.else()}function d(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(yr.noPropertyInData(t,o,m,a.ownProperties),()=>e.error())})}function f(m,h){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(h,yr.propertyInData(t,o,m,a.ownProperties)),t.if(wr.not(h),()=>{e.error(),t.break()})},wr.nil)}}};bR.default=GX});var SR=E(function(vR){Object.defineProperty(vR,"__esModule",{value:!0});var br=ee(),YX={message({keyword:e,schemaCode:t}){return br.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>br._`{limit: ${e}}`},XX={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:YX,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?br.operators.GT:br.operators.LT;e.fail$data(br._`${r}.length ${o} ${n}`)}};vR.default=XX});var Ql=E(function(xR){Object.defineProperty(xR,"__esModule",{value:!0});var kR=uy();kR.code='require("ajv/dist/runtime/equal").default';xR.default=kR});var ER=E(function(TR){Object.defineProperty(TR,"__esModule",{value:!0});var ds=ha(),le=ee(),$R=ue(),tQ=Ql(),rQ={message:({params:{i:e,j:t}})=>le.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>le._`{i: ${e}, j: ${t}}`},nQ={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:rQ,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),u=s.items?ds.getSchemaTypes(s.items):[];e.block$data(c,l,le._`${i} === false`),e.ok(c);function l(){let h=t.let("i",le._`${r}.length`),g=t.let("j");e.setParams({i:h,j:g}),t.assign(c,!0),t.if(le._`${h} > 1`,()=>(d()?f:m)(h,g))}function d(){return u.length>0&&!u.some((h)=>h==="object"||h==="array")}function f(h,g){let y=t.name("item"),b=ds.checkDataTypes(u,y,a.opts.strictNumbers,ds.DataType.Wrong),T=t.const("indices",le._`{}`);t.for(le._`;${h}--;`,()=>{if(t.let(y,le._`${r}[${h}]`),t.if(b,le._`continue`),u.length>1)t.if(le._`typeof ${y} == "string"`,le._`${y} += "_"`);t.if(le._`typeof ${T}[${y}] == "number"`,()=>{t.assign(g,le._`${T}[${y}]`),e.error(),t.assign(c,!1).break()}).code(le._`${T}[${y}] = ${h}`)})}function m(h,g){let y=$R.useFunc(t,tQ.default),b=t.name("outer");t.label(b).for(le._`;${h}--;`,()=>t.for(le._`${g} = ${h}; ${g}--;`,()=>t.if(le._`${y}(${r}[${h}], ${r}[${g}])`,()=>{e.error(),t.assign(c,!1).break(b)})))}}};TR.default=nQ});var IR=E(function(OR){Object.defineProperty(OR,"__esModule",{value:!0});var ps=ee(),PR=ue(),sQ=Ql(),iQ={message:"must be equal to constant",params:({schemaCode:e})=>ps._`{allowedValue: ${e}}`},aQ={keyword:"const",$data:!0,error:iQ,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;if(n||s&&typeof s=="object")e.fail$data(ps._`!${PR.useFunc(t,sQ.default)}(${r}, ${o})`);else e.fail(ps._`${s} !== ${r}`)}};OR.default=aQ});var CR=E(function(RR){Object.defineProperty(RR,"__esModule",{value:!0});var _r=ee(),AR=ue(),uQ=Ql(),lQ={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>_r._`{allowedValues: ${e}}`},dQ={keyword:"enum",schemaType:"array",$data:!0,error:lQ,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e;if(!n&&o.length===0)throw Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c!==null&&c!==void 0?c:c=AR.useFunc(t,uQ.default),l;if(a||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(o))throw Error("ajv implementation error");let m=t.const("vSchema",s);l=_r.or(...o.map((h,g)=>f(m,g)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,(m)=>t.if(_r._`${u()}(${r}, ${m})`,()=>t.assign(l,!0).break()))}function f(m,h){let g=o[h];return typeof g==="object"&&g!==null?_r._`${u()}(${r}, ${m}[${h}])`:_r._`${r} === ${g}`}}};RR.default=dQ});var NR=E(function(zR){Object.defineProperty(zR,"__esModule",{value:!0});var fQ=nR(),mQ=sR(),hQ=dR(),gQ=hR(),yQ=yR(),wQ=_R(),bQ=SR(),_Q=ER(),vQ=IR(),SQ=CR(),kQ=[fQ.default,mQ.default,hQ.default,gQ.default,yQ.default,wQ.default,bQ.default,_Q.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},vQ.default,SQ.default];zR.default=kQ});var Sy=E(function(jR){Object.defineProperty(jR,"__esModule",{value:!0});jR.validateAdditionalItems=void 0;var ht=ee(),fs=ue(),$Q={message:({params:{len:e}})=>ht.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>ht._`{limit: ${e}}`},TQ={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:$Q,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){fs.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}LR(e,n)}};function LR(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",ht._`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(ht._`${a} <= ${t.length}`);else if(typeof n=="object"&&!fs.alwaysValidSchema(i,n)){let u=r.var("valid",ht._`${a} <= ${t.length}`);r.if(ht.not(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,a,(l)=>{if(e.subschema({keyword:s,dataProp:l,dataPropType:fs.Type.Num},u),!i.allErrors)r.if(ht.not(u),()=>r.break())})}}jR.validateAdditionalItems=LR;jR.default=TQ});var ky=E(function(FR){Object.defineProperty(FR,"__esModule",{value:!0});FR.validateTuple=void 0;var ed=ee(),_n=ue(),MR=Ft(),PQ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return qR(e,"additionalItems",t);if(r.items=!0,_n.alwaysValidSchema(r,t))return;e.ok(MR.validateArray(e))}};function qR(e,t,r=e.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=e;if(l(o),a.opts.unevaluated&&r.length&&a.items!==!0)a.items=_n.mergeEvaluated.items(n,r.length,a.items);let c=n.name("valid"),u=n.const("len",ed._`${s}.length`);r.forEach((d,f)=>{if(_n.alwaysValidSchema(a,d))return;n.if(ed._`${u} > ${f}`,()=>e.subschema({keyword:i,schemaProp:f,dataProp:f},c)),e.ok(c)});function l(d){let{opts:f,errSchemaPath:m}=a,h=r.length,g=h===d.minItems&&(h===d.maxItems||d[t]===!1);if(f.strictTuples&&!g){let y=`"${i}" is ${h}-tuple, but minItems or maxItems/${t} are not specified or different at path "${m}"`;_n.checkStrictMode(a,y,f.strictTuples)}}}FR.validateTuple=qR;FR.default=PQ});var ZR=E(function(VR){Object.defineProperty(VR,"__esModule",{value:!0});var WR=ky(),IQ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>WR.validateTuple(e,"items")};VR.default=IQ});var JR=E(function(GR){Object.defineProperty(GR,"__esModule",{value:!0});var td=ee(),BR=ue(),KR=Ft(),HR=Sy(),RQ={message:({params:{len:e}})=>td.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>td._`{limit: ${e}}`},CQ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:RQ,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;if(n.items=!0,BR.alwaysValidSchema(n,t))return;if(o)HR.validateAdditionalItems(e,o);else e.ok(KR.validateArray(e))}};GR.default=CQ});var XR=E(function(YR){Object.defineProperty(YR,"__esModule",{value:!0});var Pe=ee(),vn=ue(),NQ={message:({params:{min:e,max:t}})=>t===void 0?Pe.str`must contain at least ${e} valid item(s)`:Pe.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?Pe._`{minContains: ${e}}`:Pe._`{minContains: ${e}, maxContains: ${t}}`},LQ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:NQ,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e,i,a,{minContains:c,maxContains:u}=n;if(s.opts.next)i=c===void 0?1:c,a=u;else i=1;let l=t.const("len",Pe._`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){vn.checkStrictMode(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){vn.checkStrictMode(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(vn.alwaysValidSchema(s,r)){let g=Pe._`${l} >= ${i}`;if(a!==void 0)g=Pe._`${g} && ${l} <= ${a}`;e.pass(g);return}s.items=!0;let d=t.name("valid");if(a===void 0&&i===1)m(d,()=>t.if(d,()=>t.break()));else if(i===0){if(t.let(d,!0),a!==void 0)t.if(Pe._`${o}.length > 0`,f)}else t.let(d,!1),f();e.result(d,()=>e.reset());function f(){let g=t.name("_valid"),y=t.let("count",0);m(g,()=>t.if(g,()=>h(y)))}function m(g,y){t.forRange("i",0,l,(b)=>{e.subschema({keyword:"contains",dataProp:b,dataPropType:vn.Type.Num,compositeRule:!0},g),y()})}function h(g){if(t.code(Pe._`${g}++`),a===void 0)t.if(Pe._`${g} >= ${i}`,()=>t.assign(d,!0).break());else if(t.if(Pe._`${g} > ${a}`,()=>t.assign(d,!1).break()),i===1)t.assign(d,!0);else t.if(Pe._`${g} >= ${i}`,()=>t.assign(d,!0))}}};YR.default=LQ});var sC=E(function(rC){Object.defineProperty(rC,"__esModule",{value:!0});rC.validateSchemaDeps=rC.validatePropertyDeps=rC.error=void 0;var ms=ee(),QR=ue(),vr=Ft();rC.error={message:({params:{property:e,depsCount:t,deps:r}})=>ms.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>ms._`{property: ${e},
|
|
170
170
|
missingProperty: ${n},
|
|
171
171
|
depsCount: ${t},
|
|
172
|
-
deps: ${r}}`};var RX={keyword:"dependencies",type:"object",schemaType:"object",error:TR.error,code(e){let[t,r]=CX(e);$R(e,t),ER(e,r)}};function CX({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 $R(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=hr.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)hr.checkReportMissingProp(e,u)});else r.if(is._`${c} && (${hr.checkMissingProp(e,a,s)})`),hr.reportMissingProp(e,s),r.else()}}TR.validatePropertyDeps=$R;function ER(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t){if(xR.alwaysValidSchema(s,t[a]))continue;r.if(hr.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)}}TR.validateSchemaDeps=ER;TR.default=RX});var CR=E(function(RR){Object.defineProperty(RR,"__esModule",{value:!0});var Bl=ee(),AR=ue(),LX={message:"property name must be valid",params:({params:e})=>Bl._`{propertyName: ${e.propertyName}}`},DX={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:LX,code(e){let{gen:t,schema:r,data:n,it:o}=e;if(AR.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(Bl.not(s),()=>{if(e.error(!0),!o.allErrors)t.break()})}),e.ok(s)}};RR.default=DX});var iy=E(function(zR){Object.defineProperty(zR,"__esModule",{value:!0});var gn=Dt(),Ae=ee(),MX=Ar(),yn=ue(),qX={message:"must NOT have additional properties",params:({params:e})=>Ae._`{additionalProperty: ${e.additionalProperty}}`},FX={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:qX,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"&&yn.alwaysValidSchema(i,r))return;let u=gn.allSchemaProperties(n.properties),l=gn.allSchemaProperties(n.patternProperties);d(),e.ok(Ae._`${s} === ${MX.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 w;if(u.length>8){let T=yn.schemaRefOrVal(i,n.properties,"properties");w=gn.isOwnProperty(t,T,y)}else if(u.length)w=Ae.or(...u.map((T)=>Ae._`${y} === ${T}`));else w=Ae.nil;if(l.length)w=Ae.or(w,...l.map((T)=>Ae._`${gn.usePattern(e,T)}.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"&&!yn.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,T){let S={keyword:"additionalProperties",dataProp:y,dataPropType:yn.Type.Str};if(T===!1)Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(S,w)}}};zR.default=FX});var jR=E(function(DR){Object.defineProperty(DR,"__esModule",{value:!0});var LR=ua(),Kl=Dt(),as=ue(),NR=iy(),WX={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)NR.default.code(new LR.KeywordCxt(s,NR.default,"additionalProperties"));let i=Kl.allSchemaProperties(r);for(let d of i)s.definedProperties.add(d);if(s.opts.unevaluated&&i.length&&s.props!==!0)s.props=as.mergeEvaluated.props(t,as.toHash(i),s.props);let a=i.filter((d)=>!as.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(Kl.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)}}};DR.default=WX});var qR=E(function(MR){Object.defineProperty(MR,"__esModule",{value:!0});var Hl=Dt(),bn=ee(),Gl=ue(),Jl=ue(),ZX={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=Hl.allSchemaProperties(r),c=a.filter((g)=>Gl.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 bn.Name))s.props=Jl.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))Gl.checkStrictMode(s,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function h(g){t.forIn("key",n,(y)=>{t.if(bn._`${Hl.usePattern(e,g)}.test(${y})`,()=>{let w=c.includes(g);if(!w)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:Jl.Type.Str},l);if(s.opts.unevaluated&&d!==!0)t.assign(bn._`${d}[${y}]`,!0);else if(!w&&!s.allErrors)t.if(bn.not(l),()=>t.break())})})}}};MR.default=ZX});var WR=E(function(UR){Object.defineProperty(UR,"__esModule",{value:!0});var FR=ue(),KX={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(FR.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"}};UR.default=KX});var BR=E(function(ZR){Object.defineProperty(ZR,"__esModule",{value:!0});var VR=Dt(),GX={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:VR.validateUnion,error:{message:"must match a schema in anyOf"}};ZR.default=GX});var GR=E(function(HR){Object.defineProperty(HR,"__esModule",{value:!0});var wn=ee(),KR=ue(),YX={message:"must match exactly one schema in oneOf",params:({params:e})=>wn._`{passingSchemas: ${e.passing}}`},XX={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:YX,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(KR.alwaysValidSchema(o,l))t.var(c,!0);else f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c);if(d>0)t.if(wn._`${c} && ${i}`).assign(i,!1).assign(a,wn._`[${a}, ${d}]`).else();t.if(c,()=>{if(t.assign(i,!0),t.assign(a,d),f)e.mergeEvaluated(f,wn.Name)})})}}};HR.default=XX});var XR=E(function(YR){Object.defineProperty(YR,"__esModule",{value:!0});var JR=ue(),eQ={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(JR.alwaysValidSchema(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};YR.default=eQ});var tC=E(function(eC){Object.defineProperty(eC,"__esModule",{value:!0});var _n=ee(),Yl=ue(),rQ={message:({params:e})=>_n.str`must match "${e.ifClause}" schema`,params:({params:e})=>_n._`{failingKeyword: ${e.ifClause}}`},nQ={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:rQ,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)Yl.checkStrictMode(n,'"if" without "then" and "else" is ignored');let o=QR(n,"then"),s=QR(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(_n.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,_n._`${l}`);else e.setParams({ifClause:l})}}}};function QR(e,t){let r=e.schema[t];return r!==void 0&&!Yl.alwaysValidSchema(e,r)}eC.default=nQ});var oC=E(function(nC){Object.defineProperty(nC,"__esModule",{value:!0});var rC=ue(),sQ={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)rC.checkStrictMode(r,`"${e}" without "if" is ignored`)}};nC.default=sQ});var iC=E(function(sC){Object.defineProperty(sC,"__esModule",{value:!0});var aQ=oy(),cQ=gR(),uQ=sy(),lQ=vR(),dQ=kR(),pQ=IR(),fQ=CR(),mQ=iy(),hQ=jR(),gQ=qR(),yQ=WR(),bQ=BR(),wQ=GR(),_Q=XR(),vQ=tC(),SQ=oC();function kQ(e=!1){let t=[yQ.default,bQ.default,wQ.default,_Q.default,vQ.default,SQ.default,fQ.default,mQ.default,pQ.default,hQ.default,gQ.default];if(e)t.push(cQ.default,lQ.default);else t.push(aQ.default,uQ.default);return t.push(dQ.default),t}sC.default=kQ});var cC=E(function(aC){Object.defineProperty(aC,"__esModule",{value:!0});var Q=ee(),$Q={message:({schemaCode:e})=>Q.str`must match format "${e}"`,params:({schemaCode:e})=>Q._`{format: ${e}}`},EQ={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:$Q,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"),w=r.let("format");r.if(Q._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,Q._`${g}.type || "string"`).assign(w,Q._`${g}.validate`),()=>r.assign(y,Q._`"string"`).assign(w,g)),e.fail$data(Q.or(T(),S()));function T(){if(c.strictSchema===!1)return Q.nil;return Q._`${i} && !${w}`}function S(){let I=l.$async?Q._`(${g}.async ? await ${w}(${n}) : ${w}(${n}))`:Q._`${w}(${n})`,_=Q._`(typeof ${w} == "function" ? ${I} : ${w}.test(${n}))`;return Q._`${w} && ${w} !== true && ${y} === ${t} && !${_}`}}function m(){let h=d.formats[s];if(!h){T();return}if(h===!0)return;let[g,y,w]=S(h);if(g===t)e.pass(I());function T(){if(c.strictSchema===!1){d.logger.warn(_());return}throw Error(_());function _(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(_){let v=_ instanceof RegExp?Q.regexpCode(_):c.code.formats?Q._`${c.code.formats}${Q.getProperty(s)}`:void 0,k=r.scopeValue("formats",{key:s,ref:_,code:v});if(typeof _=="object"&&!(_ instanceof RegExp))return[_.type||"string",_.validate,Q._`${k}.validate`];return["string",_,k]}function I(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw Error("async format in sync schema");return Q._`await ${w}(${n})`}return typeof y=="function"?Q._`${w}(${n})`:Q._`${w}.test(${n})`}}}};aC.default=EQ});var lC=E(function(uC){Object.defineProperty(uC,"__esModule",{value:!0});var OQ=cC(),PQ=[OQ.default];uC.default=PQ});var fC=E(function(dC){Object.defineProperty(dC,"__esModule",{value:!0});dC.contentVocabulary=dC.metadataVocabulary=void 0;dC.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];dC.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var hC=E(function(mC){Object.defineProperty(mC,"__esModule",{value:!0});var RQ=EA(),CQ=iR(),zQ=iC(),NQ=lC(),Xl=fC(),LQ=[RQ.default,CQ.default,(0,zQ.default)(),NQ.default,Xl.metadataVocabulary,Xl.contentVocabulary];mC.default=LQ});var wC=E(function(yC){Object.defineProperty(yC,"__esModule",{value:!0});yC.DiscrError=void 0;var gC;(function(e){e.Tag="tag",e.Mapping="mapping"})(gC||(yC.DiscrError=gC={}))});var SC=E(function(vC){Object.defineProperty(vC,"__esModule",{value:!0});var Mt=ee(),cs=wC(),Ql=zl(),jQ=la(),_C=ue(),MQ={message:({params:{discrError:e,tagName:t}})=>e===cs.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>Mt._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},qQ={keyword:"discriminator",type:"object",schemaType:"object",error:MQ,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",Mt._`${r}${Mt.getProperty(a)}`);t.if(Mt._`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:cs.DiscrError.Tag,tag:u,tagName:a})),e.ok(c);function l(){let m=f();t.if(!1);for(let h in m)t.elseIf(Mt._`${u} === ${h}`),t.assign(c,d(m[h]));t.else(),e.error(!1,{discrError:cs.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,Mt.Name),h}function f(){var m;let h={},g=w(o),y=!0;for(let I=0;I<i.length;I++){let _=i[I];if((_===null||_===void 0?void 0:_.$ref)&&!_C.schemaHasRulesButRef(_,s.self.RULES)){let k=_.$ref;if(_=Ql.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,k),_ instanceof Ql.SchemaEnv)_=_.schema;if(_===void 0)throw new jQ.default(s.opts.uriResolver,s.baseId,k)}let v=(m=_===null||_===void 0?void 0:_.properties)===null||m===void 0?void 0:m[a];if(typeof v!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);y=y&&(g||w(_)),T(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 T(I,_){if(I.const)S(I.const,_);else if(I.enum)for(let v of I.enum)S(v,_);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(I,_){if(typeof I!="string"||I in h)throw Error(`discriminator: "${a}" values must be unique strings`);h[I]=_}}}};vC.default=qQ});var kC=E(function(Sve,UQ){UQ.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 cy=E(function(ht,ay){Object.defineProperty(ht,"__esModule",{value:!0});ht.MissingRefError=ht.ValidationError=ht.CodeGen=ht.Name=ht.nil=ht.stringify=ht.str=ht._=ht.KeywordCxt=ht.Ajv=void 0;var WQ=bA(),VQ=hC(),ZQ=SC(),xC=kC(),BQ=["/properties"],ed="http://json-schema.org/draft-07/schema";class fa extends WQ.default{_addVocabularies(){if(super._addVocabularies(),VQ.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(ZQ.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(xC,BQ):xC;this.addMetaSchema(e,ed,!1),this.refs["http://json-schema.org/schema"]=ed}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ed)?ed:void 0)}}ht.Ajv=fa;ay.exports=ht=fa;ay.exports.Ajv=fa;Object.defineProperty(ht,"__esModule",{value:!0});ht.default=fa;var KQ=ua();Object.defineProperty(ht,"KeywordCxt",{enumerable:!0,get:function(){return KQ.KeywordCxt}});var us=ee();Object.defineProperty(ht,"_",{enumerable:!0,get:function(){return us._}});Object.defineProperty(ht,"str",{enumerable:!0,get:function(){return us.str}});Object.defineProperty(ht,"stringify",{enumerable:!0,get:function(){return us.stringify}});Object.defineProperty(ht,"nil",{enumerable:!0,get:function(){return us.nil}});Object.defineProperty(ht,"Name",{enumerable:!0,get:function(){return us.Name}});Object.defineProperty(ht,"CodeGen",{enumerable:!0,get:function(){return us.CodeGen}});var HQ=Al();Object.defineProperty(ht,"ValidationError",{enumerable:!0,get:function(){return HQ.default}});var GQ=la();Object.defineProperty(ht,"MissingRefError",{enumerable:!0,get:function(){return GQ.default}})});var zC=E(function(RC){Object.defineProperty(RC,"__esModule",{value:!0});RC.formatNames=RC.fastFormats=RC.fullFormats=void 0;function gr(e,t){return{validate:e,compare:t}}RC.fullFormats={date:gr(OC,py),time:gr(ly(!0),fy),"date-time":gr($C(!0),IC),"iso-time":gr(ly(),PC),"iso-date-time":gr($C(),AC),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:nee,"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:lee,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:oee,int32:{type:"number",validate:aee},int64:{type:"number",validate:cee},float:{type:"number",validate:TC},double:{type:"number",validate:TC},password:!0,binary:!0};RC.fastFormats={...RC.fullFormats,date:gr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,py),time:gr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,fy),"date-time":gr(/^\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,IC),"iso-time":gr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,PC),"iso-date-time":gr(/^\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,AC),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};RC.formatNames=Object.keys(RC.fullFormats);function XQ(e){return e%4===0&&(e%100!==0||e%400===0)}var QQ=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,eee=[0,31,28,31,30,31,30,31,31,30,31,30,31];function OC(e){let t=QQ.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&&XQ(r)?29:eee[n])}function py(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var uy=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function ly(e){return function(r){let n=uy.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 fy(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 PC(e,t){if(!(e&&t))return;let r=uy.exec(e),n=uy.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 dy=/t|\s/i;function $C(e){let t=ly(e);return function(n){let o=n.split(dy);return o.length===2&&OC(o[0])&&t(o[1])}}function IC(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 AC(e,t){if(!(e&&t))return;let[r,n]=e.split(dy),[o,s]=t.split(dy),i=py(r,o);if(i===void 0)return;return i||fy(n,s)}var tee=/\/|:/,ree=/^(?:[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 nee(e){return tee.test(e)&&ree.test(e)}var EC=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function oee(e){return EC.lastIndex=0,EC.test(e)}var see=-2147483648,iee=2147483647;function aee(e){return Number.isInteger(e)&&e<=iee&&e>=see}function cee(e){return Number.isInteger(e)}function TC(){return!0}var uee=/[^\\]\\Z/;function lee(e){if(uee.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var DC=E(function(LC){Object.defineProperty(LC,"__esModule",{value:!0});LC.formatLimitDefinition=void 0;var NC=cy(),Re=ee(),vn=Re.operators,td={formatMaximum:{okStr:"<=",ok:vn.LTE,fail:vn.GT},formatMinimum:{okStr:">=",ok:vn.GTE,fail:vn.LT},formatExclusiveMaximum:{okStr:"<",ok:vn.LT,fail:vn.GTE},formatExclusiveMinimum:{okStr:">",ok:vn.GT,fail:vn.LTE}},pee={message:({keyword:e,schemaCode:t})=>Re.str`should be ${td[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Re._`{comparison: ${td[e].okStr}, limit: ${t}}`};LC.formatLimitDefinition={keyword:Object.keys(td),type:"string",schemaType:"string",$data:!0,error:pee,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 NC.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",Re._`${f}[${c.schemaCode}]`);e.fail$data(Re.or(Re._`typeof ${m} != "object"`,Re._`${m} instanceof RegExp`,Re._`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?Re._`${i.code.formats}${Re.getProperty(f)}`:void 0});e.fail$data(d(h))}function d(f){return Re._`${f}.compare(${r}, ${n}) ${td[o].fail} 0`}},dependencies:["format"]};var fee=(e)=>(e.addKeyword(LC.formatLimitDefinition),e);LC.default=fee});var FC=E(function(ma,qC){Object.defineProperty(ma,"__esModule",{value:!0});var qt=zC(),hee=DC(),ls=ee(),jC=new ls.Name("fullFormats"),gee=new ls.Name("fastFormats"),gy=(e,t={keywords:!0})=>{if(Array.isArray(t))return MC(e,t,qt.fullFormats,jC),e;let[r,n]=t.mode==="fast"?[qt.fastFormats,gee]:[qt.fullFormats,jC],o=t.formats||qt.formatNames;if(MC(e,o,r,n),t.keywords)(0,hee.default)(e);return e};gy.get=(e,t="full")=>{let n=(t==="fast"?qt.fastFormats:qt.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function MC(e,t,r,n){var o,s;(o=(s=e.opts.code).formats)!==null&&o!==void 0||(s.formats=ls._`require("ajv-formats/dist/formats").${n}`);for(let i of t)e.addFormat(i,r[i])}qC.exports=ma=gy;Object.defineProperty(ma,"__esModule",{value:!0});ma.default=gy});var Id={};oz(Id,{program:()=>nb,createCommand:()=>ob,createOption:()=>sb,createArgument:()=>ib,Command:()=>ab,Option:()=>cb,Argument:()=>ub,Help:()=>lb,CommanderError:()=>db,InvalidArgumentError:()=>pb,InvalidOptionArgumentError:()=>fb},{program:(bre)=>nb=bre,createCommand:(bre)=>ob=bre,createOption:(bre)=>sb=bre,createArgument:(bre)=>ib=bre,Command:(bre)=>ab=bre,Option:(bre)=>cb=bre,Argument:(bre)=>ub=bre,Help:(bre)=>lb=bre,CommanderError:(bre)=>db=bre,InvalidArgumentError:(bre)=>pb=bre,InvalidOptionArgumentError:(bre)=>fb=bre});var ve={};nz(ve,{ZodISODate:()=>Ds,ZodISODateTime:()=>Ls,ZodISODuration:()=>Ms,ZodISOTime:()=>js,date:()=>qL,datetime:()=>BS,duration:()=>UL,time:()=>FL});var{Argument:eb}=Sa(),{Command:Pd}=Qy(),{CommanderError:Lz,InvalidArgumentError:tb}=gs(),{Help:Dz}=xd(),{Option:rb}=$d();var nb=new Pd,ob=(e)=>new Pd(e),sb=(e,t)=>new rb(e,t),ib=(e,t)=>new eb(e,t),ab=Pd,cb=rb,ub=eb,lb=Dz,db=Lz,pb=tb,fb=tb;var{program:_re,createCommand:vre,createArgument:Sre,createOption:kre,CommanderError:xre,InvalidArgumentError:$re,InvalidOptionArgumentError:Ere,Command:mb,Argument:Tre,Option:Ore,Help:Pre}=Id;function bs(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 Rd(e,t="|"){return e.map((r)=>Nd(r)).join(t)}function ws(e,t){if(typeof t==="bigint")return t.toString();return t}class gb{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 _s(e){return new gb(e)}function yb(e){return e===null||e===void 0}function Lr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function bb(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 hb=Symbol("evaluating");function wb(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===hb)return;if(n===void 0)n=hb,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 vs(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function br(e){return vs(e._zod.def)??e._zod.def.shape}function _b(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return yt(this,t,n),n},enumerable:!0,configurable:!0})}function vb(e,t,r){if(t in e)yt(e,t,r);else e[t]=r}function En(e,t,r,n){let o=br(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)_b(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else vb(e,s,n?n(i.value,s):i.value)}}function jz(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)_b(e,r,()=>t[r]);else vb(e,r,n.value)}}function bt(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function Sb(e){return JSON.stringify(e)}function kb(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Cd="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function to(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var xb=_s(()=>{if(tt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Tn(e){if(to(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(to(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function zd(e){if(Tn(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 $b=new Set(["string","number","symbol"]),Eb=new Set(["string","number","bigint","boolean","symbol","undefined"]);function _r(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ft(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 Nd(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Tb(e){return Object.keys(e).filter((t)=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}var ka=(()=>({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]}))(),Ld={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Mz(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 En(s,e,xa(e,t)),Ft(e,bt(r,{shape:s,checks:[]}))}function xa(e,t){let r=br(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 qz(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(xa(e,t)),i={};return En(i,e,Reflect.ownKeys(br(e)).filter((a)=>!s.has(a))),Ft(e,bt(r,{shape:i,checks:[]}))}function Fz(e,t){if(!Tn(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=br(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 Ft(e,bt(e._zod.def,{shape:Ob(e,t)}))}function Ob(e,t){let r={};return En(r,e,Reflect.ownKeys(br(e))),jz(r,t),r}function Uz(e,t){if(!Tn(t))throw Error("Invalid input to safeExtend: expected a plain object");return Ft(e,bt(e._zod.def,{shape:Ob(e,t)}))}function Wz(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={};En(r,e,Reflect.ownKeys(br(e))),En(r,t,Reflect.ownKeys(br(t)));let n=bt(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Ft(e,n)}function Pb(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(xa(t,r)):void 0,c={};return En(c,t,Reflect.ownKeys(br(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),Ft(t,bt(t._zod.def,{shape:c,checks:[]}))}function Vz(e,t,r){let n=r?new Set(xa(t,r)):void 0,o={};return En(o,t,Reflect.ownKeys(br(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),Ft(t,bt(t._zod.def,{shape:o}))}function Et(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 Ib(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 Ht(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function ys(e){return typeof e==="string"?e:e?.message}function Dd(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 $a(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function Gt(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:ys(e.inst?._zod.def?.error?.(e))??ys(s?.(e))??ys(t?.error?.(e))??ys(r.customError?.(e))??ys(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 Zz=/[\uD800-\uDBFF]/;function Ea(e){let t=e.length;if(!Zz.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 Ta(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function Ab(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 On(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function Rb(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else Bz(e,r,n.value)}}function wr(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function Oa(e,t,r){return wr(e,t,r,!1)}function Cb(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return wr(this,r,n(this))},set(o){wr(this,r,o)}})}return t}function Bz(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:wr(this,t,r.bind(this))},set(n){wr(this,t,n)}})}function Kz(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var Ad,Nr=!1,Hz={configurable:!0,get(){Nr=!0;return}};function re(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,Hz);let o=Nr;Nr=!1;try{let s=r(this);if(Nr)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return Nr=Nr||o,s}catch(s){throw delete this[t],Nr=Nr||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function Gz(e,t,r,n){let o=Kz(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 Jz="~constantCatch";function zb(e){let t=()=>e;return t[Jz]=!0,t}var Nb,Md=Object.freeze({status:"aborted"}),jd={value:void 0,enumerable:!1},Lb="captureStackTrace"in Error?Error:null;function Yz(e){let t=Lb;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return Lb=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){jd.value=new s(m);try{Object.defineProperty(f,"_zod",jd)}finally{jd.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 T=w??g;if(!a.has(T))a.add(T),Rb(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?Yz(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 Jt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Ss extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(Nb=globalThis).__zod_globalConfig??(Nb.__zod_globalConfig={});var tt=globalThis.__zod_globalConfig;function at(e){if(e)Object.assign(tt,e);return tt}function Xz(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,ws,2)),e.message}function Qz(e){this._zod.message=e}var eN={get:Xz,set:Qz,enumerable:!0,configurable:!0},Fd={value:void 0,enumerable:!1},Db=new WeakSet([Object.prototype,Error.prototype]),jb=(e,t)=>{e.name="$ZodError",Fd.value=t,Object.defineProperty(e,"issues",Fd),Fd.value=void 0,Object.defineProperty(e,"message",eN);let r=Object.getPrototypeOf(e);if(!Db.has(r))Db.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})}})},Mb=O("$ZodError",jb),qb=O("$ZodError",jb,void 0,{Parent:Error});function tN(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 Ud(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)tN(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 Pa(e,t){return{callee:t?.callee??e,Err:t?.Err}}var Ia=(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 Jt;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>Gt(u,i,at())));throw Cd(c,s?.callee??t),c}return a.value};return t};var Aa=(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)=>Gt(u,i,at())));throw Cd(c,s?.callee??t),c}return a.value};return t};var ks=(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 Jt;return s.issues.length?Fb(e,s.issues,o):{success:!0,data:s.value}},Vd=ks(qb);function Fb(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>Gt(o,r,at()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var Ra=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)s=await s;return s.issues.length?Fb(e,s.issues,o):{success:!0,data:s.value}};var nN=Symbol.for("zod.compile.invalid"),oN=Symbol.for("zod.compile.fallback"),Ca=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==nN)return!0;if(n.definite===!0&&r===void 0)return!1}return sN(e,t,r)};function sN(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[oN]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new Jt;return s.issues.length===0}var za=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},Ub=(e)=>{let t=Ia(e),r=(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return t(n,o,a,Pa(r,i))};return r};var Wb=(e)=>{let t=Ia(e),r=(n,o,s,i)=>t(n,o,s,Pa(r,i));return r};var Vb=(e)=>{let t=Aa(e),r=async(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return await t(n,o,a,Pa(r,i))};return r};var Zb=(e)=>{let t=Aa(e),r=async(n,o,s,i)=>await t(n,o,s,Pa(r,i));return r};var Bb=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return ks(e)(t,r,o)};var Kb=(e)=>(t,r,n)=>ks(e)(t,r,n);var Hb=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Ra(e)(t,r,o)};var Gb=(e)=>async(t,r,n)=>Ra(e)(t,r,n);var Jb=/^[cC][0-9a-z]{6,}$/,Yb=/^[0-9a-z]+$/,Xb=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,Qb=/^[0-9a-vA-V]{20}$/,ew=/^[A-Za-z0-9]{27}$/,tw=/^[a-zA-Z0-9_-]{21}$/;function rw(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var nw=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var ow=/^([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})$/,Bd=(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 sw=/^(?:[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 iN="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function iw(){return new RegExp(iN,"u")}var aw=/^(?:(?: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])$/,cw=/^(([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 uw=/^((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])$/,lw=/^(([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])$/,dw=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,pw=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var fw=/^https?$/,mw=/^\+[1-9]\d{6,14}$/;var hw="(?:(?:\\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 aN(e){return new RegExp(`^${e}$`)}var gw=aN(hw);function Zd(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 yw(e){return new RegExp(`^${Zd(e)}$`)}function bw(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${Zd({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${Zd({precision:e.precision})}`:r;return new RegExp(`^${hw}T(?:${n})$`)}var ww=/^[\s\S]{0,}$/,_w=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Na=/^-?\d+$/,ro=/^-?\d+(?:\.\d+)?$/,vw=/^(?:true|false)$/i,Sw=/^null$/i;var kw=/^[^A-Z]*$/,xw=/^[^a-z]*$/;var Ke=O("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var Kd=(e)=>{let t=e.value;return!yb(t)&&t.length!==void 0},La={number:"number",bigint:"bigint",object:"date"},Hd=O("$ZodCheckLessThan",(e,t)=>{Ke.init(e,t);let r=La[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:La[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})}}),Gd=O("$ZodCheckGreaterThan",(e,t)=>{Ke.init(e,t);let r=La[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:La[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})}}),$w=O("$ZodCheckMultipleOf",(e,t)=>{Ke.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):bb(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})}}),Ew=O("$ZodCheckNumberFormat",(e,t)=>{Ke.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,s]=ka[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 Tw=O("$ZodCheckMaxLength",(e,t)=>{var r;Ke.init(e,t),(r=e._zod.def).when??(r.when=Kd),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?Ea(o):s)<=t.maximum)return;let a=Ta(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ow=O("$ZodCheckMinLength",(e,t)=>{var r;Ke.init(e,t),(r=e._zod.def).when??(r.when=Kd),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?Ea(o):s)>=t.minimum)return;let a=Ta(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Pw=O("$ZodCheckLengthEquals",(e,t)=>{var r;Ke.init(e,t),(r=e._zod.def).when??(r.when=Kd),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?Ea(o):s;if(i===t.length)return;let a=Ta(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})}}),xs=O("$ZodCheckStringFormat",(e,t)=>{var r,n;if(Ke.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=()=>{})}),Iw=O("$ZodCheckRegex",(e,t)=>{xs.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})}}),Aw=O("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=kw),xs.init(e,t)}),Rw=O("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=xw),xs.init(e,t)}),Cw=O("$ZodCheckIncludes",(e,t)=>{Ke.init(e,t);let r=_r(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})}}),zw=O("$ZodCheckStartsWith",(e,t)=>{Ke.init(e,t);let r=new RegExp(`^${_r(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})}}),Nw=O("$ZodCheckEndsWith",(e,t)=>{Ke.init(e,t);let r=new RegExp(`.*${_r(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 Lw=O("$ZodCheckOverwrite",(e,t)=>{Ke.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class Jd{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 DQ={keyword:"dependencies",type:"object",schemaType:"object",error:rC.error,code(e){let[t,r]=MQ(e);eC(e,t),tC(e,r)}};function MQ({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let o=Array.isArray(e[n])?t:r;o[n]=e[n]}return[t,r]}function eC(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let i in t){let a=t[i];if(a.length===0)continue;let c=vr.propertyInData(r,n,i,o.opts.ownProperties);if(e.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors)r.if(c,()=>{for(let u of a)vr.checkReportMissingProp(e,u)});else r.if(ms._`${c} && (${vr.checkMissingProp(e,a,s)})`),vr.reportMissingProp(e,s),r.else()}}rC.validatePropertyDeps=eC;function tC(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t){if(QR.alwaysValidSchema(s,t[a]))continue;r.if(vr.propertyInData(r,n,a,s.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},i);e.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),e.ok(i)}}rC.validateSchemaDeps=tC;rC.default=DQ});var cC=E(function(aC){Object.defineProperty(aC,"__esModule",{value:!0});var rd=ee(),iC=ue(),UQ={message:"property name must be valid",params:({params:e})=>rd._`{propertyName: ${e.propertyName}}`},WQ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:UQ,code(e){let{gen:t,schema:r,data:n,it:o}=e;if(iC.alwaysValidSchema(o,r))return;let s=t.name("valid");t.forIn("key",n,(i)=>{e.setParams({propertyName:i}),e.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),t.if(rd.not(s),()=>{if(e.error(!0),!o.allErrors)t.break()})}),e.ok(s)}};aC.default=WQ});var xy=E(function(uC){Object.defineProperty(uC,"__esModule",{value:!0});var Sn=Ft(),Ce=ee(),ZQ=zr(),kn=ue(),BQ={message:"must NOT have additional properties",params:({params:e})=>Ce._`{additionalProperty: ${e.additionalProperty}}`},KQ={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:BQ,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=e;if(!s)throw Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&kn.alwaysValidSchema(i,r))return;let u=Sn.allSchemaProperties(n.properties),l=Sn.allSchemaProperties(n.patternProperties);d(),e.ok(Ce._`${s} === ${ZQ.default.errors}`);function d(){t.forIn("key",o,(y)=>{if(!u.length&&!l.length)h(y);else t.if(f(y),()=>h(y))})}function f(y){let b;if(u.length>8){let T=kn.schemaRefOrVal(i,n.properties,"properties");b=Sn.isOwnProperty(t,T,y)}else if(u.length)b=Ce.or(...u.map((T)=>Ce._`${y} === ${T}`));else b=Ce.nil;if(l.length)b=Ce.or(b,...l.map((T)=>Ce._`${Sn.usePattern(e,T)}.test(${y})`));return Ce.not(b)}function m(y){t.code(Ce._`delete ${o}[${y}]`)}function h(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(y);return}if(r===!1){if(e.setParams({additionalProperty:y}),e.error(),!a)t.break();return}if(typeof r=="object"&&!kn.alwaysValidSchema(i,r)){let b=t.name("valid");if(c.removeAdditional==="failing")g(y,b,!1),t.if(Ce.not(b),()=>{e.reset(),m(y)});else if(g(y,b),!a)t.if(Ce.not(b),()=>t.break())}}function g(y,b,T){let S={keyword:"additionalProperties",dataProp:y,dataPropType:kn.Type.Str};if(T===!1)Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(S,b)}}};uC.default=KQ});var fC=E(function(pC){Object.defineProperty(pC,"__esModule",{value:!0});var dC=ya(),nd=Ft(),hs=ue(),lC=xy(),GQ={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e;if(s.opts.removeAdditional==="all"&&n.additionalProperties===void 0)lC.default.code(new dC.KeywordCxt(s,lC.default,"additionalProperties"));let i=nd.allSchemaProperties(r);for(let d of i)s.definedProperties.add(d);if(s.opts.unevaluated&&i.length&&s.props!==!0)s.props=hs.mergeEvaluated.props(t,hs.toHash(i),s.props);let a=i.filter((d)=>!hs.alwaysValidSchema(s,r[d]));if(a.length===0)return;let c=t.name("valid");for(let d of a){if(u(d))l(d);else{if(t.if(nd.propertyInData(t,o,d,s.opts.ownProperties)),l(d),!s.allErrors)t.else().var(c,!0);t.endIf()}e.it.definedProperties.add(d),e.ok(c)}function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};pC.default=GQ});var hC=E(function(mC){Object.defineProperty(mC,"__esModule",{value:!0});var od=Ft(),xn=ee(),sd=ue(),id=ue(),YQ={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=od.allSchemaProperties(r),c=a.filter((g)=>sd.alwaysValidSchema(s,r[g]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=t.name("valid");if(s.props!==!0&&!(s.props instanceof xn.Name))s.props=id.evaluatedPropsToName(t,s.props);let{props:d}=s;f();function f(){for(let g of a){if(u)m(g);if(s.allErrors)h(g);else t.var(l,!0),h(g),t.if(l)}}function m(g){for(let y in u)if(new RegExp(g).test(y))sd.checkStrictMode(s,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function h(g){t.forIn("key",n,(y)=>{t.if(xn._`${od.usePattern(e,g)}.test(${y})`,()=>{let b=c.includes(g);if(!b)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:id.Type.Str},l);if(s.opts.unevaluated&&d!==!0)t.assign(xn._`${d}[${y}]`,!0);else if(!b&&!s.allErrors)t.if(xn.not(l),()=>t.break())})})}}};mC.default=YQ});var wC=E(function(yC){Object.defineProperty(yC,"__esModule",{value:!0});var gC=ue(),QQ={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(gC.alwaysValidSchema(n,r)){e.fail();return}let o=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),e.failResult(o,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};yC.default=QQ});var vC=E(function(_C){Object.defineProperty(_C,"__esModule",{value:!0});var bC=Ft(),tee={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:bC.validateUnion,error:{message:"must match a schema in anyOf"}};_C.default=tee});var xC=E(function(kC){Object.defineProperty(kC,"__esModule",{value:!0});var $n=ee(),SC=ue(),nee={message:"must match exactly one schema in oneOf",params:({params:e})=>$n._`{passingSchemas: ${e.passing}}`},oee={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:nee,code(e){let{gen:t,schema:r,parentSchema:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=t.let("valid",!1),a=t.let("passing",null),c=t.name("_valid");e.setParams({passing:a}),t.block(u),e.result(i,()=>e.reset(),()=>e.error(!0));function u(){s.forEach((l,d)=>{let f;if(SC.alwaysValidSchema(o,l))t.var(c,!0);else f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c);if(d>0)t.if($n._`${c} && ${i}`).assign(i,!1).assign(a,$n._`[${a}, ${d}]`).else();t.if(c,()=>{if(t.assign(i,!0),t.assign(a,d),f)e.mergeEvaluated(f,$n.Name)})})}}};kC.default=oee});var EC=E(function(TC){Object.defineProperty(TC,"__esModule",{value:!0});var $C=ue(),iee={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw Error("ajv implementation error");let o=t.name("valid");r.forEach((s,i)=>{if($C.alwaysValidSchema(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};TC.default=iee});var IC=E(function(OC){Object.defineProperty(OC,"__esModule",{value:!0});var Tn=ee(),ad=ue(),cee={message:({params:e})=>Tn.str`must match "${e.ifClause}" schema`,params:({params:e})=>Tn._`{failingKeyword: ${e.ifClause}}`},uee={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:cee,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)ad.checkStrictMode(n,'"if" without "then" and "else" is ignored');let o=PC(n,"then"),s=PC(n,"else");if(!o&&!s)return;let i=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&s){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(a,u("then",l),u("else",l))}else if(o)t.if(a,u("then"));else t.if(Tn.not(a),u("else"));e.pass(i,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},a);if(t.assign(i,a),e.mergeValidEvaluated(f,i),d)t.assign(d,Tn._`${l}`);else e.setParams({ifClause:l})}}}};function PC(e,t){let r=e.schema[t];return r!==void 0&&!ad.alwaysValidSchema(e,r)}OC.default=uee});var CC=E(function(RC){Object.defineProperty(RC,"__esModule",{value:!0});var AC=ue(),dee={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)AC.checkStrictMode(r,`"${e}" without "if" is ignored`)}};RC.default=dee});var NC=E(function(zC){Object.defineProperty(zC,"__esModule",{value:!0});var fee=Sy(),mee=ZR(),hee=ky(),gee=JR(),yee=XR(),wee=sC(),bee=cC(),_ee=xy(),vee=fC(),See=hC(),kee=wC(),xee=vC(),$ee=xC(),Tee=EC(),Eee=IC(),Pee=CC();function Oee(e=!1){let t=[kee.default,xee.default,$ee.default,Tee.default,Eee.default,Pee.default,bee.default,_ee.default,wee.default,vee.default,See.default];if(e)t.push(mee.default,gee.default);else t.push(fee.default,hee.default);return t.push(yee.default),t}zC.default=Oee});var jC=E(function(LC){Object.defineProperty(LC,"__esModule",{value:!0});var Q=ee(),Aee={message:({schemaCode:e})=>Q.str`must match format "${e}"`,params:({schemaCode:e})=>Q._`{format: ${e}}`},Ree={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Aee,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;if(o)f();else m();function f(){let h=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),g=r.const("fDef",Q._`${h}[${i}]`),y=r.let("fType"),b=r.let("format");r.if(Q._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,Q._`${g}.type || "string"`).assign(b,Q._`${g}.validate`),()=>r.assign(y,Q._`"string"`).assign(b,g)),e.fail$data(Q.or(T(),S()));function T(){if(c.strictSchema===!1)return Q.nil;return Q._`${i} && !${b}`}function S(){let I=l.$async?Q._`(${g}.async ? await ${b}(${n}) : ${b}(${n}))`:Q._`${b}(${n})`,_=Q._`(typeof ${b} == "function" ? ${I} : ${b}.test(${n}))`;return Q._`${b} && ${b} !== true && ${y} === ${t} && !${_}`}}function m(){let h=d.formats[s];if(!h){T();return}if(h===!0)return;let[g,y,b]=S(h);if(g===t)e.pass(I());function T(){if(c.strictSchema===!1){d.logger.warn(_());return}throw Error(_());function _(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(_){let v=_ instanceof RegExp?Q.regexpCode(_):c.code.formats?Q._`${c.code.formats}${Q.getProperty(s)}`:void 0,x=r.scopeValue("formats",{key:s,ref:_,code:v});if(typeof _=="object"&&!(_ instanceof RegExp))return[_.type||"string",_.validate,Q._`${x}.validate`];return["string",_,x]}function I(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw Error("async format in sync schema");return Q._`await ${b}(${n})`}return typeof y=="function"?Q._`${b}(${n})`:Q._`${b}.test(${n})`}}}};LC.default=Ree});var MC=E(function(DC){Object.defineProperty(DC,"__esModule",{value:!0});var zee=jC(),Nee=[zee.default];DC.default=Nee});var UC=E(function(qC){Object.defineProperty(qC,"__esModule",{value:!0});qC.contentVocabulary=qC.metadataVocabulary=void 0;qC.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];qC.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var VC=E(function(WC){Object.defineProperty(WC,"__esModule",{value:!0});var Dee=tR(),Mee=NR(),qee=NC(),Fee=MC(),cd=UC(),Uee=[Dee.default,Mee.default,(0,qee.default)(),Fee.default,cd.metadataVocabulary,cd.contentVocabulary];WC.default=Uee});var HC=E(function(BC){Object.defineProperty(BC,"__esModule",{value:!0});BC.DiscrError=void 0;var ZC;(function(e){e.Tag="tag",e.Mapping="mapping"})(ZC||(BC.DiscrError=ZC={}))});var YC=E(function(JC){Object.defineProperty(JC,"__esModule",{value:!0});var Wt=ee(),gs=HC(),ud=Vl(),Vee=wa(),GC=ue(),Zee={message:({params:{discrError:e,tagName:t}})=>e===gs.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>Wt._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Bee={keyword:"discriminator",type:"object",schemaType:"object",error:Zee,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:s}=e,{oneOf:i}=o;if(!s.opts.discriminator)throw Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw Error("discriminator: requires propertyName");if(n.mapping)throw Error("discriminator: mapping is not supported");if(!i)throw Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",Wt._`${r}${Wt.getProperty(a)}`);t.if(Wt._`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:gs.DiscrError.Tag,tag:u,tagName:a})),e.ok(c);function l(){let m=f();t.if(!1);for(let h in m)t.elseIf(Wt._`${u} === ${h}`),t.assign(c,d(m[h]));t.else(),e.error(!1,{discrError:gs.DiscrError.Mapping,tag:u,tagName:a}),t.endIf()}function d(m){let h=t.name("valid"),g=e.subschema({keyword:"oneOf",schemaProp:m},h);return e.mergeEvaluated(g,Wt.Name),h}function f(){var m;let h={},g=b(o),y=!0;for(let I=0;I<i.length;I++){let _=i[I];if((_===null||_===void 0?void 0:_.$ref)&&!GC.schemaHasRulesButRef(_,s.self.RULES)){let x=_.$ref;if(_=ud.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,x),_ instanceof ud.SchemaEnv)_=_.schema;if(_===void 0)throw new Vee.default(s.opts.uriResolver,s.baseId,x)}let v=(m=_===null||_===void 0?void 0:_.properties)===null||m===void 0?void 0:m[a];if(typeof v!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);y=y&&(g||b(_)),T(v,I)}if(!y)throw Error(`discriminator: "${a}" must be required`);return h;function b({required:I}){return Array.isArray(I)&&I.includes(a)}function T(I,_){if(I.const)S(I.const,_);else if(I.enum)for(let v of I.enum)S(v,_);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(I,_){if(typeof I!="string"||I in h)throw Error(`discriminator: "${a}" values must be unique strings`);h[I]=_}}}};JC.default=Bee});var XC=E(function(pke,Hee){Hee.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Ty=E(function(gt,$y){Object.defineProperty(gt,"__esModule",{value:!0});gt.MissingRefError=gt.ValidationError=gt.CodeGen=gt.Name=gt.nil=gt.stringify=gt.str=gt._=gt.KeywordCxt=gt.Ajv=void 0;var Gee=KA(),Jee=VC(),Yee=YC(),QC=XC(),Xee=["/properties"],ld="http://json-schema.org/draft-07/schema";class va extends Gee.default{_addVocabularies(){if(super._addVocabularies(),Jee.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(Yee.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(QC,Xee):QC;this.addMetaSchema(e,ld,!1),this.refs["http://json-schema.org/schema"]=ld}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ld)?ld:void 0)}}gt.Ajv=va;$y.exports=gt=va;$y.exports.Ajv=va;Object.defineProperty(gt,"__esModule",{value:!0});gt.default=va;var Qee=ya();Object.defineProperty(gt,"KeywordCxt",{enumerable:!0,get:function(){return Qee.KeywordCxt}});var ys=ee();Object.defineProperty(gt,"_",{enumerable:!0,get:function(){return ys._}});Object.defineProperty(gt,"str",{enumerable:!0,get:function(){return ys.str}});Object.defineProperty(gt,"stringify",{enumerable:!0,get:function(){return ys.stringify}});Object.defineProperty(gt,"nil",{enumerable:!0,get:function(){return ys.nil}});Object.defineProperty(gt,"Name",{enumerable:!0,get:function(){return ys.Name}});Object.defineProperty(gt,"CodeGen",{enumerable:!0,get:function(){return ys.CodeGen}});var ete=Fl();Object.defineProperty(gt,"ValidationError",{enumerable:!0,get:function(){return ete.default}});var tte=wa();Object.defineProperty(gt,"MissingRefError",{enumerable:!0,get:function(){return tte.default}})});var u1=E(function(a1){Object.defineProperty(a1,"__esModule",{value:!0});a1.formatNames=a1.fastFormats=a1.fullFormats=void 0;function Sr(e,t){return{validate:e,compare:t}}a1.fullFormats={date:Sr(n1,Iy),time:Sr(Py(!0),Ay),"date-time":Sr(e1(!0),s1),"iso-time":Sr(Py(),o1),"iso-date-time":Sr(e1(),i1),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:ute,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:gte,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:lte,int32:{type:"number",validate:fte},int64:{type:"number",validate:mte},float:{type:"number",validate:r1},double:{type:"number",validate:r1},password:!0,binary:!0};a1.fastFormats={...a1.fullFormats,date:Sr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Iy),time:Sr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ay),"date-time":Sr(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,s1),"iso-time":Sr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,o1),"iso-date-time":Sr(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,i1),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};a1.formatNames=Object.keys(a1.fullFormats);function ote(e){return e%4===0&&(e%100!==0||e%400===0)}var ste=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,ite=[0,31,28,31,30,31,30,31,31,30,31,30,31];function n1(e){let t=ste.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],o=+t[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&ote(r)?29:ite[n])}function Iy(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var Ey=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Py(e){return function(r){let n=Ey.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||e&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function Ay(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(!(r&&n))return;return r-n}function o1(e,t){if(!(e&&t))return;let r=Ey.exec(e),n=Ey.exec(t);if(!(r&&n))return;if(e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t)return 1;if(e<t)return-1;return 0}var Oy=/t|\s/i;function e1(e){let t=Py(e);return function(n){let o=n.split(Oy);return o.length===2&&n1(o[0])&&t(o[1])}}function s1(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(!(r&&n))return;return r-n}function i1(e,t){if(!(e&&t))return;let[r,n]=e.split(Oy),[o,s]=t.split(Oy),i=Iy(r,o);if(i===void 0)return;return i||Ay(n,s)}var ate=/\/|:/,cte=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function ute(e){return ate.test(e)&&cte.test(e)}var t1=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function lte(e){return t1.lastIndex=0,t1.test(e)}var dte=-2147483648,pte=2147483647;function fte(e){return Number.isInteger(e)&&e<=pte&&e>=dte}function mte(e){return Number.isInteger(e)}function r1(){return!0}var hte=/[^\\]\\Z/;function gte(e){if(hte.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var p1=E(function(d1){Object.defineProperty(d1,"__esModule",{value:!0});d1.formatLimitDefinition=void 0;var l1=Ty(),ze=ee(),En=ze.operators,dd={formatMaximum:{okStr:"<=",ok:En.LTE,fail:En.GT},formatMinimum:{okStr:">=",ok:En.GTE,fail:En.LT},formatExclusiveMaximum:{okStr:"<",ok:En.LT,fail:En.GTE},formatExclusiveMinimum:{okStr:">",ok:En.GT,fail:En.LTE}},wte={message:({keyword:e,schemaCode:t})=>ze.str`should be ${dd[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>ze._`{comparison: ${dd[e].okStr}, limit: ${t}}`};d1.formatLimitDefinition={keyword:Object.keys(dd),type:"string",schemaType:"string",$data:!0,error:wte,code(e){let{gen:t,data:r,schemaCode:n,keyword:o,it:s}=e,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new l1.KeywordCxt(s,a.RULES.all.format.definition,"format");if(c.$data)u();else l();function u(){let f=t.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=t.const("fmt",ze._`${f}[${c.schemaCode}]`);e.fail$data(ze.or(ze._`typeof ${m} != "object"`,ze._`${m} instanceof RegExp`,ze._`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw Error(`"${o}": format "${f}" does not define "compare" function`);let h=t.scopeValue("formats",{key:f,ref:m,code:i.code.formats?ze._`${i.code.formats}${ze.getProperty(f)}`:void 0});e.fail$data(d(h))}function d(f){return ze._`${f}.compare(${r}, ${n}) ${dd[o].fail} 0`}},dependencies:["format"]};var bte=(e)=>(e.addKeyword(d1.formatLimitDefinition),e);d1.default=bte});var g1=E(function(Sa,h1){Object.defineProperty(Sa,"__esModule",{value:!0});var Vt=u1(),vte=p1(),ws=ee(),f1=new ws.Name("fullFormats"),Ste=new ws.Name("fastFormats"),zy=(e,t={keywords:!0})=>{if(Array.isArray(t))return m1(e,t,Vt.fullFormats,f1),e;let[r,n]=t.mode==="fast"?[Vt.fastFormats,Ste]:[Vt.fullFormats,f1],o=t.formats||Vt.formatNames;if(m1(e,o,r,n),t.keywords)(0,vte.default)(e);return e};zy.get=(e,t="full")=>{let n=(t==="fast"?Vt.fastFormats:Vt.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function m1(e,t,r,n){var o,s;(o=(s=e.opts.code).formats)!==null&&o!==void 0||(s.formats=ws._`require("ajv-formats/dist/formats").${n}`);for(let i of t)e.addFormat(i,r[i])}h1.exports=Sa=zy;Object.defineProperty(Sa,"__esModule",{value:!0});Sa.default=zy});var Kd={};Bz(Kd,{program:()=>Ow,createCommand:()=>Iw,createOption:()=>Aw,createArgument:()=>Rw,Command:()=>Cw,Option:()=>zw,Argument:()=>Nw,Help:()=>Lw,CommanderError:()=>jw,InvalidArgumentError:()=>Dw,InvalidOptionArgumentError:()=>Mw},{program:(Vne)=>Ow=Vne,createCommand:(Vne)=>Iw=Vne,createOption:(Vne)=>Aw=Vne,createArgument:(Vne)=>Rw=Vne,Command:(Vne)=>Cw=Vne,Option:(Vne)=>zw=Vne,Argument:(Vne)=>Nw=Vne,Help:(Vne)=>Lw=Vne,CommanderError:(Vne)=>jw=Vne,InvalidArgumentError:(Vne)=>Dw=Vne,InvalidOptionArgumentError:(Vne)=>Mw=Vne});var pe={};Zz(pe,{ZodISODate:()=>Vs,ZodISODateTime:()=>Ws,ZodISODuration:()=>Bs,ZodISOTime:()=>Zs,date:()=>Pj,datetime:()=>wk,duration:()=>Ij,time:()=>Oj});var{Argument:Tw}=Ia(),{Command:Bd}=$w(),{CommanderError:xN,InvalidArgumentError:Ew}=ks(),{Help:$N}=Fd(),{Option:Pw}=Ud();var Ow=new Bd,Iw=(e)=>new Bd(e),Aw=(e,t)=>new Pw(e,t),Rw=(e,t)=>new Tw(e,t),Cw=Bd,zw=Pw,Nw=Tw,Lw=$N,jw=xN,Dw=Ew,Mw=Ew;var{program:Bne,createCommand:Kne,createArgument:Hne,createOption:Gne,CommanderError:Jne,InvalidArgumentError:Yne,InvalidOptionArgumentError:Xne,Command:qw,Argument:Qne,Option:eoe,Help:toe}=Kd;function $s(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Gd(e,t="|"){return e.map((r)=>Xd(r)).join(t)}function Ts(e,t){if(typeof t==="bigint")return t.toString();return t}class Uw{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;if(e!==void 0)this._value=e(),this._getter=void 0;return this._value}}function Es(e){return new Uw(e)}function Ww(e){return e===null||e===void 0}function Fr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Vw(e,t){let r=e/t,n=Math.round(r),o=4*Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-n)<o)return 0;return r-n}var Fw=Symbol("evaluating");function Zw(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Fw)return;if(n===void 0)n=Fw,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function bt(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Ps(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function xr(e){return Ps(e._zod.def)??e._zod.def.shape}function Bw(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return bt(this,t,n),n},enumerable:!0,configurable:!0})}function Kw(e,t,r){if(t in e)bt(e,t,r);else e[t]=r}function An(e,t,r,n){let o=xr(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)Bw(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else Kw(e,s,n?n(i.value,s):i.value)}}function TN(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)Bw(e,r,()=>t[r]);else Kw(e,r,n.value)}}function _t(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function Hw(e){return JSON.stringify(e)}function Gw(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Jd="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function co(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Jw=Es(()=>{if(rt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Rn(e){if(co(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if(co(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function Yd(e){if(Rn(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}var Yw=new Set(["string","number","symbol"]),Xw=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Tr(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Zt(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function U(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function Xd(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Qw(e){return Object.keys(e).filter((t)=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}var Aa=(()=>({safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]}))(),Qd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function EN(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let s={};return An(s,e,Ra(e,t)),Zt(e,_t(r,{shape:s,checks:[]}))}function Ra(e,t){let r=xr(e),n=[];for(let o of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(r,o)?.enumerable)throw Error(`Unrecognized key: "${String(o)}"`);if(t[o])n.push(o)}return n}function PN(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let s=new Set(Ra(e,t)),i={};return An(i,e,Reflect.ownKeys(xr(e)).filter((a)=>!s.has(a))),Zt(e,_t(r,{shape:i,checks:[]}))}function ON(e,t){if(!Rn(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=xr(e);for(let s of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(o,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return Zt(e,_t(e._zod.def,{shape:eb(e,t)}))}function eb(e,t){let r={};return An(r,e,Reflect.ownKeys(xr(e))),TN(r,t),r}function IN(e,t){if(!Rn(t))throw Error("Invalid input to safeExtend: expected a plain object");return Zt(e,_t(e._zod.def,{shape:eb(e,t)}))}function AN(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r={};An(r,e,Reflect.ownKeys(xr(e))),An(r,t,Reflect.ownKeys(xr(t)));let n=_t(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Zt(e,n)}function tb(e,t,r,n="partial"){let s=t._zod.def.checks;if(s&&s.length>0)throw Error(`.${n}() cannot be used on object schemas containing refinements`);let a=r?new Set(Ra(t,r)):void 0,c={};return An(c,t,Reflect.ownKeys(xr(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),Zt(t,_t(t._zod.def,{shape:c,checks:[]}))}function RN(e,t,r){let n=r?new Set(Ra(t,r)):void 0,o={};return An(o,t,Reflect.ownKeys(xr(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),Zt(t,_t(t._zod.def,{shape:o}))}function Pt(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function rb(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function Qt(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function xs(e){return typeof e==="string"?e:e?.message}function ep(e){let t=[];for(let r of e??[]){let n=r._zod.def;if(!/_(length|size)$|_equals$/.test(n.check))break;let o=n.maximum??n.length??n.size;if(o>=0)t.push([o,r])}return t}function Ca(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function er(e,t,r){var n;let o=e.inst?._zod?.traits;if(o?.has("$ZodType"))if(o.has("$ZodCheck"))(n=e).schema??(n.schema=e.inst);else e.schema=e.inst;let s=e.schema!==e.inst?e.schema?._zod.def?.error:void 0,i=e.message?e.message:xs(e.inst?._zod.def?.error?.(e))??xs(s?.(e))??xs(t?.error?.(e))??xs(r.customError?.(e))??xs(r.localeError?.(e))??"Invalid input",a={};for(let c of Object.keys(e)){if(c==="inst"||c==="schema"||c==="continue"||c==="input"||c==="__proto__")continue;a[c]=e[c]}if(a.path??(a.path=[]),a.message=i,t?.reportInput)a.input=e.input;return a}var CN=/[\uD800-\uDBFF]/;function za(e){let t=e.length;if(!CN.test(e))return t;let r=t;for(let n=0;n<t-1;n++)if((e.charCodeAt(n)&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320)r--,n++;return r}function Na(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function nb(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function Cn(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function ob(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else zN(e,r,n.value)}}function $r(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function La(e,t,r){return $r(e,t,r,!1)}function sb(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return $r(this,r,n(this))},set(o){$r(this,r,o)}})}return t}function zN(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:$r(this,t,r.bind(this))},set(n){$r(this,t,n)}})}function NN(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var Hd,qr=!1,LN={configurable:!0,get(){qr=!0;return}};function re(e,t,r){let n=Object.getPrototypeOf(e._zod);if(t in n&&Hd!==e._zod){Hd=void 0;return}Hd=e._zod,Object.defineProperty(n,t,{configurable:!0,get(){Object.defineProperty(this,t,LN);let o=qr;qr=!1;try{let s=r(this);if(qr)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return qr=qr||o,s}catch(s){throw delete this[t],qr=qr||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function jN(e,t,r,n){let o=NN(e,t);if(!o)return;Object.defineProperty(o,t,{configurable:!0,get(){let s={configurable:!0,writable:!0,enumerable:n,value:void 0};return Object.defineProperty(this,t,s),s.value=r(this),Object.defineProperty(this,t,s),s.value},set(s){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:n,value:s})}})}var DN="~constantCatch";function ib(e){let t=()=>e;return t[DN]=!0,t}var ab,rp=Object.freeze({status:"aborted"}),tp={value:void 0,enumerable:!1},cb="captureStackTrace"in Error?Error:null;function MN(e){let t=cb;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return cb=null,new e}try{return new e}finally{t.stackTraceLimit=r}}}return new e}function O(e,t,r,n){let o={};function s(f){this.def=f,this.constr=d,this.traits=new Set}s.prototype=o;let i=r,a=i&&new WeakSet;function c(f,m){if(!f._zod){tp.value=new s(m);try{Object.defineProperty(f,"_zod",tp)}finally{tp.value=void 0}}else if(f._zod.traits.has(e))return;if(f._zod.traits.add(e),t(f,m),a){let g=Object.getPrototypeOf(f),y=f._zod.constr.prototype,b=g;while(b&&b!==y)b=Object.getPrototypeOf(b);let T=b??g;if(!a.has(T))a.add(T),ob(T,i)}let h=d.prototype;for(let g in h){if(!Object.prototype.hasOwnProperty.call(h,g))continue;if(!(g in f))f[g]=h[g].bind(f)}}let u=n?.Parent??Object;class l extends u{}Object.defineProperty(l,"name",{value:e});function d(f){let m=n?.Parent?MN(l):this;c(m,f);let h=m._zod.deferred;if(h){for(let y of h)y();m._zod.deferred=void 0}let g=globalThis.__zod_globalConfig?.postProcessor;if(g)g(m);return m}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:(f)=>{if(n?.Parent&&f instanceof n.Parent)return!0;return f?._zod?.traits?.has(e)}}),Object.defineProperty(d,"name",{value:e}),d}class tr extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Os extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(ab=globalThis).__zod_globalConfig??(ab.__zod_globalConfig={});var rt=globalThis.__zod_globalConfig;function at(e){if(e)Object.assign(rt,e);return rt}function qN(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,Ts,2)),e.message}function FN(e){this._zod.message=e}var UN={get:qN,set:FN,enumerable:!0,configurable:!0},op={value:void 0,enumerable:!1},ub=new WeakSet([Object.prototype,Error.prototype]),lb=(e,t)=>{e.name="$ZodError",op.value=t,Object.defineProperty(e,"issues",op),op.value=void 0,Object.defineProperty(e,"message",UN);let r=Object.getPrototypeOf(e);if(!ub.has(r))ub.add(r),Object.defineProperty(r,"toString",{configurable:!0,enumerable:!1,get(){let n=()=>this.message;return Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0})}})},db=O("$ZodError",lb),pb=O("$ZodError",lb,void 0,{Parent:Error});function WN(e,t,r){if(!Object.prototype.hasOwnProperty.call(e,t))if(t==="__proto__")Object.defineProperty(e,t,{value:r(),writable:!0,enumerable:!0,configurable:!0});else e[t]=r();return e[t]}function sp(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)WN(r,o.path[0],()=>[]).push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function ip(e,t=(r)=>r.message){let r={_errors:[]},n=(o,s=[])=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map((a)=>n({issues:a},[...s,...i.path]));else if(i.code==="invalid_key")n({issues:i.issues},[...s,...i.path]);else if(i.code==="invalid_element")n({issues:i.issues},[...s,...i.path]);else{let a=[...s,...i.path];if(a.length===0)r._errors.push(t(i));else{let c=r,u=0;while(u<a.length){let l=a[u],d=u===a.length-1;if(l==="_errors"){if(d)c._errors.push(t(i));u++;continue}if(!Object.prototype.hasOwnProperty.call(c,l))Object.defineProperty(c,l,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let f=c[l];if(d)f._errors.push(t(i));c=f,u++}}}};return n(e),r}function ja(e,t){return{callee:t?.callee??e,Err:t?.Err}}var Da=(e)=>{let t=(r,n,o,s)=>{let i=o?{...o,async:!1}:{async:!1},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new tr;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>er(u,i,at())));throw Jd(c,s?.callee??t),c}return a.value};return t};var Ma=(e)=>{let t=async(r,n,o,s)=>{let i=o?{...o,async:!0}:{async:!0},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>er(u,i,at())));throw Jd(c,s?.callee??t),c}return a.value};return t};var Is=(e)=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new tr;return s.issues.length?fb(e,s.issues,o):{success:!0,data:s.value}},ap=Is(pb);function fb(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>er(o,r,at()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var qa=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)s=await s;return s.issues.length?fb(e,s.issues,o):{success:!0,data:s.value}};var ZN=Symbol.for("zod.compile.invalid"),BN=Symbol.for("zod.compile.fallback"),Fa=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==ZN)return!0;if(n.definite===!0&&r===void 0)return!1}return KN(e,t,r)};function KN(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[BN]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new tr;return s.issues.length===0}var Ua=async(e,t,r)=>{let n=r?{...r,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},o=e._zod.run({value:t,issues:[]},n);if(o instanceof Promise)o=await o;return o.issues.length===0},mb=(e)=>{let t=Da(e),r=(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return t(n,o,a,ja(r,i))};return r};var hb=(e)=>{let t=Da(e),r=(n,o,s,i)=>t(n,o,s,ja(r,i));return r};var gb=(e)=>{let t=Ma(e),r=async(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return await t(n,o,a,ja(r,i))};return r};var yb=(e)=>{let t=Ma(e),r=async(n,o,s,i)=>await t(n,o,s,ja(r,i));return r};var wb=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Is(e)(t,r,o)};var bb=(e)=>(t,r,n)=>Is(e)(t,r,n);var _b=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return qa(e)(t,r,o)};var vb=(e)=>async(t,r,n)=>qa(e)(t,r,n);var Sb=/^[cC][0-9a-z]{6,}$/,kb=/^[0-9a-z]+$/,xb=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,$b=/^[0-9a-vA-V]{20}$/,Tb=/^[A-Za-z0-9]{27}$/,Eb=/^[a-zA-Z0-9_-]{21}$/;function Pb(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var Ob=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Ib=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,up=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var Ab=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var HN="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function Rb(){return new RegExp(HN,"u")}var Cb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,zb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var Nb=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Lb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jb=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Db=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var Mb=/^https?$/,qb=/^\+[1-9]\d{6,14}$/;var Fb="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))";function GN(e){return new RegExp(`^${e}$`)}var Ub=GN(Fb);function cp(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?":"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Wb(e){return new RegExp(`^${cp(e)}$`)}function Vb(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${cp({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${cp({precision:e.precision})}`:r;return new RegExp(`^${Fb}T(?:${n})$`)}var Zb=/^[\s\S]{0,}$/,Bb=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Wa=/^-?\d+$/,uo=/^-?\d+(?:\.\d+)?$/,Kb=/^(?:true|false)$/i,Hb=/^null$/i;var Gb=/^[^A-Z]*$/,Jb=/^[^a-z]*$/;var He=O("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var lp=(e)=>{let t=e.value;return!Ww(t)&&t.length!==void 0},Va={number:"number",bigint:"bigint",object:"date"},dp=O("$ZodCheckLessThan",(e,t)=>{He.init(e,t);let r=Va[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:Va[typeof n.value]??r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),pp=O("$ZodCheckGreaterThan",(e,t)=>{He.init(e,t);let r=Va[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:Va[typeof n.value]??r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Yb=O("$ZodCheckMultipleOf",(e,t)=>{He.init(e,t),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?t.value!==BigInt(0)&&r.value%t.value===BigInt(0):Vw(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Xb=O("$ZodCheckNumberFormat",(e,t)=>{He.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,s]=Aa[t.format];e._zod.check=(i)=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){if(a>0)i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});else i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}if(a<o)i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(a>s)i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:e,continue:!t.abort})}});var Qb=O("$ZodCheckMaxLength",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=lp),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?za(o):s)<=t.maximum)return;let a=Na(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),e_=O("$ZodCheckMinLength",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=lp),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?za(o):s)>=t.minimum)return;let a=Na(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),t_=O("$ZodCheckLengthEquals",(e,t)=>{var r;He.init(e,t),(r=e._zod.def).when??(r.when=lp),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?za(o):s;if(i===t.length)return;let a=Na(o),c=i>t.length;n.issues.push({origin:a,...c?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),As=O("$ZodCheckStringFormat",(e,t)=>{var r,n;if(He.init(e,t),t.pattern)(r=e._zod).check??(r.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(n=e._zod).check??(n.check=()=>{})}),r_=O("$ZodCheckRegex",(e,t)=>{As.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),n_=O("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Gb),As.init(e,t)}),o_=O("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Jb),As.init(e,t)}),s_=O("$ZodCheckIncludes",(e,t)=>{He.init(e,t);let r=Tr(t.includes),n=new RegExp(typeof t.position==="number"?`^.{${t.position},}${r}`:r);t.pattern=n,e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),i_=O("$ZodCheckStartsWith",(e,t)=>{He.init(e,t);let r=new RegExp(`^${Tr(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.startsWith(t.prefix))return;n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),a_=O("$ZodCheckEndsWith",(e,t)=>{He.init(e,t);let r=new RegExp(`.*${Tr(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.endsWith(t.suffix))return;n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var c_=O("$ZodCheckOverwrite",(e,t)=>{He.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class fp{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{this.indent-=1}}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
|
|
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 jw={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=jw;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=Et(a),d;for(let f of c){if(f._zod.def.when){if(Ib(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 Jt;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await h,a.issues.length===m)return;if($a(a.issues,m,e),!l)l=Et(a,m)});else{if(a.issues.length===m)continue;if($a(a.issues,m,e),!l)l=Et(a,m)}}if(d)return d.then(()=>a);return a},i=(a,c,u)=>{if(Et(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new Jt;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 Jt;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return Oa(this,"~standard",Qd(this))},set "~standard"(e){wr(this,"~standard",e)}}),Xw=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>Gt(r,t,at()))}:{value:e.value};async function cN(e,t){let r={async:!0};return Xw(await e._zod.run({value:t,issues:[]},r),r)}function Qd(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 cN(e,t)},vendor:"zod",version:1}}var qa=O("$ZodString",(e,t)=>{pe.init(e,t),e._zod.pattern=t.pattern??ww,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)=>{xs.init(e,t),qa.init(e,t)}),Qw=O("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=ow),_e.init(e,t)}),e_=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=Bd(n))}else t.pattern??(t.pattern=Bd());_e.init(e,t)}),t_=O("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=sw),_e.init(e,t)}),r_=1,ja=2;function n_(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function uN(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return n_(e)||ja;return lN(e,t)}function lN(e,t){if(!t.normalize&&t.protocol?.source===fw.source&&!/^https?:\/\//i.test(e))return r_;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??ja}return new URL(e)}catch{return ja}}var dN=/[\t\n\r]/g;function Mw(e){return e.replace(dN,"")}function pN(e,t){return t.lastIndex=0,t.test(e.hostname)}function fN(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var o_=O("$ZodURL",(e,t)=>{_e.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=uN(n,t);if(o===r_){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===ja){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=Mw(n);return}if(t.hostname&&!pN(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&&!fN(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:Mw(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),s_=O("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=iw()),_e.init(e,t)}),i_=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?tw:rw(t.length)),_e.init(e,t)}),a_=O("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Jb),_e.init(e,t)}),c_=O("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Yb),_e.init(e,t)}),u_=O("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Xb),_e.init(e,t)}),l_=O("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Qb),_e.init(e,t)}),d_=O("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ew),_e.init(e,t)}),p_=O("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=bw(t)),_e.init(e,t)}),f_=O("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=gw),_e.init(e,t)}),m_=O("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=yw(t)),_e.init(e,t)}),h_=O("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=nw),_e.init(e,t)}),g_=O("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=aw),_e.init(e,t)}),mN=/^[0-9a-fA-F:.]+$/;function y_(e){if(!mN.test(e))return!1;return n_(`http://[${e}]`)}var b_=O("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=cw),_e.init(e,t),e._zod.check=(r)=>{if(!y_(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var w_=O("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=uw),_e.init(e,t)});function hN(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 y_(r)}var __=O("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=lw),_e.init(e,t),e._zod.check=(r)=>{if(!hN(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function v_(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 ep=/^[0-9a-zA-Z+/]*={0,2}$/,S_=O("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=ep),_e.init(e,t),e._zod.check=(r)=>{if(v_(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),Fa=/^[A-Za-z0-9_-]*$/;function gN(e){if(!Fa.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return v_(r)}var k_=O("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Fa),_e.init(e,t),e._zod.check=(r)=>{if(gN(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),x_=O("$ZodE164",(e,t)=>{t.pattern??(t.pattern=mw),_e.init(e,t)});function yN(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 $_=O("$ZodJWT",(e,t)=>{_e.init(e,t),e._zod.check=(r)=>{if(yN(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var tp=O("$ZodNumber",(e,t)=>{pe.init(e,t),e._zod.pattern=ro,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}}),E_=O("$ZodNumberFormat",(e,t)=>{Ew.init(e,t),tp.init(e,t)}),T_=O("$ZodBoolean",(e,t)=>{pe.init(e,t),e._zod.pattern=vw,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 O_=O("$ZodNull",(e,t)=>{pe.init(e,t),e._zod.pattern=Sw,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}}),P_=O("$ZodAny",(e,t)=>{pe.init(e,t),e._zod.parse=(r)=>r}),I_=O("$ZodUnknown",(e,t)=>{pe.init(e,t),e._zod.parse=(r)=>r}),A_=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 bN(e,t){let r=Dd(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 Dd(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,$a(s.issues,l,e),s}}return o(s,i)}}var wN=(e)=>Array.isArray(e)?e.length:-1;function qw(e,t,r){if(e.issues.length)t.issues.push(...Ht(r,e.issues));t.value[r]=e.value}var R_=O("$ZodArray",(e,t)=>{pe.init(e,t);let r=tt.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)=>qw(d,n,c)));else if(qw(l,n,c),a&&l.issues.length!==0&&Et(l))break}if(i.length)return Promise.all(i).then(()=>n);return n},bN(e,wN)});function Ma(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(...Ht(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 _N=[];function C_(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:_N,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=Tb(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function z_(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(Et(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)=>Ma(y,r,h,t,d,f)));else Ma(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 vN=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=_s(()=>C_(t));re(e,"propValues",(u)=>{let l=u.def.shape,d={};for(let f in l){let m=l[f]._zod;if(m.values){if(!Object.prototype.hasOwnProperty.call(d,f))yt(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=to,i=t.catchall,a,c=tt.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(Et(u,g))break;g=u.issues.length}if(y==="__proto__")continue;let w=m[y],T=w._zod.optin,S=w._zod.optout,I=w._zod.run({value:d[y],issues:[]},l);if(I instanceof Promise)f.push(I.then((_)=>Ma(_,u,y,d,T,S)));else Ma(I,u,y,d,T,S)}if(!i)return f.length?Promise.all(f).then(()=>u):u;return z_(f,d,u,l,o.value,e,h===!0)}}),N_=O("$ZodObjectJIT",(e,t)=>{vN.init(e,t);let r=e._zod.parse,n=_s(()=>C_(t)),o=tt.memoizer,s=(m)=>{let h=n.value,g=h.symbolKeys,y=new Jd(["payload","ctx"],{shape:m,inst:e,memo:o,syms:g}),w=(_)=>`shape[${_}]._zod.run({ value: input[${_}], issues: [] }, ctx)`,T=(_,v)=>`
|
|
176
|
+
};`)(...Object.values(this.closed))}}var l_={major:4,minor:6,patch:7};var fe=O("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=l_;let n=e._zod.def.checks,o=e._zod.traits.has("$ZodCheck")?[e,...n??[]]:n?.length?[...n]:[];for(let s of o)for(let i of s._zod.onattach)i(e);if(o.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let s=(a,c,u)=>{if(a.memo)return a;let l=Pt(a),d;for(let f of c){if(f._zod.def.when){if(rb(a))continue;if(!f._zod.def.when(a))continue}else if(l)continue;let m=a.issues.length,h=f._zod.check(a);if(h instanceof Promise&&u?.async===!1)throw new tr;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await h,a.issues.length===m)return;if(Ca(a.issues,m,e),!l)l=Pt(a,m)});else{if(a.issues.length===m)continue;if(Ca(a.issues,m,e),!l)l=Pt(a,m)}}if(d)return d.then(()=>a);return a},i=(a,c,u)=>{if(Pt(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new tr;return l.then((d)=>e._zod.parse(d,u))}return e._zod.parse(l,u)};e._zod.run=(a,c)=>{if(c.skipChecks)return e._zod.parse(a,c);if(c.direction==="backward"){let l=e._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});if(l instanceof Promise)return l.then((d)=>i(d,a,c));return i(l,a,c)}let u=e._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new tr;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return La(this,"~standard",gp(this))},set "~standard"(e){$r(this,"~standard",e)}}),x_=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>er(r,t,at()))}:{value:e.value};async function JN(e,t){let r={async:!0};return x_(await e._zod.run({value:t,issues:[]},r),r)}function gp(e){return{validate:(t)=>{let r={async:!1};try{let n=e._zod.run({value:t,issues:[]},r);if(!(n instanceof Promise))return x_(n,r)}catch(n){}return JN(e,t)},vendor:"zod",version:1}}var Ha=O("$ZodString",(e,t)=>{fe.init(e,t),e._zod.pattern=t.pattern??Zb,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch(o){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),xe=O("$ZodStringFormat",(e,t)=>{As.init(e,t),Ha.init(e,t)}),$_=O("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Ib),xe.init(e,t)}),T_=O("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=up(n))}else t.pattern??(t.pattern=up());xe.init(e,t)}),E_=O("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ab),xe.init(e,t)}),P_=1,Ba=2;function O_(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function YN(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return O_(e)||Ba;return XN(e,t)}function XN(e,t){if(!t.normalize&&t.protocol?.source===Mb.source&&!/^https?:\/\//i.test(e))return P_;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??Ba}return new URL(e)}catch{return Ba}}var QN=/[\t\n\r]/g;function d_(e){return e.replace(QN,"")}function eL(e,t){return t.lastIndex=0,t.test(e.hostname)}function tL(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var I_=O("$ZodURL",(e,t)=>{xe.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=YN(n,t);if(o===P_){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===Ba){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=d_(n);return}if(t.hostname&&!eL(o,t.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort});if(t.protocol&&!tL(o,t.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort});r.value=t.normalize?o.href:d_(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),A_=O("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Rb()),xe.init(e,t)}),R_=O("$ZodNanoID",(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??(t.pattern=t.length===void 0?Eb:Pb(t.length)),xe.init(e,t)}),C_=O("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Sb),xe.init(e,t)}),z_=O("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=kb),xe.init(e,t)}),N_=O("$ZodULID",(e,t)=>{t.pattern??(t.pattern=xb),xe.init(e,t)}),L_=O("$ZodXID",(e,t)=>{t.pattern??(t.pattern=$b),xe.init(e,t)}),j_=O("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Tb),xe.init(e,t)}),D_=O("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Vb(t)),xe.init(e,t)}),M_=O("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Ub),xe.init(e,t)}),q_=O("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Wb(t)),xe.init(e,t)}),F_=O("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Ob),xe.init(e,t)}),U_=O("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Cb),xe.init(e,t)}),rL=/^[0-9a-fA-F:.]+$/;function W_(e){if(!rL.test(e))return!1;return O_(`http://[${e}]`)}var V_=O("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=zb),xe.init(e,t),e._zod.check=(r)=>{if(!W_(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var Z_=O("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Nb),xe.init(e,t)});function nL(e){let t=e.split("/");if(t.length!==2)return!1;let[r,n]=t;if(!n)return!1;let o=Number(n);if(`${o}`!==n)return!1;if(o<0||o>128)return!1;return W_(r)}var B_=O("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Lb),xe.init(e,t),e._zod.check=(r)=>{if(!nL(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function K_(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var yp=/^[0-9a-zA-Z+/]*={0,2}$/,H_=O("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=yp),xe.init(e,t),e._zod.check=(r)=>{if(K_(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),Ga=/^[A-Za-z0-9_-]*$/;function oL(e){if(!Ga.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return K_(r)}var G_=O("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ga),xe.init(e,t),e._zod.check=(r)=>{if(oL(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),J_=O("$ZodE164",(e,t)=>{t.pattern??(t.pattern=qb),xe.init(e,t)});function sL(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var Y_=O("$ZodJWT",(e,t)=>{xe.init(e,t),e._zod.check=(r)=>{if(sL(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var wp=O("$ZodNumber",(e,t)=>{fe.init(e,t),e._zod.pattern=uo,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch(i){}let o=r.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?String(o):void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...s?{received:s}:{}}),r}}),X_=O("$ZodNumberFormat",(e,t)=>{Xb.init(e,t),wp.init(e,t)}),Q_=O("$ZodBoolean",(e,t)=>{fe.init(e,t),e._zod.pattern=Kb,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(s){}let o=r.value;if(typeof o==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}});var ev=O("$ZodNull",(e,t)=>{fe.init(e,t),e._zod.pattern=Hb,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;if(o===null)return r;return r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}}),tv=O("$ZodAny",(e,t)=>{fe.init(e,t),e._zod.parse=(r)=>r}),rv=O("$ZodUnknown",(e,t)=>{fe.init(e,t),e._zod.parse=(r)=>r}),nv=O("$ZodNever",(e,t)=>{fe.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function iL(e,t){let r=ep(e._zod.def.checks);if(!r.length)return;let n=Math.min(...r.map((s)=>s[0])),o=e._zod.parse;e._zod.parse=(s,i)=>{let a=t(s.value);if(a>n&&!i?.skipChecks&&i?.direction!=="backward"){for(let[c,u]of ep(e._zod.def.checks))if(a>c&&u._zod.def.when(s)){let l=s.issues.length;return u._zod.check(s),s.issues[l].continue=!1,Ca(s.issues,l,e),s}}return o(s,i)}}var aL=(e)=>Array.isArray(e)?e.length:-1;function p_(e,t,r){if(e.issues.length)t.issues.push(...Qt(r,e.issues));t.value[r]=e.value}var ov=O("$ZodArray",(e,t)=>{fe.init(e,t);let r=rt.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),n;n.value=r?r.alloc(e,n,Array(s.length),o):Array(s.length);let i=[],a=o?.abortEarly;for(let c=0;c<s.length;c++){let u=s[c],l=t.element._zod.run({value:u,issues:[]},o);if(l instanceof Promise)i.push(l.then((d)=>p_(d,n,c)));else if(p_(l,n,c),a&&l.issues.length!==0&&Pt(l))break}if(i.length)return Promise.all(i).then(()=>n);return n},iL(e,aL)});function Ka(e,t,r,n,o,s){let i=r in n,a=s==="optional";if(!i&&a&&o==="optional")return;if(e.issues.length){if(o!==void 0&&a&&!i)return;t.issues.push(...Qt(r,e.issues))}if(!i&&o===void 0){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(i||o==="defaulted"&&!a)t.value[r]=void 0}else t.value[r]=e.value}var cL=[];function sv(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:cL,o=n.length?[...t,...n]:t;for(let i of o)if(!e.shape?.[i]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${String(i)}": expected a Zod schema`);let s=Qw(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function iv(e,t,r,n,o,s,i){let a=[],c=o.keySet,u=o.catchall._zod,l=u.def.type,{optin:d,optout:f}=u,m=0;for(let h in t){if(i&&r.issues.length!==m){if(Pt(r,m))break;m=r.issues.length}if(c.has(h))continue;if(h==="__proto__"){if(l==="never")a.push(h);continue}if(l==="never"){a.push(h);continue}let g=u.run({value:t[h],issues:[]},n);if(g instanceof Promise)e.push(g.then((y)=>Ka(y,r,h,t,d,f)));else Ka(g,r,h,t,d,f)}if(a.length)r.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:s,continue:!0});if(!e.length)return r;return Promise.all(e).then(()=>r)}var uL=O("$ZodObject",(e,t)=>{fe.init(e,t);let r=Object.getOwnPropertyDescriptor(t,"shape"),n=r?.get?r.get.raw:t.shape??{};if(n){let u=()=>{let l={...n};return Object.defineProperty(t,"shape",{value:l}),u.raw=l,l};u.raw=n,Object.defineProperty(t,"shape",{get:u})}let o=Es(()=>sv(t));re(e,"propValues",(u)=>{let l=u.def.shape,d={};for(let f in l){let m=l[f]._zod;if(m.values){if(!Object.prototype.hasOwnProperty.call(d,f))bt(d,f,new Set);for(let h of m.values)d[f].add(h);if(m.optin!==void 0)d[f].add(void 0)}}return d});let s=co,i=t.catchall,a,c=rt.memoizer;c?.attach(e),e._zod.parse=(u,l)=>{a??(a=o.value);let d=u.value;if(!s(d))return u.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),u;u.value=c?c.alloc(e,u,{},l):{};let f=[],m=a.shape,h=l?.abortEarly,g=u.issues.length;for(let y of a.allKeys){if(h&&u.issues.length!==g){if(Pt(u,g))break;g=u.issues.length}if(y==="__proto__")continue;let b=m[y],T=b._zod.optin,S=b._zod.optout,I=b._zod.run({value:d[y],issues:[]},l);if(I instanceof Promise)f.push(I.then((_)=>Ka(_,u,y,d,T,S)));else Ka(I,u,y,d,T,S)}if(!i)return f.length?Promise.all(f).then(()=>u):u;return iv(f,d,u,l,o.value,e,h===!0)}}),av=O("$ZodObjectJIT",(e,t)=>{uL.init(e,t);let r=e._zod.parse,n=Es(()=>sv(t)),o=rt.memoizer,s=(m)=>{let h=n.value,g=h.symbolKeys,y=new fp(["payload","ctx"],{shape:m,inst:e,memo:o,syms:g}),b=(_)=>`shape[${_}]._zod.run({ value: input[${_}], issues: [] }, ctx)`,T=(_,v)=>`
|
|
177
177
|
let ${_}_ab = false;
|
|
178
178
|
for (let i = 0; i < ${_}.issues.length; i++) {
|
|
179
179
|
const iss = ${_}.issues[i];
|
|
@@ -184,27 +184,27 @@ ${t.join(`
|
|
|
184
184
|
if (${_}_ab && ctx && ctx.abortEarly) {
|
|
185
185
|
payload.value = newResult;
|
|
186
186
|
return payload;
|
|
187
|
-
}`;y.write("const input = payload.value;");let S=Object.create(null),I=0;for(let _ of h.allKeys)S[_]=`key_${I++}`;y.write(o?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};");for(let _ of h.allKeys){if(_==="__proto__")continue;let v=S[_],
|
|
187
|
+
}`;y.write("const input = payload.value;");let S=Object.create(null),I=0;for(let _ of h.allKeys)S[_]=`key_${I++}`;y.write(o?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};");for(let _ of h.allKeys){if(_==="__proto__")continue;let v=S[_],x=typeof _==="symbol"?`syms[${g.indexOf(_)}]`:Hw(_),A=`${x} in input`,j=m[_],Y=j?._zod?.optin,ie=Y!==void 0,ae=j?._zod?.optout==="optional";if(y.write(`const ${v} = ${b(x)};`),ie&&ae){let Me=Y==="optional"?`${v}_present`:`${v}.value !== undefined || ${v}_present`;y.write(`
|
|
188
188
|
const ${v}_present = ${A};
|
|
189
189
|
if (!${v}.issues.length || ${v}_present) {
|
|
190
|
-
if (${v}.issues.length) {${T(v,
|
|
190
|
+
if (${v}.issues.length) {${T(v,x)}
|
|
191
191
|
}
|
|
192
192
|
|
|
193
|
-
if (${
|
|
194
|
-
newResult[${
|
|
193
|
+
if (${Me}) {
|
|
194
|
+
newResult[${x}] = ${v}.value;
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
|
|
198
198
|
`)}else if(!ie)y.write(`
|
|
199
199
|
const ${v}_present = ${A};
|
|
200
|
-
if (${v}.issues.length) {${T(v,
|
|
200
|
+
if (${v}.issues.length) {${T(v,x)}
|
|
201
201
|
}
|
|
202
202
|
if (!${v}_present && !${v}.issues.length) {
|
|
203
203
|
payload.issues.push({
|
|
204
204
|
code: "invalid_type",
|
|
205
205
|
expected: "nonoptional",
|
|
206
206
|
input: undefined,
|
|
207
|
-
path: [${
|
|
207
|
+
path: [${x}]
|
|
208
208
|
});
|
|
209
209
|
if (ctx && ctx.abortEarly) {
|
|
210
210
|
payload.value = newResult;
|
|
@@ -213,134 +213,134 @@ ${t.join(`
|
|
|
213
213
|
}
|
|
214
214
|
|
|
215
215
|
if (${v}_present) {
|
|
216
|
-
newResult[${
|
|
216
|
+
newResult[${x}] = ${v}.value;
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
`);else if(y.write(`
|
|
220
|
-
if (${v}.issues.length) {${T(v,
|
|
220
|
+
if (${v}.issues.length) {${T(v,x)}
|
|
221
221
|
}
|
|
222
|
-
`),
|
|
222
|
+
`),Y==="defaulted")y.write(`newResult[${x}] = ${v}.value;`);else y.write(`
|
|
223
223
|
if (${v}.value !== undefined || ${A}) {
|
|
224
|
-
newResult[${
|
|
224
|
+
newResult[${x}] = ${v}.value;
|
|
225
225
|
}
|
|
226
|
-
`)}return y.write("payload.value = newResult;"),y.write("return payload;"),y.compile()},i,a=to,c=!tt.jitless,l=c&&xb.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 z_([],g,m,h,f,e,h?.abortEarly===!0)}return r(m,h)}});function Fw(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)=>!Et(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)=>Gt(i,n,at())))}),t}var rp=O("$ZodUnion",(e,t)=>{pe.init(e,t),re(e,"optin",(n)=>n.def.options.some((o)=>o._zod.optin==="defaulted")?"defaulted":n.def.options.some((o)=>o._zod.optin!==void 0)?"optional":void 0),re(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),re(e,"values",(n)=>{if(n.def.options.every((o)=>o._zod.values))return new Set(n.def.options.flatMap((o)=>Array.from(o._zod.values)));return}),re(e,"pattern",(n)=>{if(n.def.options.every((o)=>o._zod.pattern)){let o=n.def.options.map((s)=>s._zod.pattern);return new RegExp(`^(${o.map((s)=>Lr(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 Fw(i,n,e,o);return Promise.all(i).then((a)=>Fw(a,n,e,o))}});function SN(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 L_=O("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,rp.init(e,t);let r=e._zod.parse;re(e,"propValues",(o)=>{let s={},i=0;for(let a of o.def.options){let c=a._zod.propValues;if(!c||Object.keys(c).length===0)throw Error(`Invalid discriminated union option at index "${o.def.options.indexOf(a)}"`);if(c[o.def.discriminator]?.has(void 0))i++;for(let[u,l]of Object.entries(c)){if(!Object.prototype.hasOwnProperty.call(s,u))yt(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=vs(o._zod.def);if(i&&!Object.prototype.hasOwnProperty.call(i,t.discriminator))throw Error(`Invalid discriminated union option at index "${s}"`)});let n=_s(()=>SN(t));e._zod.parse=(o,s)=>{let i=o.value;if(!to(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}}),D_=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])=>Uw(r,c,u));return Uw(r,s,i)}});function Yd(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(Tn(e)&&Tn(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=Yd(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=Yd(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 Uw(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=Yd(t.value,r.value);if(!c.valid){if(Et(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var j_=O("$ZodTuple",(e,t)=>{pe.init(e,t);let r=t.items,n=tt.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=Ww(r,"optin"),u=Ww(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=Et(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(Et(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((T)=>Vw(T,o,m)));else Vw(w,o,m)}}if(a.length)return Promise.all(a).then(()=>Zw(l,o,r,i,u));return Zw(l,o,r,i,u)}});function Ww(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 Vw(e,t,r){if(e.issues.length)t.issues.push(...Ht(r,e.issues));t.value[r]=e.value}function Zw(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(...Ht(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 M_=O("$ZodRecord",(e,t)=>{pe.init(e,t);let r=tt.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Tn(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)=>Gt(h,o,at())),input:l,path:[l],inst:e});continue}let f=d.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[l],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...Ht(l,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Ht(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"&&ro.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)=>Gt(h,o,at())),input:u,path:[u],inst:e});continue}let f=l.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[u],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...Ht(u,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Ht(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 q_=O("$ZodEnum",(e,t)=>{pe.init(e,t);let r=bs(t.entries),n=new Set(r);e._zod.values=n,re(e,"pattern",(o)=>{let s=bs(o.def.entries).filter((i)=>$b.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>_r(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}}),F_=O("$ZodLiteral",(e,t)=>{pe.init(e,t);let r=new Set(t.values);e._zod.values=r,re(e,"pattern",(n)=>{let o=n.def.values;return new RegExp(o.length?`^(${o.map((s)=>typeof s==="string"?_r(s):s?_r(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 U_=O("$ZodTransform",(e,t)=>{pe.init(e,t),e._zod.optin="optional",tt.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Ss(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 Jt;return r.value=o,r}});function Bw(e,t){return e.value=t.issues.length?void 0:t.value,e}var np=O("$ZodOptional",(e,t)=>{pe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Lr(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)=>Bw(r,s));return Bw(r,o)}return t.innerType._zod.run(r,n)}}),W_=O("$ZodExactOptional",(e,t)=>{np.init(e,t),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),V_=O("$ZodNullable",(e,t)=>{pe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Lr(n.source)}|null)$`):void 0}),re(e,"values",(r)=>r.def.innerType._zod.values?new Set([...r.def.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),Z_=O("$ZodDefault",(e,t)=>{pe.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Kw(s,t));return Kw(o,t)}});function Kw(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var B_=O("$ZodPrefault",(e,t)=>{pe.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),K_=O("$ZodNonOptional",(e,t)=>{pe.init(e,t),re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Hw(s,e));return Hw(o,e)}});function Hw(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 Gw(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)=>Gt(o,n,at()))},input:e.value}),e}var H_=O("$ZodCatch",(e,t)=>{pe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>Gw(r,s,t,n));return Gw(r,o,t,n)}});var op=O("$ZodPipe",(e,t)=>{pe.init(e,t),re(e,"values",(r)=>r.def.in._zod.values),re(e,"optin",(r)=>r.def.in._zod.optin),re(e,"optout",(r)=>r.def.out._zod.optout),re(e,"propValues",(r)=>r.def.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=t.out._zod.run(r,n);if(s instanceof Promise)return s.then((i)=>Da(i,t.in,n));return Da(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Da(s,t.out,n));return Da(o,t.out,n)}});function Da(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 G_=O("$ZodPreprocess",(e,t)=>{op.init(e,t)}),J_=O("$ZodReadonly",(e,t)=>{pe.init(e,t),re(e,"propValues",(r)=>r.def.innerType._zod.propValues),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"optin",(r)=>r.def.innerType?._zod?.optin),re(e,"optout",(r)=>r.def.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(Jw);return Jw(o)}});function Jw(e){if(!e.memo)e.value=Object.freeze(e.value);return e}function kN(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 _w({minimum:o,maximum:s}).source;let i=e._zod.pattern;return(n&&i===ro?Na:i)?.source}function Xd(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=Xd(n);if(r&&o&&s&&s!==o)return r.replace(Lr(o),()=>Lr(s));return r}if(t.options){let o=t.options.map(Xd);if(o.every(Boolean))return`^(${o.map((s)=>Lr(s)).join("|")})$`}return kN(e)}var Y_=O("$ZodTemplateLiteral",(e,t)=>{pe.init(e,t);let r=[];for(let n of t.parts)if(typeof n==="object"&&n!==null){let o=Xd(n);if(!o)throw Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);r.push(Lr(o))}else if(n===null||Eb.has(typeof n))r.push(_r(`${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),wb(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),re(e,"pattern",(r)=>r.innerType?._zod?.pattern),re(e,"propValues",(r)=>r.innerType?._zod?.propValues),re(e,"optin",(r)=>r.innerType?._zod?.optin??void 0),re(e,"optout",(r)=>r.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),Q_=O("$ZodCustom",(e,t)=>{Ke.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)=>Yw(s,r,n,e));Yw(o,r,n,e);return}});function Yw(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(On(o))}}class tv extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var ip="~memo",ev=[];function rv(e){return e!==null&&typeof e==="object"}function sp(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var nv=new WeakMap,$s=0,Va=1,Es=2;function Za(e,t,r){let n=nv.get(e);if(n!==void 0)return n?Es:$s;if(t.has(e))return Es;t.add(e);let o=$s,s=(l)=>{if(o!==Es&&l?._zod){let d=Za(l,t,r);if(d>o)o=d}},i=(l,d)=>{let f=$s;for(let m of Reflect.ownKeys(l)){let h=Object.getOwnPropertyDescriptor(l,m);if(d&&!h.enumerable)continue;let g=h.get?Va:h.value?._zod?Za(h.value,t,r):$s;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=vs(c);a(l?i(l,!0):Va),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?Za(l,t,!1):Va);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),xN(e,o)}function xN(e,t){if(t!==Va)nv.set(e,t===Es);return t}function $N(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Ua,Wa=[],EN={alloc(e,t,r){let n=Ua;if(!n)return r;Ua=void 0;let o={value:r,issues:null};return n.set(t.value,o),Wa.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"&&TN(s,o.value))throw new tv;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=Za(e,new Set,!1);if(w===$s){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(w===Es||n)r=!0;else n=!0}let l=c.value;if(!rv(l))return i(c,u);let d=u[ip];if(!d)d={buckets:new WeakMap,backEdges:void 0},u[ip]=d;let f;if(o===u)f=s;else f=$N(d,e),o=u,s=f;let m=f.get(l);if(m){if(c.value=m.value,m.issues){if(m.issues.length)c.issues.push(...sp(m.issues))}else c.memo=!0,d.backEdges??(d.backEdges=new WeakSet),d.backEdges.add(m.value);return c}Ua=f;let h=Wa.length,g=i(c,u);Ua=void 0;let y=Wa.length>h?Wa.pop():void 0;if(g instanceof Promise)return g.then((w)=>{if(y)y.issues=w.issues.length?sp(w.issues):ev;return w});if(y)y.issues=g.issues.length?sp(g.issues):ev;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function ap(){return EN}function TN(e,t){let r=e[ip]?.backEdges;return r!==void 0&&rv(t)&&r.has(t)}var ON=()=>{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=Ab(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 ${Nd(s.values[0])}`;return`Invalid option: expected one of ${Rd(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":""}: ${Rd(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 cp(){return{localeError:ON()}}var ov;class sv{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 iv(){return new sv}(ov=globalThis).__zod_globalRegistry??(ov.__zod_globalRegistry=iv());var Dr=globalThis.__zod_globalRegistry;function up(e){if(e.checks)e.checks=[...e.checks];return e}function av(e,t){return new e(up({type:"string",...U(t)}))}function cv(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...U(t)})}function uv(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...U(t)})}function lv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...U(t)})}function dv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...U(t)})}function pv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...U(t)})}function fv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...U(t)})}function lp(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...U(t)})}function mv(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...U(t)})}function hv(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...U(t)})}function gv(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...U(t)})}function yv(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...U(t)})}function bv(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...U(t)})}function wv(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...U(t)})}function _v(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...U(t)})}function vv(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...U(t)})}function Sv(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...U(t)})}function kv(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...U(t)})}function xv(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...U(t)})}function $v(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...U(t)})}function Ev(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...U(t)})}function Tv(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...U(t)})}function Ov(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...U(t)})}function Ba(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...U(t)})}function Ka(e,t){return new e({type:"string",format:"date",check:"string_format",...U(t)})}function Ha(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...U(t)})}function Ga(e,t){return new e({type:"string",format:"duration",check:"string_format",...U(t)})}function Pv(e,t){return new e(up({type:"number",checks:[],...U(t)}))}function Iv(e,t){return new e(up({type:"number",coerce:!0,checks:[],...U(t)}))}function Av(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...U(t)})}function Rv(e,t){return new e({type:"boolean",...U(t)})}function Cv(e,t){return new e({type:"null",...U(t)})}function zv(e){return new e({type:"any"})}function Nv(e){return new e({type:"unknown"})}function Lv(e,t){return new e({type:"never",...U(t)})}function Ja(e,t){return new Hd({check:"less_than",...U(t),value:e,inclusive:!1})}function Ts(e,t){return new Hd({check:"less_than",...U(t),value:e,inclusive:!0})}function Ya(e,t){return new Gd({check:"greater_than",...U(t),value:e,inclusive:!1})}function Os(e,t){return new Gd({check:"greater_than",...U(t),value:e,inclusive:!0})}function Xa(e,t){return new $w({check:"multiple_of",...U(t),value:e})}function Qa(e,t){return new Tw({check:"max_length",...U(t),maximum:e})}function oo(e,t){return new Ow({check:"min_length",...U(t),minimum:e})}function ec(e,t){return new Pw({check:"length_equals",...U(t),length:e})}function dp(e,t){return new Iw({check:"string_format",format:"regex",...U(t),pattern:e})}function pp(e){return new Aw({check:"string_format",format:"lowercase",...U(e)})}function fp(e){return new Rw({check:"string_format",format:"uppercase",...U(e)})}function mp(e,t){return new Cw({check:"string_format",format:"includes",...U(t),includes:e})}function hp(e,t){return new zw({check:"string_format",format:"starts_with",...U(t),prefix:e})}function gp(e,t){return new Nw({check:"string_format",format:"ends_with",...U(t),suffix:e})}function jr(e){return new Lw({check:"overwrite",tx:e})}function yp(e){return jr((t)=>t.normalize(e))}function bp(){return jr((e)=>e.trim())}function wp(){return jr((e)=>e.toLowerCase())}function _p(){return jr((e)=>e.toUpperCase())}function vp(){return jr((e)=>kb(e))}function Dv(e,t,r){return new e({type:"array",element:t,...U(r)})}function jv(e,t,r){let n=U(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Mv(e,t,r){return new e({type:"custom",check:"custom",fn:t,...U(r)})}function qv(e,t){let r=PN((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(On(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(On(s))}},e(n.value,n)),t);return r}function PN(e,t){let r=new Ke({check:"custom",...U(t)});return r._zod.check=e,r}function Ps(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 As(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??Dr,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 Ue(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)Ps(i.schema,c);if(t.io==="input"&&rt(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 Fv(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Rs(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}/${Fv(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+Fv(l)}},s=(i)=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);if(a.def={...a.schema},u)a.defId=u;let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(e.cycles==="throw")for(let i of e.seen.entries()){let a=i[1];if(a.cycle)throw Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
|
|
226
|
+
`)}return y.write("payload.value = newResult;"),y.write("return payload;"),y.compile()},i,a=co,c=!rt.jitless,l=c&&Jw.value,d=t.catchall,f;e._zod.parse=(m,h)=>{f??(f=n.value);let g=m.value;if(!a(g))return m.issues.push({expected:"object",code:"invalid_type",input:g,inst:e}),m;if(c&&l&&h?.async===!1&&h.jitless!==!0){if(!i)i=s(t.shape);if(m=i(m,h),!d)return m;return iv([],g,m,h,f,e,h?.abortEarly===!0)}return r(m,h)}});function f_(e,t,r,n){for(let s of e)if(s.issues.length===0)return t.value=s.value,t;let o=e.filter((s)=>!Pt(s));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((s)=>s.issues.map((i)=>er(i,n,at())))}),t}var bp=O("$ZodUnion",(e,t)=>{fe.init(e,t),re(e,"optin",(n)=>n.def.options.some((o)=>o._zod.optin==="defaulted")?"defaulted":n.def.options.some((o)=>o._zod.optin!==void 0)?"optional":void 0),re(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),re(e,"values",(n)=>{if(n.def.options.every((o)=>o._zod.values))return new Set(n.def.options.flatMap((o)=>Array.from(o._zod.values)));return}),re(e,"pattern",(n)=>{if(n.def.options.every((o)=>o._zod.pattern)){let o=n.def.options.map((s)=>s._zod.pattern);return new RegExp(`^(${o.map((s)=>Fr(s.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(n,o)=>{if(r)return r(n,o);let s=!1,i=[];for(let a of t.options){let c=a._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)i.push(c),s=!0;else{if(c.issues.length===0)return c;i.push(c)}}if(!s)return f_(i,n,e,o);return Promise.all(i).then((a)=>f_(a,n,e,o))}});function lL(e){let t=new Map;for(let r of e.options){let n=r._zod.propValues?.[e.discriminator];if(!n||n.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(r)}"`);for(let o of n)if(t.has(o)){if(o!==void 0)throw Error(`Duplicate discriminator value "${String(o)}"`);t.set(o,null)}else t.set(o,r)}return t}var cv=O("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,bp.init(e,t);let r=e._zod.parse;re(e,"propValues",(o)=>{let s={},i=0;for(let a of o.def.options){let c=a._zod.propValues;if(!c||Object.keys(c).length===0)throw Error(`Invalid discriminated union option at index "${o.def.options.indexOf(a)}"`);if(c[o.def.discriminator]?.has(void 0))i++;for(let[u,l]of Object.entries(c)){if(!Object.prototype.hasOwnProperty.call(s,u))bt(s,u,new Set);for(let d of l)s[u].add(d)}}if(!o.def.unionFallback&&i>1)s[o.def.discriminator]?.delete(void 0);return s}),t.options.forEach((o,s)=>{let i=Ps(o._zod.def);if(i&&!Object.prototype.hasOwnProperty.call(i,t.discriminator))throw Error(`Invalid discriminated union option at index "${s}"`)});let n=Es(()=>lL(t));e._zod.parse=(o,s)=>{let i=o.value;if(!co(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),o;let a=i?.[t.discriminator],c=n.value.get(a);if(c&&(a!==void 0||s.direction!=="backward"))return c._zod.run(o,s);if(t.unionFallback||s.direction==="backward")return r(o,s);return o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(n.value.keys()).filter((u)=>n.value.get(u)!==null),input:i,path:[t.discriminator],inst:e}),o}}),uv=O("$ZodIntersection",(e,t)=>{fe.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,s=t.left._zod.run({value:o,issues:[]},n),i=t.right._zod.run({value:o,issues:[]},n);if(s instanceof Promise||i instanceof Promise)return Promise.all([s,i]).then(([c,u])=>m_(r,c,u));return m_(r,s,i)}});function mp(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Rn(e)&&Rn(t)){let r=Object.keys(t),n=Object.keys(e).filter((s)=>r.indexOf(s)!==-1),o={...e,...t};if(Object.prototype.hasOwnProperty.call(o,"__proto__"))delete o.__proto__;for(let s of n){if(s==="__proto__")continue;let i=mp(e[s],t[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],s=t[n],i=mp(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function m_(e,t,r){let n=new Map,o,s=new Map,i=(u,l)=>{let d;if(u.code==="unrecognized_keys"&&!u.path?.length)o??(o=u),d=u.keys;else if(u.code==="invalid_key"&&u.origin==="record"&&u.path?.length===1){let f=String(u.path[0]);if(!s.has(f))s.set(f,u);d=[f]}else return!1;for(let f of d){if(!n.has(f))n.set(f,{});n.get(f)[l]=!0}return!0};for(let u of t.issues)if(!i(u,"l"))e.issues.push(u);for(let u of r.issues)if(!i(u,"r"))e.issues.push(u);let a=[...n].filter(([,u])=>u.l&&u.r).map(([u])=>u);if(a.length){let u=o?a.filter((l)=>o.keys.includes(l)):[];if(u.length)e.issues.push({...o,keys:u});for(let l of a)if(!u.includes(l)&&s.has(l))e.issues.push(s.get(l))}let c=mp(t.value,r.value);if(!c.valid){if(Pt(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var lv=O("$ZodTuple",(e,t)=>{fe.init(e,t);let r=t.items,n=rt.memoizer;n?.attach(e),e._zod.parse=(o,s)=>{let i=o.value;if(!Array.isArray(i))return o.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),o;o.value=n?n.alloc(e,o,[],s):[];let a=[],c=h_(r,"optin"),u=h_(r,"optout");if(!t.rest){if(i.length<c)return o.issues.push({code:"too_small",minimum:c,inclusive:!0,input:i,inst:e,origin:"array"}),o;if(i.length>r.length)o.issues.push({code:"too_big",maximum:r.length,inclusive:!0,input:i,inst:e,origin:"array"})}let l=Array(r.length),d=t.rest?s?.abortEarly:void 0,f=!1;for(let m=0;m<r.length;m++){let h=r[m]._zod.run({value:i[m],issues:[]},s);if(h instanceof Promise)a.push(h.then((g)=>{l[m]=g}));else if(l[m]=h,d&&!f&&h.issues.length)f=Pt(h)}if(t.rest&&!f){let m=r.length-1,h=i.slice(r.length),g=o.issues.length;for(let y of h){if(d&&o.issues.length!==g){if(Pt(o,g))break;g=o.issues.length}m++;let b=t.rest._zod.run({value:y,issues:[]},s);if(b instanceof Promise)a.push(b.then((T)=>g_(T,o,m)));else g_(b,o,m)}}if(a.length)return Promise.all(a).then(()=>y_(l,o,r,i,u));return y_(l,o,r,i,u)}});function h_(e,t){for(let r=e.length-1;r>=0;r--)if(!(t==="optin"?e[r]._zod.optin!==void 0:e[r]._zod.optout==="optional"))return r+1;return 0}function g_(e,t,r){if(e.issues.length)t.issues.push(...Qt(r,e.issues));t.value[r]=e.value}function y_(e,t,r,n,o){for(let s=0;s<r.length;s++){let i=e[s],a=s<n.length;if(!a&&s>=o&&r[s]._zod.optin==="optional"){t.value.length=s;break}if(i.issues.length){if(!a&&s>=o){t.value.length=s;break}t.issues.push(...Qt(s,i.issues))}t.value[s]=i.value}for(let s=t.value.length-1;s>=n.length;s--)if(r[s]._zod.optout==="optional"&&t.value[s]===void 0)t.value.length=s;else break;return t}var dv=O("$ZodRecord",(e,t)=>{fe.init(e,t);let r=rt.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Rn(s))return n.issues.push({expected:"record",code:"invalid_type",input:s,inst:e}),n;let i=[],a=t.keyType._zod.values;if(a&&!t.partial){n.value=r?r.alloc(e,n,{},o):{};let c=new Set;for(let l of a)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){if(c.add(typeof l==="number"?l.toString():l),l==="__proto__")continue;let d=t.keyType._zod.run({value:l,issues:[]},o);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((h)=>er(h,o,at())),input:l,path:[l],inst:e});continue}let f=d.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[l],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...Qt(l,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Qt(l,m.issues));n.value[f]=m.value}}let u;for(let l in s)if(!c.has(l))if(t.mode==="loose"){if(l==="__proto__")continue;n.value[l]=s[l]}else u=u??[],u.push(l);if(u&&u.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:u,continue:!0})}else{n.value=r?r.alloc(e,n,{},o):{};let c;for(let u of Reflect.ownKeys(s)){if(u==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(s,u))continue;let l=t.keyType._zod.run({value:u,issues:[]},o);if(l instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof u==="string"&&uo.test(u)&&l.issues.length){let h=t.keyType._zod.run({value:Number(u),issues:[]},o);if(h instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(h.issues.length===0)l=h}if(l.issues.length){if(t.mode==="loose")n.value[u]=s[u];else if(a)c=c??[],c.push(u);else n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map((h)=>er(h,o,at())),input:u,path:[u],inst:e});continue}let f=l.value;if(f==="__proto__")continue;let m=t.valueType._zod.run({value:s[u],issues:[]},o);if(m instanceof Promise)i.push(m.then((h)=>{if(h.issues.length)n.issues.push(...Qt(u,h.issues));n.value[f]=h.value}));else{if(m.issues.length)n.issues.push(...Qt(u,m.issues));n.value[f]=m.value}}if(c&&c.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:c,continue:!0})}if(i.length)return Promise.all(i).then(()=>n);return n}});var pv=O("$ZodEnum",(e,t)=>{fe.init(e,t);let r=$s(t.entries),n=new Set(r);e._zod.values=n,re(e,"pattern",(o)=>{let s=$s(o.def.entries).filter((i)=>Yw.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>Tr(i.toString())).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(o,s)=>{let i=o.value;if(n.has(i))return o;return o.issues.push({code:"invalid_value",values:r,input:i,inst:e}),o}}),fv=O("$ZodLiteral",(e,t)=>{fe.init(e,t);let r=new Set(t.values);e._zod.values=r,re(e,"pattern",(n)=>{let o=n.def.values;return new RegExp(o.length?`^(${o.map((s)=>typeof s==="string"?Tr(s):s?Tr(s.toString()):String(s)).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(n,o)=>{let s=n.value;if(r.has(s))return n;return n.issues.push({code:"invalid_value",values:t.values,input:s,inst:e}),n}});var mv=O("$ZodTransform",(e,t)=>{fe.init(e,t),e._zod.optin="optional",rt.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Os(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then((i)=>(r.value=i,r));if(o instanceof Promise)throw new tr;return r.value=o,r}});function w_(e,t){return e.value=t.issues.length?void 0:t.value,e}var _p=O("$ZodOptional",(e,t)=>{fe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Fr(n.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(r.value===void 0){if(t.innerType._zod.optin!=="defaulted")return r;let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>w_(r,s));return w_(r,o)}return t.innerType._zod.run(r,n)}}),hv=O("$ZodExactOptional",(e,t)=>{_p.init(e,t),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),gv=O("$ZodNullable",(e,t)=>{fe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${Fr(n.source)}|null)$`):void 0}),re(e,"values",(r)=>r.def.innerType._zod.values?new Set([...r.def.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),yv=O("$ZodDefault",(e,t)=>{fe.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>b_(s,t));return b_(o,t)}});function b_(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var wv=O("$ZodPrefault",(e,t)=>{fe.init(e,t),e._zod.optin="defaulted",re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),bv=O("$ZodNonOptional",(e,t)=>{fe.init(e,t),re(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>__(s,e));return __(o,e)}});function __(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}function v_(e,t,r,n){if(!t.issues.length){if(e.value=t.value,t.memo)e.memo=!0;return e}return e.value=r.catchValue({...t,value:e.value,error:{issues:t.issues.map((o)=>er(o,n,at()))},input:e.value}),e}var _v=O("$ZodCatch",(e,t)=>{fe.init(e,t),re(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),re(e,"optout",(r)=>r.def.innerType._zod.optout),re(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>v_(r,s,t,n));return v_(r,o,t,n)}});var vp=O("$ZodPipe",(e,t)=>{fe.init(e,t),re(e,"values",(r)=>r.def.in._zod.values),re(e,"optin",(r)=>r.def.in._zod.optin),re(e,"optout",(r)=>r.def.out._zod.optout),re(e,"propValues",(r)=>r.def.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=t.out._zod.run(r,n);if(s instanceof Promise)return s.then((i)=>Za(i,t.in,n));return Za(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Za(s,t.out,n));return Za(o,t.out,n)}});function Za(e,t,r){if(e.issues.some((n)=>n.code!=="unrecognized_keys"))return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues},r)}var vv=O("$ZodPreprocess",(e,t)=>{vp.init(e,t)}),Sv=O("$ZodReadonly",(e,t)=>{fe.init(e,t),re(e,"propValues",(r)=>r.def.innerType._zod.propValues),re(e,"values",(r)=>r.def.innerType._zod.values),re(e,"optin",(r)=>r.def.innerType?._zod?.optin),re(e,"optout",(r)=>r.def.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(S_);return S_(o)}});function S_(e){if(!e.memo)e.value=Object.freeze(e.value);return e}function dL(e){let t=e._zod.def,r=t.pattern,n=!!t.format?.includes("int"),o,s;for(let a of t.checks??[]){let c=a._zod.def;if(c.pattern)r=c.pattern;n||(n=!!c.format?.includes("int"));let u=c.minimum??c.length,l=c.maximum??c.length;if(u!==void 0&&(o===void 0||u>o))o=u;if(l!==void 0&&(s===void 0||l<s))s=l}if(r)return r.source;if(o!==void 0&&s!==void 0&&o>s)return"(?!)";if(o!==void 0||s!==void 0)return Bb({minimum:o,maximum:s}).source;let i=e._zod.pattern;return(n&&i===uo?Wa:i)?.source}function hp(e){let t=e._zod.def,r=e._zod.pattern?.source,n=t.innerType??e._zod.innerType;if(n){let o=n._zod.pattern?.source,s=hp(n);if(r&&o&&s&&s!==o)return r.replace(Fr(o),()=>Fr(s));return r}if(t.options){let o=t.options.map(hp);if(o.every(Boolean))return`^(${o.map((s)=>Fr(s)).join("|")})$`}return dL(e)}var kv=O("$ZodTemplateLiteral",(e,t)=>{fe.init(e,t);let r=[];for(let n of t.parts)if(typeof n==="object"&&n!==null){let o=hp(n);if(!o)throw Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);r.push(Fr(o))}else if(n===null||Xw.has(typeof n))r.push(Tr(`${n}`));else throw Error(`Invalid template literal part: ${n}`);e._zod.pattern=new RegExp(`^${r.join("")}$`),e._zod.parse=(n,o)=>{if(typeof n.value!=="string")return n.issues.push({input:n.value,inst:e,expected:"string",code:"invalid_type"}),n;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(n.value))return n.issues.push({input:n.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),n;return n}});var xv=O("$ZodLazy",(e,t)=>{fe.init(e,t),Zw(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),re(e,"pattern",(r)=>r.innerType?._zod?.pattern),re(e,"propValues",(r)=>r.innerType?._zod?.propValues),re(e,"optin",(r)=>r.innerType?._zod?.optin??void 0),re(e,"optout",(r)=>r.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),$v=O("$ZodCustom",(e,t)=>{He.init(e,t),fe.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=(r)=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then((s)=>k_(s,r,n,e));k_(o,r,n,e);return}});function k_(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};if(n._zod.def.params)o.params=n._zod.def.params;t.issues.push(Cn(o))}}class Ev extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var kp="~memo",Tv=[];function Pv(e){return e!==null&&typeof e==="object"}function Sp(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var Ov=new WeakMap,Rs=0,Xa=1,Cs=2;function Qa(e,t,r){let n=Ov.get(e);if(n!==void 0)return n?Cs:Rs;if(t.has(e))return Cs;t.add(e);let o=Rs,s=(l)=>{if(o!==Cs&&l?._zod){let d=Qa(l,t,r);if(d>o)o=d}},i=(l,d)=>{let f=Rs;for(let m of Reflect.ownKeys(l)){let h=Object.getOwnPropertyDescriptor(l,m);if(d&&!h.enumerable)continue;let g=h.get?Xa:h.value?._zod?Qa(h.value,t,r):Rs;if(g>f)f=g}return f},a=(l)=>{if(l>o)o=l},c=e._zod.def,u=c.type;switch(u){case"object":{let l=Ps(c);a(l?i(l,!0):Xa),s(c.catchall);break}case"array":s(c.element);break;case"tuple":for(let l of c.items)s(l);s(c.rest);break;case"record":case"map":s(c.keyType),s(c.valueType);break;case"set":s(c.valueType);break;case"union":for(let l of c.options)s(l);break;case"intersection":s(c.left),s(c.right);break;case"optional":case"nullable":case"default":case"prefault":case"catch":case"readonly":case"nonoptional":case"promise":case"success":s(c.innerType);break;case"pipe":s(c.in),s(c.out);break;case"function":s(c.input),s(c.output);break;case"lazy":{let l=c._cachedInner??(r?e._zod.innerType:void 0);a(l?Qa(l,t,!1):Xa);break}case"template_literal":case"string":case"number":case"int":case"boolean":case"bigint":case"symbol":case"undefined":case"null":case"void":case"never":case"any":case"unknown":case"date":case"nan":case"enum":case"literal":case"file":case"transform":case"custom":break;default:for(let l in c){let d=Object.getOwnPropertyDescriptor(c,l);if(!d||d.get)continue;let f=d.value;if(!f||typeof f!=="object")continue;if(f._zod)s(f);else if(Array.isArray(f))for(let m of f)s(m)}}return t.delete(e),pL(e,o)}function pL(e,t){if(t!==Xa)Ov.set(e,t===Cs);return t}function fL(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Ja,Ya=[],mL={alloc(e,t,r){let n=Ja;if(!n)return r;Ja=void 0;let o={value:r,issues:null};return n.set(t.value,o),Ya.push(o),r},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let r=e._zod.parse,n=(o,s)=>{if(s.direction!=="backward"&&hL(s,o.value))throw new Ev;return r(o,s)};if(e._zod.parse=n,e._zod.run===r)e._zod.run=n})},attach(e){var t;let r,n=!1,o,s;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let i=e._zod.parse,a=(c,u)=>{if(r===void 0){let b=Qa(e,new Set,!1);if(b===Rs){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(b===Cs||n)r=!0;else n=!0}let l=c.value;if(!Pv(l))return i(c,u);let d=u[kp];if(!d)d={buckets:new WeakMap,backEdges:void 0},u[kp]=d;let f;if(o===u)f=s;else f=fL(d,e),o=u,s=f;let m=f.get(l);if(m){if(c.value=m.value,m.issues){if(m.issues.length)c.issues.push(...Sp(m.issues))}else c.memo=!0,d.backEdges??(d.backEdges=new WeakSet),d.backEdges.add(m.value);return c}Ja=f;let h=Ya.length,g=i(c,u);Ja=void 0;let y=Ya.length>h?Ya.pop():void 0;if(g instanceof Promise)return g.then((b)=>{if(y)y.issues=b.issues.length?Sp(b.issues):Tv;return b});if(y)y.issues=g.issues.length?Sp(g.issues):Tv;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function xp(){return mL}function hL(e,t){let r=e[kp]?.backEdges;return r!==void 0&&Pv(t)&&r.has(t)}var gL=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(s){return e[s]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",currency_code:"currency code",credit_card:"credit card number",iban:"IBAN",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};function o(s,i){if(s==="number"&&typeof i==="number"&&!Number.isFinite(i))return String(i);return n[s]??s}return(s)=>{switch(s.code){case"invalid_type":{let i=o(s.expected),a=nb(s.input),c=o(a,s.input);return`Invalid input: expected ${i}, received ${c}`}case"invalid_value":if(s.values.length===1)return`Invalid input: expected ${Xd(s.values[0])}`;return`Invalid option: expected one of ${Gd(s.values,"|")}`;case"too_big":{let i=s.exact?"exactly ":s.inclusive?"<=":"<",a=t(s.origin);if(a)return`Too big: expected ${s.origin??"value"} to have ${i}${s.maximum.toString()} ${a.unit??"elements"}`;return`Too big: expected ${s.origin??"value"} to be ${i}${s.maximum.toString()}`}case"too_small":{let i=s.exact?"exactly ":s.inclusive?">=":">",a=t(s.origin);if(a)return`Too small: expected ${s.origin} to have ${i}${s.minimum.toString()} ${a.unit}`;return`Too small: expected ${s.origin} to be ${i}${s.minimum.toString()}`}case"invalid_format":{let i=s;if(i.format==="starts_with")return`Invalid string: must start with "${i.prefix}"`;if(i.format==="ends_with")return`Invalid string: must end with "${i.suffix}"`;if(i.format==="includes")return`Invalid string: must include "${i.includes}"`;if(i.format==="regex")return`Invalid string: must match pattern ${i.pattern}`;return`Invalid ${r[i.format]??s.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${s.divisor}`;case"unrecognized_keys":return`Unrecognized key${s.keys.length>1?"s":""}: ${Gd(s.keys,", ")}`;case"invalid_key":return`Invalid key in ${s.origin}`;case"invalid_union":if(s.options&&Array.isArray(s.options)&&s.options.length>0)return`Invalid discriminator value. Expected ${s.options.map((a)=>`'${a}'`).join(" | ")}`;if(s.inclusive===!1)return"Invalid input: more than one option matched";return"Invalid input";case"invalid_element":return`Invalid value in ${s.origin}`;default:return"Invalid input"}}};function $p(){return{localeError:gL()}}var Iv;class Av{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let n={...r,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Rv(){return new Av}(Iv=globalThis).__zod_globalRegistry??(Iv.__zod_globalRegistry=Rv());var Ur=globalThis.__zod_globalRegistry;function Tp(e){if(e.checks)e.checks=[...e.checks];return e}function Cv(e,t){return new e(Tp({type:"string",...U(t)}))}function zv(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...U(t)})}function Nv(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...U(t)})}function Lv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...U(t)})}function jv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...U(t)})}function Dv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...U(t)})}function Mv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...U(t)})}function Ep(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...U(t)})}function qv(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...U(t)})}function Fv(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...U(t)})}function Uv(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...U(t)})}function Wv(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...U(t)})}function Vv(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...U(t)})}function Zv(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...U(t)})}function Bv(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...U(t)})}function Kv(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...U(t)})}function Hv(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...U(t)})}function Gv(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...U(t)})}function Jv(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...U(t)})}function Yv(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...U(t)})}function Xv(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...U(t)})}function Qv(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...U(t)})}function eS(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...U(t)})}function ec(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...U(t)})}function tc(e,t){return new e({type:"string",format:"date",check:"string_format",...U(t)})}function rc(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...U(t)})}function nc(e,t){return new e({type:"string",format:"duration",check:"string_format",...U(t)})}function tS(e,t){return new e(Tp({type:"number",checks:[],...U(t)}))}function rS(e,t){return new e(Tp({type:"number",coerce:!0,checks:[],...U(t)}))}function nS(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...U(t)})}function oS(e,t){return new e({type:"boolean",...U(t)})}function sS(e,t){return new e({type:"null",...U(t)})}function iS(e){return new e({type:"any"})}function aS(e){return new e({type:"unknown"})}function cS(e,t){return new e({type:"never",...U(t)})}function oc(e,t){return new dp({check:"less_than",...U(t),value:e,inclusive:!1})}function zs(e,t){return new dp({check:"less_than",...U(t),value:e,inclusive:!0})}function sc(e,t){return new pp({check:"greater_than",...U(t),value:e,inclusive:!1})}function Ns(e,t){return new pp({check:"greater_than",...U(t),value:e,inclusive:!0})}function ic(e,t){return new Yb({check:"multiple_of",...U(t),value:e})}function ac(e,t){return new Qb({check:"max_length",...U(t),maximum:e})}function po(e,t){return new e_({check:"min_length",...U(t),minimum:e})}function cc(e,t){return new t_({check:"length_equals",...U(t),length:e})}function Pp(e,t){return new r_({check:"string_format",format:"regex",...U(t),pattern:e})}function Op(e){return new n_({check:"string_format",format:"lowercase",...U(e)})}function Ip(e){return new o_({check:"string_format",format:"uppercase",...U(e)})}function Ap(e,t){return new s_({check:"string_format",format:"includes",...U(t),includes:e})}function Rp(e,t){return new i_({check:"string_format",format:"starts_with",...U(t),prefix:e})}function Cp(e,t){return new a_({check:"string_format",format:"ends_with",...U(t),suffix:e})}function Wr(e){return new c_({check:"overwrite",tx:e})}function zp(e){return Wr((t)=>t.normalize(e))}function Np(){return Wr((e)=>e.trim())}function Lp(){return Wr((e)=>e.toLowerCase())}function jp(){return Wr((e)=>e.toUpperCase())}function Dp(){return Wr((e)=>Gw(e))}function uS(e,t,r){return new e({type:"array",element:t,...U(r)})}function lS(e,t,r){let n=U(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function dS(e,t,r){return new e({type:"custom",check:"custom",fn:t,...U(r)})}function pS(e,t){let r=yL((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(Cn(o,n.value,r._zod.def));else{let s=o;if(s.fatal)s.continue=!1;if(s.code??(s.code="custom"),!("input"in s))s.input=n.value;s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(Cn(s))}},e(n.value,n)),t);return r}function yL(e,t){let r=new He({check:"custom",...U(t)});return r._zod.check=e,r}function Ls(e,...t){for(let r of t)for(let n of Reflect.ownKeys(r))if(Object.prototype.propertyIsEnumerable.call(r,n))bt(e,n,r[n]);return e}function Ds(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??Ur,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??"ref",reused:e?.reused??"inline",intersections:[],deferred:[],external:e?.external??void 0}}function Ve(e,t,r,n,o){let s=typeof t.unrepresentable==="function"?t.unrepresentable({zodSchema:e,path:n.path,message:o}):t.unrepresentable;if(s==="any")return!1;if(s===void 0||s==="throw")throw Error(o);return Object.assign(r,s),!0}function _e(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s=t.seen.get(e);if(s){if(s.count++,r.schemaPath.includes(e))s.cycle=r.path;return s.schema}let i={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,i),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let a=e._zod.toJSONSchema?.();if(a)i.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,i.schema,l);else{let f=i.schema,m=t.processors[o.type];if(!m)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,f,l)}let d=e._zod.parent;if(d){if(!i.ref)i.ref=d;_e(d,t,l),t.seen.get(d).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)Ls(i.schema,c);if(t.io==="input"&&nt(e))delete i.schema.examples,delete i.schema.default;if(t.io==="input"&&"_prefault"in i.schema)(n=i.schema).default??(n.default=i.schema._prefault);return delete i.schema._prefault,t.seen.get(e).schema}function fS(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Ms(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");if(e.external&&e.sharedDefsExtractedFor===e.external)return;let n=new Map;for(let i of e.seen.entries()){let a=e.metadataRegistry.get(i[0])?.id;if(a){let c=n.get(a);if(c&&c!==i[0])throw Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,i[0])}}let o=(i)=>{let a=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let d=e.external.registry.get(i[0])?.id,f=e.external.uri??((h)=>h);if(d)return{ref:f(d)};let m=i[1].defId??i[1].schema.id??`schema${e.counter++}`;return i[1].defId=m,{defId:m,ref:`${f("__shared")}#/${a}/${fS(m)}`}}let c="#",u=`${c}/${a}/`;if(i[1]===r&&!i[1].schema.id)return{ref:c};let l=i[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:u+fS(l)}},s=(i)=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);if(a.def={...a.schema},u)a.defId=u;let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(e.cycles==="throw")for(let i of e.seen.entries()){let a=i[1];if(a.cycle)throw Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
|
|
227
227
|
|
|
228
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of e.seen.entries()){let a=i[1];if(t===i[0]){s(i);continue}if(e.external){let u=e.external.registry.get(i[0])?.id;if(t!==i[0]&&u){s(i);continue}}if(e.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1){if(e.reused==="ref")s(i)}}if(e.external)e.sharedDefsExtractedFor=e.external}function Vv(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let r=[];for(let n of t){if(!n||typeof n!=="object")return;Vv(n);let o=Object.keys(n);if(o.length!==1||o[0]!=="type")return;let s=n.type;for(let i of Array.isArray(s)?s:[s]){if(typeof i!=="string")return;if(!r.includes(i))r.push(i)}}delete e.anyOf,e.type=r.length===1?r[0]:r}var Zv=new Set(["type","properties","required","additionalProperties"]),Uv=["oneOf","anyOf"];function Wv(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 Sp(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!Zv.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]??Wv(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]:Sp(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=Wv(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 IN(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of Zv)if(o in e)return;let r=t.filter((o)=>Uv.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=Sp(t);else{let o=r[0],s=Uv.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)=>Sp([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,Ps(e,n)}function Cs(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 Ps(u,h);if(Ps(u,l),a._zod.parent===d)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(!(y in l))delete u[y]}if(h.$ref&&m.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in m.def&&JSON.stringify(u[y])===JSON.stringify(m.def[y]))delete u[y]}}let f=a._zod.parent;if(f&&f!==d){n(f);let m=e.seen.get(f);if(m?.schema.$ref){if(u.$ref=m.schema.$ref,m.def)for(let h in u){if(h==="$ref"||h==="allOf")continue;if(h in m.def&&JSON.stringify(u[h])===JSON.stringify(m.def[h]))delete u[h]}}}e.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let a of[...e.seen.entries()].reverse())n(a[0]);if(e.target!=="openapi-3.0")for(let a of e.seen.entries())Vv(a[1].def??a[1].schema);for(let a of e.deferred)a();if(e.intersections.length){let a=new Map;for(let c of e.seen.values())for(let u of[c.schema,c.def]){let l=u?.allOf;if(!Array.isArray(l))continue;let d=a.get(l);if(d)d.push(u);else a.set(l,[u])}for(let c of e.intersections)for(let u of a.get(c)??[])IN(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)}Ps(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:Is(t,"input",e.processors),output:Is(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function rt(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 rt(n.element,r);if(n.type==="set")return rt(n.valueType,r);if(n.type==="lazy")return rt(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 rt(n.innerType,r);if(n.type==="intersection")return rt(n.left,r)||rt(n.right,r);if(n.type==="record"||n.type==="map")return rt(n.keyType,r)||rt(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return rt(n.in,r)||rt(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(rt(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(rt(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(rt(o,r))return!0;if(n.rest&&rt(n.rest,r))return!0;return!1}return!1}var Bv=(e,t={})=>(r)=>{let n=As({...r,processors:t});return we(e,n),Rs(n,e),Cs(n,e)},Is=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=As({...o??{},target:s,io:t,processors:r});return we(e,i),Rs(i,e),Cs(i,e)};var so=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},io=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},Kv=(e,t)=>{so(e,"minimum",t),io(e,"maximum",t)},Xv=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},Qv=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},eS=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},tS=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},Hv=(e,t)=>so(e,"minimum",t.minimum),Gv=(e,t)=>io(e,"maximum",t.maximum),Jv=(e)=>(t,r)=>{tS(t,r.format);let[n,o]=e[r.format];so(t,"minimum",n),io(t,"maximum",o)},AN={greater_than:(e,t)=>so(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>io(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>Xv(e,t.value),number_format:Jv(ka),bigint_format:Jv(Ld),min_length:Hv,max_length:Gv,length_equals:(e,t)=>Kv(e,t.length),min_size:Hv,max_size:Gv,size_equals:(e,t)=>Kv(e,t.size),string_format:(e,t)=>{if(tS(e,t.format),t.pattern)Qv(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)=>eS(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)AN[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)so(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)so(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)io(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)io(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)eS(t,o.mime);for(let s of o.patterns??[])Qv(t,s);return t}var RN={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},CN=new Map([[ep,dw],[Fa,pw]]),rS=(e)=>CN.get(e)??e,$p=(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=RN[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(rS);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}))]}},Ep=(e,t,r,n)=>{let o=r,{minimum:s,maximum:i,multipleOf:a,exclusiveMaximum:c,exclusiveMinimum:u,isInt:l}=ct(e);o.type=l?"integer":"number";let d=typeof u==="number"&&u>=(s??Number.NEGATIVE_INFINITY),f=typeof c==="number"&&c<=(i??Number.POSITIVE_INFINITY),m=t.target==="draft-04"||t.target==="openapi-3.0";if(d)if(m)o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;else if(typeof s==="number")o.minimum=s;if(f)if(m)o.maximum=c,o.exclusiveMaximum=!0;else o.exclusiveMaximum=c;else if(typeof i==="number")o.maximum=i;if(a){let h=new Set;for(let w of a)if(Number.isFinite(w)&&w!==0)h.add(Math.abs(w));else Ue(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}))]}},Tp=(e,t,r,n)=>{r.type="boolean"},nS=(e,t,r,n)=>{Ue(e,t,r,n,"BigInt cannot be represented in JSON Schema")},oS=(e,t,r,n)=>{Ue(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"},sS=(e,t,r,n)=>{Ue(e,t,r,n,"Undefined cannot be represented in JSON Schema")},iS=(e,t,r,n)=>{Ue(e,t,r,n,"Void cannot be represented in JSON Schema")},Pp=(e,t,r,n)=>{r.not={}},Ip=(e,t,r,n)=>{},Ap=(e,t,r,n)=>{},aS=(e,t,r,n)=>{Ue(e,t,r,n,"Date cannot be represented in JSON Schema")},Rp=(e,t,r,n)=>{let o=e._zod.def,s=bs(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},Cp=(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(Ue(e,t,r,n,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof i==="bigint"){if(Ue(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}},cS=(e,t,r,n)=>{Ue(e,t,r,n,"NaN cannot be represented in JSON Schema")},zp=(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},uS=(e,t,r,n)=>{let o=r;o.type="string",o.format="binary",o.contentEncoding="binary";let{minimum:s,maximum:i,mime:a}=ct(e);if(s!==void 0)o.minLength=s;if(i!==void 0)o.maxLength=i;if(!a)return;if(a.length===0)o.not={};else if(a.length===1)o.contentMediaType=a[0];else o.anyOf=a.map((c)=>({contentMediaType:c}))},lS=(e,t,r,n)=>{r.type="boolean"},Np=(e,t,r,n)=>{Ue(e,t,r,n,"Custom types cannot be represented in JSON Schema")},dS=(e,t,r,n)=>{Ue(e,t,r,n,"Function types cannot be represented in JSON Schema")},Lp=(e,t,r,n)=>{Ue(e,t,r,n,"Transforms cannot be represented in JSON Schema")},pS=(e,t,r,n)=>{Ue(e,t,r,n,"Map cannot be represented in JSON Schema")},fS=(e,t,r,n)=>{Ue(e,t,r,n,"Set cannot be represented in JSON Schema")},Dp=(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 zs(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return zs(t.out);if(t.type==="catch")return zs(t.innerType);return e._zod.optin}var jp=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&Ue(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"?zs(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"]})},Mp=(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},qp=(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)},Fp=(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"?zs(g)!==void 0:g._zod.optout==="optional"))break;l--}let d=s.items.length,f=!s.rest;if(t.target==="draft-2020-12"){if(o.prefixItems=c,f)o.items=!1;else if(u)o.items=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},u)o.items.anyOf.push(u);if(l>0)o.minItems=l;if(f)o.maxItems=d}else{if(o.items=c,f)o.additionalItems=!1;else if(u)o.additionalItems=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}let{minimum:m,maximum:h}=ct(e);if(typeof m==="number")o.minItems=m;if(typeof h==="number")o.maxItems=h};function kp(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=kp(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)=>kp(e,w,r));if(y.some((w,T)=>w!==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")?ro:Na).source;return m}var xp=new WeakMap;function zN(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 xp.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=kp(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 Up=(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 d of a)yt(o.patternProperties,rS(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=xp.get(t);if(!l)l=[],xp.set(t,l),t.deferred.push(()=>zN(t));l.push(e)}o.additionalProperties=we(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&zs(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"}]},Vp=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},Zp=Symbol();function mS(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 Ue(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),Zp}var Bp=(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=mS(o.defaultValue,e,t,r,n);if(i!==Zp)r.default=i},Kp=(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=mS(o.defaultValue,e,t,r,n);if(i!==Zp)r._prefault=i},Hp=(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{Ue(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},Gp=(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},Jp=(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},hS=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},tc=(e,t,r,n)=>{let o=e._zod.def;we(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},Yp=(e,t,r,n)=>{let o=e._zod.innerType;we(o,t,n);let s=t.seen.get(e);s.ref=o},Yv={string:$p,number:Ep,boolean:Tp,bigint:nS,symbol:oS,null:Op,undefined:sS,void:iS,never:Pp,any:Ip,unknown:Ap,date:aS,enum:Rp,literal:Cp,nan:cS,template_literal:zp,file:uS,success:lS,custom:Np,function:dS,transform:Lp,map:pS,set:fS,array:Dp,object:jp,union:Mp,intersection:qp,tuple:Fp,record:Up,nullable:Wp,nonoptional:Vp,default:Bp,prefault:Kp,catch:Hp,pipe:Gp,readonly:Jp,promise:hS,optional:tc,lazy:Yp};function gS(e,t){if("_idmap"in e){let n=e,o=As({...t,processors:Yv}),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;Rs(o,l),yt(i,u,Cs(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=As({...t,processors:Yv});return we(e,r),Rs(r,e),Cs(r,e)}var yS=new WeakSet([Object.prototype,Error.prototype]);function rc(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 WN=(e,t)=>{Mb.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(yS.has(r))return;yS.add(r),rc(r,"format",(n)=>(o)=>Wd(n,o)),rc(r,"flatten",(n)=>(o)=>Ud(n,o)),rc(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,ws,2)}),rc(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,ws,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var wt=O("ZodError",WN,void 0,{Parent:Error});var bS=Ia(wt),wS=Aa(wt),_S=ks(wt),vS=Ra(wt),SS=Ub(wt),kS=Wb(wt),xS=Vb(wt),$S=Zb(wt),ES=Bb(wt),TS=Kb(wt),OS=Hb(wt),PS=Gb(wt);function ZN(){if(!tt.localeError)at(cp())}function Ns(){if(!tt.memoizer)at({memoizer:ap()})}var he=O("ZodType",(e,t)=>(ZN(),pe.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(bt(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 Ft(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(DL(e,t))},superRefine(e,t){return this.check(jL(e,t))},overwrite(e){return this.check(jr(e))},optional(){return ke(this)},exactOptional(){return SL(this)},nullable(){return AS(this)},nullish(){return ke(AS(this))},nonoptional(e){return OL(this,e)},array(){return x(this)},or(e){return te([this,e])},and(e){return sc(this,e)},transform(e){return RS(this,MS(e))},default(e){return $L(this,e)},prefault(e){return TL(this,e)},catch(e){return IL(this,e)},pipe(e){return RS(this,e)},readonly(){return CL(this)},describe(e){let t=this.clone();return Dr.add(t,{description:e}),t},meta(...e){if(e.length===0)return Dr.get(this);let t=this.clone();return Dr.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 Oa(this,"~standard",{...Qd(this),jsonSchema:{input:Is(this,"input"),output:Is(this,"output")}})},set "~standard"(e){wr(this,"~standard",e)},parse:function e(t,r){return bS(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await wS(this,t,r,{callee:e})},safeParse(e,t){return _S(this,e,t)},async safeParseAsync(e,t){return vS(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){wr(this,"spa",e)},validate(e,t){return Ca(this,e,t)},validateAsync(e,t){return za(this,e,t)},encode:function e(t,r){return SS(this,t,r,{callee:e})},decode:function e(t,r){return kS(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await xS(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await $S(this,t,r,{callee:e})},safeEncode(e,t){return ES(this,e,t)},safeDecode(e,t){return TS(this,e,t)},async safeEncodeAsync(e,t){return OS(this,e,t)},async safeDecodeAsync(e,t){return PS(this,e,t)},toJSONSchema(e){return Bv(this,{})(e)},get description(){return Dr.get(this)?.description},get _def(){return this._zod.def}}),CS=O("_ZodString",(e,t)=>{qa.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$p(e,r,n,o)},Cb({format:(e)=>ct(e).format??null,minLength:(e)=>ct(e).minimum??null,maxLength:(e)=>ct(e).maximum??null},{regex(...e){return this.check(dp(...e))},includes(...e){return this.check(mp(...e))},startsWith(...e){return this.check(hp(...e))},endsWith(...e){return this.check(gp(...e))},min(...e){return this.check(oo(...e))},max(...e){return this.check(Qa(...e))},length(...e){return this.check(ec(...e))},nonempty(...e){return this.check(oo(1,...e))},lowercase(e){return this.check(pp(e))},uppercase(e){return this.check(fp(e))},trim(){return this.check(bp())},normalize(...e){return this.check(yp(...e))},toLowerCase(){return this.check(wp())},toUpperCase(){return this.check(_p())},slugify(){return this.check(vp())}})),zS=O("ZodString",(e,t)=>{qa.init(e,t),CS.init(e,t)},{email(e){return this.check(cv(BN,e))},url(e){return this.check(lp(NS,e))},jwt(e){return this.check(Ov(cL,e))},emoji(e){return this.check(mv(HN,e))},guid(e){return this.check(uv(KN,e))},uuid(e){return this.check(lv(nc,e))},uuidv4(e){return this.check(dv(nc,e))},uuidv6(e){return this.check(pv(nc,e))},uuidv7(e){return this.check(fv(nc,e))},nanoid(e){return this.check(hv(GN,e))},cuid(e){return this.check(gv(JN,e))},cuid2(e){return this.check(yv(YN,e))},ulid(e){return this.check(bv(XN,e))},base64(e){return this.check($v(sL,e))},base64url(e){return this.check(Ev(iL,e))},xid(e){return this.check(wv(QN,e))},ksuid(e){return this.check(_v(eL,e))},ipv4(e){return this.check(vv(tL,e))},ipv6(e){return this.check(Sv(rL,e))},cidrv4(e){return this.check(kv(nL,e))},cidrv6(e){return this.check(xv(oL,e))},e164(e){return this.check(Tv(aL,e))},datetime(e){return this.check(Ba(Ls,e))},date(e){return this.check(Ka(Ds,e))},time(e){return this.check(Ha(js,e))},duration(e){return this.check(Ga(Ms,e))}});function p(e){return av(zS,e)}var Te=O("ZodStringFormat",(e,t)=>{_e.init(e,t),CS.init(e,t)}),Ls=O("ZodISODateTime",(e,t)=>{p_.init(e,t),Te.init(e,t)}),Ds=O("ZodISODate",(e,t)=>{f_.init(e,t),Te.init(e,t)}),js=O("ZodISOTime",(e,t)=>{m_.init(e,t),Te.init(e,t)}),Ms=O("ZodISODuration",(e,t)=>{h_.init(e,t),Te.init(e,t)}),BN=O("ZodEmail",(e,t)=>{t_.init(e,t),Te.init(e,t)});var KN=O("ZodGUID",(e,t)=>{Qw.init(e,t),Te.init(e,t)});var nc=O("ZodUUID",(e,t)=>{e_.init(e,t),Te.init(e,t)});var NS=O("ZodURL",(e,t)=>{o_.init(e,t),Te.init(e,t)});function qs(e){return lp(NS,e)}var HN=O("ZodEmoji",(e,t)=>{s_.init(e,t),Te.init(e,t)});var GN=O("ZodNanoID",(e,t)=>{i_.init(e,t),Te.init(e,t)});var JN=O("ZodCUID",(e,t)=>{a_.init(e,t),Te.init(e,t)});var YN=O("ZodCUID2",(e,t)=>{c_.init(e,t),Te.init(e,t)});var XN=O("ZodULID",(e,t)=>{u_.init(e,t),Te.init(e,t)});var QN=O("ZodXID",(e,t)=>{l_.init(e,t),Te.init(e,t)});var eL=O("ZodKSUID",(e,t)=>{d_.init(e,t),Te.init(e,t)});var tL=O("ZodIPv4",(e,t)=>{g_.init(e,t),Te.init(e,t)});var rL=O("ZodIPv6",(e,t)=>{b_.init(e,t),Te.init(e,t)});var nL=O("ZodCIDRv4",(e,t)=>{w_.init(e,t),Te.init(e,t)});var oL=O("ZodCIDRv6",(e,t)=>{__.init(e,t),Te.init(e,t)});var sL=O("ZodBase64",(e,t)=>{S_.init(e,t),Te.init(e,t)});var iL=O("ZodBase64URL",(e,t)=>{k_.init(e,t),Te.init(e,t)});var aL=O("ZodE164",(e,t)=>{x_.init(e,t),Te.init(e,t)});var cL=O("ZodJWT",(e,t)=>{$_.init(e,t),Te.init(e,t)});var oc=O("ZodNumber",(e,t)=>{tp.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ep(e,r,n,o),e.isFinite=!0},Cb({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(Ya(e,t))},gte(e,t){return this.check(Os(e,t))},min(e,t){return this.check(Os(e,t))},lt(e,t){return this.check(Ja(e,t))},lte(e,t){return this.check(Ts(e,t))},max(e,t){return this.check(Ts(e,t))},int(e){return this.check(IS(e))},safe(e){return this.check(IS(e))},positive(e){return this.check(Ya(0,e))},nonnegative(e){return this.check(Os(0,e))},negative(e){return this.check(Ja(0,e))},nonpositive(e){return this.check(Ts(0,e))},multipleOf(e,t){return this.check(Xa(e,t))},step(e,t){return this.check(Xa(e,t))},finite(){return this}}));function P(e){return Pv(oc,e)}var uL=O("ZodNumberFormat",(e,t)=>{E_.init(e,t),oc.init(e,t)});function IS(e){return Av(uL,e)}var LS=O("ZodBoolean",(e,t)=>{T_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Tp(e,r,n,o)});function j(e){return Rv(LS,e)}var lL=O("ZodNull",(e,t)=>{O_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Op(e,r,n,o)});function Fs(e){return Cv(lL,e)}var dL=O("ZodAny",(e,t)=>{P_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ip(e,r,n,o)});function DS(){return zv(dL)}var pL=O("ZodUnknown",(e,t)=>{I_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ap(e,r,n,o)});function ne(){return Nv(pL)}var fL=O("ZodNever",(e,t)=>{A_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Pp(e,r,n,o)});function mL(e){return Lv(fL,e)}var hL=O("ZodArray",(e,t)=>{Ns(),R_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Dp(e,r,n,o),e.element=t.element},{min(e,t){return this.check(oo(e,t))},nonempty(e){return this.check(oo(1,e))},max(e,t){return this.check(Qa(e,t))},length(e,t){return this.check(ec(e,t))},unwrap(){return this.element}});function x(e,t){return Dv(hL,e,t)}var ef=O("ZodObject",(e,t)=>{Ns(),N_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>jp(e,r,n,o),Gz(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(bt(this._zod.def,{catchall:e}))},passthrough(){return this.clone(bt(this._zod.def,{catchall:ne()}))},loose(){return this.clone(bt(this._zod.def,{catchall:ne()}))},strict(){return this.clone(bt(this._zod.def,{catchall:mL()}))},strip(){return this.clone(bt(this._zod.def,{catchall:void 0}))},extend(e){return Fz(this,e)},safeExtend(e){return Uz(this,e)},merge(e){return Wz(this,e)},pick(e){return Mz(this,e)},omit(e){return qz(this,e)},partial(...e){return Pb(rf,this,e[0])},exactPartial(...e){return Pb(qS,this,e[0],"exactPartial")},required(...e){return Vz(FS,this,e[0])}});function b(e,t){let r={type:"object",shape:e??{},...U(t)};return new ef(r)}function xe(e,t){return new ef({type:"object",shape:e,catchall:ne(),...U(t)})}var jS=O("ZodUnion",(e,t)=>{rp.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Mp(e,r,n,o),e.options=t.options});function te(e,t){return new jS({type:"union",options:e,...U(t)})}var gL=O("ZodDiscriminatedUnion",(e,t)=>{jS.init(e,t),L_.init(e,t)});function vr(e,t,r){return new gL({type:"union",options:t,discriminator:e,...U(r)})}var yL=O("ZodIntersection",(e,t)=>{D_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>qp(e,r,n,o)});function sc(e,t){return new yL({type:"intersection",left:e,right:t})}var bL=O("ZodTuple",(e,t)=>{Ns(),j_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Fp(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 rf({type:"optional",innerType:t}))})}});function wL(e,t,r){let n=t instanceof pe,o=n?r:t;return new bL({type:"tuple",items:e,rest:n?t:null,...U(o)})}var Xp=O("ZodRecord",(e,t)=>{Ns(),M_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Up(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function J(e,t,r){if(!t||!t._zod)return new Xp({type:"record",keyType:p(),valueType:e,...U(t)});return new Xp({type:"record",keyType:e,valueType:t,...U(r)})}function tf(e,t,r){return new Xp({type:"record",keyType:e,valueType:t,...U(r),partial:!0})}var Qp=O("ZodEnum",(e,t)=>{q_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Rp(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 Qp({...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 Qp({...t,checks:[],...U(o),entries:s})}});function z(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new Qp({type:"enum",entries:r,...U(t)})}var _L=O("ZodLiteral",(e,t)=>{F_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Cp(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 _L({type:"literal",values:Array.isArray(e)?e:[e],...U(t)})}var vL=O("ZodTransform",(e,t)=>{Ns(),U_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Lp(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Ss(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(On(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(On(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 MS(e){return new vL({type:"transform",transform:e})}var rf=O("ZodOptional",(e,t)=>{np.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>tc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function ke(e){return new rf({type:"optional",innerType:e})}var qS=O("ZodExactOptional",(e,t)=>{W_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>tc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function SL(e){return new qS({type:"optional",innerType:e})}var kL=O("ZodNullable",(e,t)=>{V_.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 AS(e){return new kL({type:"nullable",innerType:e})}var xL=O("ZodDefault",(e,t)=>{Z_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Bp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function $L(e,t){return new xL({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():zd(t)}})}var EL=O("ZodPrefault",(e,t)=>{B_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Kp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function TL(e,t){return new EL({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():zd(t)}})}var FS=O("ZodNonOptional",(e,t)=>{K_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Vp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function OL(e,t){return new FS({type:"nonoptional",innerType:e,...U(t)})}var PL=O("ZodCatch",(e,t)=>{H_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Hp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function IL(e,t){return new PL({type:"catch",innerType:e,catchValue:typeof t==="function"?t:zb(t)})}var US=O("ZodPipe",(e,t)=>{op.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Gp(e,r,n,o),e.in=t.in,e.out=t.out});function RS(e,t){return new US({type:"pipe",in:e,out:t})}var AL=O("ZodPreprocess",(e,t)=>{US.init(e,t),G_.init(e,t)}),RL=O("ZodReadonly",(e,t)=>{J_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Jp(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function CL(e){return new RL({type:"readonly",innerType:e})}var zL=O("ZodTemplateLiteral",(e,t)=>{Y_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zp(e,r,n,o)});function NL(e,t){return new zL({type:"template_literal",parts:e,...U(t)})}var LL=O("ZodLazy",(e,t)=>{X_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Yp(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function nf(e){return new LL({type:"lazy",getter:e})}var WS=O("ZodCustom",(e,t)=>{Q_.init(e,t),he.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Np(e,r,n,o)});function ic(e,t){return jv(WS,e??(()=>!0),t)}function DL(e,t={}){return Mv(WS,e,t)}function jL(e,t){return qv(e,t)}function Sr(e){let t=nf(()=>te([p(e),P(),j(),Fs(),x(t),J(p(),t)]));return t}function ac(e,t){return new AL({type:"pipe",in:MS(e),out:t})}var ZS={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 VS;(function(e){})(VS||(VS={}));function BS(e){return Ba(Ls,e)}function qL(e){return Ka(Ds,e)}function FL(e){return Ha(js,e)}function UL(e){return Ga(Ms,e)}function WL(e){return Iv(oc,e)}var HS={name:"@tripwire-sh/cli",version:"0.1.5",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 cc=HS.version,q="tripwire",Us="tripwire-get-started",GS="tripwire-workflows",Ws="tripwire-cli",ZL="https://mcp.tripwire.sh/mcp",BL="https://app.tripwire.sh/api/auth",JS="offline_access tripwire:read tripwire:configure tripwire:moderate tripwire:admin";function co(e){return e.TRIPWIRE_MCP_URL||ZL}function YS(e){return(e.TRIPWIRE_AUTH_URL||BL).replace(/\/+$/,"")}var KL="urn:ietf:params:oauth:grant-type:device_code",HL=b({device_code:p(),user_code:p(),verification_uri:p(),verification_uri_complete:p().optional(),expires_in:P(),interval:P().optional()}),QS=b({access_token:p().min(1),refresh_token:p().min(1).optional(),expires_in:P().optional(),token_type:p().optional()}),sf=b({error:p(),error_description:p().optional()});class of extends Error{constructor(){super("Session expired. Run tripwire login.");this.name="SessionExpiredError"}}class Vs extends Error{constructor(){super("Tripwire is not reachable right now. Try again in a minute.");this.name="AuthUnreachableError"}}var ek={fetch:(e,t)=>fetch(e,t),sleep:(e)=>new Promise((t)=>setTimeout(t,e)),now:()=>Date.now()};async function uc(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=Sr().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 tk(e,t){let r=sf.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 rk(e,t,r){let{status:n,body:o}=await uc(e,`${t}/device/code`,{client_id:Ws,scope:JS,resource:r}),s=HL.safeParse(o);if(n>=400||!s.success)throw tk(o,`Device authorization failed (HTTP ${n})`);return s.data}function nk(e,t,r,n,o){let s=t.refresh_token??o;return{accessToken:t.access_token,refreshToken:s,expiresAt:t.expires_in?e.now()+t.expires_in*1000:void 0,mcpUrl:n,authUrl:r}}var XS=5000;function GL(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 ok(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 uc(e,`${t}/oauth2/token`,{grant_type:KL,device_code:n.device_code,client_id:Ws,resource:r}),l=QS.safeParse(c);if(a<400&&l.success)return nk(e,l.data,t,r);if(a===429){if(s=GL(u,e.now()),s===null)o+=XS;continue}let d=sf.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 tk(c,`Token request failed (HTTP ${a})`)}throw Error("The code expired. Run tripwire login again.")}async function sk(e,t){if(!t.refreshToken)throw new of;let{status:r,body:n}=await uc(e,`${t.authUrl}/oauth2/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,client_id:Ws,resource:t.mcpUrl}).catch(()=>{throw new Vs}),o=QS.safeParse(n);if(r>=400||!o.success){let s=sf.safeParse(n);throw(r===400||r===401)&&s.success&&s.data.error!=="invalid_response"?new of:new Vs}return nk(e,o.data,t.authUrl,t.mcpUrl,t.refreshToken)}async function ik(e,t){let r=t.refreshToken??t.accessToken;await uc(e,`${t.authUrl}/oauth2/revoke`,{token:r,client_id:Ws}).catch(()=>{return})}import{stripVTControlCharacters as C2}from"node:util";var JL=z(["pending","approved","rejected"]),sse=JL.options;var Zs=[{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 ak(e){return e.status==="live"}var Bs=z(Zs.filter(ak).map((e)=>e.id)),cse=Zs.filter((e)=>ak(e)&&!("paused"in e)).map((e)=>e.label),use=Zs.filter((e)=>e.status==="planned").map((e)=>e.label),lse=Zs.filter((e)=>("signIn"in e)).map((e)=>e.id);var YL=Object.fromEntries(Zs.map((e)=>[e.id,e]));var lc=b({owner:p(),name:p(),fullName:p()}),XL=b({id:p(),login:p(),name:p(),type:z(["Organization","User"]),avatarUrl:p(),repoAccess:z(["all","selected"]),repoCount:P(),installedAt:ve.datetime()}),QL=b({id:p(),owner:p(),name:p(),fullName:p(),private:j(),pushedAt:ve.datetime(),openFlags:P(),stars:P()}),fse=b({accounts:x(XL),repos:x(QL)});var Ks=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"]),ck=b({login:p(),externalId:p(),avatarUrl:p().optional()}),af=b({number:P().int(),title:p(),headSha:p(),baseRef:p().optional(),headRef:p().optional(),draft:j().optional(),url:p()}),eD=b({externalId:p(),body:p(),url:p(),subjectNumber:P().int(),byTripwire:j().optional()}),tD=b({ref:p(),headSha:p(),commitCount:P().int(),url:p().optional()}),pc=z(["issue","change-request"]),rD=b({kind:pc,number:P().int(),title:p(),url:p(),state:z(["open","closed"]),author:p(),labels:x(p()),locked:j(),updatedAt:ve.datetime()}),nD=b({workflowId:p(),nodeId:p(),tickId:p()}),uo={id:p(),forge:Bs,deliveryId:p(),repo:lc,repoExternalId:p().optional(),installationExternalId:p().optional(),actor:ck,occurredAt:ve.datetime(),receivedAt:ve.datetime()},dc={id:p(),forge:Bs,deliveryId:p(),actor:ck,occurredAt:ve.datetime(),receivedAt:ve.datetime(),installation:b({externalId:p(),account:p(),accountType:z(["User","Organization"]).optional()}),repositories:x(b({externalId:p(),owner:p(),name:p(),fullName:p(),private:j()}))},uk=vr("kind",[b({...uo,kind:C("change-request.opened"),changeRequest:af}),b({...uo,kind:C("change-request.updated"),changeRequest:af}),b({...uo,kind:C("change-request.closed"),changeRequest:af}),b({...uo,kind:C("comment.created"),comment:eD}),b({...uo,kind:C("push"),push:tD}),b({...uo,kind:C("schedule.matched"),schedule:nD,thread:rD}),b({...dc,kind:C("installation.created")}),b({...dc,kind:C("installation.deleted")}),b({...dc,kind:C("installation-repositories.added")}),b({...dc,kind:C("installation-repositories.removed")})]),oD=Ks.extract(["change-request.opened","change-request.updated","change-request.closed"]),bse=oD.options;var sD=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],iD=["sun","mon","tue","wed","thu","fri","sat"],aD=[{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:sD,nameBase:1},{name:"day of week",range:"0 to 7 or sun to sat",min:0,max:7,names:iD,nameBase:0}];function cf(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 cD(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=cf(l,t),u=cf(d,t)}else c=cf(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 Pn(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 aD.entries()){let d=cD(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 Hs(e){try{return new Intl.DateTimeFormat("en-US",{timeZone:e}),!0}catch{return!1}}var lk=new Map;function uD(e){let t=lk.get(e);if(t)return t;let r=new Intl.DateTimeFormat("en-US",{timeZone:e,hourCycle:"h23",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});return lk.set(e,r),r}function df(e,t){let r=uD(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 uf(e,t){let r=df(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 dk(e,t){let r=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute),n=[r-uf(r-129600000,t),r-uf(r+129600000,t),r-uf(r,t)].sort((o,s)=>o-s);for(let o of n){let s=df(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 fc(e,t,r){let n=e.days.includes(t),o=e.weekdays.includes(r);if(e.daysRestricted&&e.weekdaysRestricted)return n||o;return n&&o}function lD(e,t){return fc(e,t.getUTCDate(),t.getUTCDay())}var dD=Array.from({length:217},(e,t)=>({day:t%31+1,weekday:Math.floor(t/31)}));function lf(e){let t=dD.map(({day:r,weekday:n})=>fc(e,r,n)?"1":"0").join("");return[e.minutes,e.hours,e.months].map((r)=>r.join(",")).concat(t).join(" ")}function pk(e,t){let r=Pn(e),n=Pn(t);return r.ok&&n.ok&&lf(r.spec)===lf(n.spec)}var pD=1830,fD=180;function mD(e,t){let r=dk(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<=fD;o++){let s=new Date(n+o*60000),i=dk({year:s.getUTCFullYear(),month:s.getUTCMonth()+1,day:s.getUTCDate(),hour:s.getUTCHours(),minute:s.getUTCMinutes()},t);if(i)return i}return null}function fk(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 pf(e,t,r){let n=df(r,t),o=new Date(Date.UTC(n.year,n.month-1,n.day));for(let s=0;s<=pD;s++){if(e.months.includes(o.getUTCMonth()+1)&&lD(e,o))for(let i of e.hours)for(let a of e.minutes){let c=mD({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 Ot=5,je=nf(()=>te([p(),P(),j(),Fs(),x(je),J(p(),je)])),gc=b({x:P(),y:P()}),hD=z(["all-of","any-of","not"]),gD=z(["block","comment","label","request-review","send-to-moderation","webhook","discord","lock","close","remove-label","post-comment"]),yD=["comment"];function hk(e){return yD.includes(e)}var xse=b({url:qs().meta({secret:!0}).describe("webhook url"),signingSecret:p().min(1).optional().meta({secret:!0}).describe("signing secret")}),$se=b({url:qs().meta({secret:!0}).describe("discord webhook url")}),lo=15,yc=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`}),ff=p().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,99}$/,{error:(e)=>`${String(e.input)} is not a team slug`}),mf=b({id:P().int().positive().optional(),login:yc}),Ese=b({id:P().int().positive(),login:yc,avatarUrl:p(),permission:p().min(1)}),Tse=b({name:p().min(1),color:p().regex(/^[0-9a-fA-F]{6}$/),description:p().nullable()}),bD=ac((e)=>p().safeParse(e).success?{login:e}:e,mf);function gk(e,t){return e.id!==void 0&&t.id!==void 0?e.id===t.id:e.login.toLowerCase()===t.login.toLowerCase()}var Gs=b({reviewers:x(bD).max(lo,`ask at most ${lo} people`).default([]),teamReviewers:x(ff).max(lo,`ask at most ${lo} teams`).default([])}),yk=Gs.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>lo)t.addIssue({code:"custom",message:`ask at most ${lo} people and teams`})}),Mr=b({labels:x(p().trim().min(1)).min(1,"choose at least one label")}),mk=5000,bc=b({message:p().trim().min(1,"write a message").max(mk,`keep it under ${mk} characters`)}),wD=z(["resolved","off-topic","too heated","spam"]),bk=b({reason:wD.optional()}),Js={hours:3600000,days:86400000,weeks:604800000,months:2592000000};function hf(e){return e.n*Js[e.unit]}var wc=52*Js.weeks,_D=3650*Js.days,vD=z(["hours","days","weeks"]),SD=z(["hours","days","weeks","months"]),kD=b({n:P().int().min(1),unit:vD}).refine((e)=>hf(e)<=wc,{message:"runs at least once a year"}),Yt="UTC",wk=p().min(1).refine(Hs,{error:(e)=>`${String(e.input)} is not an IANA timezone, like Europe/Berlin`}),mc=p().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"use 24-hour HH:MM, like 07:30"),gf=z(["sunday","monday","tuesday","wednesday","thursday","friday","saturday"]),xD=vr("preset",[b({preset:C("hourly"),minute:P().int().min(0).max(59)}),b({preset:C("daily"),at:mc}),b({preset:C("weekdays"),at:mc}),b({preset:C("weekly"),on:gf,at:mc}),b({preset:C("monthly"),day:P().int().min(1).max(28),at:mc})]),_c=b({cron:p().trim().superRefine((e,t)=>{let r=Pn(e);if(!r.ok){t.addIssue({code:"custom",message:r.error});return}if(pf(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(fk(r.spec)<Ot)t.addIssue({code:"custom",message:`runs must be at least ${Ot} minutes apart`})})}),_k=te([kD,xD,_c]),vk=b({n:P().int().min(1),unit:SD}).refine((e)=>hf(e)<=_D,{message:"10 years at most"}),Sk=z(["open","closed","any"]),hc=x(p().min(1)),$D=b({subjects:x(pc).min(1),state:Sk,inactiveFor:vk,labels:hc.optional(),excludeLabels:hc.optional(),skipLocked:j().default(!0)}),po=b({every:_k,timezone:wk.optional(),match:$D}),ED=b({every:_k.optional(),timezone:wk.optional(),match:b({subjects:x(pc).optional(),state:Sk.optional(),inactiveFor:vk.optional(),labels:hc.optional(),excludeLabels:hc.optional(),skipLocked:j().optional()}).default({})});var TD=["every","subjects","state","inactiveFor"];function kk(e){return TD.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 OD=b({id:p(),type:C("trigger"),kinds:x(Ks).min(1),schedule:ED.optional(),position:gc.optional()});function vc(e){return e.type==="trigger"&&(e.kinds??[]).includes("schedule.matched")}var PD=b({id:p(),type:C("rule"),ref:p().regex(/^[a-z][a-z0-9-]*@\d+$/),config:je,position:gc.optional()}),ID=b({id:p(),type:C("gate"),mode:hD,position:gc.optional()}),AD=b({id:p(),type:C("action"),action:gD,params:J(p(),je).optional(),position:gc.optional()}),yf=vr("type",[OD,PD,ID,AD]),xk=z(["pass","fail","approve","deny"]),RD=b({id:p(),from:p(),to:p(),when:xk.optional()}),kr=b({id:p(),name:p(),version:P().int().min(1),nodes:x(yf).min(1),edges:x(RD)}),$k={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 Ek=[{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}],Tk=[{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."}],Ok=[{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 Ase=J(p(),je).catch({});function Sc(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Pk(e){let t=Mr.safeParse(e);return t.success?t.data.labels:[]}function Ik(e){return`${e.length===1?"the label":"the labels"} ${Sc(e)}`}function CD(e){let t=Gs.safeParse(e);if(!t.success)return[];return[...t.data.reviewers.map((r)=>r.login),...t.data.teamReviewers]}function Ak(e,t){switch(e){case"block":return"blocks it";case"label":{let r=Pk(t);return r.length>0?`adds ${Ik(r)}`:"adds labels"}case"remove-label":{let r=Pk(t);return r.length>0?`removes ${Ik(r)}`:"removes labels"}case"request-review":{let r=CD(t);return r.length>0?`requests GitHub review from ${Sc(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 zD=b({runId:p(),verdict:p().nullable(),status:p(),reason:p().nullable()}),Rk=b({event:uk,run:zD.nullable(),pending:j().optional()}),ND=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:x(Rk)}),LD=vr("type",[b({type:C("group"),group:ND}),b({type:C("event"),entry:Rk})]),Nse=b({items:x(LD)});var DD=["tripwire:read","tripwire:configure","tripwire:moderate","tripwire:admin"],jse=z(DD);var jD="https://tripwire.sh/orgs";var Mse=b({sub:p().min(1),azp:p().min(1).optional(),client_id:p().min(1).optional(),scope:p().optional(),[jD]:x(p()).optional()});var Use=z(["ready","out"]),Ck=z(["ai-out-of-credits"]);var Wse=xe({statusCode:P().optional().catch(void 0),status:P().optional().catch(void 0),message:p().optional().catch(void 0),responseBody:p().optional().catch(void 0),lastError:ne().optional(),cause:ne().optional(),data:ne().optional(),error:ne().optional(),errors:x(ne()).optional().catch(void 0)});var Vse=b({data:b({total_credits:P(),total_usage:P()})}),Zse=b({data:b({limit:P().nullable().optional(),limit_remaining:P().nullable().optional(),usage:P().optional()})});var MD=z(["success","failure","neutral","pending"]),Hse=b({sha:p(),conclusion:MD,summary:p(),detailsUrl:p()});var qD=["matched-values","file-paths","ai-trace","ai-summary","reasons","rule-names","passed-count","failed-count"],FD=qD.length;var UD=P().int().min(0).max(FD),zk=z(["run-page","check","comment","review","webhook"]),Yse=zk.options,WD=["run-page","check","comment","review"],kc=b({level:UD.default(0),surfaces:x(zk).default(()=>[...WD]),showHelp:j().default(!0)}),Nk=kc.extend({inherit:j().default(!0)}),VD=kc.parse({});var ZD=z(["green","blue","purple","pink","orange","red","grey"]),xr=z(["issue","pull"]),Ys=z(["open","closed","merged"]),Lk=b({key:p(),label:p(),value:P(),delta:P().optional(),invertDelta:j().optional(),sub:p().optional(),series:x(P()),color:ZD,suffix:p().optional()}),BD=b({rule:p(),count:P()}),KD=b({kind:xr,number:P(),title:p(),comments:P(),blocked:P(),status:Ys}),HD=b({login:p(),count:P(),flagged:j().optional()}),GD=b({login:p(),reason:p(),caughtBy:p(),status:z(["Hidden","Removed"]),commentId:p().optional()}),JD=b({kind:z(["review","check"]),title:p(),detail:p(),status:z(["Approved","Changes","Passed","Failed"]),actor:p().optional()}),YD=b({kind:xr,number:P(),title:p(),status:Ys,meta:p(),metrics:x(Lk),series:x(P()),byParticipant:x(HD),flagged:x(GD).optional(),checks:x(JD).optional()}),eie=b({metrics:x(Lk),blockedByRule:x(BD),activeThreads:x(KD),threads:J(p(),YD)});var mo=z(["issue","pull","comment"]),bf=z(["spam","harassment","off-topic","automod","nsfw"]),wf=z(["low","medium","high","critical"]),XD=z(["pending","resolved"]),fo=b({login:p(),avatarUrl:p()}),oie=b({id:p(),type:mo,repository:lc,number:P(),title:p(),bodyPreview:p(),author:fo,reason:bf,severity:wf,reporter:fo.nullable(),automodRule:p().optional(),reportedAt:ve.datetime(),status:XD,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"})}),qr=b({value:P(),delta:P(),series:x(P())}),sie=b({sentToReview:qr,blocked:qr,passed:qr}),iie=z(["approve","remove","ban"]);var QD=z(["info","warn","critical"]),ej=b({severity:QD,file:p(),line:P().int().min(1).optional(),note:p().max(240)}),uie=b({verdict:z(["pass","block","needs_review"]),confidence:P().min(0).max(1),summary:p().max(200),findings:x(ej).max(5)}),Dk=b({model:p().optional(),maxSteps:P().int().min(1).max(15).default(12)});var tj=b({type:z(["reasoning","tool_call"]),toolName:p().optional(),excerpt:p(),truncated:j()}),lie=b({model:p(),stepsUsed:P().int().min(0),maxSteps:P().int().min(0),trimmed:j(),costUsd:P().nullable().optional(),usage:b({input:P().int().min(0),output:P().int().min(0),cached:P().int().min(0).nullable()}),steps:x(tj)});var rj=z(["blocklist","heuristic","classifier","regex"]),nj=z(["flag","hide","close","require-review"]),oj=z(["pending","confirmed","false-positive"]),sj=b({id:p(),type:mo,repoFullName:p(),number:P(),author:b({login:p(),avatarUrl:p()}),snippet:p(),matchedAt:ve.datetime(),verdict:oj,threadKind:xr,commentId:p()}),wie=b({id:p(),name:p(),description:p(),category:rj,pattern:p(),scope:x(mo),action:nj,enabled:j(),matches24h:P(),matches30d:P(),falsePositiveRate:P().min(0).max(100),lastFiredAt:ve.datetime(),trend:x(P()),recentMatches:x(sj)}),_ie=b({activeRules:qr,matches24h:qr,falsePositiveRate:qr,autoActioned24h:qr}),ij=b({ruleId:p(),version:P().int().min(1),status:z(["evaluated","skipped"]),passed:j(),evidence:ne(),reason:p().optional(),cause:Ck.optional(),evaluatedAt:ve.datetime()}),vie=ij.pick({ruleId:!0});var aj=b({minDays:P().int().min(0)}),Sie=b({min:P().int().min(0)}),cj=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")}),uj=b({maxPerWindow:P().int().min(1),windowHours:P().min(0.1).default(24)}),lj=b({max:P().int().min(1)}),dj=b({maxNonLatinRatio:P().min(0).max(1).default(0.5)}),pj=b({}),fj=b({paths:x(p()).min(1)}),mj=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:aj,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:cj,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:uj,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:lj,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:dj,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:pj,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:fj,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:mj,defaultConfig:{minLength:32},optIn:!1,description:"Requires a minimum of profile text. Throwaway accounts rarely add one.",contributorLabel:"add a short bio to your profile."},{ruleId:"ai-review",forges:["github"],version:2,name:"AI review",blurb:"reads the change like a reviewer and flags slop.",configSchema:Dk,defaultConfig:{maxSteps:12},optIn:!0,changeNote:"findings must quote code",description:"Reads the change like a reviewer and flags slop.",contributorLabel:"this change request has problems a reviewer would flag.",summaryReveals:["ai-summary"],evidenceRedaction:{"matched-values":["output.findings.*.note"],"file-paths":["output.findings.*.file","output.findings.*.line"]}}];var Iie=J(p(),je);var yj=z(["silent","ci-check","comment"]),jk=z(["comment","silent"]),bj=z(["full","one-liner-link","custom"]),_f=b({customText:p().max(4000).default(""),showDetailsButton:j().default(!0)}),wj=_f.extend({mode:bj.default("full"),template:p().max(4000).default("")}),_j=b({onSuccess:yj.default("ci-check"),passComment:_f.prefault({}),onBlock:jk.default("comment"),blockComment:wj.prefault({}),moderationQueued:jk.default("comment"),reviewComment:_f.prefault({}),failClosedFallback:j().default(!0),redaction:Nk.prefault({})}),vj=b({redaction:kc.prefault({})}),zie=vj.parse({});var Sj=_j.parse({});var Mk="If you think this is wrong, say so in a comment. A maintainer will decide.",qk="If you think it should merge anyway, say so in a comment. A maintainer will decide.",Kie=`Push a commit that fixes the problems. Tripwire checks every push.
|
|
228
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of e.seen.entries()){let a=i[1];if(t===i[0]){s(i);continue}if(e.external){let u=e.external.registry.get(i[0])?.id;if(t!==i[0]&&u){s(i);continue}}if(e.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1){if(e.reused==="ref")s(i)}}if(e.external)e.sharedDefsExtractedFor=e.external}function gS(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let r=[];for(let n of t){if(!n||typeof n!=="object")return;gS(n);let o=Object.keys(n);if(o.length!==1||o[0]!=="type")return;let s=n.type;for(let i of Array.isArray(s)?s:[s]){if(typeof i!=="string")return;if(!r.includes(i))r.push(i)}}delete e.anyOf,e.type=r.length===1?r[0]:r}var yS=new Set(["type","properties","required","additionalProperties"]),mS=["oneOf","anyOf"];function hS(e){let t=e.additionalProperties;if(t===void 0||t===!1||typeof t!=="object"||t===null)return null;return Object.keys(t).length?t:null}function Mp(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!yS.has(i))return null;t.push(s)}let r={},n=new Set;for(let s of t){for(let i in s.properties){if(Object.prototype.hasOwnProperty.call(r,i))continue;let a=[];for(let u of t){let l=u.properties?.[i]??hS(u);if(l===null||l===void 0)continue;if(!a.some((d)=>JSON.stringify(d)===JSON.stringify(l)))a.push(l)}let c=a.length===1?a[0]:Mp(a)??{allOf:a};bt(r,i,c)}for(let i of s.required??[])n.add(i)}let o={type:"object",properties:r};if(n.size)o.required=[...n];if(t.every((s)=>s.additionalProperties===!1))o.additionalProperties=!1;else{let s=[];for(let i of t){let a=hS(i);if(a&&!s.some((c)=>JSON.stringify(c)===JSON.stringify(a)))s.push(a)}if(s.length===1)o.additionalProperties=s[0];else if(s.length>1)o.additionalProperties={allOf:s}}return o}function wL(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of yS)if(o in e)return;let r=t.filter((o)=>mS.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=Mp(t);else{let o=r[0],s=mS.find((c)=>Array.isArray(o[c]));if(Object.keys(o).length!==1)return;let i=t.filter((c)=>c!==o),a=o[s].map((c)=>Mp([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,Ls(e,n)}function qs(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=(a)=>{let c=e.seen.get(a);if(c.ref===null)return;let u=c.def??c.schema,l={...u},d=c.ref;if(c.ref=null,d){n(d);let m=e.seen.get(d),h=m.schema;if(h.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))u.allOf=u.allOf??[],u.allOf.push(h);else Ls(u,h);if(Ls(u,l),a._zod.parent===d)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(!(y in l))delete u[y]}if(h.$ref&&m.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in m.def&&JSON.stringify(u[y])===JSON.stringify(m.def[y]))delete u[y]}}let f=a._zod.parent;if(f&&f!==d){n(f);let m=e.seen.get(f);if(m?.schema.$ref){if(u.$ref=m.schema.$ref,m.def)for(let h in u){if(h==="$ref"||h==="allOf")continue;if(h in m.def&&JSON.stringify(u[h])===JSON.stringify(m.def[h]))delete u[h]}}}e.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let a of[...e.seen.entries()].reverse())n(a[0]);if(e.target!=="openapi-3.0")for(let a of e.seen.entries())gS(a[1].def??a[1].schema);for(let a of e.deferred)a();if(e.intersections.length){let a=new Map;for(let c of e.seen.values())for(let u of[c.schema,c.def]){let l=u?.allOf;if(!Array.isArray(l))continue;let d=a.get(l);if(d)d.push(u);else a.set(l,[u])}for(let c of e.intersections)for(let u of a.get(c)??[])wL(u)}}let o={};if(e.target==="draft-2020-12")o.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")o.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")o.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let a=e.external.registry.get(t)?.id;if(!a)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}Ls(o,r.defId?r.schema:r.def??r.schema);let s=e.metadataRegistry.get(t)?.id;if(s!==void 0&&o.id===s)delete o.id;let i=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let a of e.seen.entries()){let c=a[1];if(c.def&&c.defId){if(c.def.id===c.defId)delete c.def.id;bt(i,c.defId,c.def)}}if(e.external)e.sharedEmitDoneFor=e.external;if(e.external);else if(Object.keys(i).length>0)if(e.target==="draft-2020-12")o.$defs=i;else o.definitions=i;try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:js(t,"input",e.processors),output:js(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function nt(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return nt(n.element,r);if(n.type==="set")return nt(n.valueType,r);if(n.type==="lazy")return nt(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault"||n.type==="catch")return nt(n.innerType,r);if(n.type==="intersection")return nt(n.left,r)||nt(n.right,r);if(n.type==="record"||n.type==="map")return nt(n.keyType,r)||nt(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return nt(n.in,r)||nt(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(nt(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(nt(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(nt(o,r))return!0;if(n.rest&&nt(n.rest,r))return!0;return!1}return!1}var wS=(e,t={})=>(r)=>{let n=Ds({...r,processors:t});return _e(e,n),Ms(n,e),qs(n,e)},js=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=Ds({...o??{},target:s,io:t,processors:r});return _e(e,i),Ms(i,e),qs(i,e)};var fo=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},mo=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},bS=(e,t)=>{fo(e,"minimum",t),mo(e,"maximum",t)},xS=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},$S=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},TS=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},ES=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},_S=(e,t)=>fo(e,"minimum",t.minimum),vS=(e,t)=>mo(e,"maximum",t.maximum),SS=(e)=>(t,r)=>{ES(t,r.format);let[n,o]=e[r.format];fo(t,"minimum",n),mo(t,"maximum",o)},bL={greater_than:(e,t)=>fo(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>mo(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>xS(e,t.value),number_format:SS(Aa),bigint_format:SS(Qd),min_length:_S,max_length:vS,length_equals:(e,t)=>bS(e,t.length),min_size:_S,max_size:vS,size_equals:(e,t)=>bS(e,t.size),string_format:(e,t)=>{if(ES(e,t.format),t.pattern)$S(e,t.pattern);if(t.format==="base64"||t.format==="base64url")e.contentEncoding=t.format;if(t.local||t.precision===-1)e.laxFormat=!0},mime_type:(e,t)=>TS(e,t.mime)};function ct(e){let t={},r=e._zod.def,n=e._zod.traits.has("$ZodCheck")?[e,...r.checks??[]]:r.checks??[];for(let s of n)bL[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)fo(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)fo(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)mo(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)mo(t,"exclusiveMaximum",o.exclusiveMaximum);if(o.multipleOf!==void 0)xS(t,o.multipleOf);if(o.format!==void 0){if(t.format??(t.format=o.format),o.format.includes("int"))t.isInt=!0}if(o.mime)TS(t,o.mime);for(let s of o.patterns??[])$S(t,s);return t}var _L={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},vL=new Map([[yp,jb],[Ga,Db]]),PS=(e)=>vL.get(e)??e,Up=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u,laxFormat:l}=ct(e);if(typeof s==="number")o.minLength=s;if(typeof i==="number")o.maxLength=i;if(a){if(o.format=_L[a]??a,o.format==="")delete o.format;if(a==="time"||l)delete o.format}if(u)o.contentEncoding=u;if(c&&c.size>0){let d=[...c].map(PS);if(d.length===1)o.pattern=d[0].source;else if(d.length>1)o.allOf=[...d.map((f)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))]}},Wp=(e,t,r,n)=>{let o=r,{minimum:s,maximum:i,multipleOf:a,exclusiveMaximum:c,exclusiveMinimum:u,isInt:l}=ct(e);o.type=l?"integer":"number";let d=typeof u==="number"&&u>=(s??Number.NEGATIVE_INFINITY),f=typeof c==="number"&&c<=(i??Number.POSITIVE_INFINITY),m=t.target==="draft-04"||t.target==="openapi-3.0";if(d)if(m)o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;else if(typeof s==="number")o.minimum=s;if(f)if(m)o.maximum=c,o.exclusiveMaximum=!0;else o.exclusiveMaximum=c;else if(typeof i==="number")o.maximum=i;if(a){let h=new Set;for(let b of a)if(Number.isFinite(b)&&b!==0)h.add(Math.abs(b));else Ve(e,t,o,n,`A multipleOf divisor of ${b} cannot be represented in JSON Schema`);let[g,...y]=h;if(g!==void 0)o.multipleOf=g;if(y.length)o.allOf=[...o.allOf??[],...y.map((b)=>({multipleOf:b}))]}},Vp=(e,t,r,n)=>{r.type="boolean"},OS=(e,t,r,n)=>{Ve(e,t,r,n,"BigInt cannot be represented in JSON Schema")},IS=(e,t,r,n)=>{Ve(e,t,r,n,"Symbols cannot be represented in JSON Schema")},Zp=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},AS=(e,t,r,n)=>{Ve(e,t,r,n,"Undefined cannot be represented in JSON Schema")},RS=(e,t,r,n)=>{Ve(e,t,r,n,"Void cannot be represented in JSON Schema")},Bp=(e,t,r,n)=>{r.not={}},Kp=(e,t,r,n)=>{},Hp=(e,t,r,n)=>{},CS=(e,t,r,n)=>{Ve(e,t,r,n,"Date cannot be represented in JSON Schema")},Gp=(e,t,r,n)=>{let o=e._zod.def,s=$s(o.entries);if(s.length===0){r.not={};return}if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";r.enum=s},Jp=(e,t,r,n)=>{let o=e._zod.def;if(o.values.length===0){r.not={};return}let s=[];for(let i of o.values)if(i===void 0){if(Ve(e,t,r,n,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof i==="bigint"){if(Ve(e,t,r,n,"BigInt literals cannot be represented in JSON Schema"))return;s.push(Number(i))}else s.push(i);if(s.length===0);else if(s.length===1){let i=s[0];if(r.type=i===null?"null":typeof i,t.target==="draft-04"||t.target==="openapi-3.0")r.enum=[i];else r.const=i}else{if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";if(s.every((i)=>typeof i==="boolean"))r.type="boolean";if(s.every((i)=>i===null))r.type="null";r.enum=s}},zS=(e,t,r,n)=>{Ve(e,t,r,n,"NaN cannot be represented in JSON Schema")},Yp=(e,t,r,n)=>{let o=r,s=e._zod.pattern;if(!s)throw Error("Pattern not found in template literal");o.type="string",o.pattern=s.source},NS=(e,t,r,n)=>{let o=r;o.type="string",o.format="binary",o.contentEncoding="binary";let{minimum:s,maximum:i,mime:a}=ct(e);if(s!==void 0)o.minLength=s;if(i!==void 0)o.maxLength=i;if(!a)return;if(a.length===0)o.not={};else if(a.length===1)o.contentMediaType=a[0];else o.anyOf=a.map((c)=>({contentMediaType:c}))},LS=(e,t,r,n)=>{r.type="boolean"},Xp=(e,t,r,n)=>{Ve(e,t,r,n,"Custom types cannot be represented in JSON Schema")},jS=(e,t,r,n)=>{Ve(e,t,r,n,"Function types cannot be represented in JSON Schema")},Qp=(e,t,r,n)=>{Ve(e,t,r,n,"Transforms cannot be represented in JSON Schema")},DS=(e,t,r,n)=>{Ve(e,t,r,n,"Map cannot be represented in JSON Schema")},MS=(e,t,r,n)=>{Ve(e,t,r,n,"Set cannot be represented in JSON Schema")},ef=(e,t,r,n)=>{let o=r,s=e._zod.def,{minimum:i,maximum:a}=ct(e);if(typeof i==="number")o.minItems=i;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=_e(s.element,t,{...n,path:[...n.path,"items"]})};function Fs(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return Fs(t.out);if(t.type==="catch")return Fs(t.innerType);return e._zod.optin}var tf=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&Ve(e,t,o,n,"Symbol keys cannot be represented in JSON Schema"))return;o.type="object",o.properties={};for(let u in i)bt(o.properties,u,_e(i[u],t,{...n,path:[...n.path,"properties",u]}));let c=[];for(let u of Object.keys(i)){let l=s.shape[u];if(t.io==="input"?Fs(l)===void 0:l._zod.optout===void 0)c.push(u)}if(c.length>0)o.required=c;if(s.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!s.catchall){if(t.io==="output")o.additionalProperties=!1}else if(s.catchall)o.additionalProperties=_e(s.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},rf=(e,t,r,n)=>{let o=e._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>_e(a,t,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));if(s)r.oneOf=i;else r.anyOf=i},nf=(e,t,r,n)=>{let o=e._zod.def,s=_e(o.left,t,{...n,path:[...n.path,"allOf",0]}),i=_e(o.right,t,{...n,path:[...n.path,"allOf",1]}),a=(u)=>("allOf"in u)&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(i)?i.allOf:[i]];r.allOf=c,t.intersections.push(c)},of=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="array";let i=t.target==="draft-2020-12"?"prefixItems":"items",a=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",c=s.items.map((g,y)=>_e(g,t,{...n,path:[...n.path,i,y]})),u=s.rest?_e(s.rest,t,{...n,path:[...n.path,a,...t.target==="openapi-3.0"?[s.items.length]:[]]}):null,l=s.items.length;while(l>0){let g=s.items[l-1];if(!(t.io==="input"?Fs(g)!==void 0:g._zod.optout==="optional"))break;l--}let d=s.items.length,f=!s.rest;if(t.target==="draft-2020-12"){if(o.prefixItems=c,f)o.items=!1;else if(u)o.items=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},u)o.items.anyOf.push(u);if(l>0)o.minItems=l;if(f)o.maxItems=d}else{if(o.items=c,f)o.additionalItems=!1;else if(u)o.additionalItems=u;if(l>0)o.minItems=l;if(f)o.maxItems=d}let{minimum:m,maximum:h}=ct(e);if(typeof m==="number")o.minItems=m;if(typeof h==="number")o.maxItems=h};function qp(e,t,r){if(t.$ref){if(r.has(t))return t;r.add(t);let h=e.get(t)?.def;if(!h)return t;let g=qp(e,h,r);return g===h?t:g}for(let h of["anyOf","oneOf"]){let g=t[h];if(!Array.isArray(g))continue;let y=g.map((b)=>qp(e,b,r));if(y.some((b,T)=>b!==g[T]))t={...t,[h]:y}}let n=Array.isArray(t.type)?t.type:[t.type],o=!n.includes("string")&&n.some((h)=>h==="number"||h==="integer"),s=t.enum??(t.const!==void 0?[t.const]:void 0);if(!o&&!s?.some((h)=>typeof h==="number"))return t;let{minimum:i,maximum:a,exclusiveMinimum:c,exclusiveMaximum:u,multipleOf:l,format:d,id:f,...m}=t;if(m.enum)m.enum=m.enum.map((h)=>typeof h==="number"?String(h):h);else if(typeof m.const==="number")m.const=String(m.const);if(!o)return m;if(m.type="string",!s)m.pattern=(n.includes("number")?uo:Wa).source;return m}var Fp=new WeakMap;function SL(e){let t=new Map;for(let n of e.seen.values())if(n.def&&!t.has(n.schema))t.set(n.schema,n);let r=new Map;for(let n of Fp.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=qp(t,s,new Set);if(i!==s)r.set(s,i)}if(!r.size)return;for(let n of e.seen.values())for(let o of[n.schema,n.def]){let s=o&&r.get(o.propertyNames);if(s)o.propertyNames=s}}var sf=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="object";let i=s.keyType,a=ct(i).patterns;if(s.mode==="loose"&&a&&a.size>0){let l=_e(s.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let d of a)bt(o.patternProperties,PS(d).source,l)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){o.propertyNames=_e(s.keyType,t,{...n,path:[...n.path,"propertyNames"]});let l=Fp.get(t);if(!l)l=[],Fp.set(t,l),t.deferred.push(()=>SL(t));l.push(e)}o.additionalProperties=_e(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&Fs(s.valueType)!==void 0;if(c&&!s.partial&&!u){let l=[...c].filter((d)=>typeof d==="string"||typeof d==="number");if(l.length>0)o.required=l.map(String)}},af=(e,t,r,n)=>{let o=e._zod.def,s=_e(o.innerType,t,n),i=t.seen.get(e);if(t.target==="openapi-3.0")i.ref=o.innerType,r.nullable=!0;else r.anyOf=[s,{type:"null"}]},cf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},uf=Symbol();function qS(e,t,r,n,o){let s=!1,i=JSON.stringify(e,(a,c)=>{if(typeof c!=="bigint")return c;return s=!0,null});if(!s)return JSON.parse(i);return Ve(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),uf}var lf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i=qS(o.defaultValue,e,t,r,n);if(i!==uf)r.default=i},df=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);if(s.ref=o.innerType,t.io!=="input")return;let i=qS(o.defaultValue,e,t,r,n);if(i!==uf)r._prefault=i},pf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{Ve(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},ff=(e,t,r,n)=>{let o=e._zod.def,s=o.in._zod.traits.has("$ZodTransform"),i=t.io==="input"?s?o.out:o.in:o.out;_e(i,t,n);let a=t.seen.get(e);a.ref=i},mf=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType,r.readOnly=!0},FS=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},uc=(e,t,r,n)=>{let o=e._zod.def;_e(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},hf=(e,t,r,n)=>{let o=e._zod.innerType;_e(o,t,n);let s=t.seen.get(e);s.ref=o},kS={string:Up,number:Wp,boolean:Vp,bigint:OS,symbol:IS,null:Zp,undefined:AS,void:RS,never:Bp,any:Kp,unknown:Hp,date:CS,enum:Gp,literal:Jp,nan:zS,template_literal:Yp,file:NS,success:LS,custom:Xp,function:jS,transform:Qp,map:DS,set:MS,array:ef,object:tf,union:rf,intersection:nf,tuple:of,record:sf,nullable:af,nonoptional:cf,default:lf,prefault:df,catch:pf,pipe:ff,readonly:mf,promise:FS,optional:uc,lazy:hf};function US(e,t){if("_idmap"in e){let n=e,o=Ds({...t,processors:kS}),s={};for(let c of n._idmap.entries()){let[u,l]=c;_e(l,o)}let i={},a={registry:n,uri:t?.uri,defs:s};o.external=a;for(let c of n._idmap.entries()){let[u,l]=c;Ms(o,l),bt(i,u,qs(o,l))}if(Object.keys(s).length>0){let c=o.target==="draft-2020-12"?"$defs":"definitions";i.__shared={[c]:s}}return{schemas:i}}let r=Ds({...t,processors:kS});return _e(e,r),Ms(r,e),qs(r,e)}var WS=new WeakSet([Object.prototype,Error.prototype]);function lc(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let n=r(this);return Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0})}})}var AL=(e,t)=>{db.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(WS.has(r))return;WS.add(r),lc(r,"format",(n)=>(o)=>ip(n,o)),lc(r,"flatten",(n)=>(o)=>sp(n,o)),lc(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,Ts,2)}),lc(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,Ts,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var vt=O("ZodError",AL,void 0,{Parent:Error});var VS=Da(vt),ZS=Ma(vt),BS=Is(vt),KS=qa(vt),HS=mb(vt),GS=hb(vt),JS=gb(vt),YS=yb(vt),XS=wb(vt),QS=bb(vt),ek=_b(vt),tk=vb(vt);function CL(){if(!rt.localeError)at($p())}function Us(){if(!rt.memoizer)at({memoizer:xp()})}var ge=O("ZodType",(e,t)=>(CL(),fe.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(_t(t,{checks:[...t.checks??[],...e.map((r)=>typeof r==="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return Zt(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check($j(e,t))},superRefine(e,t){return this.check(Tj(e,t))},overwrite(e){return this.check(Wr(e))},optional(){return Te(this)},exactOptional(){return lj(this)},nullable(){return nk(this)},nullish(){return Te(nk(this))},nonoptional(e){return gj(this,e)},array(){return k(this)},or(e){return te([this,e])},and(e){return fc(this,e)},transform(e){return ok(this,dk(e))},default(e){return fj(this,e)},prefault(e){return hj(this,e)},catch(e){return wj(this,e)},pipe(e){return ok(this,e)},readonly(){return vj(this)},describe(e){let t=this.clone();return Ur.add(t,{description:e}),t},meta(...e){if(e.length===0)return Ur.get(this);let t=this.clone();return Ur.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get "~standard"(){return La(this,"~standard",{...gp(this),jsonSchema:{input:js(this,"input"),output:js(this,"output")}})},set "~standard"(e){$r(this,"~standard",e)},parse:function e(t,r){return VS(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await ZS(this,t,r,{callee:e})},safeParse(e,t){return BS(this,e,t)},async safeParseAsync(e,t){return KS(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){$r(this,"spa",e)},validate(e,t){return Fa(this,e,t)},validateAsync(e,t){return Ua(this,e,t)},encode:function e(t,r){return HS(this,t,r,{callee:e})},decode:function e(t,r){return GS(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await JS(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await YS(this,t,r,{callee:e})},safeEncode(e,t){return XS(this,e,t)},safeDecode(e,t){return QS(this,e,t)},async safeEncodeAsync(e,t){return ek(this,e,t)},async safeDecodeAsync(e,t){return tk(this,e,t)},toJSONSchema(e){return wS(this,{})(e)},get description(){return Ur.get(this)?.description},get _def(){return this._zod.def}}),sk=O("_ZodString",(e,t)=>{Ha.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Up(e,r,n,o)},sb({format:(e)=>ct(e).format??null,minLength:(e)=>ct(e).minimum??null,maxLength:(e)=>ct(e).maximum??null},{regex(...e){return this.check(Pp(...e))},includes(...e){return this.check(Ap(...e))},startsWith(...e){return this.check(Rp(...e))},endsWith(...e){return this.check(Cp(...e))},min(...e){return this.check(po(...e))},max(...e){return this.check(ac(...e))},length(...e){return this.check(cc(...e))},nonempty(...e){return this.check(po(1,...e))},lowercase(e){return this.check(Op(e))},uppercase(e){return this.check(Ip(e))},trim(){return this.check(Np())},normalize(...e){return this.check(zp(...e))},toLowerCase(){return this.check(Lp())},toUpperCase(){return this.check(jp())},slugify(){return this.check(Dp())}})),ik=O("ZodString",(e,t)=>{Ha.init(e,t),sk.init(e,t)},{email(e){return this.check(zv(zL,e))},url(e){return this.check(Ep(ak,e))},jwt(e){return this.check(eS(JL,e))},emoji(e){return this.check(qv(LL,e))},guid(e){return this.check(Nv(NL,e))},uuid(e){return this.check(Lv(dc,e))},uuidv4(e){return this.check(jv(dc,e))},uuidv6(e){return this.check(Dv(dc,e))},uuidv7(e){return this.check(Mv(dc,e))},nanoid(e){return this.check(Fv(jL,e))},cuid(e){return this.check(Uv(DL,e))},cuid2(e){return this.check(Wv(ML,e))},ulid(e){return this.check(Vv(qL,e))},base64(e){return this.check(Yv(KL,e))},base64url(e){return this.check(Xv(HL,e))},xid(e){return this.check(Zv(FL,e))},ksuid(e){return this.check(Bv(UL,e))},ipv4(e){return this.check(Kv(WL,e))},ipv6(e){return this.check(Hv(VL,e))},cidrv4(e){return this.check(Gv(ZL,e))},cidrv6(e){return this.check(Jv(BL,e))},e164(e){return this.check(Qv(GL,e))},datetime(e){return this.check(ec(Ws,e))},date(e){return this.check(tc(Vs,e))},time(e){return this.check(rc(Zs,e))},duration(e){return this.check(nc(Bs,e))}});function p(e){return Cv(ik,e)}var Oe=O("ZodStringFormat",(e,t)=>{xe.init(e,t),sk.init(e,t)}),Ws=O("ZodISODateTime",(e,t)=>{D_.init(e,t),Oe.init(e,t)}),Vs=O("ZodISODate",(e,t)=>{M_.init(e,t),Oe.init(e,t)}),Zs=O("ZodISOTime",(e,t)=>{q_.init(e,t),Oe.init(e,t)}),Bs=O("ZodISODuration",(e,t)=>{F_.init(e,t),Oe.init(e,t)}),zL=O("ZodEmail",(e,t)=>{E_.init(e,t),Oe.init(e,t)});var NL=O("ZodGUID",(e,t)=>{$_.init(e,t),Oe.init(e,t)});var dc=O("ZodUUID",(e,t)=>{T_.init(e,t),Oe.init(e,t)});var ak=O("ZodURL",(e,t)=>{I_.init(e,t),Oe.init(e,t)});function Ks(e){return Ep(ak,e)}var LL=O("ZodEmoji",(e,t)=>{A_.init(e,t),Oe.init(e,t)});var jL=O("ZodNanoID",(e,t)=>{R_.init(e,t),Oe.init(e,t)});var DL=O("ZodCUID",(e,t)=>{C_.init(e,t),Oe.init(e,t)});var ML=O("ZodCUID2",(e,t)=>{z_.init(e,t),Oe.init(e,t)});var qL=O("ZodULID",(e,t)=>{N_.init(e,t),Oe.init(e,t)});var FL=O("ZodXID",(e,t)=>{L_.init(e,t),Oe.init(e,t)});var UL=O("ZodKSUID",(e,t)=>{j_.init(e,t),Oe.init(e,t)});var WL=O("ZodIPv4",(e,t)=>{U_.init(e,t),Oe.init(e,t)});var VL=O("ZodIPv6",(e,t)=>{V_.init(e,t),Oe.init(e,t)});var ZL=O("ZodCIDRv4",(e,t)=>{Z_.init(e,t),Oe.init(e,t)});var BL=O("ZodCIDRv6",(e,t)=>{B_.init(e,t),Oe.init(e,t)});var KL=O("ZodBase64",(e,t)=>{H_.init(e,t),Oe.init(e,t)});var HL=O("ZodBase64URL",(e,t)=>{G_.init(e,t),Oe.init(e,t)});var GL=O("ZodE164",(e,t)=>{J_.init(e,t),Oe.init(e,t)});var JL=O("ZodJWT",(e,t)=>{Y_.init(e,t),Oe.init(e,t)});var pc=O("ZodNumber",(e,t)=>{wp.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Wp(e,r,n,o),e.isFinite=!0},sb({minValue:(e)=>{let{minimum:t,exclusiveMinimum:r}=ct(e);return Math.max(t??Number.NEGATIVE_INFINITY,r??Number.NEGATIVE_INFINITY)},maxValue:(e)=>{let{maximum:t,exclusiveMaximum:r}=ct(e);return Math.min(t??Number.POSITIVE_INFINITY,r??Number.POSITIVE_INFINITY)},isInt:(e)=>{let{isInt:t,multipleOf:r}=ct(e);return!!t||!!r?.some(Number.isSafeInteger)},format:(e)=>ct(e).format??null},{gt(e,t){return this.check(sc(e,t))},gte(e,t){return this.check(Ns(e,t))},min(e,t){return this.check(Ns(e,t))},lt(e,t){return this.check(oc(e,t))},lte(e,t){return this.check(zs(e,t))},max(e,t){return this.check(zs(e,t))},int(e){return this.check(rk(e))},safe(e){return this.check(rk(e))},positive(e){return this.check(sc(0,e))},nonnegative(e){return this.check(Ns(0,e))},negative(e){return this.check(oc(0,e))},nonpositive(e){return this.check(zs(0,e))},multipleOf(e,t){return this.check(ic(e,t))},step(e,t){return this.check(ic(e,t))},finite(){return this}}));function P(e){return tS(pc,e)}var YL=O("ZodNumberFormat",(e,t)=>{X_.init(e,t),pc.init(e,t)});function rk(e){return nS(YL,e)}var ck=O("ZodBoolean",(e,t)=>{Q_.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Vp(e,r,n,o)});function D(e){return oS(ck,e)}var XL=O("ZodNull",(e,t)=>{ev.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Zp(e,r,n,o)});function Hs(e){return sS(XL,e)}var QL=O("ZodAny",(e,t)=>{tv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Kp(e,r,n,o)});function uk(){return iS(QL)}var ej=O("ZodUnknown",(e,t)=>{rv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Hp(e,r,n,o)});function ne(){return aS(ej)}var tj=O("ZodNever",(e,t)=>{nv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Bp(e,r,n,o)});function rj(e){return cS(tj,e)}var nj=O("ZodArray",(e,t)=>{Us(),ov.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ef(e,r,n,o),e.element=t.element},{min(e,t){return this.check(po(e,t))},nonempty(e){return this.check(po(1,e))},max(e,t){return this.check(ac(e,t))},length(e,t){return this.check(cc(e,t))},unwrap(){return this.element}});function k(e,t){return uS(nj,e,t)}var wf=O("ZodObject",(e,t)=>{Us(),av.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>tf(e,r,n,o),jN(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(_t(this._zod.def,{catchall:e}))},passthrough(){return this.clone(_t(this._zod.def,{catchall:ne()}))},loose(){return this.clone(_t(this._zod.def,{catchall:ne()}))},strict(){return this.clone(_t(this._zod.def,{catchall:rj()}))},strip(){return this.clone(_t(this._zod.def,{catchall:void 0}))},extend(e){return ON(this,e)},safeExtend(e){return IN(this,e)},merge(e){return AN(this,e)},pick(e){return EN(this,e)},omit(e){return PN(this,e)},partial(...e){return tb(_f,this,e[0])},exactPartial(...e){return tb(pk,this,e[0],"exactPartial")},required(...e){return RN(fk,this,e[0])}});function w(e,t){let r={type:"object",shape:e??{},...U(t)};return new wf(r)}function ve(e,t){return new wf({type:"object",shape:e,catchall:ne(),...U(t)})}var lk=O("ZodUnion",(e,t)=>{bp.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>rf(e,r,n,o),e.options=t.options});function te(e,t){return new lk({type:"union",options:e,...U(t)})}var oj=O("ZodDiscriminatedUnion",(e,t)=>{lk.init(e,t),cv.init(e,t)});function It(e,t,r){return new oj({type:"union",options:t,discriminator:e,...U(r)})}var sj=O("ZodIntersection",(e,t)=>{uv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>nf(e,r,n,o)});function fc(e,t){return new sj({type:"intersection",left:e,right:t})}var ij=O("ZodTuple",(e,t)=>{Us(),lv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>of(e,r,n,o)},{rest(e){return this.clone({...this._zod.def,rest:e})},partial(){let e=this._zod.def;if(e.checks?.length)throw Error(".partial() cannot be used on tuple schemas containing refinements");return this.clone({...e,items:e.items.map((t)=>new _f({type:"optional",innerType:t}))})}});function aj(e,t,r){let n=t instanceof fe,o=n?r:t;return new ij({type:"tuple",items:e,rest:n?t:null,...U(o)})}var gf=O("ZodRecord",(e,t)=>{Us(),dv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>sf(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function K(e,t,r){if(!t||!t._zod)return new gf({type:"record",keyType:p(),valueType:e,...U(t)});return new gf({type:"record",keyType:e,valueType:t,...U(r)})}function bf(e,t,r){return new gf({type:"record",keyType:e,valueType:t,...U(r),partial:!0})}var yf=O("ZodEnum",(e,t)=>{pv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Gp(e,n,o,s),e.enum=t.entries,e.options=[...e._zod.values];let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=t.entries[i];else throw Error(`Key ${i} not found in enum`);return new yf({...t,checks:[],...U(o),entries:s})},e.exclude=(n,o)=>{let s={...t.entries};for(let i of n)if(r.has(i))delete s[i];else throw Error(`Key ${i} not found in enum`);return new yf({...t,checks:[],...U(o),entries:s})}});function z(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new yf({type:"enum",entries:r,...U(t)})}var cj=O("ZodLiteral",(e,t)=>{fv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Jp(e,r,n,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function C(e,t){return new cj({type:"literal",values:Array.isArray(e)?e:[e],...U(t)})}var uj=O("ZodTransform",(e,t)=>{Us(),mv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Qp(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Os(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(Cn(s,r.value,t));else{let i=s;if(i.fatal)i.continue=!1;if(i.code??(i.code="custom"),!("input"in i))i.input=r.value;i.inst??(i.inst=e),r.issues.push(Cn(i))}};let o=t.transform(r.value,r);if(o instanceof Promise)return o.then((s)=>(r.value=s,r));return r.value=o,r}});function dk(e){return new uj({type:"transform",transform:e})}var _f=O("ZodOptional",(e,t)=>{_p.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>uc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Te(e){return new _f({type:"optional",innerType:e})}var pk=O("ZodExactOptional",(e,t)=>{hv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>uc(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function lj(e){return new pk({type:"optional",innerType:e})}var dj=O("ZodNullable",(e,t)=>{gv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>af(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function nk(e){return new dj({type:"nullable",innerType:e})}var pj=O("ZodDefault",(e,t)=>{yv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>lf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function fj(e,t){return new pj({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():Yd(t)}})}var mj=O("ZodPrefault",(e,t)=>{wv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>df(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function hj(e,t){return new mj({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():Yd(t)}})}var fk=O("ZodNonOptional",(e,t)=>{bv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>cf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function gj(e,t){return new fk({type:"nonoptional",innerType:e,...U(t)})}var yj=O("ZodCatch",(e,t)=>{_v.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>pf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function wj(e,t){return new yj({type:"catch",innerType:e,catchValue:typeof t==="function"?t:ib(t)})}var mk=O("ZodPipe",(e,t)=>{vp.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ff(e,r,n,o),e.in=t.in,e.out=t.out});function ok(e,t){return new mk({type:"pipe",in:e,out:t})}var bj=O("ZodPreprocess",(e,t)=>{mk.init(e,t),vv.init(e,t)}),_j=O("ZodReadonly",(e,t)=>{Sv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>mf(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function vj(e){return new _j({type:"readonly",innerType:e})}var Sj=O("ZodTemplateLiteral",(e,t)=>{kv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Yp(e,r,n,o)});function kj(e,t){return new Sj({type:"template_literal",parts:e,...U(t)})}var xj=O("ZodLazy",(e,t)=>{xv.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>hf(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function vf(e){return new xj({type:"lazy",getter:e})}var hk=O("ZodCustom",(e,t)=>{$v.init(e,t),ge.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Xp(e,r,n,o)});function mc(e,t){return lS(hk,e??(()=>!0),t)}function $j(e,t={}){return dS(hk,e,t)}function Tj(e,t){return pS(e,t)}function At(e){let t=vf(()=>te([p(e),P(),D(),Hs(),k(t),K(p(),t)]));return t}function hc(e,t){return new bj({type:"pipe",in:dk(e),out:t})}var yk={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};var gk;(function(e){})(gk||(gk={}));function wk(e){return ec(Ws,e)}function Pj(e){return tc(Vs,e)}function Oj(e){return rc(Zs,e)}function Ij(e){return nc(Bs,e)}function Aj(e){return rS(pc,e)}var _k={name:"@tripwire-sh/cli",version:"0.1.7",description:"Set up Tripwire in your coding agents and manage it from the terminal",type:"module",imports:{"#/*":"./src/*"},license:"MIT",repository:{type:"git",url:"git+https://github.com/Boring-Software-Inc/v2.git",directory:"apps/cli"},homepage:"https://tripwire.sh",bin:{tripwire:"dist/tripwire.js"},files:["dist"],engines:{node:">=20.12"},publishConfig:{access:"public"},scripts:{build:"bun build src/index.ts --target node --format esm --minify --outfile dist/tripwire.js",typecheck:"tsc --noEmit"},devDependencies:{"@clack/prompts":"^1.7.0","@modelcontextprotocol/sdk":"^1.32.1","@tripwire/contracts":"workspace:*",commander:"^14.0.3","jsonc-parser":"^3.3.1",picocolors:"^1.1.1",yaml:"^2.9.0",zod:"^4.0.0"}};var gc=_k.version,q="tripwire",Gs="tripwire-get-started",vk="tripwire-workflows",Js="tripwire-cli",Cj="https://mcp.tripwire.sh/mcp",zj="https://app.tripwire.sh/api/auth",Sk="offline_access tripwire:read tripwire:configure tripwire:moderate tripwire:admin";function go(e){return e.TRIPWIRE_MCP_URL||Cj}function kk(e){return(e.TRIPWIRE_AUTH_URL||zj).replace(/\/+$/,"")}var Nj="urn:ietf:params:oauth:grant-type:device_code",Lj=w({device_code:p(),user_code:p(),verification_uri:p(),verification_uri_complete:p().optional(),expires_in:P(),interval:P().optional()}),$k=w({access_token:p().min(1),refresh_token:p().min(1).optional(),expires_in:P().optional(),token_type:p().optional()}),kf=w({error:p(),error_description:p().optional()});class Sf extends Error{constructor(){super("Session expired. Run tripwire login.");this.name="SessionExpiredError"}}class Ys extends Error{constructor(){super("Tripwire is not reachable right now. Try again in a minute.");this.name="AuthUnreachableError"}}var Tk={fetch:(e,t)=>fetch(e,t),sleep:(e)=>new Promise((t)=>setTimeout(t,e)),now:()=>Date.now()};async function yc(e,t,r){let n=await e.fetch(t,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded",accept:"application/json"},body:new URLSearchParams(r).toString()}),o=await n.text(),s={error:"invalid_response",error_description:o.slice(0,200)};try{let i=At().safeParse(JSON.parse(o));return{status:n.status,body:i.success?i.data:s,headers:n.headers}}catch{return{status:n.status,body:s,headers:n.headers}}}function Ek(e,t){let r=kf.safeParse(e);if(!r.success)return Error(t);return Error(r.data.error_description?`${r.data.error}: ${r.data.error_description}`:r.data.error)}async function Pk(e,t,r){let{status:n,body:o}=await yc(e,`${t}/device/code`,{client_id:Js,scope:Sk,resource:r}),s=Lj.safeParse(o);if(n>=400||!s.success)throw Ek(o,`Device authorization failed (HTTP ${n})`);return s.data}function Ok(e,t,r,n,o){let s=t.refresh_token??o;return{accessToken:t.access_token,refreshToken:s,expiresAt:t.expires_in?e.now()+t.expires_in*1000:void 0,mcpUrl:n,authUrl:r}}var xk=5000;function jj(e,t){let r=(e.get("retry-after")??e.get("x-retry-after"))?.trim();if(!r)return null;if(/^\d+$/.test(r))return Number(r)*1000;let n=Date.parse(r);return Number.isNaN(n)?null:Math.max(0,n-t)}async function Ik(e,t,r,n){let o=(n.interval??5)*1000,s=null,i=e.now()+n.expires_in*1000;while(e.now()<i){await e.sleep(Math.min(Math.max(o,s??0),i-e.now())),s=null;let{status:a,body:c,headers:u}=await yc(e,`${t}/oauth2/token`,{grant_type:Nj,device_code:n.device_code,client_id:Js,resource:r}),l=$k.safeParse(c);if(a<400&&l.success)return Ok(e,l.data,t,r);if(a===429){if(s=jj(u,e.now()),s===null)o+=xk;continue}let d=kf.safeParse(c),f=d.success?d.data.error:"";if(f==="authorization_pending")continue;if(f==="slow_down"){o+=xk;continue}if(f==="access_denied")throw Error("Sign-in was denied in the browser");if(f==="expired_token")throw Error("The code expired. Run tripwire login again.");throw Ek(c,`Token request failed (HTTP ${a})`)}throw Error("The code expired. Run tripwire login again.")}async function Ak(e,t){if(!t.refreshToken)throw new Sf;let{status:r,body:n}=await yc(e,`${t.authUrl}/oauth2/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,client_id:Js,resource:t.mcpUrl}).catch(()=>{throw new Ys}),o=$k.safeParse(n);if(r>=400||!o.success){let s=kf.safeParse(n);throw(r===400||r===401)&&s.success&&s.data.error!=="invalid_response"?new Sf:new Ys}return Ok(e,o.data,t.authUrl,t.mcpUrl,t.refreshToken)}async function Rk(e,t){let r=t.refreshToken??t.accessToken;await yc(e,`${t.authUrl}/oauth2/revoke`,{token:r,client_id:Js}).catch(()=>{return})}import{stripVTControlCharacters as MF}from"node:util";var Dj=z(["pending","approved","rejected"]),Aie=Dj.options;var Xs=[{id:"github",label:"GitHub",status:"live",signIn:"social",reviews:!0},{id:"opengit",label:"OpenGit",status:"live",paused:!0},{id:"gitlab",label:"GitLab",status:"planned"},{id:"origin",label:"ORIGIN",status:"planned"}];function Ck(e){return e.status==="live"}var Qs=z(Xs.filter(Ck).map((e)=>e.id)),zie=Xs.filter((e)=>Ck(e)&&!("paused"in e)).map((e)=>e.label),Nie=Xs.filter((e)=>e.status==="planned").map((e)=>e.label),Lie=Xs.filter((e)=>("signIn"in e)).map((e)=>e.id);var Mj=Object.fromEntries(Xs.map((e)=>[e.id,e]));var wc=w({owner:p(),name:p(),fullName:p()}),qj=w({id:p(),login:p(),name:p(),type:z(["Organization","User"]),avatarUrl:p(),repoAccess:z(["all","selected"]),repoCount:P(),installedAt:pe.datetime()}),Fj=w({id:p(),owner:p(),name:p(),fullName:p(),private:D(),pushedAt:pe.datetime(),openFlags:P(),stars:P()}),Mie=w({accounts:k(qj),repos:k(Fj)});var ei=z(["change-request.opened","change-request.updated","change-request.closed","comment.created","push","schedule.matched","installation.created","installation.deleted","installation-repositories.added","installation-repositories.removed"]),zk=w({login:p(),externalId:p(),avatarUrl:p().optional()}),xf=w({number:P().int(),title:p(),headSha:p(),baseRef:p().optional(),headRef:p().optional(),draft:D().optional(),url:p()}),Uj=w({externalId:p(),body:p(),url:p(),subjectNumber:P().int(),byTripwire:D().optional()}),Wj=w({ref:p(),headSha:p(),commitCount:P().int(),url:p().optional()}),_c=z(["issue","change-request"]),Vj=w({kind:_c,number:P().int(),title:p(),url:p(),state:z(["open","closed"]),author:p(),labels:k(p()),locked:D(),updatedAt:pe.datetime()}),Zj=w({workflowId:p(),nodeId:p(),tickId:p()}),yo={id:p(),forge:Qs,deliveryId:p(),repo:wc,repoExternalId:p().optional(),installationExternalId:p().optional(),actor:zk,occurredAt:pe.datetime(),receivedAt:pe.datetime()},bc={id:p(),forge:Qs,deliveryId:p(),actor:zk,occurredAt:pe.datetime(),receivedAt:pe.datetime(),installation:w({externalId:p(),account:p(),accountType:z(["User","Organization"]).optional()}),repositories:k(w({externalId:p(),owner:p(),name:p(),fullName:p(),private:D()}))},Nk=It("kind",[w({...yo,kind:C("change-request.opened"),changeRequest:xf}),w({...yo,kind:C("change-request.updated"),changeRequest:xf}),w({...yo,kind:C("change-request.closed"),changeRequest:xf}),w({...yo,kind:C("comment.created"),comment:Uj}),w({...yo,kind:C("push"),push:Wj}),w({...yo,kind:C("schedule.matched"),schedule:Zj,thread:Vj}),w({...bc,kind:C("installation.created")}),w({...bc,kind:C("installation.deleted")}),w({...bc,kind:C("installation-repositories.added")}),w({...bc,kind:C("installation-repositories.removed")})]),Bj=ei.extract(["change-request.opened","change-request.updated","change-request.closed"]),Vie=Bj.options;var Kj=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],Hj=["sun","mon","tue","wed","thu","fri","sat"],Gj=[{name:"minute",range:"0 to 59",min:0,max:59},{name:"hour",range:"0 to 23",min:0,max:23},{name:"day of month",range:"1 to 31",min:1,max:31},{name:"month",range:"1 to 12 or jan to dec",min:1,max:12,names:Kj,nameBase:1},{name:"day of week",range:"0 to 7 or sun to sat",min:0,max:7,names:Hj,nameBase:0}];function $f(e,t){let r=e.toLowerCase(),n=t.names?.indexOf(r)??-1;if(n>=0)return n+(t.nameBase??0);if(!/^\d+$/.test(e))return null;let o=Number(e);return o>=t.min&&o<=t.max?o:null}function Jj(e,t){let r=new Set;for(let n of e.split(",")){let o=n.split("/"),[s="",i]=o;if(o.length>2||s.split("-").length>2)return{ok:!1,error:`${t.name} must be a number, a range like 1-5 or a step like */15`};let a=i===void 0?1:Number(i);if(!(Number.isInteger(a)&&a>=1))return{ok:!1,error:`${t.name} step must be a whole number of 1 or more, like */15`};let c,u;if(s==="*")c=t.min,u=t.max;else if(s.includes("-")){let[l="",d=""]=s.split("-");c=$f(l,t),u=$f(d,t)}else c=$f(s,t),u=i===void 0?c:t.max;if(c===null||u===null)return{ok:!1,error:`${t.name} must be ${t.range}`};if(c>u)return{ok:!1,error:`${t.name} range must go from low to high, like 1-5`};for(let l=c;l<=u;l+=a)r.add(l)}return{ok:!0,values:[...r].sort((n,o)=>n-o)}}function zn(e){let t=e.trim().split(/\s+/);if(t.length!==5)return{ok:!1,error:"use five fields: minute hour day month weekday"};let r=[];for(let[u,l]of Gj.entries()){let d=Jj(t[u]??"",l);if(!d.ok)return d;r.push(d.values)}let[n=[],o=[],s=[],i=[],a=[]]=r,c=[...new Set(a.map((u)=>u===7?0:u))].sort((u,l)=>u-l);return{ok:!0,spec:{minutes:n,hours:o,days:s,months:i,weekdays:c,daysRestricted:!(t[2]??"*").startsWith("*"),weekdaysRestricted:!(t[4]??"*").startsWith("*")}}}function ti(e){try{return new Intl.DateTimeFormat("en-US",{timeZone:e}),!0}catch{return!1}}var Lk=new Map;function Yj(e){let t=Lk.get(e);if(t)return t;let r=new Intl.DateTimeFormat("en-US",{timeZone:e,hourCycle:"h23",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});return Lk.set(e,r),r}function Pf(e,t){let r=Yj(t).formatToParts(e),n=(o)=>Number(r.find((s)=>s.type===o)?.value??"0");return{year:n("year"),month:n("month"),day:n("day"),hour:n("hour"),minute:n("minute")}}function Tf(e,t){let r=Pf(new Date(e),t),n=Date.UTC(r.year,r.month-1,r.day,r.hour,r.minute),o=e-(e%60000+60000)%60000;return n-o}function jk(e,t){let r=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute),n=[r-Tf(r-129600000,t),r-Tf(r+129600000,t),r-Tf(r,t)].sort((o,s)=>o-s);for(let o of n){let s=Pf(new Date(o),t);if(s.year===e.year&&s.month===e.month&&s.day===e.day&&s.hour===e.hour&&s.minute===e.minute)return new Date(o)}return null}function vc(e,t,r){let n=e.days.includes(t),o=e.weekdays.includes(r);if(e.daysRestricted&&e.weekdaysRestricted)return n||o;return n&&o}function Xj(e,t){return vc(e,t.getUTCDate(),t.getUTCDay())}var Qj=Array.from({length:217},(e,t)=>({day:t%31+1,weekday:Math.floor(t/31)}));function Ef(e){let t=Qj.map(({day:r,weekday:n})=>vc(e,r,n)?"1":"0").join("");return[e.minutes,e.hours,e.months].map((r)=>r.join(",")).concat(t).join(" ")}function Dk(e,t){let r=zn(e),n=zn(t);return r.ok&&n.ok&&Ef(r.spec)===Ef(n.spec)}var eD=1830,tD=180;function rD(e,t){let r=jk(e,t);if(r)return r;let n=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute);for(let o=1;o<=tD;o++){let s=new Date(n+o*60000),i=jk({year:s.getUTCFullYear(),month:s.getUTCMonth()+1,day:s.getUTCDate(),hour:s.getUTCHours(),minute:s.getUTCMinutes()},t);if(i)return i}return null}function Mk(e){let{minutes:t,hours:r}=e,n=t.slice(1).map((s,i)=>s-(t[i]??0));if(r.some((s)=>r.includes((s+1)%24)))n.push(60-(t.at(-1)??0)+(t[0]??0));return n.length>0?Math.min(...n):1440}function Of(e,t,r){let n=Pf(r,t),o=new Date(Date.UTC(n.year,n.month-1,n.day));for(let s=0;s<=eD;s++){if(e.months.includes(o.getUTCMonth()+1)&&Xj(e,o))for(let i of e.hours)for(let a of e.minutes){let c=rD({year:o.getUTCFullYear(),month:o.getUTCMonth()+1,day:o.getUTCDate(),hour:i,minute:a},t);if(c&&c.getTime()>r.getTime())return c}o.setUTCDate(o.getUTCDate()+1)}return null}var Rt=5,qe=vf(()=>te([p(),P(),D(),Hs(),k(qe),K(p(),qe)])),xc=w({x:P(),y:P()}),nD=z(["all-of","any-of","not"]),oD=z(["block","comment","label","request-review","send-to-moderation","webhook","discord","lock","close","remove-label","post-comment"]),sD=["comment"];function Fk(e){return sD.includes(e)}var Jie=w({url:Ks().meta({secret:!0}).describe("webhook url"),signingSecret:p().min(1).optional().meta({secret:!0}).describe("signing secret")}),Yie=w({url:Ks().meta({secret:!0}).describe("discord webhook url")}),wo=15,$c=p().regex(/^[A-Za-z0-9](?:[A-Za-z0-9]|-(?=[A-Za-z0-9])){0,38}$/,{error:(e)=>`${String(e.input)} is not a GitHub username`}),If=p().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,99}$/,{error:(e)=>`${String(e.input)} is not a team slug`}),Af=w({id:P().int().positive().optional(),login:$c}),Xie=w({id:P().int().positive(),login:$c,avatarUrl:p(),permission:p().min(1)}),Qie=w({name:p().min(1),color:p().regex(/^[0-9a-fA-F]{6}$/),description:p().nullable()}),iD=hc((e)=>p().safeParse(e).success?{login:e}:e,Af);function Uk(e,t){return e.id!==void 0&&t.id!==void 0?e.id===t.id:e.login.toLowerCase()===t.login.toLowerCase()}var ri=w({reviewers:k(iD).max(wo,`ask at most ${wo} people`).default([]),teamReviewers:k(If).max(wo,`ask at most ${wo} teams`).default([])}),Wk=ri.superRefine((e,t)=>{let r=e.reviewers.length+e.teamReviewers.length;if(r===0)t.addIssue({code:"custom",message:"add at least one person or team to ask"});if(r>wo)t.addIssue({code:"custom",message:`ask at most ${wo} people and teams`})}),Zr=w({labels:k(p().trim().min(1)).min(1,"choose at least one label")}),qk=5000,Tc=w({message:p().trim().min(1,"write a message").max(qk,`keep it under ${qk} characters`)}),aD=z(["resolved","off-topic","too heated","spam"]),Vk=w({reason:aD.optional()}),ni={hours:3600000,days:86400000,weeks:604800000,months:2592000000};function Rf(e){return e.n*ni[e.unit]}var Ec=52*ni.weeks,cD=3650*ni.days,uD=z(["hours","days","weeks"]),lD=z(["hours","days","weeks","months"]),dD=w({n:P().int().min(1),unit:uD}).refine((e)=>Rf(e)<=Ec,{message:"runs at least once a year"}),rr="UTC",Zk=p().min(1).refine(ti,{error:(e)=>`${String(e.input)} is not an IANA timezone, like Europe/Berlin`}),Sc=p().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"use 24-hour HH:MM, like 07:30"),Cf=z(["sunday","monday","tuesday","wednesday","thursday","friday","saturday"]),pD=It("preset",[w({preset:C("hourly"),minute:P().int().min(0).max(59)}),w({preset:C("daily"),at:Sc}),w({preset:C("weekdays"),at:Sc}),w({preset:C("weekly"),on:Cf,at:Sc}),w({preset:C("monthly"),day:P().int().min(1).max(28),at:Sc})]),Pc=w({cron:p().trim().superRefine((e,t)=>{let r=zn(e);if(!r.ok){t.addIssue({code:"custom",message:r.error});return}if(Of(r.spec,"UTC",new Date(Date.UTC(2026,0,1)))===null)t.addIssue({code:"custom",message:"this cron never runs. Pick a day the month has"});if(Mk(r.spec)<Rt)t.addIssue({code:"custom",message:`runs must be at least ${Rt} minutes apart`})})}),Bk=te([dD,pD,Pc]),Kk=w({n:P().int().min(1),unit:lD}).refine((e)=>Rf(e)<=cD,{message:"10 years at most"}),Hk=z(["open","closed","any"]),kc=k(p().min(1)),fD=w({subjects:k(_c).min(1),state:Hk,inactiveFor:Kk,labels:kc.optional(),excludeLabels:kc.optional(),skipLocked:D().default(!0)}),bo=w({every:Bk,timezone:Zk.optional(),match:fD}),mD=w({every:Bk.optional(),timezone:Zk.optional(),match:w({subjects:k(_c).optional(),state:Hk.optional(),inactiveFor:Kk.optional(),labels:kc.optional(),excludeLabels:kc.optional(),skipLocked:D().optional()}).default({})});var hD=["every","subjects","state","inactiveFor"];function Gk(e){return hD.filter((t)=>{if(!e)return!0;if(t==="every")return e.every===void 0;let r=e.match[t];return Array.isArray(r)?r.length===0:r===void 0})}var Vr=p(),gD=w({id:Vr,type:C("trigger"),kinds:k(ei).min(1),schedule:mD.optional(),position:xc.optional()});function Oc(e){return e.type==="trigger"&&(e.kinds??[]).includes("schedule.matched")}var yD=w({id:Vr,type:C("rule"),ref:p().regex(/^[a-z][a-z0-9-]*@\d+$/),config:qe,position:xc.optional()}),wD=w({id:Vr,type:C("gate"),mode:nD,position:xc.optional()}),bD=w({id:Vr,type:C("action"),action:oD,params:K(p(),qe).optional(),position:xc.optional()}),zf=It("type",[gD,yD,wD,bD]),Jk=z(["pass","fail","approve","deny"]),_D=w({id:p(),from:Vr,to:Vr,when:Jk.optional()}),ut=w({id:p(),name:p(),version:P().int().min(1),nodes:k(zf).min(1),edges:k(_D)}),Yk={id:"default@1",name:"default gate",version:1,nodes:[{id:"trigger",type:"trigger",kinds:["change-request.opened","change-request.updated"]},{id:"account-age",type:"rule",ref:"account-age@1",config:{minDays:7}},{id:"crypto",type:"rule",ref:"crypto-address@1",config:{}},{id:"honeypot",type:"rule",ref:"honeypot@1",config:{paths:[".github/workflows/**"]}},{id:"max-files",type:"rule",ref:"max-files-changed@1",config:{max:200}},{id:"english",type:"rule",ref:"english-only@1",config:{maxNonLatinRatio:0.5}},{id:"gate",type:"gate",mode:"all-of"},{id:"block",type:"action",action:"block"}],edges:[{id:"e1",from:"trigger",to:"account-age"},{id:"e2",from:"trigger",to:"crypto"},{id:"e3",from:"trigger",to:"honeypot"},{id:"e4",from:"trigger",to:"max-files"},{id:"e5",from:"trigger",to:"english"},{id:"e6",from:"account-age",to:"gate"},{id:"e7",from:"crypto",to:"gate"},{id:"e8",from:"honeypot",to:"gate"},{id:"e9",from:"max-files",to:"gate"},{id:"e10",from:"english",to:"gate"},{id:"e11",from:"gate",to:"block",when:"fail"}]};var Xk=[{kind:"change-request.opened",name:"Change request opened",description:"Runs when someone opens a change request.",toolbox:!0},{kind:"change-request.updated",name:"Change request updated",description:"Runs when a change request gets new commits or edits.",toolbox:!0},{kind:"change-request.closed",name:"Change request closed",description:"Runs when a change request is closed.",toolbox:!0},{kind:"comment.created",name:"Comment created",description:"Runs when someone comments on a change request or issue.",toolbox:!0},{kind:"push",name:"Push",description:"Runs when commits are pushed to the repo.",toolbox:!0},{kind:"schedule.matched",name:"On a schedule",description:"Runs on a timer for issues and change requests that match.",toolbox:!0},{kind:"installation.created",name:"Installation created",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation.deleted",name:"Installation deleted",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation-repositories.added",name:"Repos added",description:"Internal event. Installations sync outside workflows.",toolbox:!1},{kind:"installation-repositories.removed",name:"Repos removed",description:"Internal event. Installations sync outside workflows.",toolbox:!1}],Qk=[{mode:"all-of",name:"All of",description:"Passes only when every connected check passes. A check that was never reached does not pass."},{mode:"any-of",name:"Any of",description:"Passes when at least one connected check passes. A check that was never reached does not pass."},{mode:"not",name:"Not",description:"Flips its input: pass becomes fail, and fail becomes pass."}],ex=[{action:"block",name:"Block",description:"Fails the Tripwire check and requests changes. The change request stays open."},{action:"label",name:"Label",description:"Adds labels you choose to the change request."},{action:"request-review",name:"Request GitHub review",description:"Asks the people you choose to review on GitHub."},{action:"send-to-moderation",name:"Human review",description:"Waits for a maintainer to approve or block it in Tripwire."},{action:"webhook",name:"Webhook",description:"Posts the verdict as JSON to a URL you set."},{action:"lock",name:"Lock",description:"Locks the conversation so only maintainers can comment."},{action:"close",name:"Close",description:"Closes the issue or change request."},{action:"remove-label",name:"Remove label",description:"Removes labels you choose, if they are there."},{action:"post-comment",name:"Comment",description:"Posts a comment you write. It is separate from the verdict comment."},{action:"discord",name:"Discord",description:"Posts the verdict to a Discord channel you set."}];var nae=K(p(),qe).catch({});function Ic(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function tx(e){let t=Zr.safeParse(e);return t.success?t.data.labels:[]}function rx(e){return`${e.length===1?"the label":"the labels"} ${Ic(e)}`}function vD(e){let t=ri.safeParse(e);if(!t.success)return[];return[...t.data.reviewers.map((r)=>r.login),...t.data.teamReviewers]}function nx(e,t){switch(e){case"block":return"blocks it";case"label":{let r=tx(t);return r.length>0?`adds ${rx(r)}`:"adds labels"}case"remove-label":{let r=tx(t);return r.length>0?`removes ${rx(r)}`:"removes labels"}case"request-review":{let r=vD(t);return r.length>0?`requests GitHub review from ${Ic(r)}`:"requests GitHub review"}case"send-to-moderation":return"sends it to human review";case"webhook":return"posts the verdict to a webhook";case"discord":return"posts the verdict to Discord";case"lock":return"locks the conversation";case"close":return"closes it";case"post-comment":return"posts your comment";default:return e}}var SD=w({runId:p(),verdict:p().nullable(),status:p(),reason:p().nullable()}),ox=w({event:Nk,run:SD.nullable(),pending:D().optional()}),kD=w({repoFullName:p(),subjectNumber:P().int(),title:p(),url:p().nullable(),actor:w({login:p(),avatarUrl:p().nullable()}),currentVerdict:p().nullable(),currentRunId:p().nullable(),latestActivityAt:pe.datetime(),eventCount:P().int(),timeline:k(ox)}),xD=It("type",[w({type:C("group"),group:kD}),w({type:C("event"),entry:ox})]),aae=w({items:k(xD)});var $D=["tripwire:read","tripwire:configure","tripwire:moderate","tripwire:admin"],lae=z($D);var TD="https://tripwire.sh/orgs";var dae=w({sub:p().min(1),azp:p().min(1).optional(),client_id:p().min(1).optional(),scope:p().optional(),[TD]:k(p()).optional()});var ED=["connect_mcp","install_app","sync_repos","pick_rules","turn_on_gate","verify_check"],sx=z(ED),ix=z(["active","waiting","completed","skipped","failed"]);var PD=p().regex(/^[A-Za-z0-9]{10}$/,"A run code is 10 letters or digits."),OD=/^([a-z0-9_-]+)#([A-Za-z0-9]{10})$/;function ax(e){let t=OD.exec(e.trim());if(!(t?.[1]&&t[2]))return null;return{org:t[1],code:t[2]}}var ID=w({status:ix,detail:p().max(256).nullable(),updatedAt:pe.datetime()}),AD=bf(sx,ID),mae=w({runCode:p().trim().min(1).max(200),stage:sx,status:ix,detail:p().trim().max(256).optional()}),cx=w({code:PD,stages:AD,completedAt:pe.datetime().nullable(),lastReportAt:pe.datetime().nullable()});function ux(e){return e?`Please help me set up Tripwire.
|
|
229
229
|
|
|
230
|
-
${
|
|
230
|
+
org slug: ${e.org}
|
|
231
|
+
run code: ${e.code}`:"Please help me set up Tripwire."}var RD=200,CD=z(["read","write","edit","delete"]),zD=w({id:Vr,action:CD,at:pe.datetime()}),ND=k(zD).max(RD),oi=k(p()),LD=w({renamed:D(),nodes:w({added:oi,changed:oi,removed:oi}),edges:w({added:oi,removed:oi})}),jD=w({userId:p(),clientId:p(),name:p(),lastSignalAt:pe.datetime(),finishedAt:pe.datetime().nullable(),nodes:ND}),DD=z(["open","promoted","discarded"]),MD=w({id:p(),name:p(),status:DD,definition:ut.nullable(),revision:P().int().min(0),lastChange:LD.nullable(),createdAt:pe.datetime(),updatedAt:pe.datetime(),expiresAt:pe.datetime()}),qD=w({repoId:p(),definitionId:p(),workflowId:p().nullable(),draft:MD.nullable(),agents:k(jD)}),bae=It("type",[w({type:C("work"),repoFullName:p(),work:qD}),w({type:C("setup"),orgId:p(),run:cx})]),_ae=It("type",[w({type:C("work"),repoId:p(),definitionId:p()}),w({type:C("setup"),runId:p()})]);var kae=z(["ready","out"]),lx=z(["ai-out-of-credits"]);var xae=ve({statusCode:P().optional().catch(void 0),status:P().optional().catch(void 0),message:p().optional().catch(void 0),responseBody:p().optional().catch(void 0),lastError:ne().optional(),cause:ne().optional(),data:ne().optional(),error:ne().optional(),errors:k(ne()).optional().catch(void 0)});var $ae=w({data:w({total_credits:P(),total_usage:P()})}),Tae=w({data:w({limit:P().nullable().optional(),limit_remaining:P().nullable().optional(),usage:P().optional()})});var FD=z(["success","failure","neutral","pending"]),Oae=w({sha:p(),conclusion:FD,summary:p(),detailsUrl:p()});var UD=["matched-values","file-paths","ai-trace","ai-summary","reasons","rule-names","passed-count","failed-count"],WD=UD.length;var VD=P().int().min(0).max(WD),dx=z(["run-page","check","comment","review","webhook"]),Rae=dx.options,ZD=["run-page","check","comment","review"],Ac=w({level:VD.default(0),surfaces:k(dx).default(()=>[...ZD]),showHelp:D().default(!0)}),px=Ac.extend({inherit:D().default(!0)}),BD=Ac.parse({});var KD=z(["green","blue","purple","pink","orange","red","grey"]),Er=z(["issue","pull"]),si=z(["open","closed","merged"]),fx=w({key:p(),label:p(),value:P(),delta:P().optional(),invertDelta:D().optional(),sub:p().optional(),series:k(P()),color:KD,suffix:p().optional()}),HD=w({rule:p(),count:P()}),GD=w({kind:Er,number:P(),title:p(),comments:P(),blocked:P(),status:si}),JD=w({login:p(),count:P(),flagged:D().optional()}),YD=w({login:p(),reason:p(),caughtBy:p(),status:z(["Hidden","Removed"]),commentId:p().optional()}),XD=w({kind:z(["review","check"]),title:p(),detail:p(),status:z(["Approved","Changes","Passed","Failed"]),actor:p().optional()}),QD=w({kind:Er,number:P(),title:p(),status:si,meta:p(),metrics:k(fx),series:k(P()),byParticipant:k(JD),flagged:k(YD).optional(),checks:k(XD).optional()}),Nae=w({metrics:k(fx),blockedByRule:k(HD),activeThreads:k(GD),threads:K(p(),QD)});var vo=z(["issue","pull","comment"]),Nf=z(["spam","harassment","off-topic","automod","nsfw"]),Lf=z(["low","medium","high","critical"]),eM=z(["pending","resolved"]),_o=w({login:p(),avatarUrl:p()}),Mae=w({id:p(),type:vo,repository:wc,number:P(),title:p(),bodyPreview:p(),author:_o,reason:Nf,severity:Lf,reporter:_o.nullable(),automodRule:p().optional(),reportedAt:pe.datetime(),status:eM,comments:P(),reactions:P()}).superRefine((e,t)=>{if(e.reporter===null&&e.automodRule===void 0)t.addIssue({code:"custom",path:["automodRule"],message:"automod-sourced items (reporter: null) must name the automodRule that fired"});if(e.reporter!==null&&e.automodRule!==void 0)t.addIssue({code:"custom",path:["automodRule"],message:"human-reported items (reporter set) must not carry an automodRule"})}),Br=w({value:P(),delta:P(),series:k(P())}),qae=w({sentToReview:Br,blocked:Br,passed:Br}),Fae=z(["approve","remove","ban"]);var tM=z(["info","warn","critical"]),rM=w({severity:tM,file:p(),line:P().int().min(1).optional(),note:p().max(240)}),Vae=w({verdict:z(["pass","block","needs_review"]),confidence:P().min(0).max(1),summary:p().max(200),findings:k(rM).max(5)}),mx=w({model:p().optional(),maxSteps:P().int().min(1).max(15).default(12)});var nM=w({type:z(["reasoning","tool_call"]),toolName:p().optional(),excerpt:p(),truncated:D()}),Zae=w({model:p(),stepsUsed:P().int().min(0),maxSteps:P().int().min(0),trimmed:D(),costUsd:P().nullable().optional(),usage:w({input:P().int().min(0),output:P().int().min(0),cached:P().int().min(0).nullable()}),steps:k(nM)});var oM=z(["blocklist","heuristic","classifier","regex"]),sM=z(["flag","hide","close","require-review"]),iM=z(["pending","confirmed","false-positive"]),aM=w({id:p(),type:vo,repoFullName:p(),number:P(),author:w({login:p(),avatarUrl:p()}),snippet:p(),matchedAt:pe.datetime(),verdict:iM,threadKind:Er,commentId:p()}),ece=w({id:p(),name:p(),description:p(),category:oM,pattern:p(),scope:k(vo),action:sM,enabled:D(),matches24h:P(),matches30d:P(),falsePositiveRate:P().min(0).max(100),lastFiredAt:pe.datetime(),trend:k(P()),recentMatches:k(aM)}),tce=w({activeRules:Br,matches24h:Br,falsePositiveRate:Br,autoActioned24h:Br}),cM=w({ruleId:p(),version:P().int().min(1),status:z(["evaluated","skipped"]),passed:D(),evidence:ne(),reason:p().optional(),cause:lx.optional(),evaluatedAt:pe.datetime()}),rce=cM.pick({ruleId:!0});var uM=w({minDays:P().int().min(0)}),nce=w({min:P().int().min(0)}),lM=w({min:P().int().min(0).default(1).describe("minimum merged change requests in other people's repos"),trustedAfter:P().int().min(1).default(1).describe("merges in this repo that exempt a proven local contributor")}),dM=w({maxPerWindow:P().int().min(1),windowHours:P().min(0.1).default(24)}),pM=w({max:P().int().min(1)}),fM=w({maxNonLatinRatio:P().min(0).max(1).default(0.5)}),mM=w({}),hM=w({paths:k(p()).min(1)}),gM=w({minLength:P().int().min(1).default(32)}),Ge=[{ruleId:"account-age",forges:["github"],version:1,name:"Account age",blurb:"the contributor's forge account must be at least N days old.",configSchema:uM,defaultConfig:{minDays:7},optIn:!1,description:"Flags change requests from accounts younger than a threshold you set.",contributorLabel:"your account is too new for this repository."},{ruleId:"min-merged-prs",forges:["github"],version:2,name:"Merged change requests",blurb:"requires N merged change requests in OTHER people's repos, as proof that someone else accepted their work.",configSchema:lM,defaultConfig:{min:1,trustedAfter:1},optIn:!1,changeNote:"counts merges globally, not per-repo",description:"Requires N merged change requests in other people's repos, as proof that someone else accepted their work.",contributorLabel:"you need merged change requests in other people's repositories first."},{ruleId:"pr-rate-limit",forges:["github"],version:1,name:"Rate limit",blurb:"caps change requests per window; spray patterns surface in evidence.",configSchema:dM,defaultConfig:{maxPerWindow:5,windowHours:24},optIn:!1,description:"Caps how many change requests one person can open in a time window.",contributorLabel:"you opened too many change requests in a short time."},{ruleId:"max-files-changed",forges:["github"],version:1,name:"Max files changed",blurb:"caps the number of files a change request may touch.",configSchema:pM,defaultConfig:{max:200},optIn:!1,description:"Flags change requests that touch more files than you allow.",contributorLabel:"this change request changes too many files. Split it into smaller ones."},{ruleId:"english-only",version:1,name:"English only",blurb:"title/comment must be predominantly latin-script.",configSchema:fM,defaultConfig:{maxNonLatinRatio:0.5},optIn:!1,description:"Flags titles and comments that aren't mostly latin script.",contributorLabel:"write the title and comments in English.",evidenceRedaction:{"matched-values":["sample"]}},{ruleId:"crypto-address",forges:["github"],version:1,name:"Crypto address",blurb:"blocks cryptocurrency addresses in titles, comments, and diffs.",configSchema:mM,defaultConfig:{},optIn:!1,description:"Catches cryptocurrency addresses in titles, comments, and diffs.",contributorLabel:"this change request adds crypto wallet addresses. Remove them.",summaryReveals:["file-paths"],evidenceRedaction:{"matched-values":["matches.*.value"],"file-paths":["matches.*.location"]}},{ruleId:"honeypot",forges:["github"],version:1,name:"Honeypot paths",blurb:"no legitimate change request touches these paths.",configSchema:hM,defaultConfig:{paths:[".github/workflows/**"]},optIn:!1,description:"Catches change requests that touch paths no legitimate change would.",contributorLabel:"this change request changes protected files. Undo those changes.",evidenceRedaction:{"file-paths":["touched"]}},{ruleId:"profile-readme",forges:["github"],version:1,name:"Profile README",blurb:"requires a minimum of profile text, which shows identity investment.",configSchema:gM,defaultConfig:{minLength:32},optIn:!1,description:"Requires a minimum of profile text. Throwaway accounts rarely add one.",contributorLabel:"add a short bio to your profile."},{ruleId:"ai-review",forges:["github"],version:2,name:"AI review",blurb:"reads the change like a reviewer and flags slop.",configSchema:mx,defaultConfig:{maxSteps:12},optIn:!0,changeNote:"findings must quote code",description:"Reads the change like a reviewer and flags slop.",contributorLabel:"this change request has problems a reviewer would flag.",summaryReveals:["ai-summary"],evidenceRedaction:{"matched-values":["output.findings.*.note"],"file-paths":["output.findings.*.file","output.findings.*.line"]}}];var dce=K(p(),qe);var bM=z(["silent","ci-check","comment"]),hx=z(["comment","silent"]),_M=z(["full","one-liner-link","custom"]),jf=w({customText:p().max(4000).default(""),showDetailsButton:D().default(!0)}),vM=jf.extend({mode:_M.default("full"),template:p().max(4000).default("")}),SM=w({onSuccess:bM.default("ci-check"),passComment:jf.prefault({}),onBlock:hx.default("comment"),blockComment:vM.prefault({}),moderationQueued:hx.default("comment"),reviewComment:jf.prefault({}),failClosedFallback:D().default(!0),redaction:px.prefault({})}),kM=w({redaction:Ac.prefault({})}),hce=kM.parse({});var xM=SM.parse({});var gx="If you think this is wrong, say so in a comment. A maintainer will decide.",yx="If you think it should merge anyway, say so in a comment. A maintainer will decide.",Pce=`Push a commit that fixes the problems. Tripwire checks every push.
|
|
231
232
|
|
|
232
|
-
${
|
|
233
|
+
${gx}`,Oce=`A new commit will not fix this.
|
|
233
234
|
|
|
234
|
-
${
|
|
235
|
+
${yx}`,Ice=`Fix what you can and push. Some problems will not clear with a new commit.
|
|
235
236
|
|
|
236
|
-
${Mk}`;var kj=b({total:P(),weeks:x(x(P().min(0).max(4)))}),xj=b({accountAgeDays:P(),location:p().nullable(),emailVerified:j(),twoFactor:j()}),$j=b({mergedPrs:P(),openPrs:P(),comments:P(),hiddenByAutomod:P()}),Ej=z(["automod-hidden","pull-opened","comment-removed","issue-comment","flagged","account-created"]),Tj=b({id:p(),kind:Ej,title:p(),detail:p(),at:ve.datetime()}),Qie=b({handle:p(),initial:p(),joinedDaysAgo:P(),publicRepos:P(),followers:P(),watchlisted:j(),contributions:kj,details:xj,repoStats:$j,activity:x(Tj)});var Oj=["under","over","atLeast","atMost","between","equals","not","oneOf","noneOf","has","containsAny","noneMatch","anyIn"],Fk=p().regex(/^\d+(h|d)$/,"window must be a count and a unit, like 24h or 7d"),Pj=vr("kind",[b({kind:C("last"),window:Fk}),b({kind:C("lastCount"),window:Fk}),b({kind:C("trimmedLength")}),b({kind:C("nonLatinRatio")}),b({kind:C("letterCount")})]),Ij=te([P(),p(),j()]),Aj=te([Ij,x(te([P(),p()]))]),Uk=b({kind:z(Oj),args:x(Aj)}),Rj=te([Uk.refine((e)=>e.kind!=="not",{message:"not takes an inner comparison"}),b({kind:C("not"),args:wL([Uk])})]),Cj=b({when:b({id:p().min(1),transform:Pj.optional()}),comparison:Rj,severity:z(["low","medium","high"])});var oae=b({id:p().regex(/^custom-[a-z0-9][a-z0-9-]*$/,"id must be custom-<kebab-slug>"),name:p().min(1).max(80),enabled:j(),definition:Cj}),sae=b({});var uae=z(["prod","eval","dev"]),lae=z(["railway","openrouter","planetscale"]);var mae=z(["pending","granted-admin","denied","not-admin","not-for-tripwire","token-expired","failed"]);var Xt={installationId:p(),forge:Bs},hae=vr("status",[b({...Xt,status:C("claimable"),account:p().nullable(),repoCount:P(),stateOrg:b({id:p(),slug:p(),name:p()}).nullable()}),b({...Xt,status:C("claimed-by-your-org"),orgSlug:p()}),b({...Xt,status:C("processing")}),b({...Xt,status:C("recovering")}),b({...Xt,status:C("unreadable")}),b({...Xt,status:C("missing"),recoverable:j()}),b({...Xt,status:C("not-for-tripwire")}),b({...Xt,status:C("not-yours"),recoverable:j()}),b({...Xt,status:C("token-expired")}),b({...Xt,status:C("not-admin"),account:p().nullable()})]);var zj=/^(Too (small|big)|Invalid (input|option|string|number|key|element|value)|Unrecognized key)/,Nj=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","a group of settings"]]);function xc(e,t){return`${e} ${t}${e===1?"":"s"}`}function Lj(e){return e.map(String).join(".")}function Dj(e,t){switch(e.code){case"too_small":{if(e.origin==="array"||e.origin==="set")return`${t} needs at least ${xc(e.minimum,"item")}`;if(e.origin==="string")return e.minimum===1?`${t} cannot be empty`:`${t} needs at least ${xc(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 ${xc(e.maximum,"item")}`;if(e.origin==="string")return`${t} can be at most ${xc(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 ${Nj.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 ho(e,t){let r=t?.(e.path)??null,n=r??Lj(e.path);if(zj.test(e.message)){let o=Dj(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 vf=z(["admin","member"]),jj=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"]),Mj=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/,wae=p().min(3,"slug must be at least 3 characters").max(32,"slug must be at most 32 characters").regex(Mj,"lowercase letters, numbers, and hyphens only, with no leading or trailing hyphen").refine((e)=>!jj.has(e),{message:"this name is reserved"});var _ae=z(["User","Organization"]),vae=b({role:vf,maxUses:P().int().min(1).max(1000).default(1),expiresInDays:P().int().min(1).max(90).default(7)});var Sf=["moderation","activity","rules","workflows","responses","analytics","connections","members","settings"],kf=z(Sf),Wk=["read","manage"],Qt=z(Wk),$ae=NL([kf,":",Qt]),Eae=Sf.flatMap((e)=>Wk.map((t)=>`${e}:${t}`));var Vk=b({moderation:Qt.optional(),activity:Qt.optional(),rules:Qt.optional(),workflows:Qt.optional(),responses:Qt.optional(),analytics:Qt.optional(),connections:Qt.optional(),members:C("read").optional(),settings:C("read").optional()}).strict().refine((e)=>Object.values(e).some(Boolean),{message:"pick at least one area"}),qj=tf(kf,x(Qt).min(1));var Tae=tf(kf,Qt);function Fj(e){let t={};for(let r of Sf){let n=e[r];if(n?.includes("manage"))t[r]="manage";else if(n?.includes("read"))t[r]="read"}return t}var Uj=new Set(["admin","member","owner"]),xf=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)=>!Uj.has(e),{message:"this name is taken by a built-in role"}),Oae=b({name:xf,scopes:Vk}),Zk=qj.refine((e)=>Vk.safeParse(Fj(e)).success,{message:"this role grants access a custom role cannot hold"}),Pae=b({organizationId:p().min(1),role:xf,permission:Zk}).strict(),Iae=b({organizationId:p().min(1),roleName:p().min(1).optional(),roleId:p().min(1).optional(),data:b({permission:Zk}).strict()}).strict(),Aae=te([vf,xf]);var Wj=z(["public","private"]),Hk=b({name:p(),className:p()}),Vj=b({name:p(),description:p(),visibility:Wj,openIssues:P(),openPulls:P(),flagged:P(),updatedAt:ve.datetime()}),Bk=b({kind:xr,number:P(),title:p(),status:Ys,author:p(),openedAt:ve.datetime(),comments:P(),flagged:P(),labels:x(Hk)}),Zj=b({state:z(["Hidden","Removed"]),rule:p()}),Bj=b({id:p(),author:p(),body:p(),createdAt:ve.datetime(),flag:Zj.optional()}),Kk=b({kind:xr,number:P(),title:p(),status:Ys,author:p(),openedAt:ve.datetime(),labels:x(Hk),body:p(),comments:x(Bj),branch:p().optional(),baseBranch:p().optional()}),Nae=b({repos:x(Vj),issues:x(Bk),pulls:x(Bk),issueDetails:J(p(),Kk),pullDetails:J(p(),Kk)});var jae=new Set($k.nodes.filter((e)=>e.type==="rule").map((e)=>e.ref));var Kj=z(["removed","hidden","banned","dismissed","required-review"]),Hj=z(["actioned","dismissed","appealed","reversed"]),Gj=z(["automod","report","manual"]),Jj=b({kind:Gj,detail:p(),reporter:fo.optional()}),Yj=b({at:ve.datetime(),label:p(),by:p()}),Xj=b({id:p(),type:mo,repoFullName:p(),number:P(),content:p(),threadKind:xr,commentId:p()}),Wae=b({id:p(),label:p(),reason:bf,severity:wf,action:Kj,status:Hj,author:fo,moderator:fo.nullable(),caughtBy:Jj,at:ve.datetime(),snapshot:j(),items:x(Xj),history:x(Yj)}),Vae=z(["what","reason","caught"]),go=z(["pass","block","needs_review"]);var Gk=z(["queued","running","paused","completed","failed","closed"]),Hae=Gk.options,Gae=z(["checking","did-not-finish","pass","block","needs_review","closed-before-review","ran"]),$c={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"},Jae=Gk.nullable().catch(null),Yae=go.nullable().catch(null);var Jk=z(["event","pass","fail","approve","deny"]),ece=z(["event","result","decision"]),tce=z(["identity","not"]),ut={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"}},Qj={identity:{event:"event",result:"result",decision:"decision"},not:{result:"result",decision:"decision"}};function eM(e,t){return Qj[e][t]??null}function tM(e){let t=ut[e];return eM(t.fn,t.type)}var Qs={event:ut.event.label,pass:ut.pass.label,fail:ut.fail.label,approve:ut.approve.label,deny:ut.deny.label},$f={event:ut.event.type,pass:ut.pass.type,fail:ut.fail.type,approve:ut.approve.type,deny:ut.deny.type};function yo(e){let t=ut[e];if(t.type==="event")return"neutral";return t.fn==="not"?"fail":"ok"}var rce={event:yo("event"),pass:yo("pass"),fail:yo("fail"),approve:yo("approve"),deny:yo("deny")},rM={trigger:[],rule:["event","result","decision"],gate:["result"],action:["event","result","decision"]},nM={"send-to-moderation":["approve","deny"]},oM=Jk.options;function Yk(e){return rM[e]}function Ec(e,t){let r=tM(t);return r!==null&&Yk(e).includes(r)}function Xs(e){return oM.filter((t)=>Ec(e,t))}var nce={trigger:{accepts:Xs("trigger")},rule:{accepts:Xs("rule")},gate:{accepts:Xs("gate")},action:{accepts:Xs("action")}};function ei(e){switch(e.type){case"trigger":return["event"];case"rule":case"gate":return["pass","fail"];case"action":return e.action==="send-to-moderation"?nM[e.action]:[];default:return[]}}function In(e,t){if(e.type==="trigger"&&(t===void 0||t==="pass"))return"event";return t??"pass"}var rx={schema:{severity:"error",stage:"structure"},"no-trigger-events":{severity:"error",stage:"structure"},"duplicate-id":{severity:"error",stage:"structure"},"missing-step":{severity:"error",stage:"structure"},"no-trigger":{severity:"error",stage:"structure"},"trigger-input":{severity:"error",stage:"structure"},"gate-input":{severity:"error",stage:"structure"},"no-outputs":{severity:"error",stage:"structure"},"wrong-output":{severity:"error",stage:"structure"},"not-input":{severity:"error",stage:"structure"},"orphan-step":{severity:"error",stage:"structure"},cycle:{severity:"error",stage:"structure"},"no-action":{severity:"error",stage:"enable"},"schedule-config":{severity:"error",stage:"enable"},"action-params":{severity:"error",stage:"enable"},"schedule-mixed":{severity:"error",stage:"enable"},"schedule-needs-change-request":{severity:"error",stage:"enable"},"unknown-rule":{severity:"error",stage:"enable"},"rule-unavailable":{severity:"warning",stage:"enable"},"rule-config":{severity:"error",stage:"enable"},"removed-step":{severity:"error",stage:"enable"},"review-targets":{severity:"error",stage:"enable"},"stale-reviewer":{severity:"warning",stage:"enable"},"dead-end":{severity:"warning",stage:"enable"}},An=(e)=>({label:"Remove connection",edit:{type:"remove-edge",edgeId:e}}),ti=(e)=>({label:"Delete",edit:{type:"delete-node",nodeId:e}});function Tf(e){let t=e.trim();return/[.?]$/.test(t)?t:`${t}.`}function sM(e){let t=e.trim();return Tf(`${t.charAt(0).toUpperCase()}${t.slice(1)}`)}function nx(e){if(e.length<=1)return e.join("");return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Tc(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 Tk.find((r)=>r.mode===e.mode)?.name??e.mode;case"action":return Ok.find((r)=>r.action===e.action)?.name??`${e.action.charAt(0).toUpperCase()}${e.action.slice(1)}`;default:return"Step"}}function ox(e,t,r,n){if(Ec(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=$f[t];return{rule:"gate-input",message:`${r} takes rule results, not ${s==="event"?"events":"decisions"}${o}`}}function sx(e,t,r){let n=ei(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 ${Qs[t]} output`};return null}function iM(e){return $f[e]==="event"?"It takes rule results, not events.":"It takes rule results, not decisions."}function Of(e,t=He){let r=new Map,n=new Map;for(let o of e.nodes){let s=Tc(o,t),i=(r.get(s)??0)+1;r.set(s,i),n.set(o.id,i===1?s:`${s} ${i}`)}return n}function aM(e,t){if(t==="event")return[{label:"Insert a rule",intent:{type:"insert-step",edgeId:e.id}},An(e.id)];return[An(e.id)]}function cM(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 uM(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:[An(t.id)]})))}function lM(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 Xk(e){return(t)=>t.def.edges.flatMap((r)=>{let n=ix(t,r);if(!n||sx(n.source,In(n.source,r.when),""))return[];let o=In(n.source,r.when);if(ox(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"?iM(o):"It takes no inputs.",fixes:e==="gate-input"?aM(r,o):[An(r.id)]}]})}function Qk(e){return(t)=>t.def.edges.flatMap((r)=>{let n=ix(t,r);if(!n)return[];if(sx(n.source,In(n.source,r.when),t.name(n.source))?.rule!==e)return[];let s=ei(n.source).includes("pass");return[{edgeId:r.id,nodeId:n.source.id,message:e==="no-outputs"?"It has no outputs.":`It has no ${Qs[In(n.source,r.when)]} output.`,fixes:e==="wrong-output"&&s?[{label:"Use Passes",edit:{type:"use-passes",edgeId:r.id}},An(r.id)]:[An(r.id)]}]})}function dM(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 pM(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&&Ec(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,ti(n.id)]}]})}function fM(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 ${nx(u.slice(1))}.`,fixes:[An(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 mM(e){return ax(e,e.def.nodes.filter((t)=>t.type==="trigger").map((t)=>t.id))}function hM(e){let t=mM(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 gM={every:"how often it runs",subjects:"what it looks at",state:"a status",inactiveFor:"how long without activity"};function yM(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="trigger"||!vc(t))return[];let r=kk(t.schedule);if(r.length===0)return[];let[n]=r;return[{nodeId:t.id,message:`Set ${nx(r.map((o)=>gM[o]))}.`,fixes:[{label:"Set schedule",intent:{type:"focus-field",nodeId:t.id,field:n??"schedule"}}]}]})}var bM={"remove-label":{schema:Mr,field:"labels",message:"Pick the labels to remove.",label:"Pick labels"},"post-comment":{schema:bc,field:"message",message:"Write the message.",label:"Write message"}},wM=new Set(["discord.com","discordapp.com","ptb.discord.com","canary.discord.com"]),_M=b({url:p().optional(),urlSet:j().optional()});function vM(e,t){let r=_M.safeParse(t??{});if(!r.success)return!1;let{url:n,urlSet:o}=r.data;if(n===void 0||n==="")return o===!0;let s=qs({protocol:/^https$/}).safeParse(n);if(!s.success)return!1;if(e==="webhook")return!0;let i=new URL(s.data);return wM.has(i.hostname)&&i.pathname.startsWith("/api/webhooks/")}var SM={webhook:{message:"Set the webhook URL. It must use HTTPS.",label:"Set URL"},discord:{message:"Set the Discord webhook URL.",label:"Set URL"}};function Ef(e,t,r,n){return{nodeId:e,message:t,fixes:[{label:r,intent:{type:"focus-field",nodeId:e,field:n}}]}}function kM(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action")return[];if(t.action==="webhook"||t.action==="discord"){let o=SM[t.action];return vM(t.action,t.params)?[]:[Ef(t.id,o.message,o.label,"url")]}if(t.action==="label")return Mr.safeParse(t.params??{}).success?[]:[Ef(t.id,"Pick the labels to add.","Pick labels","labels")];let r=t.action==="remove-label"||t.action==="post-comment"?bM[t.action]:null,n=r?.schema.safeParse(t.params??{});if(!(r&&n)||n.success)return[];return[Ef(t.id,r.message,r.label,r.field)]})}function xM(e){return e.def.nodes.flatMap((t)=>t.type==="trigger"&&vc(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 $M=new Set(["block","send-to-moderation"]);function ax(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 EM(e){let t=ax(e,e.def.nodes.filter(vc).map((r)=>r.id));return e.def.nodes.flatMap((r)=>r.type==="action"&&t.has(r.id)&&$M.has(r.action)?[{nodeId:r.id,message:"It needs a change request event. A schedule cannot run it.",fixes:[ti(r.id)]}]:[])}function Pf(e,t){let[r,n]=t.split("@");return e.catalog.find((o)=>o.ruleId===r&&o.version===Number(n))}function TM(e){return e.def.nodes.flatMap((t)=>t.type==="rule"&&!Pf(e,t.ref)?[{nodeId:t.id,message:"This rule is not in this repo.",fixes:[ti(t.id)]}]:[])}function OM(e){return e.def.nodes.flatMap((t)=>{let r=t.type==="rule"?Pf(e,t.ref)?.unavailable:null;return r?[{nodeId:t.id,message:r,fixes:[]}]:[]})}function PM(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="rule")return[];let r=Pf(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: ${Tf(ho(o))}`:"A setting is not valid.",fixes:s===void 0?[]:[{label:"Edit setting",intent:{type:"focus-field",nodeId:t.id,field:String(s)}}]}]})}var IM={comment:"Customize sets the verdict comment now"};function AM(e){return e.def.nodes.flatMap((t)=>t.type==="action"&&hk(t.action)?[{nodeId:t.id,message:`This step was removed. ${sM(IM[t.action])}`,fixes:[ti(t.id)]}]:[])}function RM(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action"||t.action!=="request-review")return[];let r=yk.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: ${Tf(n.message)}`:"A reviewer is not valid.",fixes:[{label:o?"Add reviewers":"Edit reviewers",intent:{type:"focus-field",nodeId:t.id,field:s}}]}]})}function CM(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=Gs.safeParse(r.params??{});if(!n.success)return[];return n.data.reviewers.filter((o)=>!t.some((s)=>gk(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 zM(e){return e.def.nodes.flatMap((t)=>{let[r]=ei(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}},ti(t.id)]}]})}var NM=[{rule:"duplicate-id",check:cM},{rule:"missing-step",check:uM},{rule:"no-trigger",check:lM},{rule:"trigger-input",check:Xk("trigger-input")},{rule:"gate-input",check:Xk("gate-input")},{rule:"no-outputs",check:Qk("no-outputs")},{rule:"wrong-output",check:Qk("wrong-output")},{rule:"not-input",check:dM},{rule:"orphan-step",check:pM},{rule:"cycle",check:fM},{rule:"no-action",check:hM},{rule:"schedule-config",check:yM},{rule:"action-params",check:kM},{rule:"schedule-mixed",check:xM},{rule:"schedule-needs-change-request",check:EM},{rule:"unknown-rule",check:TM},{rule:"rule-unavailable",check:OM},{rule:"rule-config",check:PM},{rule:"removed-step",check:AM},{rule:"review-targets",check:RM},{rule:"stale-reviewer",check:CM},{rule:"dead-end",check:zM}];function ex(e,t){let r=new Map;for(let n of e)r.set(n[t],[...r.get(n[t])??[],n]);return r}function If(e,t,r=new Map){return{rule:e,severity:rx[e].severity,step:t.nodeId?r.get(t.nodeId)??"Step":"Workflow",...t}}function tx(e,t,r,n){let o=Of(e,t),s={def:e,byId:new Map(e.nodes.map((c)=>[c.id,c])),incoming:ex(e.edges,"to"),outgoing:ex(e.edges,"from"),name:(c)=>o.get(c.id)??Tc(c,t),catalog:t,reviewers:n},i=NM.flatMap(({rule:c,check:u})=>r==="structure"&&rx[c].stage!=="structure"?[]:u(s).map((l)=>If(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 LM=b({nodes:x(xe({id:p().catch(""),type:p().catch(""),kinds:x(p()).optional().catch(void 0)}))});function DM(e,t){let r=new Map,n=new Map;for(let o of e){let s=yf.safeParse(o),i=s.success?Tc(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 jM(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 If("schema",{nodeId:i||void 0,message:"A setting is not valid.",fixes:[]},r)})}function Af(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=kr.safeParse(e);if(s.success)return{definition:s.data,results:o(tx(s.data,r,n,t.reviewers))};let i=LM.safeParse(e),a=i.success?i.data.nodes:[],c=a.filter((f)=>f.type==="trigger"&&f.kinds?.length===0),u=kr.safeParse({...e,nodes:a.map((f)=>c.includes(f)?{...f,kinds:["push"]}:f)});if(c.length===0||!u.success)return{definition:null,results:jM(s.error,a.map((f)=>f.id),DM(a,r))};let l=Of(u.data,r),d=c.map((f)=>If("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,...tx(u.data,r,n,t.reviewers)])}}function cx(e,t={}){return Af(e,t).results}var MM={pass:$c.pass,block:$c.block,needs_review:$c.needs_review},qM=go.nullable().catch(null);function ux(e){let t=qM.parse(e??null);return t?MM[t]:null}var wce=x(kr).catch([]),_ce=b({workflows:x(b({id:p(),name:p()})),issues:x(b({workflowId:p(),messages:x(p())})).optional()}).catch({workflows:[]}),vce=b({decision:z(["approve","deny"])}).nullable().catch(null);var Sce=b({pausedNodeId:p()}).nullable().catch(null);var FM=["connect_mcp","install_app","sync_repos","pick_rules","turn_on_gate","verify_check"],lx=z(FM),dx=z(["active","waiting","completed","skipped","failed"]);var UM=p().regex(/^[A-Za-z0-9]{10}$/,"A run code is 10 letters or digits."),WM=/^([a-z0-9_-]+)#([A-Za-z0-9]{10})$/;function px(e){let t=WM.exec(e.trim());if(!(t?.[1]&&t[2]))return null;return{org:t[1],code:t[2]}}var VM=b({status:dx,detail:p().max(256).nullable(),updatedAt:ve.datetime()}),ZM=tf(lx,VM),$ce=b({runCode:p().trim().min(1).max(200),stage:lx,status:dx,detail:p().trim().max(256).optional()}),Ece=b({code:UM,stages:ZM,completedAt:ve.datetime().nullable(),lastReportAt:ve.datetime().nullable()});function fx(e){return e?`Please help me set up Tripwire.
|
|
237
|
+
${yx}`,Ace=`Push a new commit to run the checks again.
|
|
237
238
|
|
|
238
|
-
org slug: ${e.org}
|
|
239
|
-
run code: ${e.code}`:"Please help me set up Tripwire."}var BM=b({ruleId:p(),summary:p()}),Ice=b({version:C(1),verdict:go,org:p(),repo:p(),changeRequest:b({number:P().int(),title:p(),author:p()}),firedRules:x(BM),runUrl:p(),timestamp:p()});var Ace=b({content:p(),embeds:x(b({title:p(),url:p(),description:p(),color:P().int()}))});function bo(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 bo(o,"pass")},get fails(){return bo(o,"fail")},after:(...s)=>Cf(e,t,r,s)};return o}function Rf(e,t){let r={kind:"gate",mode:e,inputs:t,get passes(){return bo(r,"pass")},get fails(){return bo(r,"fail")}};return r}function er(e,t,r=[]){return{kind:"action",action:e,params:t,inputs:r,after:(...n)=>er(e,t,n)}}function mx(e,t){let r={kind:"action",action:"send-to-moderation",params:void 0,approve:e.approve??[],deny:e.deny??[],inputs:t,get approved(){return bo(r,"approve")},get denied(){return bo(r,"deny")},after:(...n)=>mx(e,n)};return r}function hx(){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 Rf("all-of",e)},anyOf(...e){return Rf("any-of",e)},not(e){return Rf("not",[e])},trigger(...e){return{kind:"trigger",on:e,inputs:[]}},schedule(e){return{kind:"trigger",on:["schedule.matched"],schedule:e,inputs:[]}},block(){return er("block",void 0)},label(e){return er("label",e)},removeLabel(e){return er("remove-label",e)},requestReview(e){return er("request-review",e)},postComment(e){return er("post-comment",e)},lock(e){return er("lock",e)},close(){return er("close",void 0)},webhook(){return er("webhook",void 0)},discord(){return er("discord",void 0)},humanReview(e={}){return mx(e,[])},workflow(e){return{kind:"workflow",spec:e}},workflows(e){return e}}}var wo=["change-request.opened","change-request.updated","change-request.closed","comment.created","push"],ri=b({}),Fr={block:ri,label:Mr,"remove-label":Mr,"request-review":b({reviewers:x(te([yc,mf])).optional(),teamReviewers:x(ff).optional()}),"post-comment":bc,lock:bk,close:ri,webhook:ri,discord:ri,"send-to-moderation":ri};var gx=hx();var Kce=Ot*60000;function ni(e){return"n"in e}function KM(e){return"preset"in e}var HM={sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6};function GM(e){let[t="0",r="0"]=e.split(":");return{hour:Number(t),minute:Number(r)}}function yx(e){if(ni(e))return null;if(!KM(e))return e.cron.trim();if(e.preset==="hourly")return`${e.minute} * * * *`;let{hour:t,minute:r}=GM(e.at);switch(e.preset){case"daily":return`${r} ${t} * * *`;case"weekdays":return`${r} ${t} * * 1-5`;case"weekly":return`${r} ${t} * * ${HM[e.on]}`;case"monthly":return`${r} ${t} ${e.day} * *`;default:return null}}function bx(e){return e?{zone:e,defaulted:!1}:{zone:Yt,defaulted:!0}}var JM={hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function wx(e){let[t,r]=JM[e.unit];return`${e.n} ${e.n===1?t:r}`}var Rn="09:00",Nc=gf.options,Oc=new Map([...Nc.flatMap((e,t)=>[e,`${e}s`,e.slice(0,3)].map((r)=>[r,t])),["tues",2],["thur",4],["thurs",4]]),YM=new Map(Object.entries({one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12})),XM=new Map(Object.entries({m:"minutes",h:"hours",d:"days",w:"weeks"})),_x=new Map(Object.entries({min:"minutes",mins:"minutes",minute:"minutes",minutes:"minutes",hr:"hours",hrs:"hours",hour:"hours",hours:"hours",day:"days",days:"days",wk:"weeks",wks:"weeks",week:"weeks",weeks:"weeks",month:"months",months:"months"})),vx=new Map(Object.entries({minute:"minute",hour:"hourly",day:"daily",week:"week",month:"monthly"})),zf=new Map(Object.entries({hourly:"hourly",daily:"daily",weekly:"weekly",monthly:"monthly",weekday:"weekdays",weekdays:"weekdays","mon-fri":"weekdays","monday-friday":"weekdays",weekend:"weekends",weekends:"weekends"})),QM=new Map(Object.entries({utc:Yt,gmt:Yt,z:Yt})),eq=["Asia/Kolkata","Europe/Kyiv","Asia/Ho_Chi_Minh","America/Argentina/Buenos_Aires"],tq=["Berlin","London","New York","Los Angeles","Chicago","Denver","Toronto","Paris","Amsterdam","Madrid","Stockholm","Tokyo","Singapore","Sydney","Kolkata","Sao Paulo"],Pc=null;function Lf(e){return(e.split("/").at(-1)??e).replaceAll("_"," ")}function Ox(){if(Pc)return Pc;let e=Intl.supportedValuesOf("timeZone"),t=new Map,r=new Map,n=eq.filter(Hs);for(let i of[...n,...e])if(r.set(i.toLowerCase(),i),i.includes("/")&&!i.startsWith("Etc/")){let a=Lf(i).toLowerCase();if(!t.has(a))t.set(a,i)}let o=tq.filter((i)=>t.has(i.toLowerCase())),s=[...t.values()].map(Lf).filter((i)=>!o.includes(i)).sort((i,a)=>i.localeCompare(a));return Pc={byCity:t,byId:r,cities:[...o,...s]},Pc}function rq(e){return e.split("/").map((t)=>t.split("_").map((r)=>`${r.charAt(0).toUpperCase()}${r.slice(1)}`).join("_")).join("/")}function nq(e){let t=e.toLowerCase(),r=QM.get(t);if(r)return r;if(!t.includes("/"))return null;let n=Ox().byId.get(t);if(n)return n;let o=rq(t);return Hs(o)?o:null}function Df(e){return Ox().byCity.get(e.join(" ").toLowerCase())??null}function Px(e){if(e===Yt)return e;let t=Lf(e);return Df([t])===e?t:e}function oq(e,t){return`UTC${(new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"shortOffset"}).formatToParts(t).find((o)=>o.type==="timeZoneName")?.value??"GMT").replace(/^GMT/,"")||"+0"}`}function Ix(e,t=new Date){return e===Yt?e:`${e}, ${oq(e,t)}`}function Sx(e,t){return[...e.matchAll(t)].map((r)=>({text:r[0],lower:r[0].toLowerCase(),from:r.index,to:r.index+r[0].length}))}function vo(e){return String(e).padStart(2,"0")}function jf(e,t){return`${vo(e)}:${vo(t)}`}function Mf(e){let r=e%100>=11&&e%100<=13?"th":["th","st","nd","rd"][e%10]??"th";return`${e}${r}`}function si(e){return`${e.charAt(0).toUpperCase()}${e.slice(1)}`}function So(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Ic(e){if(e===void 0)return null;if(/^\d{1,4}$/.test(e))return Number(e);return YM.get(e)??null}function sq(e,t){let r=e[t]?.lower;if(r===void 0)return null;if(r==="noon")return{hour:12,minute:0,valid:!0,used:1};if(r==="midnight")return{hour:0,minute:0,valid:!0,used:1};let n=/^(\d{1,2})(?:[:.](\d{2}))?(am|pm|a\.m\.|p\.m\.)?$/.exec(r);if(!n)return null;let o=1,s=n[3]?.charAt(0),i=e[t+1]?.lower;if(!s&&i&&/^(am|pm|a\.m\.|p\.m\.)$/.test(i))s=i.charAt(0),o=2;let a=Number(n[1]),c=Number(n[2]??"0"),u=c<=59;if(s)u=u&&a>=1&&a<=12,a=a%12+(s==="p"?12:0);else u=u&&a<=23;return{hour:a,minute:c,valid:u,used:o}}function kx(e){let t=e?/^(\d{1,2})(st|nd|rd|th)?$/.exec(e):null;return t?Number(t[1]):null}var iq=new Set(["shorter","short","those","the","months","month"]);function _o(e,t){return{from:e.from,to:t.to}}class qf{words;read={};at=0;everyAt=-1;constructor(e){this.words=e}word(e=0){return this.words[this.at+e]}lower(e=0){return this.word(e)?.lower}take(e){let t=this.word(),r=this.word(e-1);return this.at+=e,t&&r?_o(t,r):{from:0,to:0}}run(){while(this.at<this.words.length&&!this.read.unknown)if(!this.step()){let e=this.lower()==="in"&&this.word(1)?this.word(1):this.word();if(e)this.read.unknown={from:e.from,to:e.to}}return this.read}step(){let e=this.lower()??"",t=this.at===this.everyAt+1&&this.everyAt>=0;if((e==="every"||e==="each")&&!this.read.every){if(this.everyAt=this.at,this.read.every=this.take(1),this.at>=this.words.length)this.read.everyDangling=this.read.every;return this.everyFollowerOk()}if(e==="and"||e==="&")return this.at+=1,!0;if(e==="skip"||e==="skipping")return this.skip();if(e==="at")return this.atPhrase();if(this.count(t))return!0;if(this.unit())return!0;if(this.keyword(t))return!0;if(this.weekdays())return!0;if(this.monthDay())return!0;if(this.monthOf())return!0;if(this.minute())return!0;if(this.time())return!0;return this.zone()}everyFollowerOk(){let e=this.lower();if(e===void 0)return!0;let t=/^\d+[a-z]+$/.test(e);if(!(Ic(e)!==null||t||vx.has(e)||Oc.has(e)||e==="weekday"||e==="weekend"||e==="weekdays"||e==="weekends")){let n=this.word();if(n)this.read.unknown={from:n.from,to:n.to}}return!0}skip(){let e=1;while(iq.has(this.lower(e)??""))e+=1;if(this.read.skip)return!1;return this.read.skip=this.take(e),!0}atPhrase(){let e=this.lower(1);if(e===void 0)return this.read.atDangling=this.take(1),!0;if(e==="minute"||/^:\d{1,2}$/.test(e))return this.minute(1);return this.time(1)}count(e){let t=this.lower();if(t===void 0||this.read.interval)return!1;let r=/^(\d{1,4})([a-z]+)$/.exec(t);if(r){let a=r[2]??"",c=XM.get(a)??_x.get(a);if(!c)return!1;let u=this.word();return this.setInterval(Number(r[1]),c,this.take(1),{from:u?.from??0,to:(u?.from??0)+(r[1]?.length??0)},r[2]??""),!0}let n=Ic(t);if(n===null)return!1;let o=this.lower(1)??"",s=_x.get(o),i=this.word();if(s&&i)return this.setInterval(n,s,this.take(2),_o(i,i),o),!0;if(e&&i)return this.read.interval={...this.take(1),n,unit:null,count:_o(i,i),unitWord:""},!0;return!1}setInterval(e,t,r,n,o){this.read.interval={...r,n:e,unit:t,count:n,unitWord:o}}unit(){let e=this.lower()??"",t=vx.get(e);if(!t)return!1;if(t==="minute"){if(this.read.interval)return!1;return this.setInterval(1,"minutes",this.take(1),null,e),!0}return this.setBase(t,[],this.take(1))}setBase(e,t,r){if(this.read.base)return!1;return this.read.base={...r,kind:e,days:t},!0}keyword(e){let t=0,r,s=(this.lower()??"")==="on"&&zf.get(this.lower(1)??"")?1:0,i=this.lower(s)??"";if((i==="monday"||i==="mon")&&(this.lower(s+1)==="to"||this.lower(s+1)==="through")&&(this.lower(s+2)==="friday"||this.lower(s+2)==="fri"))r="weekdays",t=s+3;else if(zf.has(i))r=zf.get(i),t=s+1;if(!r)return!1;if(e&&!(r==="weekdays"||r==="weekends"))return!1;return this.setBase(r,[],this.take(t))}weekdays(){let e=this.lower()==="on"?1:0;if(Oc.get(this.lower(e)??"")===void 0)return!1;let t=[],r=e;while(!0){let s=Oc.get(this.lower(r)??"");if(s!==void 0){t.push(s),r+=1;continue}let i=this.lower(r);if((i==="and"||i==="&")&&Oc.get(this.lower(r+1)??"")!==void 0){r+=1;continue}break}let n=[...new Set(t)].sort((s,i)=>s-i),o=this.read.base;if(o&&(o.kind==="weekly"||o.kind==="week")&&o.days.length===0)return o.kind="weekly",o.days=n,this.read.weekdaySpan=this.take(r),!0;return this.setBase("weekly",n,this.take(r))}monthDay(){let e=0;if(this.lower(e)==="on")e+=1;let t=null;if(this.lower(e)==="the")t=kx(this.lower(e+1)),e+=2;else if(this.lower(e)==="day")t=Ic(this.lower(e+1)),e+=2;else if(/(st|nd|rd|th)$/.test(this.lower(e)??""))t=kx(this.lower(e)),e+=1;if(t===null)return!1;let r=this.take(e),n=this.read.day;if(n)return n.to=r.to,n.values.push(t),n.value=Math.max(n.value,t),!0;return this.read.day={...r,value:t,values:[t]},!0}monthOf(){let e=this.lower()==="of",t=this.lower(1),r=this.lower(2);if(!e||!(t==="the"||t==="every"||t==="each")||r!=="month")return!1;if(this.read.base)return!1;return this.read.monthOf=this.take(3),this.read.base={...this.read.monthOf,kind:"monthly",days:[]},!0}minute(e=0){let t=this.lower(e)??"",r=null,n=e,o=/^:(\d{1,2})$/.exec(t);if(o)r=Number(o[1]),n+=1;else if(t==="minute")r=Ic(this.lower(e+1)),n+=2;if(r===null||r>59||this.read.minute)return!1;return this.read.minute={...this.take(n),value:r},!0}time(e=0){let t=sq(this.words,this.at+e);if(!t)return!1;let r=this.take(e+t.used),n={hour:t.hour,minute:t.minute,valid:t.valid},o=this.read.time;if(o)return o.to=r.to,o.times.push(n),o.valid=o.valid&&n.valid,!0;return this.read.time={...r,...n,times:[n]},!0}zone(){if(this.read.zone)return!1;let e=this.lower()==="in"?1:0;for(let t=3;t>=1;t--){let r=this.words.slice(this.at+e,this.at+e+t).map((o)=>o.lower);if(r.length<t)continue;let n=t===1?nq(r[0]??"")??Df(r):Df(r);if(n){let o=e+t+(this.lower(e+t)==="time"?1:0);return this.read.zone={...this.take(o),id:n},!0}}return!1}}function oi(e){return e.replace(/\s+,/g,",").replace(/,(\s*,)+/g,",").replace(/\s{2,}/g," ").replace(/^[\s,]+|[\s,]+$/g,"")}function Ut(e,t,r){return oi(`${e.slice(0,t.from)}${r}${e.slice(t.to)}`)}function Ac(e,t){return t.time?e:`${e} at ${Rn}`}var aq={minutes:["minute","minutes"],hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function zc(e,t){let[r,n]=aq[t];return`${e} ${e===1?r:n}`}function Ax(e){return si(Nc[e]??"")}function xx(e){switch(e.kind){case"hourly":return"Every hour";case"daily":return"Every day";case"weekdays":return"Monday to Friday";case"weekends":return"Saturday and Sunday";case"week":return"Every week";case"monthly":return"Every month";default:return e.days.length>0?`Every ${So(e.days.map(Ax))}`:"Every week"}}function cq(e,t,r,n){let o=[],s=(l,d,f,m)=>{if(!d)return;o.push({from:d.from,to:d.to,text:e.slice(d.from,d.to),kind:f,label:m,tone:r[l]??"ok"})},{every:i,base:a,interval:c}=t,u=i&&a&&!c&&a.from>i.to&&e.slice(i.to,a.from).trim()==="";if(i&&!u)s("every",i,"cadence","Repeats");if(c)s("interval",c,"interval",c.unit?`Every ${zc(c.n,c.unit)}`:"Repeats");if(a)s("base",u&&i?{from:i.from,to:a.to}:a,"cadence",xx(a));if(s("weekdays",t.weekdaySpan,"cadence",xx(a??{from:0,to:0,kind:"weekly",days:[]})),t.day)s("day",t.day,"day",`The ${So(Rx(t.day).map(Mf))} of the month`);if(t.time)s("time",t.time,"time",t.time.valid?So(Cx(t.time).map((l)=>jf(l.hour,l.minute))):"Not a time");if(s("at",t.atDangling,"time","At"),t.minute)s("minute",t.minute,"minute",`At :${vo(t.minute.value)}`);if(t.zone)s("zone",t.zone,"zone",Ix(t.zone.id,n));if(t.skip)s("skip",t.skip,"skip","Skips months without that day");if(t.unknown)s("unknown",t.unknown,"unknown","Not understood");return o.sort((l,d)=>l.from-d.from)}function Se(e,t,r=[],n={}){return{ok:!1,reason:e,message:t,fixes:r,tones:n}}var uq=[5,6,10,12,15,20,30];function lq(e){return uq.reduce((t,r)=>Math.abs(r-e)<Math.abs(t-e)?r:t)}function dq(e,t){let n=t.unitWord==="minute"||t.unitWord==="min"?`${t.unitWord}s`:t.unitWord,o=`${Ot} ${n}`;return{label:`Use ${Ot} minutes`,text:Ut(e,t,o)}}function pq(e,t){let r=t.interval;if(!r)return null;let n={interval:"fail"};if(t.base||t.day)return Se("invalid","Use an interval or a day, not both.",[],n);if(r.unit===null)return Se("incomplete","Add a unit, like every 5 days.",[{label:"Use days",text:Ut(e,r,`${r.n} days`)}]);if(r.unit==="months"){if(r.n===1)return null;let c=Math.round(r.n*30/7);return Se("unstorable","An interval counts hours, days or weeks.",[{label:`Use ${c} weeks`,text:Ut(e,r,`${c} weeks`)}],n)}let{n:o,unit:s}=r;if(s==="minutes"){if(o<Ot)return Se("floor",`Runs must be at least ${Ot} minutes apart.`,[dq(e,r)],n);if(o<60||o%60!==0){if(t.time||t.minute)return $x(e,t,[]);if(o>60||60%o!==0){let c=lq(o);return Se("unstorable","Minutes must divide the hour evenly, like 10, 15 or 30.",[{label:`Use ${c} minutes`,text:Ut(e,r,`${c} minutes`)}],n)}return{ok:!0,every:{cron:`*/${o} * * * *`},timezone:t.zone?.id}}o/=60,s="hours"}let i={n:o,unit:s};if(s==="hours"&&t.minute&&!t.time&&!t.skip&&o>1&&o<24&&24%o===0)return{ok:!0,every:{cron:`${t.minute.value} */${o} * * *`},timezone:t.zone?.id};if(t.time||t.minute)return $x(e,t,[]);if(t.zone)return Se("unstorable","An interval counts from the last run, so it has no timezone.",[{label:"Drop the timezone",text:Ut(e,t.zone,"")}],{zone:"fail"});if(t.skip)return Se("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});let a=Js[s];if(o<1||o*a>wc){let c=Math.floor(wc/a);return Se("invalid","Runs must be at most 52 weeks apart.",[{label:`Use ${zc(c,s)}`,text:Ut(e,r,zc(c,s))}],n)}return{ok:!0,every:i,timezone:void 0}}function $x(e,t,r){let n=t.time??t.minute;return Se("unstorable","An interval counts from the last run, so it has no time of day.",[...r,...n?[{label:"Drop the time",text:Ut(e,n,"")}]:[]],{time:"fail",minute:"fail"})}var fq=new Map([[29,"February has no 29th most years."],[30,"February has no 30th."],[31,"Five months have no 31st."]]);function mq(e,t){let r=t.zone?.id,n=t.base;if(!n&&(t.day||t.interval?.unit==="months"))n={from:0,to:0,kind:"monthly",days:[]};if(!n)return Se("incomplete","Add how often, like every day.",t.time?[{label:"Every day",text:`every day ${e.trim()}`}]:[]);if(t.time&&!t.time.valid)return Se("invalid","Use a time from 00:00 to 23:59.",[],{time:"fail"});if(n.kind==="hourly"){if(t.time)return Se("unstorable","An hourly schedule takes a minute, like at :15.",[{label:"Use :00",text:Ut(e,t.time,"at :00")}],{time:"fail"});if(t.day)return Se("invalid","An hourly schedule runs every day.",[],{day:"fail"});return{ok:!0,every:{preset:"hourly",minute:t.minute?.value??0},timezone:r}}if(t.minute)return Se("invalid","A minute only fits an hourly schedule.",[],{minute:"fail"});if(n.kind==="week"||n.kind==="weekly"&&n.days.length===0){let f=t.every?{from:Math.min(t.every.from,n.from),to:n.to}:n;return Se("incomplete","Add a day, like every monday.",[{label:"Every Monday",text:Ac(Ut(e,f,"every monday"),t)}])}if(n.kind==="monthly"){if(!t.day)return Se("incomplete","Add a day, like on the 1st.",[{label:"On the 1st",text:Ac(`${oi(e)} on the 1st`,t)}])}else if(t.day)return Se("invalid","Pick a weekday or a day of the month, not both.",[],{day:"fail"});let o=t.day,s=o?Rx(o):[];if(s.some((f)=>f<1||f>31))return Se("invalid","A month has at most 31 days.",[],{day:"fail"});if(o&&o.value>28&&!t.skip)return Se("ambiguous",fq.get(o.value)??"",[{label:"Skip those months",text:`${Ac(oi(e),t)}, skipping shorter months`},{label:"Run on the 28th instead",text:Ac(Ut(e,o,"on the 28th"),t)}],{day:"warn"});if(t.skip&&!(o&&o.value>28))return Se("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});if(!t.time)return Se("incomplete",t.atDangling?"Add a time, like 09:00.":"Add a time, like at 09:00.",[{label:`At ${Rn}`,text:t.atDangling?`${oi(e)} ${Rn}`:`${oi(e)} at ${Rn}`}]);let i=Cx(t.time),[a]=i;if(i.length===1&&s.length<=1&&a){let f=hq(n,s[0],a);if(f)return{ok:!0,every:f,timezone:r}}let c=[...new Set(i.map((f)=>f.minute))],u=[...new Set(i.map((f)=>f.hour))];if(c.length*u.length!==i.length)return Se("unstorable","Times in one schedule share their minutes, like 09:00 and 17:00.",[],{time:"fail"});let l=`${c.join(",")} ${u.join(",")} ${gq(n,s)}`,d=_c.safeParse({cron:l});if(!d.success)return Se("invalid",zx(d.error.issues[0]?.message??"this cron does not parse"),[],{time:"fail"});return{ok:!0,every:{cron:d.data.cron},timezone:r}}function Rx(e){return[...new Set(e.values)].sort((t,r)=>t-r)}function Cx(e){let t=new Map;for(let r of e.times)t.set(r.hour*60+r.minute,r);return[...t.entries()].sort(([r],[n])=>r-n).map(([,r])=>r)}function hq(e,t,r){let n=jf(r.hour,r.minute);switch(e.kind){case"daily":return{preset:"daily",at:n};case"weekdays":return{preset:"weekdays",at:n};case"monthly":{let o=t??1;return o>28?null:{preset:"monthly",day:o,at:n}}case"weekly":{let[o]=e.days,s=o===void 0?void 0:Nc[o];return e.days.length===1&&s?{preset:"weekly",on:s,at:n}:null}default:return null}}function gq(e,t){switch(e.kind){case"weekdays":return"* * 1-5";case"weekends":return"* * 0,6";case"monthly":return`${t.length>0?t.join(","):"1"} * *`;case"weekly":return`* * ${e.days.join(",")}`;default:return"* * *"}}var Nf=/^[\d*][\d*,\-/]*$/,yq=/^[\da-z*][\da-z*,\-/]*$/i;function bq(e){let[t,r]=e;if(!(t&&r&&Nf.test(t.text)&&Nf.test(r.text)))return 0;let n=0;while(n<5){let o=e[n],s=n<3?Nf:yq;if(!(o&&s.test(o.text))||n>=3&&!/[\d*]/.test(o.text)&&!/^[a-z]{3}(-[a-z]{3})?(,[a-z]{3})*$/i.test(o.text))break;n+=1}return n}function zx(e){return`${si(e)}.`}function wq(e,t,r,n){let o=t.slice(0,r),s=o[0],i=o.at(-1),a=o.map((y)=>y.text).join(" "),c=s&&i?_o(s,i):{from:0,to:0},u=t.slice(r),l,d;if(u.length>0){let w=new qf(u).run(),T=w.every||w.base||w.interval||w.time||w.day||w.minute||w.skip;if(w.unknown||T||!w.zone){let S=u[0];d=w.unknown??(S?_o(S,S):void 0)}else l=w.zone}let f=Nx(a),m=f?si(f):"Cron",h=(y)=>{let w=[{...c,text:e.slice(c.from,c.to),kind:"cron",label:m,tone:y}];if(l)w.push({from:l.from,to:l.to,text:e.slice(l.from,l.to),kind:"zone",label:Ix(l.id,n),tone:"ok"});if(d)w.push({...d,text:e.slice(d.from,d.to),kind:"unknown",label:"Not understood",tone:"fail"});return w};if(d)return{ok:!1,reason:"unknown",message:`Could not read "${e.slice(d.from,d.to)}".`,fixes:[],tokens:h("ok")};let g=_c.safeParse({cron:a});if(!g.success){let y=g.error.issues[0]?.message??"this cron does not parse",w=y.includes(`at least ${Ot} minutes`),T=o[0]?.text??"",S=/^\*(\/(\d+))?$/.exec(T),I=w&&S&&s?[{label:`Use ${Ot} minutes`,text:Ut(e,_o(s,s),`*/${Ot}`)}]:[];return{ok:!1,reason:w?"floor":"invalid",message:zx(y),fixes:I,tokens:h("fail")}}return{ok:!0,every:{cron:g.data.cron},timezone:l?.id,tokens:h("ok")}}function _q(e,t){if(e.trim()==="")return{ok:!1,reason:"empty",message:"",fixes:[],tokens:[]};let r=Sx(e,/\S+/g),n=bq(r);if(n>0)return wq(e,r,n,t);let o=new qf(Sx(e,/[^\s,]+/g)).run(),s=vq(e,o),i=cq(e,o,s.ok?{}:s.tones??{},t);if(s.ok)return{ok:!0,every:s.every,timezone:s.timezone,tokens:i};return{ok:!1,reason:s.reason,message:s.message,fixes:s.fixes,tokens:i}}function vq(e,t){if(t.unknown)return Se("unknown",`Could not read "${e.slice(t.unknown.from,t.unknown.to)}".`,[],{unknown:"fail"});if(t.everyDangling&&!t.base&&!t.interval)return Se("incomplete","Add how often, like every day.");return pq(e,kq(t))??mq(e,t)}var Sq={hours:"hourly",days:"daily",weeks:"week",months:"monthly"};function kq(e){let t=e.interval;if(!t||t.n!==1||t.unit===null)return e;let r=e.base?.kind;if(t.unit==="weeks"&&r==="weekly"||t.unit==="months"&&r==="monthly"){if(e.base&&r==="weekly"&&!e.weekdaySpan)e.weekdaySpan={from:e.base.from,to:e.base.to},e.base.from=t.from,e.base.to=t.to;return e.interval=void 0,e}if(e.base)return e;if(t.unit==="minutes")return e;return e.base={from:t.from,to:t.to,kind:Sq[t.unit],days:[]},e.interval=void 0,e}var xq={hours:"every 60 minutes",days:"every 24 hours",weeks:"every 7 days"},Rc=Array.from({length:31},(e,t)=>t+1),Cc=[0,1,2,3,4,5,6];function $q(e){let t=(i,a)=>fc(e,i,a),r=Cc.filter((i)=>Rc.every((a)=>t(a,i)));if(Cc.every((i)=>Rc.every((a)=>t(a,i)===r.includes(i))))return r.length===7?{kind:"daily"}:{kind:"weekly",days:r};let o=Rc.filter((i)=>Cc.every((a)=>t(i,a)));return Rc.every((i)=>Cc.every((a)=>t(i,a)===o.includes(i)))?{kind:"monthly",days:o}:null}function Ex(e,t){let[r,n]=e;if(r!==0||n===void 0)return null;let o=n-r;return e.every((i,a)=>i===a*o)&&t%o===0&&e.length===t/o?o:null}var Eq=4;function Tx(e){return(e+6)%7}function Tq(e){if(e.kind==="daily")return"every day";if(e.kind==="monthly")return e.days.length===0?null:`monthly on the ${So(e.days.map(Mf))}`;let t=e.days.join(",");if(t==="1,2,3,4,5")return"weekdays";if(t==="0,6")return"weekends";let r=[...e.days].sort((n,o)=>Tx(n)-Tx(o)).map(Ax);return r.length===0?null:`every ${So(r)}`}function Oq(e){let t=Pn(e);if(!t.ok||t.spec.months.length!==12)return null;let{minutes:r,hours:n}=t.spec,o=$q(t.spec);if(!o)return null;let s=o.kind==="daily",[i]=r;if(n.length===24){if(!s)return null;if(r.length===1&&i!==void 0)return i===0?"every hour":`every hour at :${vo(i)}`;let d=Ex(r,60);return d?`every ${d} minutes`:null}let a=Ex(n,24);if(r.length===1&&i!==void 0&&a&&n.length>2)return s?`every ${a} hours at :${vo(i)}`:null;if(r.length*n.length>Eq)return null;let c=Tq(o);if(!c)return null;let u=n.flatMap((d)=>r.map((f)=>jf(d,f))),l=`${c} at ${So(u)}`;if(o.kind!=="monthly"||o.days.every((d)=>d<=28))return l;return o.days.length===1?`${l}, skipping shorter months`:null}function Nx(e){let t=Oq(e);if(!t)return null;let r=_q(t,new Date(0)),n=r.ok?yx(r.every):null;return n!==null&&pk(n,e)?t:null}function Pq(e){if(ni(e)){if(e.n===1)return xq[e.unit];return`every ${zc(e.n,e.unit)}`}if("preset"in e)switch(e.preset){case"hourly":return e.minute===0?"every hour":`every hour at :${vo(e.minute)}`;case"daily":return`every day at ${e.at}`;case"weekdays":return`weekdays at ${e.at}`;case"weekly":return`every ${si(e.on)} at ${e.at}`;default:return`monthly on the ${Mf(e.day)} at ${e.at}`}let t=e.cron.trim();return Nx(t)??t}function Iq(e){let t=Pq(e.every);if(ni(e.every)||!e.timezone)return t;return`${t} in ${Px(e.timezone)}`}function Aq(e){return Iq({every:e.every,timezone:ni(e.every)?void 0:e.timezone??Yt})}function ii(e){return si(Aq(e))}var Qce=["every",...Nc,"weekdays","weekends","minutes","hours","days","weeks","month","monthly","daily","hourly","weekly","noon","midnight"],eue=["",` at ${Rn}`,` ${Rn}`,":00"," days"," minutes",` on the 1st at ${Rn}`," 5 days"];var Rq={issue:"issues","change-request":"change requests"},Cq={open:"open",closed:"closed",any:"open and closed"};function Ff(e,t){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} ${t} ${e.at(-1)}`}function zq(e){let t=e?.match??{},r=["issue","change-request"].filter((o)=>t.subjects?.includes(o)),n=e?.every?[{key:"every",text:ii({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:Cq[t.state]}:{key:"state",text:"open or closed",placeholder:!0},{key:"gap",text:" "},r.length>0?{key:"subjects",text:Ff(r.map((o)=>Rq[o]),"and")}:{key:"subjects",text:"issues or change requests",placeholder:!0},{key:"inactive-lead",text:" with no activity for "},t.inactiveFor?{key:"inactiveFor",text:wx(t.inactiveFor)}:{key:"inactiveFor",text:"some time",placeholder:!0}),t.labels?.length)n.push({key:"labels",text:`, labeled ${Ff(t.labels,"and")}`});if(t.excludeLabels?.length)n.push({key:"excludeLabels",text:`, not labeled ${Ff(t.excludeLabels,"or")}`});if(t.skipLocked!==!1)n.push({key:"skipLocked",text:", skipping locked ones"});return n.push({key:"end",text:"."}),n}function Lx(e){return zq(e).map((t)=>t.placeholder?`[${t.text}]`:t.text).join("")}var Nq=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 Dx(e){let t=e.map(String).filter((r)=>!/^\d+$/.test(r)).join(".");return Nq.get(t)??null}function Lq(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 Dq(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 jx(e,t){let r=0;for(let n of t)if(n===e[r])r++;return r===e.length}function Mx(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function jq(e,t){let r=Mx(e),n=null;for(let s of t){let i=Mx(s),c=jx(r,i)||jx(i,r)?Math.abs(i.length-r.length)/4:Dq(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 Lc(e,t,r){let n=jq(t,r);return n?`${t} is not ${e}. Did you mean ${n}?`:`${t} is not ${e}. Use one of: ${r.join(", ")}`}var Fx=J(p(),ne());function ai(e,t,r){let n=Fx.safeParse(e??{});if(!n.success)return[`${r} takes an object of settings`];let o=t instanceof ef?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)=>Lc(`a setting of ${r}`,a,o));let i=t.safeParse(n.data);return i.success?[]:i.error.issues.map((a)=>`${r}: ${ho(a)}`)}var Mq=b({kind:z(["trigger","check","gate","action","output"])}),Ux=b({kind:z(["trigger","check","gate","action"])}),qq=b({kind:C("output"),port:z(["pass","fail","approve","deny"])}),Fq=b({}).loose(),Uq=ic((e)=>Ux.safeParse(e).success),Wq=J(p(),b({kind:C("workflow"),spec:ic((e)=>Fq.safeParse(e).success,{error:"each entry must be workflow({ ... })"})}),{error:"the default export must be workflows({ ... })"});function Vq(e){return Object.hasOwn(Fr,e)}function Uf(e){return e.kind==="output"}function Zq(e){return e.kind==="action"&&e.action==="send-to-moderation"}function Bq(e,t){if(e==="pass")return;return t.kind==="trigger"?void 0:e}function Kq(e){switch(e){case"pass":return"fail";case"fail":return"pass";case"approve":return"deny";default:return"approve"}}function Hq(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 Gq=/^[^\p{Cc}]+$/u;class Wx{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=Hq(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=Bq(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(!Mq.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}if(Uf(r)){if(!qq.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(!Ux.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=Ks.safeParse(n);if(o.success&&(o.data==="schedule.matched"||wo.some((s)=>s===o.data)))r.push(o.data);else this.issue(Lc("an event a workflow can start on",n,wo),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=po.safeParse(e.schedule);if(!n.success){for(let o of n.error.issues)this.issue(Lq(ho(o,Dx)),e);return}this.nodes.push({id:t,type:"trigger",kinds:r,schedule:po.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(Lc("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 ai(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(!Vq(r)){this.issue(Lc("an action",r,Object.keys(Fr)),e);return}let n=Fr[r];for(let a of ai(e.params,n,r))this.issue(a,e);let o=Fx.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(Zq(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(!Gq.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=Uq.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=Uf(e.check)?{step:e.check.step,port:e.check.port}:{step:e.check,port:"pass"};if(!Uf(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,Kq(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=kr.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(ho(i));return null}return s.data}}function Wf(e){let t=[],r=[];for(let[n,o]of Object.entries(e)){let s=new Wx(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 Vx(e){let t=Wq.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 Wf(t.data)}function Jq(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(Ak(c.action,c.params??{}))}return s}function Yq(e){return e.nodes.flatMap((t)=>{if(t.type!=="trigger"||!t.schedule?.every)return[];let r=bx(t.schedule.timezone),n=Jq(e,t.id),o=Lx(t.schedule);return[{nodeId:t.id,summary:ii({every:t.schedule.every,timezone:t.schedule.timezone}),timezone:r.zone,defaulted:r.defaulted,description:n.length>0?`${o} Then Tripwire ${Sc(n)}.`:`${o} No action runs after it.`}]})}function Zx(e,t){return e.map((r)=>{let n=cx(r,t?{catalog:t}:{});return{id:r.id,name:r.name,valid:!n.some((o)=>o.severity==="error"),issues:n,schedules:Yq(r)}})}var Vf=new Set(["url","signingSecret","urlSet","signingSecretSet"]);function Xq(e){return e.type==="action"&&(e.action==="webhook"||e.action==="discord")}function Bx(e){return{...e,nodes:e.nodes.map((t)=>{if(!Xq(t))return t;let r={...t.params??{}};for(let n of["url","signingSecret"]){let o=r[n];if(o!==void 0&&o!==""&&o!==null)r[n]="",r[`${n}Set`]=!0}return{...t,params:r}})}}var vue=x(je),Sue=J(p(),je);var kue=p(),xue=J(p(),je);var $ue=b({}).strict();var Kx=new Set(["cycle","gate-input","not-input","trigger-input","wrong-output","no-outputs","missing-step","duplicate-id"]);function Hx(e){return Qq(e).issues.filter((t)=>Kx.has(t.rule))}function Qq(e,t=He){let r=Af(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)=>Kx.has(o.rule)),canTurnOn:n.length===0,issues:n}}var Dc={on:"Live",off:"Off","cant-run":"Can't run","needs-fixes":"Needs fixes","cant-turn-on":"Can't turn on"};function Gx(e){if(e.enabled){if(!e.runnable)return"cant-run";return e.canTurnOn?"on":"needs-fixes"}return e.canTurnOn?"off":"cant-turn-on"}var ci=nf(()=>b({type:p().optional(),const:ne().optional(),enum:x(ne()).optional(),items:ci.optional(),properties:J(p(),ci).optional(),required:x(p()).optional(),anyOf:x(ci).optional(),oneOf:x(ci).optional()})),Mc=J(p(),je),e2=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function Cn(e){return e2.test(e)?e:JSON.stringify(e)}function jc(e,t){let r=e.anyOf??e.oneOf;if(r)return r.map((n)=>jc(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?jc(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 ${Cn(i)}${e.required?.includes(i)?"":"?"}: ${jc(a,o)};`).join(`
|
|
239
|
+
${gx}`;var $M=w({total:P(),weeks:k(k(P().min(0).max(4)))}),TM=w({accountAgeDays:P(),location:p().nullable(),emailVerified:D(),twoFactor:D()}),EM=w({mergedPrs:P(),openPrs:P(),comments:P(),hiddenByAutomod:P()}),PM=z(["automod-hidden","pull-opened","comment-removed","issue-comment","flagged","account-created"]),OM=w({id:p(),kind:PM,title:p(),detail:p(),at:pe.datetime()}),zce=w({handle:p(),initial:p(),joinedDaysAgo:P(),publicRepos:P(),followers:P(),watchlisted:D(),contributions:$M,details:TM,repoStats:EM,activity:k(OM)});var IM=["under","over","atLeast","atMost","between","equals","not","oneOf","noneOf","has","containsAny","noneMatch","anyIn"],wx=p().regex(/^\d+(h|d)$/,"window must be a count and a unit, like 24h or 7d"),AM=It("kind",[w({kind:C("last"),window:wx}),w({kind:C("lastCount"),window:wx}),w({kind:C("trimmedLength")}),w({kind:C("nonLatinRatio")}),w({kind:C("letterCount")})]),RM=te([P(),p(),D()]),CM=te([RM,k(te([P(),p()]))]),bx=w({kind:z(IM),args:k(CM)}),zM=te([bx.refine((e)=>e.kind!=="not",{message:"not takes an inner comparison"}),w({kind:C("not"),args:aj([bx])})]),NM=w({when:w({id:p().min(1),transform:AM.optional()}),comparison:zM,severity:z(["low","medium","high"])});var Mce=w({id:p().regex(/^custom-[a-z0-9][a-z0-9-]*$/,"id must be custom-<kebab-slug>"),name:p().min(1).max(80),enabled:D(),definition:NM}),qce=w({});var Vce=z(["prod","eval","dev"]),Zce=z(["railway","openrouter","planetscale"]);var Gce=z(["pending","granted-admin","denied","not-admin","not-for-tripwire","token-expired","failed"]);var nr={installationId:p(),forge:Qs},Jce=It("status",[w({...nr,status:C("claimable"),account:p().nullable(),repoCount:P(),stateOrg:w({id:p(),slug:p(),name:p()}).nullable()}),w({...nr,status:C("claimed-by-your-org"),orgSlug:p()}),w({...nr,status:C("processing")}),w({...nr,status:C("recovering")}),w({...nr,status:C("unreadable")}),w({...nr,status:C("missing"),recoverable:D()}),w({...nr,status:C("not-for-tripwire")}),w({...nr,status:C("not-yours"),recoverable:D()}),w({...nr,status:C("token-expired")}),w({...nr,status:C("not-admin"),account:p().nullable()})]);var LM=/^(Too (small|big)|Invalid (input|option|string|number|key|element|value)|Unrecognized key)/,jM=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","a group of settings"]]);function Rc(e,t){return`${e} ${t}${e===1?"":"s"}`}function DM(e){return e.map(String).join(".")}function MM(e,t){switch(e.code){case"too_small":{if(e.origin==="array"||e.origin==="set")return`${t} needs at least ${Rc(e.minimum,"item")}`;if(e.origin==="string")return e.minimum===1?`${t} cannot be empty`:`${t} needs at least ${Rc(e.minimum,"character")}`;return e.inclusive===!1?`${t} must be more than ${e.minimum}`:`${t} must be ${e.minimum} or more`}case"too_big":{if(e.origin==="array"||e.origin==="set")return`${t} can have at most ${Rc(e.maximum,"item")}`;if(e.origin==="string")return`${t} can be at most ${Rc(e.maximum,"character")}`;return e.inclusive===!1?`${t} must be less than ${e.maximum}`:`${t} must be ${e.maximum} or less`}case"invalid_type":return/received undefined/.test(e.message)?`${t} is missing`:`${t} must be ${jM.get(e.expected)??e.expected}`;case"invalid_value":return e.values.length===1?`${t} must be ${String(e.values[0])}`:`${t} must be one of ${e.values.map(String).join(", ")}`;case"invalid_format":return`${t} is not a valid ${e.format}`;case"invalid_union":return`${t} is not in a form Tripwire can read`;case"unrecognized_keys":return`${e.keys.join(", ")} ${e.keys.length===1?"is not a setting":"are not settings"}`;default:return null}}function So(e,t){let r=t?.(e.path)??null,n=r??DM(e.path);if(LM.test(e.message)){let o=MM(e,n||"This setting");if(o)return o}if(r)return`${r} is not valid: ${e.message}`;return n?`${n}: ${e.message}`:e.message}var Df=z(["admin","member"]),qM=new Set(["activity","analytics","api","dev","dither-kit","invite","login","moderation","oauth","onboarding","queue","rules","runs","workflows","admin","app","auth","blog","brand","changelog","dashboard","docs","help","home","legal","new","pricing","privacy","settings","signup","status","support","terms","www","tripwire","boring","boringsoftware"]),FM=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/,eue=p().min(3,"slug must be at least 3 characters").max(32,"slug must be at most 32 characters").regex(FM,"lowercase letters, numbers, and hyphens only, with no leading or trailing hyphen").refine((e)=>!qM.has(e),{message:"this name is reserved"});var tue=z(["User","Organization"]),rue=w({role:Df,maxUses:P().int().min(1).max(1000).default(1),expiresInDays:P().int().min(1).max(90).default(7)});var Mf=["moderation","activity","rules","workflows","responses","analytics","connections","members","settings"],qf=z(Mf),_x=["read","manage"],or=z(_x),iue=kj([qf,":",or]),aue=Mf.flatMap((e)=>_x.map((t)=>`${e}:${t}`));var vx=w({moderation:or.optional(),activity:or.optional(),rules:or.optional(),workflows:or.optional(),responses:or.optional(),analytics:or.optional(),connections:or.optional(),members:C("read").optional(),settings:C("read").optional()}).strict().refine((e)=>Object.values(e).some(Boolean),{message:"pick at least one area"}),UM=bf(qf,k(or).min(1));var cue=bf(qf,or);function WM(e){let t={};for(let r of Mf){let n=e[r];if(n?.includes("manage"))t[r]="manage";else if(n?.includes("read"))t[r]="read"}return t}var VM=new Set(["admin","member","owner"]),Ff=p().trim().toLowerCase().min(2,"use at least 2 characters").max(32,"use at most 32 characters").regex(/^[a-z][a-z0-9-]*[a-z0-9]$/,"use lowercase letters, numbers and hyphens, starting with a letter").refine((e)=>!VM.has(e),{message:"this name is taken by a built-in role"}),uue=w({name:Ff,scopes:vx}),Sx=UM.refine((e)=>vx.safeParse(WM(e)).success,{message:"this role grants access a custom role cannot hold"}),lue=w({organizationId:p().min(1),role:Ff,permission:Sx}).strict(),due=w({organizationId:p().min(1),roleName:p().min(1).optional(),roleId:p().min(1).optional(),data:w({permission:Sx}).strict()}).strict(),pue=te([Df,Ff]);var ZM=z(["public","private"]),$x=w({name:p(),className:p()}),BM=w({name:p(),description:p(),visibility:ZM,openIssues:P(),openPulls:P(),flagged:P(),updatedAt:pe.datetime()}),kx=w({kind:Er,number:P(),title:p(),status:si,author:p(),openedAt:pe.datetime(),comments:P(),flagged:P(),labels:k($x)}),KM=w({state:z(["Hidden","Removed"]),rule:p()}),HM=w({id:p(),author:p(),body:p(),createdAt:pe.datetime(),flag:KM.optional()}),xx=w({kind:Er,number:P(),title:p(),status:si,author:p(),openedAt:pe.datetime(),labels:k($x),body:p(),comments:k(HM),branch:p().optional(),baseBranch:p().optional()}),gue=w({repos:k(BM),issues:k(kx),pulls:k(kx),issueDetails:K(p(),xx),pullDetails:K(p(),xx)});var bue=new Set(Yk.nodes.filter((e)=>e.type==="rule").map((e)=>e.ref));var GM=z(["removed","hidden","banned","dismissed","required-review"]),JM=z(["actioned","dismissed","appealed","reversed"]),YM=z(["automod","report","manual"]),XM=w({kind:YM,detail:p(),reporter:_o.optional()}),QM=w({at:pe.datetime(),label:p(),by:p()}),eq=w({id:p(),type:vo,repoFullName:p(),number:P(),content:p(),threadKind:Er,commentId:p()}),xue=w({id:p(),label:p(),reason:Nf,severity:Lf,action:GM,status:JM,author:_o,moderator:_o.nullable(),caughtBy:XM,at:pe.datetime(),snapshot:D(),items:k(eq),history:k(QM)}),$ue=z(["what","reason","caught"]),ko=z(["pass","block","needs_review"]);var Tx=z(["queued","running","paused","completed","failed","closed"]),Oue=Tx.options,Iue=z(["checking","did-not-finish","pass","block","needs_review","closed-before-review","ran"]),Cc={checking:"Checking","did-not-finish":"Did not finish",pass:"Passed",block:"Blocked",needs_review:"Waiting for human review","closed-before-review":"Closed before review",ran:"Ran"},Aue=Tx.nullable().catch(null),Rue=ko.nullable().catch(null);var Ex=z(["event","pass","fail","approve","deny"]),Nue=z(["event","result","decision"]),Lue=z(["identity","not"]),lt={event:{type:"event",fn:"identity",label:"Event"},pass:{type:"result",fn:"identity",label:"Passes"},fail:{type:"result",fn:"not",label:"Doesn't pass"},approve:{type:"decision",fn:"identity",label:"Approved"},deny:{type:"decision",fn:"not",label:"Blocked"}},tq={identity:{event:"event",result:"result",decision:"decision"},not:{result:"result",decision:"decision"}};function rq(e,t){return tq[e][t]??null}function nq(e){let t=lt[e];return rq(t.fn,t.type)}var ai={event:lt.event.label,pass:lt.pass.label,fail:lt.fail.label,approve:lt.approve.label,deny:lt.deny.label},Uf={event:lt.event.type,pass:lt.pass.type,fail:lt.fail.type,approve:lt.approve.type,deny:lt.deny.type};function xo(e){let t=lt[e];if(t.type==="event")return"neutral";return t.fn==="not"?"fail":"ok"}var jue={event:xo("event"),pass:xo("pass"),fail:xo("fail"),approve:xo("approve"),deny:xo("deny")},oq={trigger:[],rule:["event","result","decision"],gate:["result"],action:["event","result","decision"]},sq={"send-to-moderation":["approve","deny"]},iq=Ex.options;function Px(e){return oq[e]}function zc(e,t){let r=nq(t);return r!==null&&Px(e).includes(r)}function ii(e){return iq.filter((t)=>zc(e,t))}var Due={trigger:{accepts:ii("trigger")},rule:{accepts:ii("rule")},gate:{accepts:ii("gate")},action:{accepts:ii("action")}};function ci(e){switch(e.type){case"trigger":return["event"];case"rule":case"gate":return["pass","fail"];case"action":return e.action==="send-to-moderation"?sq[e.action]:[];default:return[]}}function Nn(e,t){if(e.type==="trigger"&&(t===void 0||t==="pass"))return"event";return t??"pass"}var Cx={schema:{severity:"error",stage:"structure"},"no-trigger-events":{severity:"error",stage:"structure"},"duplicate-id":{severity:"error",stage:"structure"},"missing-step":{severity:"error",stage:"structure"},"no-trigger":{severity:"error",stage:"structure"},"trigger-input":{severity:"error",stage:"structure"},"gate-input":{severity:"error",stage:"structure"},"no-outputs":{severity:"error",stage:"structure"},"wrong-output":{severity:"error",stage:"structure"},"not-input":{severity:"error",stage:"structure"},"orphan-step":{severity:"error",stage:"structure"},cycle:{severity:"error",stage:"structure"},"no-action":{severity:"error",stage:"enable"},"schedule-config":{severity:"error",stage:"enable"},"action-params":{severity:"error",stage:"enable"},"schedule-mixed":{severity:"error",stage:"enable"},"schedule-needs-change-request":{severity:"error",stage:"enable"},"unknown-rule":{severity:"error",stage:"enable"},"rule-unavailable":{severity:"warning",stage:"enable"},"rule-config":{severity:"error",stage:"enable"},"removed-step":{severity:"error",stage:"enable"},"review-targets":{severity:"error",stage:"enable"},"stale-reviewer":{severity:"warning",stage:"enable"},"dead-end":{severity:"warning",stage:"enable"}},Ln=(e)=>({label:"Remove connection",edit:{type:"remove-edge",edgeId:e}}),ui=(e)=>({label:"Delete",edit:{type:"delete-node",nodeId:e}});function Vf(e){let t=e.trim();return/[.?]$/.test(t)?t:`${t}.`}function aq(e){let t=e.trim();return Vf(`${t.charAt(0).toUpperCase()}${t.slice(1)}`)}function zx(e){if(e.length<=1)return e.join("");return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Nc(e,t=Ge){switch(e.type){case"trigger":return"Trigger";case"rule":{let[r]=e.ref.split("@");return Ge.find((n)=>n.ruleId===r)?.name??t.find((n)=>n.ruleId===r)?.name??e.ref}case"gate":return Qk.find((r)=>r.mode===e.mode)?.name??e.mode;case"action":return ex.find((r)=>r.action===e.action)?.name??`${e.action.charAt(0).toUpperCase()}${e.action.slice(1)}`;default:return"Step"}}function Nx(e,t,r,n){if(zc(e.type,t))return null;if(e.type==="trigger")return{rule:"trigger-input",message:n?`${r} takes no inputs, but ${n} connects to it`:`${r} takes no inputs`};let o=n?` from ${n}`:"",s=Uf[t];return{rule:"gate-input",message:`${r} takes rule results, not ${s==="event"?"events":"decisions"}${o}`}}function Lx(e,t,r){let n=ci(e);if(n.length===0)return{rule:"no-outputs",message:`${r} has no outputs`};if(!n.includes(t))return{rule:"wrong-output",message:`${r} has no ${ai[t]} output`};return null}function cq(e){return Uf[e]==="event"?"It takes rule results, not events.":"It takes rule results, not decisions."}function Zf(e,t=Ge){let r=new Map,n=new Map;for(let o of e.nodes){let s=Nc(o,t),i=(r.get(s)??0)+1;r.set(s,i),n.set(o.id,i===1?s:`${s} ${i}`)}return n}function uq(e,t){if(t==="event")return[{label:"Insert a rule",intent:{type:"insert-step",edgeId:e.id}},Ln(e.id)];return[Ln(e.id)]}function lq(e){let t=[],r=new Set;for(let o of e.def.nodes){if(r.has(o.id))t.push({nodeId:o.id,message:"Another step uses the same id. Rename one.",fixes:[]});r.add(o.id)}let n=new Set;for(let o of e.def.edges){if(n.has(o.id))t.push({edgeId:o.id,message:"Another connection uses the same id. Rename one.",fixes:[]});n.add(o.id)}return t}function dq(e){return e.def.edges.flatMap((t)=>[t.from,t.to].filter((r)=>!e.byId.has(r)).map(()=>({edgeId:t.id,message:"A connection points to a step that is gone.",fixes:[Ln(t.id)]})))}function pq(e){return e.def.nodes.some((t)=>t.type==="trigger")?[]:[{message:"Add a trigger to start it.",fixes:[{label:"Add trigger",edit:{type:"add-trigger"}}]}]}function jx(e,t){let r=e.byId.get(t.from),n=e.byId.get(t.to);return r&&n?{source:r,target:n}:null}function Ox(e){return(t)=>t.def.edges.flatMap((r)=>{let n=jx(t,r);if(!n||Lx(n.source,Nn(n.source,r.when),""))return[];let o=Nn(n.source,r.when);if(Nx(n.target,o,t.name(n.target),t.name(n.source))?.rule!==e)return[];return[{edgeId:r.id,nodeId:n.target.id,message:e==="gate-input"?cq(o):"It takes no inputs.",fixes:e==="gate-input"?uq(r,o):[Ln(r.id)]}]})}function Ix(e){return(t)=>t.def.edges.flatMap((r)=>{let n=jx(t,r);if(!n)return[];if(Lx(n.source,Nn(n.source,r.when),t.name(n.source))?.rule!==e)return[];let s=ci(n.source).includes("pass");return[{edgeId:r.id,nodeId:n.source.id,message:e==="no-outputs"?"It has no outputs.":`It has no ${ai[Nn(n.source,r.when)]} output.`,fixes:e==="wrong-output"&&s?[{label:"Use Passes",edit:{type:"use-passes",edgeId:r.id}},Ln(r.id)]:[Ln(r.id)]}]})}function fq(e){return e.def.nodes.flatMap((t)=>{let r=e.incoming.get(t.id)??[],[n]=r;if(t.type!=="gate"||t.mode!=="not"||r.length<2||!n)return[];return[{nodeId:t.id,message:"It takes one input. Keep one.",fixes:[{label:"Keep first input",edit:{type:"keep-one-input",nodeId:t.id,edgeId:n.id}}]}]})}function mq(e){let t=e.def.nodes.filter((n)=>n.type==="trigger"),[r]=t;return e.def.nodes.flatMap((n)=>{if(n.type==="trigger"||(e.incoming.get(n.id)??[]).length>0)return[];let o=t.length===1&&r&&zc(n.type,"event")?[{label:"Connect",edit:{type:"connect",from:r.id,to:n.id}}]:[];return[{nodeId:n.id,message:"Nothing runs it. Connect it or delete it.",fixes:[...o,ui(n.id)]}]})}function hq(e){let t=new Map,r=[],n=[],o=(s)=>{t.set(s,"visiting"),r.push(s);for(let i of e.outgoing.get(s)??[]){let a=t.get(i.to);if(a==="visiting"){let u=r.slice(r.indexOf(i.to)).flatMap((l)=>{let d=e.byId.get(l);return d?[e.name(d)]:[]});n.push({edgeId:i.id,nodeId:i.to,message:u.length===1?"It connects to itself.":`It loops back through ${zx(u.slice(1))}.`,fixes:[Ln(i.id)]})}else if(a===void 0&&e.byId.has(i.to))o(i.to)}r.pop(),t.set(s,"done")};for(let s of e.def.nodes)if(!t.has(s.id))o(s.id);return n}function gq(e){return Dx(e,e.def.nodes.filter((t)=>t.type==="trigger").map((t)=>t.id))}function yq(e){let t=gq(e),r=e.def.nodes.find((n)=>n.type==="trigger");return e.def.nodes.some((n)=>n.type==="action"&&t.has(n.id))?[]:[{message:"Add an action after the trigger.",fixes:r?[{label:"Add action",intent:{type:"add-next-step",nodeId:r.id,port:"event"}}]:[]}]}var wq={every:"how often it runs",subjects:"what it looks at",state:"a status",inactiveFor:"how long without activity"};function bq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="trigger"||!Oc(t))return[];let r=Gk(t.schedule);if(r.length===0)return[];let[n]=r;return[{nodeId:t.id,message:`Set ${zx(r.map((o)=>wq[o]))}.`,fixes:[{label:"Set schedule",intent:{type:"focus-field",nodeId:t.id,field:n??"schedule"}}]}]})}var _q={"remove-label":{schema:Zr,field:"labels",message:"Pick the labels to remove.",label:"Pick labels"},"post-comment":{schema:Tc,field:"message",message:"Write the message.",label:"Write message"}},vq=new Set(["discord.com","discordapp.com","ptb.discord.com","canary.discord.com"]),Sq=w({url:p().optional(),urlSet:D().optional()});function kq(e,t){let r=Sq.safeParse(t??{});if(!r.success)return!1;let{url:n,urlSet:o}=r.data;if(n===void 0||n==="")return o===!0;let s=Ks({protocol:/^https$/}).safeParse(n);if(!s.success)return!1;if(e==="webhook")return!0;let i=new URL(s.data);return vq.has(i.hostname)&&i.pathname.startsWith("/api/webhooks/")}var xq={webhook:{message:"Set the webhook URL. It must use HTTPS.",label:"Set URL"},discord:{message:"Set the Discord webhook URL.",label:"Set URL"}};function Wf(e,t,r,n){return{nodeId:e,message:t,fixes:[{label:r,intent:{type:"focus-field",nodeId:e,field:n}}]}}function $q(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action")return[];if(t.action==="webhook"||t.action==="discord"){let o=xq[t.action];return kq(t.action,t.params)?[]:[Wf(t.id,o.message,o.label,"url")]}if(t.action==="label")return Zr.safeParse(t.params??{}).success?[]:[Wf(t.id,"Pick the labels to add.","Pick labels","labels")];let r=t.action==="remove-label"||t.action==="post-comment"?_q[t.action]:null,n=r?.schema.safeParse(t.params??{});if(!(r&&n)||n.success)return[];return[Wf(t.id,r.message,r.label,r.field)]})}function Tq(e){return e.def.nodes.flatMap((t)=>t.type==="trigger"&&Oc(t)&&t.kinds.length>1?[{nodeId:t.id,message:"It cannot run on a schedule and on events. Pick one.",fixes:[{label:"Pick one",intent:{type:"focus-field",nodeId:t.id,field:"kinds"}}]}]:[])}var Eq=new Set(["block","send-to-moderation"]);function Dx(e,t){let r=new Set,n=[...t];for(let o=n.pop();o!==void 0;o=n.pop()){if(r.has(o))continue;r.add(o),n.push(...(e.outgoing.get(o)??[]).map((s)=>s.to))}return r}function Pq(e){let t=Dx(e,e.def.nodes.filter(Oc).map((r)=>r.id));return e.def.nodes.flatMap((r)=>r.type==="action"&&t.has(r.id)&&Eq.has(r.action)?[{nodeId:r.id,message:"It needs a change request event. A schedule cannot run it.",fixes:[ui(r.id)]}]:[])}function Bf(e,t){let[r,n]=t.split("@");return e.catalog.find((o)=>o.ruleId===r&&o.version===Number(n))}function Oq(e){return e.def.nodes.flatMap((t)=>t.type==="rule"&&!Bf(e,t.ref)?[{nodeId:t.id,message:"This rule is not in this repo.",fixes:[ui(t.id)]}]:[])}function Iq(e){return e.def.nodes.flatMap((t)=>{let r=t.type==="rule"?Bf(e,t.ref)?.unavailable:null;return r?[{nodeId:t.id,message:r,fixes:[]}]:[]})}function Aq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="rule")return[];let r=Bf(e,t.ref),n=r?.configSchema.safeParse(t.config);if(!(r&&n)||n.success)return[];let o=n.error.issues[0],s=o?.path[0];return[{nodeId:t.id,message:o?`Fix this setting: ${Vf(So(o))}`:"A setting is not valid.",fixes:s===void 0?[]:[{label:"Edit setting",intent:{type:"focus-field",nodeId:t.id,field:String(s)}}]}]})}var Rq={comment:"Customize sets the verdict comment now"};function Cq(e){return e.def.nodes.flatMap((t)=>t.type==="action"&&Fk(t.action)?[{nodeId:t.id,message:`This step was removed. ${aq(Rq[t.action])}`,fixes:[ui(t.id)]}]:[])}function zq(e){return e.def.nodes.flatMap((t)=>{if(t.type!=="action"||t.action!=="request-review")return[];let r=Wk.safeParse(t.params??{});if(r.success)return[];let n=r.error.issues[0],o=n?.code==="custom"&&n.path.length===0&&n.message.startsWith("add"),s=n?.path[0]==="teamReviewers"?"teamReviewers":"reviewers";return[{nodeId:t.id,message:o?"Pick people or teams to ask.":n?.message?`Fix the reviewers: ${Vf(n.message)}`:"A reviewer is not valid.",fixes:[{label:o?"Add reviewers":"Edit reviewers",intent:{type:"focus-field",nodeId:t.id,field:s}}]}]})}function Nq(e){let t=e.reviewers;if(!t)return[];return e.def.nodes.flatMap((r)=>{if(r.type!=="action"||r.action!=="request-review")return[];let n=ri.safeParse(r.params??{});if(!n.success)return[];return n.data.reviewers.filter((o)=>!t.some((s)=>Uk(s,o))).map((o)=>({nodeId:r.id,message:`Remove ${o.login}. They can no longer review this repo.`,fixes:[{label:"Remove",edit:{type:"remove-reviewer",nodeId:r.id,reviewer:o}}]}))})}function Lq(e){return e.def.nodes.flatMap((t)=>{let[r]=ci(t);if(t.type==="action"||!r||(e.outgoing.get(t.id)??[]).length>0||t.type!=="trigger"&&(e.incoming.get(t.id)??[]).length===0)return[];return[{nodeId:t.id,message:"Nothing runs after it.",fixes:[{label:"Add step",intent:{type:"add-next-step",nodeId:t.id,port:r}},ui(t.id)]}]})}var jq=[{rule:"duplicate-id",check:lq},{rule:"missing-step",check:dq},{rule:"no-trigger",check:pq},{rule:"trigger-input",check:Ox("trigger-input")},{rule:"gate-input",check:Ox("gate-input")},{rule:"no-outputs",check:Ix("no-outputs")},{rule:"wrong-output",check:Ix("wrong-output")},{rule:"not-input",check:fq},{rule:"orphan-step",check:mq},{rule:"cycle",check:hq},{rule:"no-action",check:yq},{rule:"schedule-config",check:bq},{rule:"action-params",check:$q},{rule:"schedule-mixed",check:Tq},{rule:"schedule-needs-change-request",check:Pq},{rule:"unknown-rule",check:Oq},{rule:"rule-unavailable",check:Iq},{rule:"rule-config",check:Aq},{rule:"removed-step",check:Cq},{rule:"review-targets",check:zq},{rule:"stale-reviewer",check:Nq},{rule:"dead-end",check:Lq}];function Ax(e,t){let r=new Map;for(let n of e)r.set(n[t],[...r.get(n[t])??[],n]);return r}function Kf(e,t,r=new Map){return{rule:e,severity:Cx[e].severity,step:t.nodeId?r.get(t.nodeId)??"Step":"Workflow",...t}}function Rx(e,t,r,n){let o=Zf(e,t),s={def:e,byId:new Map(e.nodes.map((c)=>[c.id,c])),incoming:Ax(e.edges,"to"),outgoing:Ax(e.edges,"from"),name:(c)=>o.get(c.id)??Nc(c,t),catalog:t,reviewers:n},i=jq.flatMap(({rule:c,check:u})=>r==="structure"&&Cx[c].stage!=="structure"?[]:u(s).map((l)=>Kf(c,l,o)));return i.some((c)=>c.rule==="no-action")?i.filter((c)=>c.rule!=="dead-end"||s.byId.get(c.nodeId??"")?.type!=="trigger"):i}var Dq=w({nodes:k(ve({id:p().catch(""),type:p().catch(""),kinds:k(p()).optional().catch(void 0)}))});function Mq(e,t){let r=new Map,n=new Map;for(let o of e){let s=zf.safeParse(o),i=s.success?Nc(s.data,t):o.type?`${o.type.charAt(0).toUpperCase()}${o.type.slice(1)}`:"Step",a=(r.get(i)??0)+1;r.set(i,a),n.set(o.id,a===1?i:`${i} ${a}`)}return n}function qq(e,t,r){return e.issues.map((n)=>{let[o,s]=n.path,i=o==="nodes"&&Number.isInteger(s)?t[Number(s)]:void 0;return Kf("schema",{nodeId:i||void 0,message:"A setting is not valid.",fixes:[]},r)})}function Hf(e,t={}){let r=t.catalog??Ge,n=t.stage??"enable",o=(f)=>[...f].sort((m,h)=>Number(m.severity==="warning")-Number(h.severity==="warning")),s=ut.safeParse(e);if(s.success)return{definition:s.data,results:o(Rx(s.data,r,n,t.reviewers))};let i=Dq.safeParse(e),a=i.success?i.data.nodes:[],c=a.filter((f)=>f.type==="trigger"&&f.kinds?.length===0),u=ut.safeParse({...e,nodes:a.map((f)=>c.includes(f)?{...f,kinds:["push"]}:f)});if(c.length===0||!u.success)return{definition:null,results:qq(s.error,a.map((f)=>f.id),Mq(a,r))};let l=Zf(u.data,r),d=c.map((f)=>Kf("no-trigger-events",{nodeId:f.id,message:"Pick when it runs.",fixes:[{label:"Pick events",intent:{type:"focus-field",nodeId:f.id,field:"kinds"}}]},l));return{definition:null,results:o([...d,...Rx(u.data,r,n,t.reviewers)])}}function Mx(e,t={}){return Hf(e,t).results}var Fq={pass:Cc.pass,block:Cc.block,needs_review:Cc.needs_review},Uq=ko.nullable().catch(null);function qx(e){let t=Uq.parse(e??null);return t?Fq[t]:null}var ele=k(ut).catch([]),tle=w({workflows:k(w({id:p(),name:p()})),issues:k(w({workflowId:p(),messages:k(p())})).optional()}).catch({workflows:[]}),rle=w({decision:z(["approve","deny"])}).nullable().catch(null);var nle=w({pausedNodeId:p()}).nullable().catch(null);var Wq=w({ruleId:p(),summary:p()}),ale=w({version:C(1),verdict:ko,org:p(),repo:p(),changeRequest:w({number:P().int(),title:p(),author:p()}),firedRules:k(Wq),runUrl:p(),timestamp:p()});var cle=w({content:p(),embeds:k(w({title:p(),url:p(),description:p(),color:P().int()}))});function $o(e,t){return{kind:"output",step:e,port:t}}function Jf(e,t,r,n){let o={kind:"check",rule:e,config:t??{},version:r?.version,inputs:n,get passes(){return $o(o,"pass")},get fails(){return $o(o,"fail")},after:(...s)=>Jf(e,t,r,s)};return o}function Gf(e,t){let r={kind:"gate",mode:e,inputs:t,get passes(){return $o(r,"pass")},get fails(){return $o(r,"fail")}};return r}function sr(e,t,r=[]){return{kind:"action",action:e,params:t,inputs:r,after:(...n)=>sr(e,t,n)}}function Fx(e,t){let r={kind:"action",action:"send-to-moderation",params:void 0,approve:e.approve??[],deny:e.deny??[],inputs:t,get approved(){return $o(r,"approve")},get denied(){return $o(r,"deny")},after:(...n)=>Fx(e,n)};return r}function Ux(){return{check(e,...t){let[r,n]=t;return Jf(e,r,n,[])},customCheck(e,t){return Jf(e,t,void 0,[])},allOf(...e){return Gf("all-of",e)},anyOf(...e){return Gf("any-of",e)},not(e){return Gf("not",[e])},trigger(...e){return{kind:"trigger",on:e,inputs:[]}},schedule(e){return{kind:"trigger",on:["schedule.matched"],schedule:e,inputs:[]}},block(){return sr("block",void 0)},label(e){return sr("label",e)},removeLabel(e){return sr("remove-label",e)},requestReview(e){return sr("request-review",e)},postComment(e){return sr("post-comment",e)},lock(e){return sr("lock",e)},close(){return sr("close",void 0)},webhook(){return sr("webhook",void 0)},discord(){return sr("discord",void 0)},humanReview(e={}){return Fx(e,[])},workflow(e){return{kind:"workflow",spec:e}},workflows(e){return e}}}var To=["change-request.opened","change-request.updated","change-request.closed","comment.created","push"],li=w({}),Kr={block:li,label:Zr,"remove-label":Zr,"request-review":w({reviewers:k(te([$c,Af])).optional(),teamReviewers:k(If).optional()}),"post-comment":Tc,lock:Vk,close:li,webhook:li,discord:li,"send-to-moderation":li};var Wx=Ux();var xle=Rt*60000;function di(e){return"n"in e}function Vq(e){return"preset"in e}var Zq={sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6};function Bq(e){let[t="0",r="0"]=e.split(":");return{hour:Number(t),minute:Number(r)}}function Vx(e){if(di(e))return null;if(!Vq(e))return e.cron.trim();if(e.preset==="hourly")return`${e.minute} * * * *`;let{hour:t,minute:r}=Bq(e.at);switch(e.preset){case"daily":return`${r} ${t} * * *`;case"weekdays":return`${r} ${t} * * 1-5`;case"weekly":return`${r} ${t} * * ${Zq[e.on]}`;case"monthly":return`${r} ${t} ${e.day} * *`;default:return null}}function Zx(e){return e?{zone:e,defaulted:!1}:{zone:rr,defaulted:!0}}var Kq={hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function Bx(e){let[t,r]=Kq[e.unit];return`${e.n} ${e.n===1?t:r}`}var jn="09:00",Wc=Cf.options,Lc=new Map([...Wc.flatMap((e,t)=>[e,`${e}s`,e.slice(0,3)].map((r)=>[r,t])),["tues",2],["thur",4],["thurs",4]]),Hq=new Map(Object.entries({one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12})),Gq=new Map(Object.entries({m:"minutes",h:"hours",d:"days",w:"weeks"})),Kx=new Map(Object.entries({min:"minutes",mins:"minutes",minute:"minutes",minutes:"minutes",hr:"hours",hrs:"hours",hour:"hours",hours:"hours",day:"days",days:"days",wk:"weeks",wks:"weeks",week:"weeks",weeks:"weeks",month:"months",months:"months"})),Hx=new Map(Object.entries({minute:"minute",hour:"hourly",day:"daily",week:"week",month:"monthly"})),Yf=new Map(Object.entries({hourly:"hourly",daily:"daily",weekly:"weekly",monthly:"monthly",weekday:"weekdays",weekdays:"weekdays","mon-fri":"weekdays","monday-friday":"weekdays",weekend:"weekends",weekends:"weekends"})),Jq=new Map(Object.entries({utc:rr,gmt:rr,z:rr})),Yq=["Asia/Kolkata","Europe/Kyiv","Asia/Ho_Chi_Minh","America/Argentina/Buenos_Aires"],Xq=["Berlin","London","New York","Los Angeles","Chicago","Denver","Toronto","Paris","Amsterdam","Madrid","Stockholm","Tokyo","Singapore","Sydney","Kolkata","Sao Paulo"],jc=null;function Qf(e){return(e.split("/").at(-1)??e).replaceAll("_"," ")}function t0(){if(jc)return jc;let e=Intl.supportedValuesOf("timeZone"),t=new Map,r=new Map,n=Yq.filter(ti);for(let i of[...n,...e])if(r.set(i.toLowerCase(),i),i.includes("/")&&!i.startsWith("Etc/")){let a=Qf(i).toLowerCase();if(!t.has(a))t.set(a,i)}let o=Xq.filter((i)=>t.has(i.toLowerCase())),s=[...t.values()].map(Qf).filter((i)=>!o.includes(i)).sort((i,a)=>i.localeCompare(a));return jc={byCity:t,byId:r,cities:[...o,...s]},jc}function Qq(e){return e.split("/").map((t)=>t.split("_").map((r)=>`${r.charAt(0).toUpperCase()}${r.slice(1)}`).join("_")).join("/")}function e2(e){let t=e.toLowerCase(),r=Jq.get(t);if(r)return r;if(!t.includes("/"))return null;let n=t0().byId.get(t);if(n)return n;let o=Qq(t);return ti(o)?o:null}function em(e){return t0().byCity.get(e.join(" ").toLowerCase())??null}function r0(e){if(e===rr)return e;let t=Qf(e);return em([t])===e?t:e}function t2(e,t){return`UTC${(new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"shortOffset"}).formatToParts(t).find((o)=>o.type==="timeZoneName")?.value??"GMT").replace(/^GMT/,"")||"+0"}`}function n0(e,t=new Date){return e===rr?e:`${e}, ${t2(e,t)}`}function Gx(e,t){return[...e.matchAll(t)].map((r)=>({text:r[0],lower:r[0].toLowerCase(),from:r.index,to:r.index+r[0].length}))}function Po(e){return String(e).padStart(2,"0")}function tm(e,t){return`${Po(e)}:${Po(t)}`}function rm(e){let r=e%100>=11&&e%100<=13?"th":["th","st","nd","rd"][e%10]??"th";return`${e}${r}`}function fi(e){return`${e.charAt(0).toUpperCase()}${e.slice(1)}`}function Oo(e){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Dc(e){if(e===void 0)return null;if(/^\d{1,4}$/.test(e))return Number(e);return Hq.get(e)??null}function r2(e,t){let r=e[t]?.lower;if(r===void 0)return null;if(r==="noon")return{hour:12,minute:0,valid:!0,used:1};if(r==="midnight")return{hour:0,minute:0,valid:!0,used:1};let n=/^(\d{1,2})(?:[:.](\d{2}))?(am|pm|a\.m\.|p\.m\.)?$/.exec(r);if(!n)return null;let o=1,s=n[3]?.charAt(0),i=e[t+1]?.lower;if(!s&&i&&/^(am|pm|a\.m\.|p\.m\.)$/.test(i))s=i.charAt(0),o=2;let a=Number(n[1]),c=Number(n[2]??"0"),u=c<=59;if(s)u=u&&a>=1&&a<=12,a=a%12+(s==="p"?12:0);else u=u&&a<=23;return{hour:a,minute:c,valid:u,used:o}}function Jx(e){let t=e?/^(\d{1,2})(st|nd|rd|th)?$/.exec(e):null;return t?Number(t[1]):null}var n2=new Set(["shorter","short","those","the","months","month"]);function Eo(e,t){return{from:e.from,to:t.to}}class nm{words;read={};at=0;everyAt=-1;constructor(e){this.words=e}word(e=0){return this.words[this.at+e]}lower(e=0){return this.word(e)?.lower}take(e){let t=this.word(),r=this.word(e-1);return this.at+=e,t&&r?Eo(t,r):{from:0,to:0}}run(){while(this.at<this.words.length&&!this.read.unknown)if(!this.step()){let e=this.lower()==="in"&&this.word(1)?this.word(1):this.word();if(e)this.read.unknown={from:e.from,to:e.to}}return this.read}step(){let e=this.lower()??"",t=this.at===this.everyAt+1&&this.everyAt>=0;if((e==="every"||e==="each")&&!this.read.every){if(this.everyAt=this.at,this.read.every=this.take(1),this.at>=this.words.length)this.read.everyDangling=this.read.every;return this.everyFollowerOk()}if(e==="and"||e==="&")return this.at+=1,!0;if(e==="skip"||e==="skipping")return this.skip();if(e==="at")return this.atPhrase();if(this.count(t))return!0;if(this.unit())return!0;if(this.keyword(t))return!0;if(this.weekdays())return!0;if(this.monthDay())return!0;if(this.monthOf())return!0;if(this.minute())return!0;if(this.time())return!0;return this.zone()}everyFollowerOk(){let e=this.lower();if(e===void 0)return!0;let t=/^\d+[a-z]+$/.test(e);if(!(Dc(e)!==null||t||Hx.has(e)||Lc.has(e)||e==="weekday"||e==="weekend"||e==="weekdays"||e==="weekends")){let n=this.word();if(n)this.read.unknown={from:n.from,to:n.to}}return!0}skip(){let e=1;while(n2.has(this.lower(e)??""))e+=1;if(this.read.skip)return!1;return this.read.skip=this.take(e),!0}atPhrase(){let e=this.lower(1);if(e===void 0)return this.read.atDangling=this.take(1),!0;if(e==="minute"||/^:\d{1,2}$/.test(e))return this.minute(1);return this.time(1)}count(e){let t=this.lower();if(t===void 0||this.read.interval)return!1;let r=/^(\d{1,4})([a-z]+)$/.exec(t);if(r){let a=r[2]??"",c=Gq.get(a)??Kx.get(a);if(!c)return!1;let u=this.word();return this.setInterval(Number(r[1]),c,this.take(1),{from:u?.from??0,to:(u?.from??0)+(r[1]?.length??0)},r[2]??""),!0}let n=Dc(t);if(n===null)return!1;let o=this.lower(1)??"",s=Kx.get(o),i=this.word();if(s&&i)return this.setInterval(n,s,this.take(2),Eo(i,i),o),!0;if(e&&i)return this.read.interval={...this.take(1),n,unit:null,count:Eo(i,i),unitWord:""},!0;return!1}setInterval(e,t,r,n,o){this.read.interval={...r,n:e,unit:t,count:n,unitWord:o}}unit(){let e=this.lower()??"",t=Hx.get(e);if(!t)return!1;if(t==="minute"){if(this.read.interval)return!1;return this.setInterval(1,"minutes",this.take(1),null,e),!0}return this.setBase(t,[],this.take(1))}setBase(e,t,r){if(this.read.base)return!1;return this.read.base={...r,kind:e,days:t},!0}keyword(e){let t=0,r,s=(this.lower()??"")==="on"&&Yf.get(this.lower(1)??"")?1:0,i=this.lower(s)??"";if((i==="monday"||i==="mon")&&(this.lower(s+1)==="to"||this.lower(s+1)==="through")&&(this.lower(s+2)==="friday"||this.lower(s+2)==="fri"))r="weekdays",t=s+3;else if(Yf.has(i))r=Yf.get(i),t=s+1;if(!r)return!1;if(e&&!(r==="weekdays"||r==="weekends"))return!1;return this.setBase(r,[],this.take(t))}weekdays(){let e=this.lower()==="on"?1:0;if(Lc.get(this.lower(e)??"")===void 0)return!1;let t=[],r=e;while(!0){let s=Lc.get(this.lower(r)??"");if(s!==void 0){t.push(s),r+=1;continue}let i=this.lower(r);if((i==="and"||i==="&")&&Lc.get(this.lower(r+1)??"")!==void 0){r+=1;continue}break}let n=[...new Set(t)].sort((s,i)=>s-i),o=this.read.base;if(o&&(o.kind==="weekly"||o.kind==="week")&&o.days.length===0)return o.kind="weekly",o.days=n,this.read.weekdaySpan=this.take(r),!0;return this.setBase("weekly",n,this.take(r))}monthDay(){let e=0;if(this.lower(e)==="on")e+=1;let t=null;if(this.lower(e)==="the")t=Jx(this.lower(e+1)),e+=2;else if(this.lower(e)==="day")t=Dc(this.lower(e+1)),e+=2;else if(/(st|nd|rd|th)$/.test(this.lower(e)??""))t=Jx(this.lower(e)),e+=1;if(t===null)return!1;let r=this.take(e),n=this.read.day;if(n)return n.to=r.to,n.values.push(t),n.value=Math.max(n.value,t),!0;return this.read.day={...r,value:t,values:[t]},!0}monthOf(){let e=this.lower()==="of",t=this.lower(1),r=this.lower(2);if(!e||!(t==="the"||t==="every"||t==="each")||r!=="month")return!1;if(this.read.base)return!1;return this.read.monthOf=this.take(3),this.read.base={...this.read.monthOf,kind:"monthly",days:[]},!0}minute(e=0){let t=this.lower(e)??"",r=null,n=e,o=/^:(\d{1,2})$/.exec(t);if(o)r=Number(o[1]),n+=1;else if(t==="minute")r=Dc(this.lower(e+1)),n+=2;if(r===null||r>59||this.read.minute)return!1;return this.read.minute={...this.take(n),value:r},!0}time(e=0){let t=r2(this.words,this.at+e);if(!t)return!1;let r=this.take(e+t.used),n={hour:t.hour,minute:t.minute,valid:t.valid},o=this.read.time;if(o)return o.to=r.to,o.times.push(n),o.valid=o.valid&&n.valid,!0;return this.read.time={...r,...n,times:[n]},!0}zone(){if(this.read.zone)return!1;let e=this.lower()==="in"?1:0;for(let t=3;t>=1;t--){let r=this.words.slice(this.at+e,this.at+e+t).map((o)=>o.lower);if(r.length<t)continue;let n=t===1?e2(r[0]??"")??em(r):em(r);if(n){let o=e+t+(this.lower(e+t)==="time"?1:0);return this.read.zone={...this.take(o),id:n},!0}}return!1}}function pi(e){return e.replace(/\s+,/g,",").replace(/,(\s*,)+/g,",").replace(/\s{2,}/g," ").replace(/^[\s,]+|[\s,]+$/g,"")}function Bt(e,t,r){return pi(`${e.slice(0,t.from)}${r}${e.slice(t.to)}`)}function Mc(e,t){return t.time?e:`${e} at ${jn}`}var o2={minutes:["minute","minutes"],hours:["hour","hours"],days:["day","days"],weeks:["week","weeks"],months:["month","months"]};function Uc(e,t){let[r,n]=o2[t];return`${e} ${e===1?r:n}`}function o0(e){return fi(Wc[e]??"")}function Yx(e){switch(e.kind){case"hourly":return"Every hour";case"daily":return"Every day";case"weekdays":return"Monday to Friday";case"weekends":return"Saturday and Sunday";case"week":return"Every week";case"monthly":return"Every month";default:return e.days.length>0?`Every ${Oo(e.days.map(o0))}`:"Every week"}}function s2(e,t,r,n){let o=[],s=(l,d,f,m)=>{if(!d)return;o.push({from:d.from,to:d.to,text:e.slice(d.from,d.to),kind:f,label:m,tone:r[l]??"ok"})},{every:i,base:a,interval:c}=t,u=i&&a&&!c&&a.from>i.to&&e.slice(i.to,a.from).trim()==="";if(i&&!u)s("every",i,"cadence","Repeats");if(c)s("interval",c,"interval",c.unit?`Every ${Uc(c.n,c.unit)}`:"Repeats");if(a)s("base",u&&i?{from:i.from,to:a.to}:a,"cadence",Yx(a));if(s("weekdays",t.weekdaySpan,"cadence",Yx(a??{from:0,to:0,kind:"weekly",days:[]})),t.day)s("day",t.day,"day",`The ${Oo(s0(t.day).map(rm))} of the month`);if(t.time)s("time",t.time,"time",t.time.valid?Oo(i0(t.time).map((l)=>tm(l.hour,l.minute))):"Not a time");if(s("at",t.atDangling,"time","At"),t.minute)s("minute",t.minute,"minute",`At :${Po(t.minute.value)}`);if(t.zone)s("zone",t.zone,"zone",n0(t.zone.id,n));if(t.skip)s("skip",t.skip,"skip","Skips months without that day");if(t.unknown)s("unknown",t.unknown,"unknown","Not understood");return o.sort((l,d)=>l.from-d.from)}function $e(e,t,r=[],n={}){return{ok:!1,reason:e,message:t,fixes:r,tones:n}}var i2=[5,6,10,12,15,20,30];function a2(e){return i2.reduce((t,r)=>Math.abs(r-e)<Math.abs(t-e)?r:t)}function c2(e,t){let n=t.unitWord==="minute"||t.unitWord==="min"?`${t.unitWord}s`:t.unitWord,o=`${Rt} ${n}`;return{label:`Use ${Rt} minutes`,text:Bt(e,t,o)}}function u2(e,t){let r=t.interval;if(!r)return null;let n={interval:"fail"};if(t.base||t.day)return $e("invalid","Use an interval or a day, not both.",[],n);if(r.unit===null)return $e("incomplete","Add a unit, like every 5 days.",[{label:"Use days",text:Bt(e,r,`${r.n} days`)}]);if(r.unit==="months"){if(r.n===1)return null;let c=Math.round(r.n*30/7);return $e("unstorable","An interval counts hours, days or weeks.",[{label:`Use ${c} weeks`,text:Bt(e,r,`${c} weeks`)}],n)}let{n:o,unit:s}=r;if(s==="minutes"){if(o<Rt)return $e("floor",`Runs must be at least ${Rt} minutes apart.`,[c2(e,r)],n);if(o<60||o%60!==0){if(t.time||t.minute)return Xx(e,t,[]);if(o>60||60%o!==0){let c=a2(o);return $e("unstorable","Minutes must divide the hour evenly, like 10, 15 or 30.",[{label:`Use ${c} minutes`,text:Bt(e,r,`${c} minutes`)}],n)}return{ok:!0,every:{cron:`*/${o} * * * *`},timezone:t.zone?.id}}o/=60,s="hours"}let i={n:o,unit:s};if(s==="hours"&&t.minute&&!t.time&&!t.skip&&o>1&&o<24&&24%o===0)return{ok:!0,every:{cron:`${t.minute.value} */${o} * * *`},timezone:t.zone?.id};if(t.time||t.minute)return Xx(e,t,[]);if(t.zone)return $e("unstorable","An interval counts from the last run, so it has no timezone.",[{label:"Drop the timezone",text:Bt(e,t.zone,"")}],{zone:"fail"});if(t.skip)return $e("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});let a=ni[s];if(o<1||o*a>Ec){let c=Math.floor(Ec/a);return $e("invalid","Runs must be at most 52 weeks apart.",[{label:`Use ${Uc(c,s)}`,text:Bt(e,r,Uc(c,s))}],n)}return{ok:!0,every:i,timezone:void 0}}function Xx(e,t,r){let n=t.time??t.minute;return $e("unstorable","An interval counts from the last run, so it has no time of day.",[...r,...n?[{label:"Drop the time",text:Bt(e,n,"")}]:[]],{time:"fail",minute:"fail"})}var l2=new Map([[29,"February has no 29th most years."],[30,"February has no 30th."],[31,"Five months have no 31st."]]);function d2(e,t){let r=t.zone?.id,n=t.base;if(!n&&(t.day||t.interval?.unit==="months"))n={from:0,to:0,kind:"monthly",days:[]};if(!n)return $e("incomplete","Add how often, like every day.",t.time?[{label:"Every day",text:`every day ${e.trim()}`}]:[]);if(t.time&&!t.time.valid)return $e("invalid","Use a time from 00:00 to 23:59.",[],{time:"fail"});if(n.kind==="hourly"){if(t.time)return $e("unstorable","An hourly schedule takes a minute, like at :15.",[{label:"Use :00",text:Bt(e,t.time,"at :00")}],{time:"fail"});if(t.day)return $e("invalid","An hourly schedule runs every day.",[],{day:"fail"});return{ok:!0,every:{preset:"hourly",minute:t.minute?.value??0},timezone:r}}if(t.minute)return $e("invalid","A minute only fits an hourly schedule.",[],{minute:"fail"});if(n.kind==="week"||n.kind==="weekly"&&n.days.length===0){let f=t.every?{from:Math.min(t.every.from,n.from),to:n.to}:n;return $e("incomplete","Add a day, like every monday.",[{label:"Every Monday",text:Mc(Bt(e,f,"every monday"),t)}])}if(n.kind==="monthly"){if(!t.day)return $e("incomplete","Add a day, like on the 1st.",[{label:"On the 1st",text:Mc(`${pi(e)} on the 1st`,t)}])}else if(t.day)return $e("invalid","Pick a weekday or a day of the month, not both.",[],{day:"fail"});let o=t.day,s=o?s0(o):[];if(s.some((f)=>f<1||f>31))return $e("invalid","A month has at most 31 days.",[],{day:"fail"});if(o&&o.value>28&&!t.skip)return $e("ambiguous",l2.get(o.value)??"",[{label:"Skip those months",text:`${Mc(pi(e),t)}, skipping shorter months`},{label:"Run on the 28th instead",text:Mc(Bt(e,o,"on the 28th"),t)}],{day:"warn"});if(t.skip&&!(o&&o.value>28))return $e("invalid","Only a day after the 28th skips months.",[],{skip:"fail"});if(!t.time)return $e("incomplete",t.atDangling?"Add a time, like 09:00.":"Add a time, like at 09:00.",[{label:`At ${jn}`,text:t.atDangling?`${pi(e)} ${jn}`:`${pi(e)} at ${jn}`}]);let i=i0(t.time),[a]=i;if(i.length===1&&s.length<=1&&a){let f=p2(n,s[0],a);if(f)return{ok:!0,every:f,timezone:r}}let c=[...new Set(i.map((f)=>f.minute))],u=[...new Set(i.map((f)=>f.hour))];if(c.length*u.length!==i.length)return $e("unstorable","Times in one schedule share their minutes, like 09:00 and 17:00.",[],{time:"fail"});let l=`${c.join(",")} ${u.join(",")} ${f2(n,s)}`,d=Pc.safeParse({cron:l});if(!d.success)return $e("invalid",a0(d.error.issues[0]?.message??"this cron does not parse"),[],{time:"fail"});return{ok:!0,every:{cron:d.data.cron},timezone:r}}function s0(e){return[...new Set(e.values)].sort((t,r)=>t-r)}function i0(e){let t=new Map;for(let r of e.times)t.set(r.hour*60+r.minute,r);return[...t.entries()].sort(([r],[n])=>r-n).map(([,r])=>r)}function p2(e,t,r){let n=tm(r.hour,r.minute);switch(e.kind){case"daily":return{preset:"daily",at:n};case"weekdays":return{preset:"weekdays",at:n};case"monthly":{let o=t??1;return o>28?null:{preset:"monthly",day:o,at:n}}case"weekly":{let[o]=e.days,s=o===void 0?void 0:Wc[o];return e.days.length===1&&s?{preset:"weekly",on:s,at:n}:null}default:return null}}function f2(e,t){switch(e.kind){case"weekdays":return"* * 1-5";case"weekends":return"* * 0,6";case"monthly":return`${t.length>0?t.join(","):"1"} * *`;case"weekly":return`* * ${e.days.join(",")}`;default:return"* * *"}}var Xf=/^[\d*][\d*,\-/]*$/,m2=/^[\da-z*][\da-z*,\-/]*$/i;function h2(e){let[t,r]=e;if(!(t&&r&&Xf.test(t.text)&&Xf.test(r.text)))return 0;let n=0;while(n<5){let o=e[n],s=n<3?Xf:m2;if(!(o&&s.test(o.text))||n>=3&&!/[\d*]/.test(o.text)&&!/^[a-z]{3}(-[a-z]{3})?(,[a-z]{3})*$/i.test(o.text))break;n+=1}return n}function a0(e){return`${fi(e)}.`}function g2(e,t,r,n){let o=t.slice(0,r),s=o[0],i=o.at(-1),a=o.map((y)=>y.text).join(" "),c=s&&i?Eo(s,i):{from:0,to:0},u=t.slice(r),l,d;if(u.length>0){let b=new nm(u).run(),T=b.every||b.base||b.interval||b.time||b.day||b.minute||b.skip;if(b.unknown||T||!b.zone){let S=u[0];d=b.unknown??(S?Eo(S,S):void 0)}else l=b.zone}let f=c0(a),m=f?fi(f):"Cron",h=(y)=>{let b=[{...c,text:e.slice(c.from,c.to),kind:"cron",label:m,tone:y}];if(l)b.push({from:l.from,to:l.to,text:e.slice(l.from,l.to),kind:"zone",label:n0(l.id,n),tone:"ok"});if(d)b.push({...d,text:e.slice(d.from,d.to),kind:"unknown",label:"Not understood",tone:"fail"});return b};if(d)return{ok:!1,reason:"unknown",message:`Could not read "${e.slice(d.from,d.to)}".`,fixes:[],tokens:h("ok")};let g=Pc.safeParse({cron:a});if(!g.success){let y=g.error.issues[0]?.message??"this cron does not parse",b=y.includes(`at least ${Rt} minutes`),T=o[0]?.text??"",S=/^\*(\/(\d+))?$/.exec(T),I=b&&S&&s?[{label:`Use ${Rt} minutes`,text:Bt(e,Eo(s,s),`*/${Rt}`)}]:[];return{ok:!1,reason:b?"floor":"invalid",message:a0(y),fixes:I,tokens:h("fail")}}return{ok:!0,every:{cron:g.data.cron},timezone:l?.id,tokens:h("ok")}}function y2(e,t){if(e.trim()==="")return{ok:!1,reason:"empty",message:"",fixes:[],tokens:[]};let r=Gx(e,/\S+/g),n=h2(r);if(n>0)return g2(e,r,n,t);let o=new nm(Gx(e,/[^\s,]+/g)).run(),s=w2(e,o),i=s2(e,o,s.ok?{}:s.tones??{},t);if(s.ok)return{ok:!0,every:s.every,timezone:s.timezone,tokens:i};return{ok:!1,reason:s.reason,message:s.message,fixes:s.fixes,tokens:i}}function w2(e,t){if(t.unknown)return $e("unknown",`Could not read "${e.slice(t.unknown.from,t.unknown.to)}".`,[],{unknown:"fail"});if(t.everyDangling&&!t.base&&!t.interval)return $e("incomplete","Add how often, like every day.");return u2(e,_2(t))??d2(e,t)}var b2={hours:"hourly",days:"daily",weeks:"week",months:"monthly"};function _2(e){let t=e.interval;if(!t||t.n!==1||t.unit===null)return e;let r=e.base?.kind;if(t.unit==="weeks"&&r==="weekly"||t.unit==="months"&&r==="monthly"){if(e.base&&r==="weekly"&&!e.weekdaySpan)e.weekdaySpan={from:e.base.from,to:e.base.to},e.base.from=t.from,e.base.to=t.to;return e.interval=void 0,e}if(e.base)return e;if(t.unit==="minutes")return e;return e.base={from:t.from,to:t.to,kind:b2[t.unit],days:[]},e.interval=void 0,e}var v2={hours:"every 60 minutes",days:"every 24 hours",weeks:"every 7 days"},qc=Array.from({length:31},(e,t)=>t+1),Fc=[0,1,2,3,4,5,6];function S2(e){let t=(i,a)=>vc(e,i,a),r=Fc.filter((i)=>qc.every((a)=>t(a,i)));if(Fc.every((i)=>qc.every((a)=>t(a,i)===r.includes(i))))return r.length===7?{kind:"daily"}:{kind:"weekly",days:r};let o=qc.filter((i)=>Fc.every((a)=>t(i,a)));return qc.every((i)=>Fc.every((a)=>t(i,a)===o.includes(i)))?{kind:"monthly",days:o}:null}function Qx(e,t){let[r,n]=e;if(r!==0||n===void 0)return null;let o=n-r;return e.every((i,a)=>i===a*o)&&t%o===0&&e.length===t/o?o:null}var k2=4;function e0(e){return(e+6)%7}function x2(e){if(e.kind==="daily")return"every day";if(e.kind==="monthly")return e.days.length===0?null:`monthly on the ${Oo(e.days.map(rm))}`;let t=e.days.join(",");if(t==="1,2,3,4,5")return"weekdays";if(t==="0,6")return"weekends";let r=[...e.days].sort((n,o)=>e0(n)-e0(o)).map(o0);return r.length===0?null:`every ${Oo(r)}`}function $2(e){let t=zn(e);if(!t.ok||t.spec.months.length!==12)return null;let{minutes:r,hours:n}=t.spec,o=S2(t.spec);if(!o)return null;let s=o.kind==="daily",[i]=r;if(n.length===24){if(!s)return null;if(r.length===1&&i!==void 0)return i===0?"every hour":`every hour at :${Po(i)}`;let d=Qx(r,60);return d?`every ${d} minutes`:null}let a=Qx(n,24);if(r.length===1&&i!==void 0&&a&&n.length>2)return s?`every ${a} hours at :${Po(i)}`:null;if(r.length*n.length>k2)return null;let c=x2(o);if(!c)return null;let u=n.flatMap((d)=>r.map((f)=>tm(d,f))),l=`${c} at ${Oo(u)}`;if(o.kind!=="monthly"||o.days.every((d)=>d<=28))return l;return o.days.length===1?`${l}, skipping shorter months`:null}function c0(e){let t=$2(e);if(!t)return null;let r=y2(t,new Date(0)),n=r.ok?Vx(r.every):null;return n!==null&&Dk(n,e)?t:null}function T2(e){if(di(e)){if(e.n===1)return v2[e.unit];return`every ${Uc(e.n,e.unit)}`}if("preset"in e)switch(e.preset){case"hourly":return e.minute===0?"every hour":`every hour at :${Po(e.minute)}`;case"daily":return`every day at ${e.at}`;case"weekdays":return`weekdays at ${e.at}`;case"weekly":return`every ${fi(e.on)} at ${e.at}`;default:return`monthly on the ${rm(e.day)} at ${e.at}`}let t=e.cron.trim();return c0(t)??t}function E2(e){let t=T2(e.every);if(di(e.every)||!e.timezone)return t;return`${t} in ${r0(e.timezone)}`}function P2(e){return E2({every:e.every,timezone:di(e.every)?void 0:e.timezone??rr})}function mi(e){return fi(P2(e))}var Ile=["every",...Wc,"weekdays","weekends","minutes","hours","days","weeks","month","monthly","daily","hourly","weekly","noon","midnight"],Ale=["",` at ${jn}`,` ${jn}`,":00"," days"," minutes",` on the 1st at ${jn}`," 5 days"];var O2={issue:"issues","change-request":"change requests"},I2={open:"open",closed:"closed",any:"open and closed"};function om(e,t){if(e.length<=1)return e[0]??"";return`${e.slice(0,-1).join(", ")} ${t} ${e.at(-1)}`}function A2(e){let t=e?.match??{},r=["issue","change-request"].filter((o)=>t.subjects?.includes(o)),n=e?.every?[{key:"every",text:mi({every:e.every,timezone:e.timezone})}]:[{key:"every-lead",text:"Every "},{key:"every",text:"so often",placeholder:!0}];if(n.push({key:"finds",text:", finds "},t.state?{key:"state",text:I2[t.state]}:{key:"state",text:"open or closed",placeholder:!0},{key:"gap",text:" "},r.length>0?{key:"subjects",text:om(r.map((o)=>O2[o]),"and")}:{key:"subjects",text:"issues or change requests",placeholder:!0},{key:"inactive-lead",text:" with no activity for "},t.inactiveFor?{key:"inactiveFor",text:Bx(t.inactiveFor)}:{key:"inactiveFor",text:"some time",placeholder:!0}),t.labels?.length)n.push({key:"labels",text:`, labeled ${om(t.labels,"and")}`});if(t.excludeLabels?.length)n.push({key:"excludeLabels",text:`, not labeled ${om(t.excludeLabels,"or")}`});if(t.skipLocked!==!1)n.push({key:"skipLocked",text:", skipping locked ones"});return n.push({key:"end",text:"."}),n}function u0(e){return A2(e).map((t)=>t.placeholder?`[${t.text}]`:t.text).join("")}var R2=new Map([["every","The schedule"],["every.n","The interval"],["every.unit","The interval unit"],["every.minute","The minute"],["every.at","The time"],["every.at.hour","The hour"],["every.at.minute","The minute"],["every.on","The weekday"],["every.day","The day of the month"],["every.cron","The cron"],["every.preset","The preset"],["timezone","The timezone"],["match","What it looks for"],["match.subjects","What it looks at"],["match.state","The state"],["match.inactiveFor","The inactive time"],["match.inactiveFor.n","The inactive time"],["match.inactiveFor.unit","The inactive time unit"],["match.labels","The labels"],["match.excludeLabels","The labels to skip"],["match.skipLocked","Skip locked"]]);function l0(e){let t=e.map(String).filter((r)=>!/^\d+$/.test(r)).join(".");return R2.get(t)??null}function C2(e){return/[.?]$/.test(e)?e:`${e}.`}function f0(e){let{workflow:t,step:r,message:n}=e,o=r!==void 0&&(n.startsWith(`${r} `)||n.startsWith(`${r}:`)),s=[t,o?void 0:r].filter(Boolean).join(" > ");if(!s)return n;return o?`${s} > ${n}`:`${s}: ${n}`}function z2(e,t){let r=Array.from({length:t.length+1},(n,o)=>o);for(let n=1;n<=e.length;n++){let o=r[0]??0;r[0]=n;for(let s=1;s<=t.length;s++){let i=r[s]??0;r[s]=Math.min(i+1,(r[s-1]??0)+1,o+(e[n-1]===t[s-1]?0:1)),o=i}}return r[t.length]??0}function d0(e,t){let r=0;for(let n of t)if(n===e[r])r++;return r===e.length}function p0(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function N2(e,t){let r=p0(e),n=null;for(let s of t){let i=p0(s),c=d0(r,i)||d0(i,r)?Math.abs(i.length-r.length)/4:z2(r,i);if(n===null||c<n.score)n={id:s,score:c}}if(!n)return null;let o=Math.max(2,Math.ceil(r.length/3));return n.score<=o?n.id:null}function Vc(e,t,r){let n=N2(t,r);return n?`${t} is not ${e}. Did you mean ${n}?`:`${t} is not ${e}. Use one of: ${r.join(", ")}`}var m0=K(p(),ne());function hi(e,t,r){let n=m0.safeParse(e??{});if(!n.success)return[`${r} takes an object of settings`];let o=t instanceof wf?Object.keys(t.shape):null,s=o?Object.keys(n.data).filter((a)=>!o.includes(a)):[];if(s.length>0&&o)return s.map((a)=>Vc(`a setting of ${r}`,a,o));let i=t.safeParse(n.data);return i.success?[]:i.error.issues.map((a)=>`${r}: ${So(a)}`)}var L2=w({kind:z(["trigger","check","gate","action","output"])}),h0=w({kind:z(["trigger","check","gate","action"])}),j2=w({kind:C("output"),port:z(["pass","fail","approve","deny"])}),D2=w({}).loose(),M2=mc((e)=>h0.safeParse(e).success),q2=K(p(),w({kind:C("workflow"),spec:mc((e)=>D2.safeParse(e).success,{error:"each entry must be workflow({ ... })"})}),{error:"the default export must be workflows({ ... })"});function F2(e){return Object.hasOwn(Kr,e)}function sm(e){return e.kind==="output"}function U2(e){return e.kind==="action"&&e.action==="send-to-moderation"}function W2(e,t){if(e==="pass")return;return t.kind==="trigger"?void 0:e}function V2(e){switch(e){case"pass":return"fail";case"fail":return"pass";case"approve":return"deny";default:return"approve"}}function Z2(e){switch(e.kind){case"trigger":return e.on.includes("schedule.matched")?"schedule":"trigger";case"check":return e.rule.split("@")[0]??"check";case"gate":return e.mode;default:return e.action}}var B2=/^[^\p{Cc}]+$/u;class g0{key;spec;issues=[];ids=new Map;taken=new Set;nodes=[];edges=[];edgeKeys=new Set;built=new Set;triggers=[];constructor(e,t){this.key=e;this.spec=t}issue(e,t){let r=t?this.ids.get(t):void 0;this.issues.push({workflow:this.key,step:r,message:e})}idFor(e){let t=this.ids.get(e);if(t)return t;let r=Z2(e),n=r;for(let o=2;this.taken.has(n);o++)n=`${r}-${o}`;return this.ids.set(e,n),this.taken.add(n),n}connect(e,t,r){if(e.kind==="trigger"&&t!=="pass"){this.issue("a trigger has only its event output; put a check or gate between it and this step",r);return}let n=this.visit(e),o=this.idFor(r),s=W2(t,e),i=`${n}>${o}>${s??"pass"}`;if(this.edgeKeys.has(i))return;this.edgeKeys.add(i);let a=`${n}-${o}`;for(let c=2;this.edges.some((u)=>u.id===a);c++)a=`${n}-${o}-${c}`;this.edges.push(s?{id:a,from:n,to:o,when:s}:{id:a,from:n,to:o})}wireInputs(e,t){for(let r of t){if(!L2.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}if(sm(r)){if(!j2.safeParse(r).success){this.issue("an input is not a step or a step output",e);continue}this.connect(r.step,r.port,e)}else this.connect(r,"pass",e)}}wireFromTriggers(e){for(let t of this.triggers)this.connect(t,"pass",e)}visit(e){if(!h0.safeParse(e).success)return this.issue("a step was not built with the workflow helpers"),"invalid";let t=this.idFor(e);if(this.built.has(e))return t;switch(this.built.add(e),e.kind){case"trigger":this.buildTrigger(e,t);break;case"check":this.buildCheck(e,t);break;case"gate":this.buildGate(e,t);break;default:this.buildAction(e,t)}return t}buildTrigger(e,t){let r=[];for(let n of e.on){let o=ei.safeParse(n);if(o.success&&(o.data==="schedule.matched"||To.some((s)=>s===o.data)))r.push(o.data);else this.issue(Vc("an event a workflow can start on",n,To),e)}if(r.length===0){if(e.on.length===0)this.issue("a trigger needs at least one event",e);return}if(e.schedule!==void 0){let n=bo.safeParse(e.schedule);if(!n.success){for(let o of n.error.issues)this.issue(C2(So(o,l0)),e);return}this.nodes.push({id:t,type:"trigger",kinds:r,schedule:bo.parse(e.schedule)});return}this.nodes.push({id:t,type:"trigger",kinds:r})}buildCheck(e,t){let r=e.rule.startsWith("custom-"),n=e.rule;if(r)n=e.rule.includes("@")?e.rule:`${e.rule}@1`;else{let s=Ge.find((a)=>a.ruleId===e.rule);if(!s){this.issue(Vc("a rule",e.rule,Ge.map((a)=>a.ruleId)),e);return}let i=e.version??s.version;if(n=`${s.ruleId}@${i}`,i===s.version)for(let a of hi(e.config,s.configSchema,s.ruleId))this.issue(a,e)}let o=qe.safeParse(e.config??{});if(!o.success){this.issue(`${e.rule} settings must be plain JSON`,e);return}if(this.nodes.push({id:t,type:"rule",ref:n,config:o.data}),e.inputs.length===0)this.wireFromTriggers(e);else this.wireInputs(e,e.inputs)}buildGate(e,t){if(e.inputs.length===0)this.issue(`${e.mode} needs at least one input`,e);if(e.mode==="not"&&e.inputs.length>1)this.issue("not takes exactly one input",e);this.nodes.push({id:t,type:"gate",mode:e.mode}),this.wireInputs(e,e.inputs)}buildAction(e,t){let r=e.action;if(!F2(r)){this.issue(Vc("an action",r,Object.keys(Kr)),e);return}let n=Kr[r];for(let a of hi(e.params,n,r))this.issue(a,e);let o=m0.safeParse(e.params??{}),s=K(p(),qe).safeParse(o.success?o.data:{}),i={id:t,type:"action",action:r};if(s.success&&Object.keys(s.data).length>0)i.params=s.data;if(this.nodes.push(i),e.inputs.length>0)this.wireInputs(e,e.inputs);if(U2(e)){for(let a of e.approve)this.visit(a),this.connect(e,"approve",a);for(let a of e.deny)this.visit(a),this.connect(e,"deny",a)}}hasIncoming(e){let t=this.ids.get(e);return this.edges.some((r)=>r.to===t)}compile(){let e=this.spec;for(let[i,a]of Object.entries(e.steps??{})){if(!B2.test(i)){this.issue(`${i} is not a usable step id`);continue}if(this.taken.has(i)){this.issue(`two steps share the id ${i}`);continue}this.ids.set(a,i),this.taken.add(i)}let t=e.on===void 0?[]:Array.isArray(e.on)?e.on:[e.on],r=[],n=[];for(let i of t){let a=p().safeParse(i),c=M2.safeParse(i);if(a.success)r.push(a.data);else if(c.success)n.push(c.data)}if(r.length>0)this.triggers.push({kind:"trigger",on:r,inputs:[]});this.triggers.push(...n);for(let i of Object.values(e.steps??{}))if(i.kind==="trigger"&&!this.triggers.includes(i))this.triggers.push(i);if(this.triggers.length===0)this.issue("add `on`, the events or schedule that start it");for(let i of this.triggers)this.visit(i);if(e.check!==void 0){let i=sm(e.check)?{step:e.check.step,port:e.check.port}:{step:e.check,port:"pass"};if(!sm(e.check)&&(i.step.kind==="trigger"||i.step.kind==="action"))this.issue("`check` takes a check, a gate or one of their outputs; a trigger or action has no Passes and Doesn't pass");this.visit(i.step);for(let a of e.pass??[])this.visit(a),this.connect(i.step,i.port,a);for(let a of e.fail??[])this.visit(a),this.connect(i.step,V2(i.port),a)}else if((e.pass??[]).length>0||(e.fail??[]).length>0)this.issue("`pass` and `fail` need a `check`; use `run` for actions with no check");for(let i of e.run??[]){this.visit(i);for(let a of this.triggers)this.connect(a,"pass",i)}let o=Object.values(e.steps??{});for(let i of o)this.visit(i);for(let i of o)if(i.kind==="action"&&!this.hasIncoming(i))this.wireFromTriggers(i);if(this.issues.length>0)return null;let s=ut.safeParse({id:this.key,name:e.name??this.key,version:1,nodes:this.nodes,edges:this.edges});if(!s.success){for(let i of s.error.issues)this.issue(So(i));return null}return s.data}}function im(e){let t=[],r=[];for(let[n,o]of Object.entries(e)){let s=new g0(n,o.spec),i=s.compile();if(t.push(...s.issues),i&&s.issues.length===0)r.push(i)}return t.length>0?{ok:!1,issues:t,definitions:r}:{ok:!0,definitions:r}}function y0(e){let t=q2.safeParse(e.default);if(!t.success)return{ok:!1,issues:t.error.issues.map((r)=>({workflow:String(r.path[0]??""),message:r.message})),definitions:[]};return im(t.data)}function K2(e,t){let r=new Map(e.nodes.map((i)=>[i.id,i])),n=new Set([t]),o=[t],s=[];for(let i=o.shift();i!==void 0;i=o.shift())for(let a of e.edges){if(a.from!==i||n.has(a.to))continue;n.add(a.to),o.push(a.to);let c=r.get(a.to);if(c?.type==="action")s.push(nx(c.action,c.params??{}))}return s}function H2(e){return e.nodes.flatMap((t)=>{if(t.type!=="trigger"||!t.schedule?.every)return[];let r=Zx(t.schedule.timezone),n=K2(e,t.id),o=u0(t.schedule);return[{nodeId:t.id,summary:mi({every:t.schedule.every,timezone:t.schedule.timezone}),timezone:r.zone,defaulted:r.defaulted,description:n.length>0?`${o} Then Tripwire ${Ic(n)}.`:`${o} No action runs after it.`}]})}function w0(e,t){return e.map((r)=>{let n=Mx(r,t?{catalog:t}:{});return{id:r.id,name:r.name,valid:!n.some((o)=>o.severity==="error"),issues:n,schedules:H2(r)}})}var am=new Set(["url","signingSecret","urlSet","signingSecretSet"]);function G2(e){return e.type==="action"&&(e.action==="webhook"||e.action==="discord")}function b0(e){return{...e,nodes:e.nodes.map((t)=>{if(!G2(t))return t;let r={...t.params??{}};for(let n of["url","signingSecret"]){let o=r[n];if(o!==void 0&&o!==""&&o!==null)r[n]="",r[`${n}Set`]=!0}return{...t,params:r}})}}var Xle=k(qe),Qle=K(p(),qe);var ede=p(),tde=K(p(),qe);var rde=w({}).strict();function J2(e){let t=e.normalize("NFKD").replace(/[̀-ͯ]/g,"").toLowerCase().split(/[^a-z0-9]+/).filter(Boolean),r="";for(let n of t){let o=r?`${r}-${n}`:n;if(o.length>48)break;r=o}return r||t[0]?.slice(0,48)||"workflow"}function Dn(e,t=new Map){let r=new Set,n=new Map;for(let o of e){let s=t.get(o.id);if(s&&!r.has(s))r.add(s),n.set(o.id,s)}for(let o of e){if(n.has(o.id))continue;let s=J2(o.name||o.id),i=s;for(let a=2;r.has(i);a++)i=`${s}-${a}`;r.add(i),n.set(o.id,i)}return n}function Zc(e,t,r={}){let n=new Set(t.map((c)=>c.id)),o=new Set,s=new Map;for(let c of e){let u=r[c.id];if(u&&!o.has(u))o.add(u),s.set(c.id,{key:c.id,id:u,by:"mapping"})}for(let c of e)if(!s.has(c.id)&&n.has(c.id)&&!o.has(c.id))o.add(c.id),s.set(c.id,{key:c.id,id:c.id,by:"id"});let i=new Map([...Dn(t)].map(([c,u])=>[u,c]));for(let c of e){let u=i.get(c.id);if(!s.has(c.id)&&u&&!o.has(u))o.add(u),s.set(c.id,{key:c.id,id:u,by:"name"})}let a=e.map((c)=>s.get(c.id)??{key:c.id,id:c.id,by:"new"});return{definitions:e.map((c,u)=>({...c,id:a[u]?.id??c.id})),matches:a}}var _0=new Set(["cycle","gate-input","not-input","trigger-input","wrong-output","no-outputs","missing-step","duplicate-id"]);function v0(e){return Y2(e).issues.filter((t)=>_0.has(t.rule))}function Y2(e,t=Ge){let r=Hf(e,{catalog:t,stage:"enable"}),n=r.results.filter((o)=>o.severity==="error");if(!r.definition)return{runnable:!1,canTurnOn:!1,issues:n};return{runnable:!n.some((o)=>_0.has(o.rule)),canTurnOn:n.length===0,issues:n}}var Bc={on:"Live",off:"Off","cant-run":"Can't run","needs-fixes":"Needs fixes","cant-turn-on":"Can't turn on"};function S0(e){if(e.enabled){if(!e.runnable)return"cant-run";return e.canTurnOn?"on":"needs-fixes"}return e.canTurnOn?"off":"cant-turn-on"}var gi=vf(()=>w({type:p().optional(),const:ne().optional(),enum:k(ne()).optional(),items:gi.optional(),properties:K(p(),gi).optional(),required:k(p()).optional(),anyOf:k(gi).optional(),oneOf:k(gi).optional()})),Hc=K(p(),qe),X2=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function Mn(e){return X2.test(e)?e:JSON.stringify(e)}function Kc(e,t){let r=e.anyOf??e.oneOf;if(r)return r.map((n)=>Kc(n,t)).join(" | ");if(e.const!==void 0)return JSON.stringify(e.const);if(e.enum)return e.enum.map((n)=>JSON.stringify(n)).join(" | ");switch(e.type){case"string":return"string";case"integer":case"number":return"number";case"boolean":return"boolean";case"array":return`readonly (${e.items?Kc(e.items,t):"unknown"})[]`;case"object":{let n=Object.entries(e.properties??{});if(n.length===0)return"Record<never, never>";let o=`${t} `;return`{
|
|
240
|
+
${n.map(([i,a])=>`${o}readonly ${Mn(i)}${e.required?.includes(i)?"":"?"}: ${Kc(a,o)};`).join(`
|
|
241
241
|
`)}
|
|
242
|
-
${t}}`}default:return"unknown"}}function
|
|
243
|
-
`)}var
|
|
244
|
-
${c.data.map((l)=>`${a}${
|
|
242
|
+
${t}}`}default:return"unknown"}}function cm(e,t=""){let r=gi.safeParse(US(e,{io:"input",unrepresentable:"any"}));return r.success?Kc(r.data,t):"unknown"}function Q2(){let e=Ge.map((n)=>` readonly ${Mn(n.ruleId)}: ${cm(n.configSchema,"\t\t")};`),t=Object.entries(Kr).map(([n,o])=>` readonly ${Mn(n)}: ${cm(o,"\t\t")};`),r=To.map((n)=>JSON.stringify(n)).join(" | ");return["export interface TripwireCatalog {","\treadonly rules: {",...e,"\t};","\treadonly actions: {",...t,"\t};",` readonly events: ${r};`,` readonly schedule: ${cm(bo,"\t")};`,"}"].join(`
|
|
243
|
+
`)}var dm=["allOf","anyOf","block","check","close","customCheck","discord","humanReview","label","lock","not","postComment","removeLabel","requestReview","schedule","trigger","webhook","workflow","workflows"],eF=new Set([...dm,"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 tF(e){return/^[A-Z0-9]+$/.test(e)?e.toLowerCase():e}function k0(e){let r=e.split(/[^A-Za-z0-9]+/).filter(Boolean).map(tF).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 eF.has(n)?`${n}Step`:n}var rF={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"},x0=new Set(["block","close","send-to-moderation","webhook","discord"]),nF=k(qe),pm=te([p(),P(),D(),Hs()]),oF=k(pm),sF=80,iF=2;function $0(e){let t=oF.safeParse(e);return t.success?`[${t.data.map((r)=>JSON.stringify(r)).join(", ")}]`:null}function aF(e){let t=Hc.safeParse(e);if(!t.success)return null;let r=Object.entries(t.data);if(r.length===0)return"{}";let n=[];for(let[o,s]of r){let i=pm.safeParse(s),a=i.success?JSON.stringify(i.data):$0(s);if(a===null)return null;n.push(`${Mn(o)}: ${a}`)}return`{ ${n.join(", ")} }`}function um(e,t,r="",n=","){let o=pm.safeParse(e);if(o.success)return JSON.stringify(o.data);let s=$0(e)??aF(e),i=t.length*iF+r.length+(s?.length??0)+n.length;if(s!==null&&i<=sF)return s;let a=`${t} `,c=nF.safeParse(e);if(c.success)return c.data.length===0?"[]":`[
|
|
244
|
+
${c.data.map((l)=>`${a}${um(l,a)},`).join(`
|
|
245
245
|
`)}
|
|
246
|
-
${t}]`;let u=
|
|
247
|
-
${l.map(([d,f])=>{let m=`${
|
|
246
|
+
${t}]`;let u=Hc.safeParse(e);if(u.success){let l=Object.entries(u.data);return l.length===0?"{}":`{
|
|
247
|
+
${l.map(([d,f])=>{let m=`${Mn(d)}: `;return`${a}${m}${um(f,a,m)},`}).join(`
|
|
248
248
|
`)}
|
|
249
|
-
${t}}`}return JSON.stringify(e)}function
|
|
250
|
-
`)}function
|
|
249
|
+
${t}}`}return JSON.stringify(e)}function cF(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 uF(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 lF(e,t,r,n,o){let s=t.length>0?`.after(${t.join(", ")})`:"",i=(a,c,u)=>um(a,n,`${o}${c}`,`${u};`);switch(e.type){case"trigger":{if(e.schedule){let a=qe.parse(JSON.parse(JSON.stringify(e.schedule)));return`schedule(${i(a,"schedule(",")")})`}return`trigger(${e.kinds.map((a)=>JSON.stringify(a)).join(", ")})`}case"rule":{let[a=e.ref,c]=e.ref.split("@"),u=Number(c),l=Ge.find((T)=>T.ruleId===a),d=Hc.safeParse(e.config),f=d.success&&Object.keys(d.data).length===0,m=l?"check":"customCheck",h=`${m}(${JSON.stringify(a)}, `,g=!l||u===l.version?"":`, { version: ${u} }`,b=(f?null:i(e.config,h,`${g})${s}`))??(g?"{}":"");return`${m}(${JSON.stringify(a)}${b?`, ${b}`:""}${g})${s}`}case"gate":{if(t.length===0)return r.push(`${e.id}: a gate with no inputs is left out`),null;if(e.mode==="not"){if(t.length>1)r.push(`${e.id}: a Not gate keeps only its first input`);return`not(${t[0]})`}return`${e.mode==="all-of"?"allOf":"anyOf"}(${t.join(", ")})`}case"action":{if(e.action==="comment")return r.push(`${e.id}: the Comment step was removed and is left out`),null;let a=rF[e.action],c=Object.fromEntries(Object.entries(e.params??{}).filter(([l])=>!am.has(l))),u=x0.has(e.action)||Object.keys(c).length===0?"":i(c,`${a}(`,`)${s}`);return`${a}(${u})${s}`}default:return null}}function dF(e){return Object.hasOwn(Kr,e)}function pF(e){switch(e.type){case"trigger":{if(e.schedule===void 0)return e.kinds.filter((t)=>!To.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 bo.safeParse(e.schedule).success?[]:[`${e.id} has an unfinished schedule`]}case"rule":{let[t=e.ref,r]=e.ref.split("@");if(t.startsWith("custom-"))return[];let n=Ge.find((s)=>s.ruleId===t);if(!n)return[`${t} is no longer a rule`];if(Number(r)!==n.version)return[];let o=Hc.safeParse(e.config??{});return o.success?hi(o.data,n.configSchema,t):[`${t} settings are not an object`]}case"action":{if(e.action==="comment"||x0.has(e.action))return[];if(!dF(e.action))return[`${e.action} is no longer an action`];let t=Object.fromEntries(Object.entries(e.params??{}).filter(([r])=>!am.has(r)));return hi(t,Kr[e.action],e.action)}default:return[]}}var fF={trigger:"trigger",rule:"step",gate:"gate",action:"step"};function mF(e,t){if(!e.message.startsWith("It "))return e.message;let r=e.message.slice(3),n=t.nodes.find((s)=>s.id===e.nodeId),o=fF[n?.type??"action"];return new RegExp(`\\b${o}\\b`,"i").test(e.step)?`${e.step} ${r}`:`The ${e.step} ${o} ${r}`}function lm(e){return[...v0(e).map((t)=>mF(t,e)),...e.nodes.flatMap(pF)]}function hF(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=k0(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 uF(e)){let d=e.edges.filter((m)=>m.to===l.id&&!c.has(m.from)).map((m)=>cF(m,o,n)),f=lF(l,d,r,"\t",`const ${o.get(l.id)} = `);if(f===null){c.add(l.id);continue}if(l.type!=="trigger"&&d.length===0){r.push(`${l.id}: nothing leads into it, so it is left out`),c.add(l.id);continue}i.push(` const ${o.get(l.id)} = ${f};`),a.push(l.id)}let u=a.map((l)=>{let d=o.get(l)??l;return l===d?` ${d},`:` ${Mn(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=[],c=new Set,u=e.filter((h)=>{let g=!c.has(h.id);return c.add(h.id),g&&lm(h).length===0}),l=Dn(u,t.keys);for(let h of e){if(i.has(h.id)){r.push(`${h.name}: another workflow already uses the id ${h.id}, so it is left out`);continue}i.add(h.id);let[g]=lm(h);if(g){r.push(`${h.name}: left out, it cannot be written as code. ${g}`);continue}let y=k0(h.name||h.id),b=y;for(let T=2;n.has(b);T++)b=`${y}${T}`;n.add(b),a.push(h.id),o.push(hF(h,b,r)),s.push(` ${Mn(l.get(h.id)??h.id)}: ${b}(),`)}let d=[...o,`export default workflows({
|
|
251
251
|
${s.join(`
|
|
252
252
|
`)}
|
|
253
253
|
});`].join(`
|
|
254
254
|
|
|
255
255
|
`);return{code:`${[`import {
|
|
256
|
-
${
|
|
256
|
+
${dm.filter((h)=>new RegExp(`\\b${h}\\(`).test(d)).map((h)=>` ${h},`).join(`
|
|
257
257
|
`)}
|
|
258
|
-
} from ${JSON.stringify(t.importFrom)};`,
|
|
258
|
+
} from ${JSON.stringify(t.importFrom)};`,d].join(`
|
|
259
259
|
|
|
260
260
|
`)}
|
|
261
|
-
`,warnings:r,written:a}}function
|
|
262
|
-
${
|
|
261
|
+
`,warnings:r,written:a,keys:l}}function T0(e,t={}){let[r]=lm(e);if(r)return{ok:!1,reason:r};let{code:n,warnings:o}=Gc([b0(e)],{importFrom:Io,keys:t.key?new Map([[e.id,t.key]]):void 0});return{ok:!0,code:n,warnings:o}}function E0(e){return[e.trimEnd(),Q2(),`export const {
|
|
262
|
+
${dm.map((t)=>` ${t},`).join(`
|
|
263
263
|
`)}
|
|
264
264
|
} = authoring<TripwireCatalog>();`].join(`
|
|
265
265
|
|
|
266
266
|
`).concat(`
|
|
267
|
-
`)}var
|
|
268
|
-
`)}function
|
|
269
|
-
`)}function
|
|
270
|
-
|
|
271
|
-
${o}`}),list_moderation_queue:
|
|
272
|
-
`)){let o=/^(.*) at ([\w.[\]]+)$/.exec(n.trim());if(!o)continue;let[,s="",i=""]=o;if(/received undefined/.test(s))t.push(i);else r.push(
|
|
273
|
-
`),l=!1;for(let d=0;d<u.length;d++){let f=u[d];if(n+=f,!l){if(l=f>="\uD800"&&f<="\uDBFF",l)continue}else l=!1;if(f===
|
|
274
|
-
`){if(s)n+=
|
|
275
|
-
`){if(o&&
|
|
276
|
-
`)}var
|
|
267
|
+
`)}var Io="./.tripwire/workflow.ts";var gF=["pending","accepted","rejected","expired","stale"],yF=z(gF);var P0=25,wF=["accept","reject"],Sde=z(wF),bF=w({id:p(),revision:P().int().min(0)}),_F=w({definition:ut,baseWorkflowId:p().nullable(),baseHash:p().nullable(),baseDefinition:ut.nullable(),draft:bF.nullable().optional()}),kde=k(_F).min(1),vF=w({id:p(),name:p(),outcome:z(["created","updated"]),workflowId:p()}),xde=k(vF),SF=z(["new","changed"]),fm=w({id:p(),org:p(),repo:p(),status:yF,url:p(),expiresAt:p(),workflows:k(w({id:p(),name:p(),change:SF,outcome:z(["created","updated"]).optional(),url:p().optional()}))}),O0={pending:"Waiting for review",accepted:"Accepted",rejected:"Declined",expired:"Expired",stale:"Out of date"};function I0(e){return e==="accepted"?0:1}var kF=w({id:p(),name:p(),issues:k(p())}),A0=It("result",[w({result:C("proposed"),push:fm}),w({result:C("unchanged")}),w({result:C("blocked"),workflows:k(kF)})]);var{block:xF,check:$F,close:TF,label:EF,lock:PF,postComment:R0,removeLabel:OF,schedule:mm,trigger:IF,workflow:Jc,workflows:AF}=Wx;function C0(e){let t=mm({every:e.every,match:{subjects:[e.subject],state:"open",inactiveFor:{n:e.warnAfterDays,unit:"days"},excludeLabels:["stale","no-auto-close"],skipLocked:!0}}),r=mm({every:e.every,match:{subjects:[e.subject],state:"open",inactiveFor:{n:e.closeAfterDays,unit:"days"},labels:["stale"],excludeLabels:["no-auto-close"],skipLocked:!0}}),n=IF(...e.resetOn);return{warn:t,"mark-stale":EF({labels:["stale"]}).after(t),"warn-comment":R0({message:e.warning}).after(t),close:r,"close-comment":R0({message:e.closing}).after(r),"close-it":TF().after(r),reset:n,"unmark-stale":OF({labels:["stale"]}).after(n)}}var z0=mm({every:{n:12,unit:"hours"},match:{subjects:["issue","change-request"],state:"closed",inactiveFor:{n:15,unit:"days"},skipLocked:!0}}),RF=AF({"block-new-accounts":Jc({name:"Block new accounts",on:"change-request.opened",check:$F("account-age",{minDays:7}),fail:[xF()]}),"lock-inactive-threads":Jc({name:"Lock inactive threads",steps:{trigger:z0,lock:PF({reason:"resolved"}).after(z0)}}),"close-stale-issues":Jc({name:"Close stale issues",steps:C0({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":Jc({name:"Close stale change requests",steps:C0({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"]})})}),CF={"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."},zF=new Map(Object.entries(CF));function NF(){let e=im(RF);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:zF.get(t.id)??"",definition:t}))}var Pde=NF();var U0=In(Qc(),1);var yi={label:(e)=>e,good:(e)=>e,next:(e)=>e,bad:(e)=>e};function wi(e,t){if(!e||t.NO_COLOR)return yi;let r=U0.default.createColors(!0);return{label:r.dim,good:r.green,next:r.yellow,bad:r.red}}var j0=10;function Se(e,t=yi){return e.map(([r,n])=>{let o=" ".repeat(Math.max(1,j0-r.length));return`${r===""?" ".repeat(j0):`${t.label(r)}${o}`}${n}`.trimEnd()}).join(`
|
|
268
|
+
`)}function W0(e){return MF(e).length}function qF(e,t){return e+" ".repeat(Math.max(0,t-W0(e)))}function qn(e,t,r=30){let n=e.map((s,i)=>{let c=Math.max(s.length,...t.map((u)=>W0(u[i]??"")))+5;return i===0?Math.max(r,c):c}),o=(s)=>s.map((i,a)=>a===s.length-1?i:qF(i,n[a]??0)).join("").trimEnd();return[o(e),...t.map(o)].join(`
|
|
269
|
+
`)}function ir(e,t=yi){return Se([["error",e]],{...t,label:t.bad})}function tu(e,t=yi){return Se([["warn",e]],t)}function V0(e){let t=e.replace(/[\s-]/g,"").toUpperCase();return t.length===8?`${t.slice(0,4)}-${t.slice(4)}`:e}function D0(e){return e.map((t)=>Xk.find((r)=>r.kind===t)?.name.toLowerCase()??t)}function eu(e,t){return e?t.good("on"):"off"}function M0(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return e;return`${t.toISOString().slice(0,16).replace("T"," ")} UTC`}function q0(e){return e.slice(e.lastIndexOf("/")+1)}var FF=w({user:w({name:p().nullish(),email:p().nullish()}).nullish(),access:w({approved:D(),requestAccessUrl:p().optional()}),orgs:k(w({slug:p(),role:p(),agentAllowed:D().optional()}))}),UF={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>"},WF=w({org:p(),role:p().optional(),nextStep:p(),installUrl:p().optional(),home:p().optional()}),VF=k(w({name:p(),gateOn:D(),toReview:P(),blocked24h:P()})),ZF=k(w({ruleId:p(),name:p(),optIn:D().optional()})),BF=k(w({ruleId:p(),enabled:D(),management:p().nullish(),cannotRun:p().nullish(),matches24h:P().nullish()})),KF=k(w({id:p(),name:p(),enabled:D(),runnable:D().optional(),canTurnOn:D().optional(),triggerKinds:k(p()).optional(),schedules:k(p()).optional()}));function gm(e,t){if(t.length===0)return D0(e);return[...D0(e.filter((r)=>r!=="schedule.matched")),...t]}function HF(e,t){let r=S0({enabled:e.enabled,runnable:e.runnable??!0,canTurnOn:e.canTurnOn??!0}),n=Bc[r].toLowerCase();if(r==="on")return t.good(n);if(r==="cant-run"||r==="needs-fixes")return t.bad(n);return n}var GF=w({enabled:D(),url:p().optional(),warnings:k(w({message:p()})).optional()}),JF=k(w({id:p(),repo:p().optional(),number:P().nullish(),status:p(),verdict:p().nullish(),result:p().nullish(),verdictLabel:p().nullish(),createdAt:p()})),YF=w({id:p(),repo:p(),number:P().nullish(),status:p(),verdict:p().nullish(),result:p().nullish(),verdictLabel:p().nullish(),createdAt:p(),steps:k(w({kind:p(),rule:p().nullish(),status:p(),summary:p().nullish(),workflow:p().nullish(),stepId:p().nullish(),step:p().optional(),outcome:p().optional()})),url:p().optional()}),XF=w({items:k(w({itemId:p(),repo:p().optional(),number:P().nullish(),actor:p().nullish(),title:p().nullish()})),url:p().optional()}),QF=w({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()}),eU=[["approve","let the change request through"],["remove","block it"],["ban","get a link where a person bans the contributor"]];function Z0(e){let t=eU.map(([r,n])=>`${r} to ${n}`);return`${e} is not a choice. Use ${t.slice(0,-1).join(", ")}, or ${t.at(-1)}.`}var tU={approve:"Approved",remove:"Blocked"};function rU(e){let t=e.number?`#${e.number}`:e.itemId;if(!t)return"";return e.repo?` ${t} on ${e.repo}`:` ${t}`}function nU(e){if(!e.step)return e.rule??e.kind;return e.stepId?`${e.step} (${e.stepId})`:e.step}var oU=w({ruleId:p(),enabled:D()}),sU=w({repo:p(),url:p().optional()});function F0(e,t){let r=e.result??e.verdict,n=e.verdictLabel??qx(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 St(e,t){return(r,n)=>{let o=e.safeParse(r);return o.success?t(o.data,n):null}}var iU={whoami:St(FF,(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 Se(o,t)}),setup_status:St(WF,(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(UF[e.nextStep]??e.nextStep)]);if(e.installUrl)r.push(["open",e.installUrl]);return Se(r,t)}),list_repos:St(VF,(e,t)=>{if(e.length===0)return"No repos yet. Run tripwire status to see the next step.";return qn(["REPO","GATE","TO REVIEW","BLOCKED 24H"],e.map((r)=>[r.name,eu(r.gateOn,t),String(r.toReview),String(r.blocked24h)]))}),list_rule_catalog:St(ZF,(e)=>qn(["RULE","NAME","OPT-IN"],e.map((t)=>[t.ruleId,t.name,t.optIn?"yes":"no"]))),get_repo_rules:St(BF,(e,t)=>{if(e.length===0)return"No rules on this repo.";return qn(["RULE","STATE","MATCHES 24H","NOTE"],e.map((r)=>[r.ruleId,eu(r.enabled,t),String(r.matches24h??0),r.cannotRun??(r.management==="managed"?"set by a workflow":"")]))}),set_rule:St(oU,(e,t)=>Se([["done",`${e.ruleId} is ${eu(e.enabled,t)}`]],t)),turn_on_gate:St(sU,(e,t)=>{let r=[["done",`Gate is ${t.good("on")} for ${e.repo}`]];if(e.url)r.push(["open",e.url]);return Se(r,t)}),list_workflows:St(KF,(e,t)=>{if(e.length===0)return"No workflows on this repo.";return qn(["WORKFLOW","ID","STATE","TRIGGERS"],e.map((r)=>[r.name,r.id,HF(r,t),gm(r.triggerKinds??[],r.schedules??[]).join(", ")]))}),set_workflow_enabled:St(GF,(e,t)=>{let r=[["done",`Workflow is ${eu(e.enabled,t)}`]];for(let n of e.warnings??[])r.push(["warning",n.message]);if(e.url)r.push(["open",e.url]);return Se(r,t)}),list_runs:St(JF,(e,t)=>{if(e.length===0)return"No runs yet.";return qn(["RUN","REPO","PR","STATUS","VERDICT","CREATED"],e.map((r)=>[r.id,r.repo?q0(r.repo):"-",r.number?`#${r.number}`:"-",r.status,F0(r,t),M0(r.createdAt)]))}),get_run:St(YF,(e,t)=>{let r=[["run",e.id],["repo",e.number?`${e.repo} #${e.number}`:e.repo],["status",e.status],["verdict",F0(e,t)],["created",M0(e.createdAt)]];if(e.url)r.push(["open",e.url]);let n=Se(r,t);if(e.steps.length===0)return n;let o=qn(["WORKFLOW","STEP","OUTCOME","SUMMARY"],e.steps.map((s)=>{let i=s.outcome??s.status;return[s.workflow??"-",nU(s),s.status==="fail"?t.bad(i):i,s.summary??""]}),0);return`${n}
|
|
270
|
+
|
|
271
|
+
${o}`}),list_moderation_queue:St(XF,(e)=>{if(e.items.length===0)return"Nothing to review.";return qn(["ITEM","REPO","PR","AUTHOR","TITLE"],e.items.map((t)=>[t.itemId,t.repo?q0(t.repo):"-",t.number?`#${t.number}`:"-",t.actor??"-",t.title??""]))}),decide_moderation:St(QF,(e,t)=>{if(e.confirmUrl)return Se([["open",e.confirmUrl],["",e.forUser??"Open this link to confirm."]],t);let r=rU(e);if(!e.done)return Se([["done",`${r.trim()||"This item"} was already decided`]],t);let n=e.decision==="approve"||e.decision==="remove"?tU[e.decision]:"Decided";return Se([["done",t.good(`${n}${r}`)]],t)})};function B0(e,t,r=yi){let n=iU[e];if(!(n&&t!==null))return null;return n(t,r)}var aU={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."},cU=w({error:p(),hint:p().optional(),org:p().optional()});function uU(e,t){if(e==="list_repos"&&t)return`Run tripwire repos --org ${t} to see them.`;return e?aU[e]:void 0}var lU=new Map([["number","a number"],["int","a whole number"],["string","text"],["boolean","true or false"],["array","a list"],["object","an object"]]);function dU(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 ${lU.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 pU(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(dU(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 Ao(e,t=null){let r=cU.safeParse(t);if(r.success){let i=uU(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 pU(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 km,stdin as u$}from"node:process";import*as Gr from"node:readline";import PU from"node:readline";var K0=(()=>{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}})(),H0=(e)=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,G0=(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 fU=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,mU=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,J0=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,hU=/\t{1,1000}/y,Y0=/[\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,gU=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,yU=/\p{M}+/gu,wU={limit:1/0,ellipsis:""},X0=(e,t={},r={})=>{let n=t.limit??1/0,o=t.ellipsis??"",s=t?.ellipsisWidth??(o?X0(o,wU,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=[[gU,d],[fU,0],[mU,a],[hU,c],[Y0,u],[J0,f]],h=0,g=0,y=e.length,b=0,T=!1,S=y,I=Math.max(0,n-s),_=0,v=0,x=0,A=0;e:while(!0){if(v>_||g>=y&&g>h){let j=e.slice(_,v)||e.slice(h,g);b=0;for(let Y of j.replaceAll(yU,"")){let ie=Y.codePointAt(0)||0;if(H0(ie))A=2;else if(G0(ie))A=f;else A=d;if(x+A>I)S=Math.min(S,Math.max(_,h)+b);if(x+A>n){T=!0;break e}b+=Y.length,x+=A}_=v=0}if(g>=y)break e;for(let j=0,Y=m.length;j<Y;j++){let[ie,ae]=m[j];if(ie.lastIndex=g,ie.test(e)){if(b=ie===J0?K0(e.slice(g,ie.lastIndex)):ie===Y0?1:ie.lastIndex-g,A=b*ae,x+A>I)S=Math.min(S,g+Math.floor((I-x)/ae));if(x+A>n){T=!0;break e}x+=A,_=h,v=g,g=h=ie.lastIndex;continue e}}g+=1}return{width:T?I:x,index:T?S:y,truncated:T,ellipsed:T&&n>=s}},Q0=X0;var bU={limit:1/0,ellipsis:"",ellipsisWidth:0},_U=(e,t={})=>Q0(e,bU,t).width,ar=_U;var ru="\x1B",o$="",vU=39,wm="\x07",s$="[",SU="]",i$="m",bm=`${SU}8;;`,e$=new RegExp(`(?:\\${s$}(?<code>\\d+)m|\\${bm}(?<uri>.*)${wm})`,"y"),t$=(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},r$=(e)=>`${ru}${s$}${e}${i$}`,n$=(e)=>`${ru}${bm}${e}${wm}`,ym=(e,t,r)=>{let n=t[Symbol.iterator](),o=!1,s=!1,i=e.at(-1),a=i===void 0?0:ar(i),c=n.next(),u=n.next(),l=0;while(!c.done){let d=c.value,f=ar(d);if(a+f<=r)e[e.length-1]+=d;else e.push(d),a=0;if(d===ru||d===o$)o=!0,s=t.startsWith(bm,l+1);if(o){if(s){if(d===wm)o=!1,s=!1}else if(d===i$)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()},kU=(e)=>{let t=e.split(" "),r=t.length;while(r){if(ar(t[r-1]))break;r--}if(r===t.length)return e;return t.slice(0,r).join(" ")+t.slice(r).join("")},xU=(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=ar(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=ar(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("");ym(a,f,t),c=ar(a.at(-1)??"");continue}if(c+m>t&&c&&m){if(r.wordWrap===!1&&c<t){ym(a,f,t),c=ar(a.at(-1)??"");continue}a.push(""),c=0}if(c+m>t&&r.wordWrap===!1){ym(a,f,t),c=ar(a.at(-1)??"");continue}a[a.length-1]+=f,c+=m}if(r.trim!==!1)a=a.map((d)=>kU(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===ru||f===o$){e$.lastIndex=d+1;let h=e$.exec(u)?.groups;if(h?.code!==void 0){let g=Number.parseFloat(h.code);o=g===vU?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+=n$("");let m=o?t$(o):void 0;if(o&&m)n+=r$(m)}else if(f===`
|
|
275
|
+
`){if(o&&t$(o))n+=r$(o);if(s)n+=n$(s)}}return n},$U=/\r?\n/;function Hr(e,t,r){return String(e).normalize().split($U).map((n)=>xU(n,t,r)).join(`
|
|
276
|
+
`)}var tt=In(vm(),1);import{ReadStream as c$}from"node:tty";function ou(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?ou(s,t<0?-1:1,r):s}var OU=["up","down","left","right","space","enter","cancel"],IU=["January","February","March","April","May","June","July","August","September","October","November","December"],ot={actions:new Set(OU),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:[...IU],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 xm(e,t){if(typeof e=="string")return ot.aliases.get(e)===t;for(let r of e)if(r!==void 0&&xm(r,t))return!0;return!1}function AU(e,t){if(e===t)return;let r=e.split(`
|
|
277
277
|
`),n=t.split(`
|
|
278
|
-
`),o=Math.max(r.length,n.length),s=[];for(let i=0;i<o;i++)r[i]!==n[i]&&s.push(i);return{lines:s,numLinesBefore:r.length,numLinesAfter:n.length,numLines:o}}var
|
|
278
|
+
`),o=Math.max(r.length,n.length),s=[];for(let i=0;i<o;i++)r[i]!==n[i]&&s.push(i);return{lines:s,numLinesBefore:r.length,numLinesAfter:n.length,numLines:o}}var RU=globalThis.process.platform.startsWith("win"),Sm=Symbol("clack:cancel");function bi(e){return e===Sm}function nu(e,t){let r=e;r.isTTY&&r.setRawMode(t)}function l$({input:e=u$,output:t=km,overwrite:r=!0,hideCursor:n=!0}={}){let o=Gr.createInterface({input:e,output:t,prompt:"",tabSize:1});Gr.emitKeypressEvents(e,o),e instanceof c$&&e.isTTY&&e.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(xm([u,a,c],"cancel")){n&&t.write(tt.cursor.show),process.exit(0);return}if(!r)return;Gr.moveCursor(t,a==="return"?0:-1,a==="return"?-1:0,()=>{Gr.clearLine(t,1,()=>{e.once("keypress",s)})})};return n&&t.write(tt.cursor.hide),e.once("keypress",s),()=>{e.off("keypress",s),n&&t.write(tt.cursor.show),e instanceof c$&&e.isTTY&&!RU&&e.setRawMode(!1),o.terminal=!1,o.close()}}var su=(e)=>("columns"in e)&&typeof e.columns=="number"?e.columns:80,$m=(e)=>("rows"in e)&&typeof e.rows=="number"?e.rows:20;function _i(e,t,r,n=r,o=r,s){let i=su(e??km);return Hr(t,i-r.length,{hard:!0,trim:!1}).split(`
|
|
279
279
|
`).map((a,c,u)=>{let l=s?s(a,c):a;return c===0?`${n}${l}`:c===u.length-1?`${o}${l}`:`${r}${l}`}).join(`
|
|
280
|
-
`)}function
|
|
281
|
-
`),
|
|
282
|
-
`).length-1;this.output.write(
|
|
283
|
-
`);this.output.write(i[s]),this._prevFrame=e,this.output.write(
|
|
280
|
+
`)}function d$(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 Tm{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=u$,output:n=km,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(Sm);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=PU.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),nu(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(tt.cursor.show),this.output.off("resize",this.render),nu(this.input,!1),e(this.value)}),this.once("cancel",()=>{this.output.write(tt.cursor.show),this.output.off("resize",this.render),nu(this.input,!1),e(Sm)})})}_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&&ot.aliases.has(t.name)&&this.emit("cursor",ot.aliases.get(t.name)),ot.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=d$(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")}xm([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
|
+
`),nu(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let e=Hr(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
|
|
282
|
+
`).length-1;this.output.write(tt.cursor.move(-999,e*-1))}render(){let e=Hr(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(e!==this._prevFrame){if(this.state==="initial")this.output.write(tt.cursor.hide);else{let t=AU(this._prevFrame,e),r=$m(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(tt.cursor.move(0,s-o)),this.output.write(tt.erase.lines(1));let i=e.split(`
|
|
283
|
+
`);this.output.write(i[s]),this._prevFrame=e,this.output.write(tt.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(tt.cursor.move(0,a))}this.output.write(tt.erase.down());let i=e.split(`
|
|
284
284
|
`).slice(s);this.output.write(i.join(`
|
|
285
|
-
`)),this._prevFrame=e;return}}this.output.write(
|
|
286
|
-
`);y.push(A),
|
|
285
|
+
`)),this._prevFrame=e;return}}this.output.write(tt.erase.down())}this.output.write(e),this.state==="initial"&&(this.state="active"),this._prevFrame=e}}}class Em extends Tm{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(tt.cursor.move(0,-1)),this.value=t,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}class Pm extends Tm{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?ou(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=ou(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=ou(this.cursor,1,this.options);break;case"space":this.toggleValue();break}})}}import{styleText as N,stripVTControlCharacters as nfe}from"node:util";import Kt from"node:process";var Si=In(vm(),1);function CU(){if(Kt.platform!=="win32")return Kt.env.TERM!=="linux";return Boolean(Kt.env.CI)||Boolean(Kt.env.WT_SESSION)||Boolean(Kt.env.TERMINUS_SUBLIME)||Kt.env.ConEmuTask==="{cmd::Cmder}"||Kt.env.TERM_PROGRAM==="Terminus-Sublime"||Kt.env.TERM_PROGRAM==="vscode"||Kt.env.TERM==="xterm-256color"||Kt.env.TERM==="alacritty"||Kt.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Om=CU(),zU=()=>process.env.CI==="true";var ye=(e,t)=>Om?e:t,NU=ye("◆","*"),w$=ye("■","x"),b$=ye("▲","x"),Im=ye("◇","o"),LU=ye("┌","T"),Ee=ye("│","|"),Ro=ye("└","—"),afe=ye("┐","T"),cfe=ye("┘","—"),p$=ye("●",">"),f$=ye("○"," "),jU=ye("◻","[•]"),m$=ye("◼","[+]"),h$=ye("◻","[ ]"),ufe=ye("▪","•"),lfe=ye("─","-"),dfe=ye("╮","+"),pfe=ye("├","+"),ffe=ye("╯","+"),mfe=ye("╰","+"),hfe=ye("╭","+"),DU=ye("●","•"),MU=ye("◆","*"),qU=ye("▲","!"),FU=ye("■","x"),_$=(e)=>{switch(e){case"initial":case"active":return N("cyan",NU);case"cancel":return N("red",w$);case"error":return N("yellow",b$);case"submit":return N("green",Im)}},UU=(e)=>{switch(e){case"initial":case"active":return N("cyan",Ee);case"cancel":return N("red",Ee);case"error":return N("yellow",Ee);case"submit":return N("green",Ee)}};function WU(e,t){let r=[`${t?`${N("cyan",Ee)} `:""}${e.join(" • ")}`];return t&&r.push(N("cyan",Ro)),r}var g$=(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}},y$=({cursor:e,options:t,style:r,output:n=process.stdout,maxItems:o=Number.POSITIVE_INFINITY,columnPadding:s=0,rowPadding:i=4})=>{let a=su(n)-s,c=$m(n),u=N("dim","..."),l=Math.max(c-i,0),d=Math.max(Math.min(o,l),5),f=0;e>=d-3&&(f=Math.max(Math.min(e-d+3,t.length-d),0));let m=d<t.length&&f>0,h=d<t.length&&f+d<t.length,g=Math.min(f+d,t.length),y=[],b=0;m&&b++,h&&b++;let T=f+(m?1:0),S=g-(h?1:0);for(let _=T;_<S;_++){let v=t[_],x=v?r(v,_===e):"",A=Hr(x,a,{hard:!0,trim:!1}).split(`
|
|
286
|
+
`);y.push(A),b+=A.length}if(b>l){let _=0,v=0,x=b,A=e-T,j=l,Y=()=>g$(y,x,0,A,j),ie=()=>g$(y,x,A+1,y.length,j,!0);m?({lineCount:x,removals:_}=Y(),x>j&&(h||(j-=1),{lineCount:x,removals:v}=ie())):(h||(j-=1),{lineCount:x,removals:v}=ie(),x>j&&(j-=1,{lineCount:x,removals:_}=Y())),_>0&&(m=!0,y.splice(0,_)),v>0&&(h=!0,y.splice(y.length-v,v))}let I=[];m&&I.push(u);for(let _ of y)for(let v of _)I.push(v);return h&&I.push(u),I};var v$=(e)=>{let t=e.active??"Yes",r=e.inactive??"No";return new Em({active:t,inactive:r,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue??!0,render(){let n=e.withGuide??ot.withGuide,o=`${_$(this.state)} `,s=n?`${N("gray",Ee)} `:"",i=_i(e.output,e.message,s,o),a=`${n?`${N("gray",Ee)}
|
|
287
287
|
`:""}${i}
|
|
288
|
-
`,c=this.value?t:r;switch(this.state){case"submit":{let u=n?`${N("gray"
|
|
289
|
-
${N("gray"
|
|
290
|
-
${N("cyan"
|
|
291
|
-
`:` ${N("dim","/")} `}${this.value?`${N("dim",
|
|
288
|
+
`,c=this.value?t:r;switch(this.state){case"submit":{let u=n?`${N("gray",Ee)} `:"";return`${a}${u}${N("dim",c)}`}case"cancel":{let u=n?`${N("gray",Ee)} `:"";return`${a}${u}${N(["strikethrough","dim"],c)}${n?`
|
|
289
|
+
${N("gray",Ee)}`:""}`}default:{let u=n?`${N("cyan",Ee)} `:"",l=n?N("cyan",Ro):"";return`${a}${u}${this.value?`${N("green",p$)} ${t}`:`${N("dim",f$)} ${N("dim",t)}`}${e.vertical?n?`
|
|
290
|
+
${N("cyan",Ee)} `:`
|
|
291
|
+
`:` ${N("dim","/")} `}${this.value?`${N("dim",f$)} ${N("dim",r)}`:`${N("green",p$)} ${r}`}
|
|
292
292
|
${l}
|
|
293
|
-
`}}}}).prompt()};var
|
|
293
|
+
`}}}}).prompt()};var VU=[`${N("dim","↑/↓")} to navigate`,`${N("dim","Space:")} select`,`${N("dim","Enter:")} confirm`],vi=(e,t)=>e.split(`
|
|
294
294
|
`).map((r)=>t(r)).join(`
|
|
295
|
-
`),
|
|
296
|
-
${N("reset",N("dim",`Press ${N(["gray","bgWhite","inverse"]," space ")} to select, ${N("gray",N("bgWhite",N("inverse"," enter ")))} to submit`))}`},render(){let o=e.withGuide??
|
|
295
|
+
`),S$=(e)=>{let t=(o,s)=>{let i=o.label??String(o.value);return s==="disabled"?`${N("gray",h$)} ${vi(i,(a)=>N(["strikethrough","gray"],a))}${o.hint?` ${N("dim",`(${o.hint??"disabled"})`)}`:""}`:s==="active"?`${N("cyan",jU)} ${i}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="selected"?`${N("green",m$)} ${vi(i,(a)=>N("dim",a))}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="cancelled"?`${vi(i,(a)=>N(["strikethrough","dim"],a))}`:s==="active-selected"?`${N("green",m$)} ${i}${o.hint?` ${N("dim",`(${o.hint})`)}`:""}`:s==="submitted"?`${vi(i,(a)=>N("dim",a))}`:`${N("dim",h$)} ${vi(i,(a)=>N("dim",a))}`},r=e.required??!0,n=e.showInstructions??!0;return new Pm({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??ot.withGuide,s=_i(e.output,e.message,o?`${UU(this.state)} `:"",`${_$(this.state)} `),i=`${o?`${N("gray",Ee)}
|
|
297
297
|
`:""}${s}
|
|
298
|
-
`,a=this.value??[],c=(u,l)=>{if(u.disabled)return t(u,"disabled");let d=a.includes(u.value);return l&&d?t(u,"active-selected"):d?t(u,"selected"):t(u,l?"active":"inactive")};switch(this.state){case"submit":{let u=this.options.filter(({value:d})=>a.includes(d)).map((d)=>t(d,"submitted")).join(N("dim",", "))||N("dim","none"),l=
|
|
299
|
-
${N("gray"
|
|
300
|
-
`).map((m,h)=>h===0?`${o?`${N("yellow",
|
|
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=_i(e.output,u,o?`${N("gray",Ee)} `:"");return`${i}${l}`}case"cancel":{let u=this.options.filter(({value:d})=>a.includes(d)).map((d)=>t(d,"cancelled")).join(N("dim",", "));if(u.trim()==="")return`${i}${N("gray",Ee)}`;let l=_i(e.output,u,o?`${N("gray",Ee)} `:"");return`${i}${l}${o?`
|
|
299
|
+
${N("gray",Ee)}`:""}`}case"error":{let u=o?`${N("yellow",Ee)} `:"",l=this.error.split(`
|
|
300
|
+
`).map((m,h)=>h===0?`${o?`${N("yellow",Ro)} `:""}${N("yellow",m)}`:` ${m}`).join(`
|
|
301
301
|
`),d=i.split(`
|
|
302
302
|
`).length,f=l.split(`
|
|
303
|
-
`).length+1;return`${i}${u}${
|
|
303
|
+
`).length+1;return`${i}${u}${y$({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:d+f,style:c}).join(`
|
|
304
304
|
${u}`)}
|
|
305
305
|
${l}
|
|
306
|
-
`}default:{let u=o?`${N("cyan"
|
|
307
|
-
`).length,d=n?
|
|
308
|
-
`),m=d.length+1;return`${i}${u}${
|
|
306
|
+
`}default:{let u=o?`${N("cyan",Ee)} `:"",l=i.split(`
|
|
307
|
+
`).length,d=n?WU(VU,o):o?[N("cyan",Ro)]:[],f=d.join(`
|
|
308
|
+
`),m=d.length+1;return`${i}${u}${y$({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:l+m,style:c}).join(`
|
|
309
309
|
${u}`)}
|
|
310
310
|
${f}
|
|
311
|
-
`}}}}).prompt()};var
|
|
311
|
+
`}}}}).prompt()};var Ne={message:(e=[],{symbol:t=N("gray",Ee),secondarySymbol:r=N("gray",Ee),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??ot.withGuide,c=a?r:"",u=a?`${t} `:"",l=a?`${r} `:"";for(let f=0;f<o;f++)i.push(c);let d=Array.isArray(e)?e:e.split(`
|
|
312
312
|
`);if(d.length>0){let[f,...m]=d;f.length>0?i.push(`${u}${f}`):i.push(a?t:"");for(let h of m)h.length>0?i.push(`${l}${h}`):i.push(a?r:"")}n.write(`${i.join(`
|
|
313
313
|
`)}
|
|
314
|
-
`)},info:(e,t)=>{
|
|
314
|
+
`)},info:(e,t)=>{Ne.message(e,{...t,symbol:N("blue",DU)})},success:(e,t)=>{Ne.message(e,{...t,symbol:N("green",MU)})},step:(e,t)=>{Ne.message(e,{...t,symbol:N("green",Im)})},warn:(e,t)=>{Ne.message(e,{...t,symbol:N("yellow",qU)})},warning:(e,t)=>{Ne.warn(e,t)},error:(e,t)=>{Ne.message(e,{...t,symbol:N("red",FU)})}},iu=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??ot.withGuide?`${N("gray",Ro)} `:"";r.write(`${n}${N("red",e)}
|
|
315
315
|
|
|
316
|
-
`)},
|
|
317
|
-
`)},
|
|
318
|
-
${N("gray",
|
|
316
|
+
`)},k$=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??ot.withGuide?`${N("gray",LU)} `:"";r.write(`${n}${e}
|
|
317
|
+
`)},ki=(e="",t)=>{let r=t?.output??process.stdout,n=t?.withGuide??ot.withGuide?`${N("gray",Ee)}
|
|
318
|
+
${N("gray",Ro)} `:"";r.write(`${n}${e}
|
|
319
319
|
|
|
320
|
-
`)};var
|
|
321
|
-
`);let W=
|
|
322
|
-
`);W.length>1&&r.write(
|
|
323
|
-
`);let oe=0
|
|
320
|
+
`)};var ZU=(e)=>N("magenta",e),xi=({indicator:e="dots",onCancel:t,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=Om?["◒","◐","◓","◑"]:["•","o","O","0"],delay:i=Om?80:120,signal:a,...c}={})=>{let u=zU(),l,d,f=!1,m=!1,h="",g,y=performance.now(),b=su(r),T=c?.styleFrame??ZU,S=(W)=>{let oe=W>1?o??ot.messages.error:n??ot.messages.cancel;m=W===1,f&&(Me(oe,W),m&&typeof t=="function"&&t())},I=()=>S(2),_=()=>S(1),v=()=>{process.on("uncaughtExceptionMonitor",I),process.on("unhandledRejection",I),process.on("SIGINT",_),process.on("SIGTERM",_),process.on("exit",S),a&&a.addEventListener("abort",_)},x=()=>{process.removeListener("uncaughtExceptionMonitor",I),process.removeListener("unhandledRejection",I),process.removeListener("SIGINT",_),process.removeListener("SIGTERM",_),process.removeListener("exit",S),a&&a.removeEventListener("abort",_)},A=()=>{if(g===void 0)return;u&&r.write(`
|
|
321
|
+
`);let W=Hr(g,b,{hard:!0,trim:!1}).split(`
|
|
322
|
+
`);W.length>1&&r.write(Si.cursor.up(W.length-1)),r.write(Si.cursor.to(0)),r.write(Si.erase.down())},j=(W)=>W.replace(/\.+$/,""),Y=(W)=>{let oe=(performance.now()-W)/1000,Et=Math.floor(oe/60),it=Math.floor(oe%60);return Et>0?`[${Et}m ${it}s]`:`[${it}s]`},ie=c.withGuide??ot.withGuide,ae=(W="")=>{f=!0,l=l$({output:r}),h=j(W),y=performance.now(),ie&&r.write(`${N("gray",Ee)}
|
|
323
|
+
`);let oe=0,Et=0;v(),d=setInterval(()=>{if(u&&h===g)return;A(),g=h;let it=T(s[oe]),Pa;if(u)Pa=`${it} ${h}...`;else if(e==="timer")Pa=`${it} ${h} ${Y(y)}`;else{let Lz=".".repeat(Math.floor(Et)).slice(0,3);Pa=`${it} ${h}${Lz}`}let Nz=Hr(Pa,b,{hard:!0,trim:!1});r.write(Nz),oe=oe+1<s.length?oe+1:0,Et=Et<4?Et+0.125:0},i)},Me=(W="",oe=0,Et=!1)=>{if(!f)return;f=!1,clearInterval(d),A();let it=oe===0?N("green",Im):oe===1?N("red",w$):N("red",b$);h=W??h,Et||(e==="timer"?r.write(`${it} ${h} ${Y(y)}
|
|
324
324
|
`):r.write(`${it} ${h}
|
|
325
|
-
`)),
|
|
326
|
-
`;break;case 114:S+="\r";break;case 116:S+="\t";break;case 117:let
|
|
327
|
-
`;return a++,u=n,i=14}switch(S){case 123:return n++,i=1;case 125:return n++,i=2;case 91:return n++,i=3;case 93:return n++,i=4;case 58:return n++,i=6;case 44:return n++,i=5;case 34:return n++,o=g(),i=10;case 47:let I=n-1;if(e.charCodeAt(n+1)===47){n+=2;while(n<r){if(
|
|
325
|
+
`)),x(),l()};return{start:ae,stop:(W="")=>Me(W,0),message:(W="")=>{h=j(W??h)},cancel:(W="")=>Me(W,1),error:(W="")=>Me(W,2),clear:()=>Me("",0,!0),get isCancelled(){return m}}},gfe={light:ye("─","-"),heavy:ye("━","="),block:ye("█","#")};var yfe=[`${N("dim","↑/↓")} to navigate`,`${N("dim","Enter:")} confirm`];var wfe=`${N("gray",Ee)} `;var xt=In(Qc(),1);import{join as uW}from"node:path";import{readFileSync as aW}from"node:fs";import{join as No}from"node:path";import{mkdirSync as QU,readFileSync as eW,renameSync as tW,writeFileSync as rW}from"node:fs";import{dirname as nW}from"node:path";function Ti(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(S,I){let _=0,v=0;while(_<S||!I){let x=e.charCodeAt(n);if(x>=48&&x<=57)v=v*16+x-48;else if(x>=65&&x<=70)v=v*16+x-65+10;else if(x>=97&&x<=102)v=v*16+x-97+10;else break;n++,_++}if(_<S)v=-1;return v}function m(S){n=S,o="",s=0,i=16,d=0}function h(){let S=n;if(e.charCodeAt(n)===48)n++;else{n++;while(n<e.length&&Co(e.charCodeAt(n)))n++}if(n<e.length&&e.charCodeAt(n)===46)if(n++,n<e.length&&Co(e.charCodeAt(n))){n++;while(n<e.length&&Co(e.charCodeAt(n)))n++}else return d=3,e.substring(S,n);let I=n;if(n<e.length&&(e.charCodeAt(n)===69||e.charCodeAt(n)===101)){if(n++,n<e.length&&e.charCodeAt(n)===43||e.charCodeAt(n)===45)n++;if(n<e.length&&Co(e.charCodeAt(n))){n++;while(n<e.length&&Co(e.charCodeAt(n)))n++;I=n}else d=3}return e.substring(S,I)}function g(){let S="",I=n;while(!0){if(n>=r){S+=e.substring(I,n),d=2;break}let _=e.charCodeAt(n);if(_===34){S+=e.substring(I,n),n++;break}if(_===92){if(S+=e.substring(I,n),n++,n>=r){d=2;break}switch(e.charCodeAt(n++)){case 34:S+='"';break;case 92:S+="\\";break;case 47:S+="/";break;case 98:S+="\b";break;case 102:S+="\f";break;case 110:S+=`
|
|
326
|
+
`;break;case 114:S+="\r";break;case 116:S+="\t";break;case 117:let x=f(4,!0);if(x>=0)S+=String.fromCharCode(x);else d=4;break;default:d=5}I=n;continue}if(_>=0&&_<=31)if($i(_)){S+=e.substring(I,n),d=2;break}else d=6;n++}return S}function y(){if(o="",d=0,s=n,c=a,l=u,n>=r)return s=r,i=17;let S=e.charCodeAt(n);if(Am(S)){do n++,o+=String.fromCharCode(S),S=e.charCodeAt(n);while(Am(S));return i=15}if($i(S)){if(n++,o+=String.fromCharCode(S),S===13&&e.charCodeAt(n)===10)n++,o+=`
|
|
327
|
+
`;return a++,u=n,i=14}switch(S){case 123:return n++,i=1;case 125:return n++,i=2;case 91:return n++,i=3;case 93:return n++,i=4;case 58:return n++,i=6;case 44:return n++,i=5;case 34:return n++,o=g(),i=10;case 47:let I=n-1;if(e.charCodeAt(n+1)===47){n+=2;while(n<r){if($i(e.charCodeAt(n)))break;n++}return o=e.substring(I,n),i=12}if(e.charCodeAt(n+1)===42){n+=2;let _=r-1,v=!1;while(n<_){let x=e.charCodeAt(n);if(x===42&&e.charCodeAt(n+1)===47){n+=2,v=!0;break}if(n++,$i(x)){if(x===13&&e.charCodeAt(n)===10)n++;a++,u=n}}if(!v)n++,d=1;return o=e.substring(I,n),i=13}return o+=String.fromCharCode(S),n++,i=16;case 45:if(o+=String.fromCharCode(S),n++,n===r||!Co(e.charCodeAt(n)))return i=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return o+=h(),i=11;default:while(n<r&&b(S))n++,S=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(S),n++,i=16}}function b(S){if(Am(S)||$i(S))return!1;switch(S){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function T(){let S;do S=y();while(S>=12&&S<=15);return S}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 Am(e){return e===32||e===9}function $i(e){return e===10||e===13}function Co(e){return e>=48&&e<=57}var $$;(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"})($$||($$={}));var kt=Array(20).fill(0).map((e,t)=>" ".repeat(t));var Rm={" ":{"\n":Array(200).fill(0).map((e,t)=>`
|
|
328
328
|
`+" ".repeat(t)),"\r":Array(200).fill(0).map((e,t)=>"\r"+" ".repeat(t)),"\r\n":Array(200).fill(0).map((e,t)=>`\r
|
|
329
329
|
`+" ".repeat(t))},"\t":{"\n":Array(200).fill(0).map((e,t)=>`
|
|
330
330
|
`+"\t".repeat(t)),"\r":Array(200).fill(0).map((e,t)=>"\r"+"\t".repeat(t)),"\r\n":Array(200).fill(0).map((e,t)=>`\r
|
|
331
|
-
`+"\t".repeat(t))}},
|
|
331
|
+
`+"\t".repeat(t))}},T$=[`
|
|
332
332
|
`,"\r",`\r
|
|
333
|
-
`];function
|
|
333
|
+
`];function Cm(e,t,r){let n,o,s,i,a;if(t){i=t.offset,a=i+t.length,s=i;while(s>0&&!Ei(e,s-1))s--;let _=a;while(_<e.length&&!Ei(e,_))_++;o=e.substring(s,_),n=KU(o,r)}else o=e,n=0,s=0,i=0,a=e.length;let c=HU(r,e),u=T$.includes(c),l=0,d=0,f;if(r.insertSpaces)f=kt[r.tabSize||4]??zo(kt[1],r.tabSize||4);else f="\t";let m=f==="\t"?"\t":" ",h=Ti(o,!1),g=!1;function y(){if(l>1)return zo(c,l)+zo(f,n+d);let _=f.length*(n+d);if(!u||_>Rm[m][c].length)return c+zo(f,n+d);if(_<=0)return c;return Rm[m][c][_]}function b(){let _=h.scan();l=0;while(_===15||_===14){if(_===14&&r.keepLines)l+=1;else if(_===14)l=1;_=h.scan()}return g=_===16||h.getTokenError()!==0,_}let T=[];function S(_,v,x){if(!g&&(!t||v<a&&x>i)&&e.substring(v,x)!==_)T.push({offset:v,length:x-v,content:_})}let I=b();if(r.keepLines&&l>0)S(zo(c,l),0,0);if(I!==17){let _=h.getTokenOffset()+s,v=f.length*n<20&&r.insertSpaces?kt[f.length*n]:zo(f,n);S(v,s,_)}while(I!==17){let _=h.getTokenOffset()+h.getTokenLength()+s,v=b(),x="",A=!1;while(l===0&&(v===12||v===13)){let Y=h.getTokenOffset()+s;S(kt[1],_,Y),_=h.getTokenOffset()+h.getTokenLength()+s,A=v===12,x=A?y():"",v=b()}if(v===2){if(I!==1)d--;if(r.keepLines&&l>0||!r.keepLines&&I!==1)x=y();else if(r.keepLines)x=kt[1]}else if(v===4){if(I!==3)d--;if(r.keepLines&&l>0||!r.keepLines&&I!==3)x=y();else if(r.keepLines)x=kt[1]}else{switch(I){case 3:case 1:if(d++,r.keepLines&&l>0||!r.keepLines)x=y();else x=kt[1];break;case 5:if(r.keepLines&&l>0||!r.keepLines)x=y();else x=kt[1];break;case 12:x=y();break;case 13:if(l>0)x=y();else if(!A)x=kt[1];break;case 6:if(r.keepLines&&l>0)x=y();else if(!A)x=kt[1];break;case 10:if(r.keepLines&&l>0)x=y();else if(v===6&&!A)x="";break;case 7:case 8:case 9:case 11:case 2:case 4:if(r.keepLines&&l>0)x=y();else if((v===12||v===13)&&!A)x=kt[1];else if(v!==5&&v!==17)g=!0;break;case 16:g=!0;break}if(l>0&&(v===12||v===13))x=y()}if(v===17)if(r.keepLines&&l>0)x=y();else x=r.insertFinalNewline?c:"";let j=h.getTokenOffset()+s;S(x,_,j),I=v}return T}function zo(e,t){let r="";for(let n=0;n<t;n++)r+=e;return r}function KU(e,t){let r=0,n=0,o=t.tabSize||4;while(r<e.length){let s=e.charAt(r);if(s===kt[1])n++;else if(s==="\t")n+=o;else break;r++}return Math.floor(n/o)}function HU(e,t){for(let r=0;r<t.length;r++){let n=t.charAt(r);if(n==="\r"){if(r+1<t.length&&t.charAt(r+1)===`
|
|
334
334
|
`)return`\r
|
|
335
335
|
`;return"\r"}else if(n===`
|
|
336
336
|
`)return`
|
|
337
337
|
`}return e&&e.eol||`
|
|
338
|
-
`}function
|
|
339
|
-
`.indexOf(e.charAt(t))!==-1}var _i;(function(e){e.DEFAULT={allowTrailingComma:!1}})(_i||(_i={}));function X0(e,t=[],r=_i.DEFAULT){let n=null,o=[],s=[];function i(c){if(Array.isArray(o))o.push(c);else if(n!==null)o[n]=c}return ym(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 gm(e,t=[],r=_i.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}ym(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:VF(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 Yc(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 ym(e,t,r=_i.DEFAULT){let n=bi(e,!1),o=[],s=0;function i(W){return W?()=>s===0&&W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function a(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function c(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice()):()=>!0}function u(W){return W?()=>{if(s>0)s++;else if(W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice())===!1)s=1}:()=>!0}function l(W){return W?()=>{if(s>0)s--;if(s===0)W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter())}:()=>!0}let d=u(t.onObjectBegin),f=c(t.onObjectProperty),m=l(t.onObjectEnd),h=u(t.onArrayBegin),g=l(t.onArrayEnd),y=c(t.onLiteralValue),w=a(t.onSeparator),T=i(t.onComment),S=a(t.onError),I=r&&r.disallowComments,_=r&&r.allowTrailingComma;function v(){while(!0){let W=n.scan();switch(n.getTokenError()){case 4:k(14);break;case 5:k(15);break;case 3:k(13);break;case 1:if(!I)k(11);break;case 2:k(12);break;case 6:k(16);break}switch(W){case 12:case 13:if(I)k(10);else T();break;case 16:k(1);break;case 15:case 14:break;default:return W}}}function k(W,oe=[],$t=[]){if(S(W),oe.length+$t.length>0){let it=n.getToken();while(it!==17){if(oe.indexOf(it)!==-1){v();break}else if($t.indexOf(it)!==-1)break;it=v()}}}function A(W){let oe=n.getTokenValue();if(W)y(oe);else f(oe),o.push(oe);return v(),!0}function D(){switch(n.getToken()){case 11:let W=n.getTokenValue(),oe=Number(W);if(isNaN(oe))k(2),oe=0;y(oe);break;case 7:y(null);break;case 8:y(!0);break;case 9:y(!1);break;default:return!1}return v(),!0}function G(){if(n.getToken()!==10)return k(3,[],[2,5]),!1;if(A(!1),n.getToken()===6){if(w(":"),v(),!De())k(4,[],[2,5])}else k(5,[],[2,5]);return o.pop(),!0}function ie(){d(),v();let W=!1;while(n.getToken()!==2&&n.getToken()!==17){if(n.getToken()===5){if(!W)k(4,[],[]);if(w(","),v(),n.getToken()===2&&_)break}else if(W)k(6,[],[]);if(!G())k(4,[],[2,5]);W=!0}if(m(),n.getToken()!==2)k(7,[2],[]);else v();return!0}function ae(){h(),v();let W=!0,oe=!1;while(n.getToken()!==4&&n.getToken()!==17){if(n.getToken()===5){if(!oe)k(4,[],[]);if(w(","),v(),n.getToken()===4&&_)break}else if(oe)k(6,[],[]);if(W)o.push(0),W=!1;else o[o.length-1]++;if(!De())k(4,[],[4,5]);oe=!0}if(g(),!W)o.pop();if(n.getToken()!==4)k(8,[4],[]);else v();return!0}function De(){switch(n.getToken()){case 3:return ae();case 1:return ie();case 10:return A(!0);default:return D()}}if(v(),n.getToken()===17){if(r.allowEmptyContent)return!0;return k(4,[],[]),!1}if(!De())return k(4,[],[]),!1;if(n.getToken()!==17)k(9,[],[]);return!0}function VF(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 Q0(e,t,r,n){let o=t.slice(),i=gm(e,[]),a=void 0,c=void 0;while(o.length>0)if(c=o.pop(),a=Yc(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 Ln(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=Yc(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 Ln(e,{offset:d,length:f-d,content:""},n)}else return Ln(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 Ln(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 Ln(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 Ln(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 Ln(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 Ln(e,t,r){if(!r.formattingOptions)return[t];let n=Xc(e,t),o=t.offset,s=t.offset+t.content.length;if(t.length===0||t.content.length===0){while(o>0&&!wi(n,o-1))o--;while(s<n.length&&!wi(n,s))s++}let i=hm(n,{offset:o,length:s-o},{...r.formattingOptions,keepLines:!1});for(let c=i.length-1;c>=0;c--){let u=i[c];n=Xc(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 Xc(e,t){return e.substring(0,t.offset)+t.content+e.substring(t.offset+t.length)}var e$;(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"})(e$||(e$={}));var t$;(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"})(t$||(t$={}));var n$=X0;var r$;(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"})(r$||(r$={}));function bm(e,t,r,n){return Q0(e,t,r,n)}function wm(e,t){let r=t.slice(0).sort((o,s)=>{let i=o.offset-s.offset;if(i===0)return o.length-s.length;return i}),n=e.length;for(let o=r.length-1;o>=0;o--){let s=r[o];if(s.offset+s.length<=n)e=Xc(e,s);else throw Error("Overlapping edit");n=s.offset}return e}var o$=J(p(),Sr()),XF=J(p(),Sr()),s$={insertSpaces:!0,tabSize:2,eol:`
|
|
340
|
-
`};function
|
|
341
|
-
`;for(let[y,
|
|
338
|
+
`}function Ei(e,t){return`\r
|
|
339
|
+
`.indexOf(e.charAt(t))!==-1}var Pi;(function(e){e.DEFAULT={allowTrailingComma:!1}})(Pi||(Pi={}));function E$(e,t=[],r=Pi.DEFAULT){let n=null,o=[],s=[];function i(c){if(Array.isArray(o))o.push(c);else if(n!==null)o[n]=c}return Nm(e,{onObjectBegin:()=>{let c={};i(c),s.push(o),o=c,n=null},onObjectProperty:(c)=>{n=c},onObjectEnd:()=>{o=s.pop()},onArrayBegin:()=>{let c=[];i(c),s.push(o),o=c,n=null},onArrayEnd:()=>{o=s.pop()},onLiteralValue:i,onError:(c,u,l)=>{t.push({error:c,offset:u,length:l})}},r),o[0]}function zm(e,t=[],r=Pi.DEFAULT){let n={type:"array",offset:-1,length:-1,children:[],parent:void 0};function o(c){if(n.type==="property")n.length=c-n.offset,n=n.parent}function s(c){return n.children.push(c),c}Nm(e,{onObjectBegin:(c)=>{n=s({type:"object",offset:c,length:-1,parent:n,children:[]})},onObjectProperty:(c,u,l)=>{n=s({type:"property",offset:u,length:-1,parent:n,children:[]}),n.children.push({type:"string",value:c,offset:u,length:l,parent:n})},onObjectEnd:(c,u)=>{o(c+u),n.length=c+u-n.offset,n=n.parent,o(c+u)},onArrayBegin:(c,u)=>{n=s({type:"array",offset:c,length:-1,parent:n,children:[]})},onArrayEnd:(c,u)=>{n.length=c+u-n.offset,n=n.parent,o(c+u)},onLiteralValue:(c,u,l)=>{s({type:JU(c),offset:u,length:l,parent:n,value:c}),o(u+l)},onSeparator:(c,u,l)=>{if(n.type==="property"){if(c===":")n.colonOffset=u;else if(c===",")o(u)}},onError:(c,u,l)=>{t.push({error:c,offset:u,length:l})}},r);let a=n.children[0];if(a)delete a.parent;return a}function au(e,t){if(!e)return;let r=e;for(let n of t)if(typeof n==="string"){if(r.type!=="object"||!Array.isArray(r.children))return;let o=!1;for(let s of r.children)if(Array.isArray(s.children)&&s.children[0].value===n&&s.children.length===2){r=s.children[1],o=!0;break}if(!o)return}else{let o=n;if(r.type!=="array"||o<0||!Array.isArray(r.children)||o>=r.children.length)return;r=r.children[o]}return r}function Nm(e,t,r=Pi.DEFAULT){let n=Ti(e,!1),o=[],s=0;function i(W){return W?()=>s===0&&W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function a(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function c(W){return W?(oe)=>s===0&&W(oe,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice()):()=>!0}function u(W){return W?()=>{if(s>0)s++;else if(W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>o.slice())===!1)s=1}:()=>!0}function l(W){return W?()=>{if(s>0)s--;if(s===0)W(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter())}:()=>!0}let d=u(t.onObjectBegin),f=c(t.onObjectProperty),m=l(t.onObjectEnd),h=u(t.onArrayBegin),g=l(t.onArrayEnd),y=c(t.onLiteralValue),b=a(t.onSeparator),T=i(t.onComment),S=a(t.onError),I=r&&r.disallowComments,_=r&&r.allowTrailingComma;function v(){while(!0){let W=n.scan();switch(n.getTokenError()){case 4:x(14);break;case 5:x(15);break;case 3:x(13);break;case 1:if(!I)x(11);break;case 2:x(12);break;case 6:x(16);break}switch(W){case 12:case 13:if(I)x(10);else T();break;case 16:x(1);break;case 15:case 14:break;default:return W}}}function x(W,oe=[],Et=[]){if(S(W),oe.length+Et.length>0){let it=n.getToken();while(it!==17){if(oe.indexOf(it)!==-1){v();break}else if(Et.indexOf(it)!==-1)break;it=v()}}}function A(W){let oe=n.getTokenValue();if(W)y(oe);else f(oe),o.push(oe);return v(),!0}function j(){switch(n.getToken()){case 11:let W=n.getTokenValue(),oe=Number(W);if(isNaN(oe))x(2),oe=0;y(oe);break;case 7:y(null);break;case 8:y(!0);break;case 9:y(!1);break;default:return!1}return v(),!0}function Y(){if(n.getToken()!==10)return x(3,[],[2,5]),!1;if(A(!1),n.getToken()===6){if(b(":"),v(),!Me())x(4,[],[2,5])}else x(5,[],[2,5]);return o.pop(),!0}function ie(){d(),v();let W=!1;while(n.getToken()!==2&&n.getToken()!==17){if(n.getToken()===5){if(!W)x(4,[],[]);if(b(","),v(),n.getToken()===2&&_)break}else if(W)x(6,[],[]);if(!Y())x(4,[],[2,5]);W=!0}if(m(),n.getToken()!==2)x(7,[2],[]);else v();return!0}function ae(){h(),v();let W=!0,oe=!1;while(n.getToken()!==4&&n.getToken()!==17){if(n.getToken()===5){if(!oe)x(4,[],[]);if(b(","),v(),n.getToken()===4&&_)break}else if(oe)x(6,[],[]);if(W)o.push(0),W=!1;else o[o.length-1]++;if(!Me())x(4,[],[4,5]);oe=!0}if(g(),!W)o.pop();if(n.getToken()!==4)x(8,[4],[]);else v();return!0}function Me(){switch(n.getToken()){case 3:return ae();case 1:return ie();case 10:return A(!0);default:return j()}}if(v(),n.getToken()===17){if(r.allowEmptyContent)return!0;return x(4,[],[]),!1}if(!Me())return x(4,[],[]),!1;if(n.getToken()!==17)x(9,[],[]);return!0}function JU(e){switch(typeof e){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(!e)return"null";else if(Array.isArray(e))return"array";return"object"}default:return"null"}}function P$(e,t,r,n){let o=t.slice(),i=zm(e,[]),a=void 0,c=void 0;while(o.length>0)if(c=o.pop(),a=au(i,o),a===void 0&&r!==void 0)if(typeof c==="string")r={[c]:r};else r=[r];else break;if(!a){if(r===void 0)throw Error("Can not delete in empty document");return Fn(e,{offset:i?i.offset:0,length:i?i.length:0,content:JSON.stringify(r)},n)}else if(a.type==="object"&&typeof c==="string"&&Array.isArray(a.children)){let u=au(a,[c]);if(u!==void 0)if(r===void 0){if(!u.parent)throw Error("Malformed AST");let l=a.children.indexOf(u.parent),d,f=u.parent.offset+u.parent.length;if(l>0){let m=a.children[l-1];d=m.offset+m.length}else if(d=a.offset+1,a.children.length>1)f=a.children[1].offset;return Fn(e,{offset:d,length:f-d,content:""},n)}else return Fn(e,{offset:u.offset,length:u.length,content:JSON.stringify(r)},n);else{if(r===void 0)return[];let l=`${JSON.stringify(c)}: ${JSON.stringify(r)}`,d=n.getInsertionIndex?n.getInsertionIndex(a.children.map((m)=>m.children[0].value)):a.children.length,f;if(d>0){let m=a.children[d-1];f={offset:m.offset+m.length,length:0,content:","+l}}else if(a.children.length===0)f={offset:a.offset+1,length:0,content:l};else f={offset:a.offset+1,length:0,content:l+","};return Fn(e,f,n)}}else if(a.type==="array"&&typeof c==="number"&&Array.isArray(a.children)){let u=c;if(u===-1){let l=`${JSON.stringify(r)}`,d;if(a.children.length===0)d={offset:a.offset+1,length:0,content:l};else{let f=a.children[a.children.length-1];d={offset:f.offset+f.length,length:0,content:","+l}}return Fn(e,d,n)}else if(r===void 0&&a.children.length>=0){let l=c,d=a.children[l],f;if(a.children.length===1)f={offset:a.offset+1,length:a.length-2,content:""};else if(a.children.length-1===l){let m=a.children[l-1],h=m.offset+m.length,g=a.offset+a.length;f={offset:h,length:g-2-h,content:""}}else f={offset:d.offset,length:a.children[l+1].offset-d.offset,content:""};return Fn(e,f,n)}else if(r!==void 0){let l,d=`${JSON.stringify(r)}`;if(!n.isArrayInsertion&&a.children.length>c){let f=a.children[c];l={offset:f.offset,length:f.length,content:d}}else if(a.children.length===0||c===0)l={offset:a.offset+1,length:0,content:a.children.length===0?d:d+","};else{let f=c>a.children.length?a.children.length:c,m=a.children[f-1];l={offset:m.offset+m.length,length:0,content:","+d}}return Fn(e,l,n)}else throw Error(`Can not ${r===void 0?"remove":n.isArrayInsertion?"insert":"modify"} Array index ${u} as length is not sufficient`)}else throw Error(`Can not add ${typeof c!=="number"?"index":"property"} to parent of type ${a.type}`)}function Fn(e,t,r){if(!r.formattingOptions)return[t];let n=cu(e,t),o=t.offset,s=t.offset+t.content.length;if(t.length===0||t.content.length===0){while(o>0&&!Ei(n,o-1))o--;while(s<n.length&&!Ei(n,s))s++}let i=Cm(n,{offset:o,length:s-o},{...r.formattingOptions,keepLines:!1});for(let c=i.length-1;c>=0;c--){let u=i[c];n=cu(n,u),o=Math.min(o,u.offset),s=Math.max(s,u.offset+u.length),s+=u.content.length-u.length}let a=e.length-(n.length-s)-o;return[{offset:o,length:a,content:n.substring(o,s)}]}function cu(e,t){return e.substring(0,t.offset)+t.content+e.substring(t.offset+t.length)}var O$;(function(e){e[e.None=0]="None",e[e.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=2]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",e[e.InvalidUnicode=4]="InvalidUnicode",e[e.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",e[e.InvalidCharacter=6]="InvalidCharacter"})(O$||(O$={}));var I$;(function(e){e[e.OpenBraceToken=1]="OpenBraceToken",e[e.CloseBraceToken=2]="CloseBraceToken",e[e.OpenBracketToken=3]="OpenBracketToken",e[e.CloseBracketToken=4]="CloseBracketToken",e[e.CommaToken=5]="CommaToken",e[e.ColonToken=6]="ColonToken",e[e.NullKeyword=7]="NullKeyword",e[e.TrueKeyword=8]="TrueKeyword",e[e.FalseKeyword=9]="FalseKeyword",e[e.StringLiteral=10]="StringLiteral",e[e.NumericLiteral=11]="NumericLiteral",e[e.LineCommentTrivia=12]="LineCommentTrivia",e[e.BlockCommentTrivia=13]="BlockCommentTrivia",e[e.LineBreakTrivia=14]="LineBreakTrivia",e[e.Trivia=15]="Trivia",e[e.Unknown=16]="Unknown",e[e.EOF=17]="EOF"})(I$||(I$={}));var R$=E$;var A$;(function(e){e[e.InvalidSymbol=1]="InvalidSymbol",e[e.InvalidNumberFormat=2]="InvalidNumberFormat",e[e.PropertyNameExpected=3]="PropertyNameExpected",e[e.ValueExpected=4]="ValueExpected",e[e.ColonExpected=5]="ColonExpected",e[e.CommaExpected=6]="CommaExpected",e[e.CloseBraceExpected=7]="CloseBraceExpected",e[e.CloseBracketExpected=8]="CloseBracketExpected",e[e.EndOfFileExpected=9]="EndOfFileExpected",e[e.InvalidCommentToken=10]="InvalidCommentToken",e[e.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=12]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",e[e.InvalidUnicode=14]="InvalidUnicode",e[e.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",e[e.InvalidCharacter=16]="InvalidCharacter"})(A$||(A$={}));function Lm(e,t,r,n){return P$(e,t,r,n)}function jm(e,t){let r=t.slice(0).sort((o,s)=>{let i=o.offset-s.offset;if(i===0)return o.length-s.length;return i}),n=e.length;for(let o=r.length-1;o>=0;o--){let s=r[o];if(s.offset+s.length<=n)e=cu(e,s);else throw Error("Overlapping edit");n=s.offset}return e}var C$=K(p(),At()),oW=K(p(),At()),z$={insertSpaces:!0,tabSize:2,eol:`
|
|
340
|
+
`};function Dm(e){let t=[],r=R$(e,t,{allowTrailingComma:!0,disallowComments:!1});if(t.length>0)throw Error("invalid JSON");return r}function sW(e,t){if(e===null||e.trim()==="")return{};try{return oW.parse(Dm(e))}catch{throw Error(`${t} is not a JSON object. Left it unchanged.`)}}function iW(e,t,r,n,o,s={}){let i=sW(e,t),a=C$.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=C$.optional().safeParse(c[n]),l=u.success?u.data:void 0,d={...l??{},...o},f=Object.entries(s.defaults??{}).filter(([y])=>!(y in i));if(l&&f.length===0&&JSON.stringify(l)===JSON.stringify(d))return{outcome:"unchanged",text:e??""};let m=e&&e.trim()!==""?e:`{}
|
|
341
|
+
`;for(let[y,b]of f)m=jm(m,Lm(m,[y],b,{formattingOptions:z$}));let h=a.data?[r,n]:[r],g=a.data?d:{[n]:d};return m=jm(m,Lm(m,h,g,{formattingOptions:z$})),{outcome:l?"updated":"added",text:m.endsWith(`
|
|
342
342
|
`)?m:`${m}
|
|
343
|
-
`}}function vi(e){try{return HF(e,"utf8")}catch{return null}}function vm(e,t){KF(YF(e),{recursive:!0});let r=`${e}.tripwire-${process.pid}.tmp`;JF(r,t),GF(r,e)}function Ve(e,t,r,n,o={}){let s=eU(vi(e),e,t,r,n,o);if(s.outcome!=="unchanged")vm(e,s.text);return s.outcome}var Sm=J(p(),ne());function fe(e,t,r,n=["url"]){try{let o=Sm.parse(_m(tU(e,"utf8"))),s=Sm.safeParse(o[t]);if(!s.success||!(r in s.data))return null;let i=Sm.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 lt(e,t){let r=t.map((n)=>/^[\w@%+=:,./-]+$/.test(n)?n:`'${n.replaceAll("'","'\\''")}'`);return[e,...r].join(" ")}async function Pt(e,t,r){let n=await e.run(t,r);if(!n.ok)throw Error(n.stderr||n.stdout||`${lt(t,r)} failed`)}async function Oo(e,t,r,n){let o=await e.run(t,r);return n(o.stdout)}function Ge(e,t){return t.some((r)=>e.exists(r))}function rr(e,t){if(e.platform!=="darwin")return[];return e.macAppDirs.flatMap((r)=>t.map((n)=>To(r,`${n}.app`)))}function Qc(e,t){for(let r of t){let n=e.which(r);if(n)return n}return null}var rU=[".vscode",".vscode-insiders",".cursor",".windsurf"];function eu(e,t){let r=`${t.toLowerCase()}-`;return rU.some((n)=>e.list(To(e.home,n,"extensions")).some((o)=>o.toLowerCase().startsWith(r)))}function Si(e,t,r,n){let o=r.find((s)=>e.exists(To(t,s)));return To(t,o??n)}function $r(e){return e.env.XDG_CONFIG_HOME||To(e.home,".config")}function Ze(e){return To(e.home,".agents","skills")}async function Vr(e,t){let r=lt(t.display,t.addArgs);if(t.current===t.url)return{target:r,outcome:"unchanged"};if(t.current!==null&&t.removeArgs)await Pt(e,t.binary,t.removeArgs);return await Pt(e,t.binary,t.addArgs),{target:r,outcome:t.current===null?"added":"updated"}}function oU(e){return Si(e,nU(e.home,".config","amp"),["settings.json","settings.jsonc"],"settings.json")}function i$(e){return fe(oU(e),"amp.mcpServers",q)}function a$(e){return{id:"amp",name:"Amp",signInHint:"the browser sign-in Amp opens when it starts",detect:()=>e.which("amp")!==null,hasServer:async()=>i$(e)!==null,addServer:(t)=>Vr(e,{binary:e.which("amp")??"amp",display:"amp",addArgs:["mcp","add",q,t],removeArgs:["mcp","remove",q],current:i$(e),url:t}),skillsDirs:()=>[Ze(e)],login:()=>null}}import{join as xm}from"node:path";function km(e){return xm(e.home,".gemini","config","mcp_config.json")}function c$(e){return Ge(e,rr(e,["Antigravity"]))}function u$(e){return{id:"antigravity",name:"Google Antigravity",signInHint:"/mcp inside agy, or Settings > Customizations in Antigravity",detect:()=>e.which("agy")!==null||c$(e),hasServer:async()=>fe(km(e),"mcpServers",q,["serverUrl","url"])!==null,addServer:async(t)=>({target:km(e),outcome:Ve(km(e),"mcpServers",q,{serverUrl:t})}),skillsDirs:()=>{let t=[];if(e.which("agy")!==null)t.push(xm(e.home,".gemini","antigravity-cli","skills"));if(c$(e))t.push(xm(e.home,".gemini","config","skills"));return t},login:()=>null}}import{join as tu}from"node:path";function sU(e){return e.env.CLAUDE_CONFIG_DIR||tu(e.home,".claude")}function l$(e){return e.env.CLAUDE_CONFIG_DIR?tu(e.env.CLAUDE_CONFIG_DIR,".claude.json"):tu(e.home,".claude.json")}function iU(e){let t=/^\s*Status:\s*(.*)$/m.exec(e)?.[1]??"";if(/\bConnected\b/.test(t))return"signed-in";if(/needs authentication/i.test(t))return"signed-out";return"unknown"}function d$(e){let t=()=>e.which("claude")??"claude",r=(n)=>["mcp","add","--transport","http",q,n,"--scope","user"];return{id:"claude",name:"Claude Code",signInHint:"claude mcp login tripwire, or /mcp inside Claude Code",detect:()=>e.which("claude")!==null,hasServer:async()=>fe(l$(e),"mcpServers",q)!==null,addServer:async(n)=>{let o=lt("claude",r(n)),s=fe(l$(e),"mcpServers",q);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Pt(e,t(),["mcp","remove",q,"--scope","user"]);return await Pt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[tu(sU(e),"skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Oo(e,t(),["mcp","get",q],iU)})}}import{join as $m}from"node:path";function aU(e){return e.env.CLINE_DIR||$m(e.home,".cline")}function ru(e){return e.env.CLINE_MCP_SETTINGS_PATH||$m(aU(e),"data","settings","cline_mcp_settings.json")}function p$(e){let t=()=>fe(ru(e),"mcpServers",q);return{id:"cline",name:"Cline",signInHint:"Authorize OAuth in cline mcp, or the MCP Servers panel in Cline",detect:()=>e.which("cline")!==null||eu(e,"saoudrizwan.claude-dev"),hasServer:async()=>t()!==null,addServer:async(r)=>{let n=t();if(n===r)return{target:ru(e),outcome:"unchanged"};let o=e.which("cline");if(o&&n===null){let s=["mcp","add",q,r,"--transport","http","--yes"];return await Pt(e,o,s),{target:lt("cline",s),outcome:"added"}}return{target:ru(e),outcome:Ve(ru(e),"mcpServers",q,{type:"streamableHttp",url:r,disabled:!1})}},skillsDirs:()=>[$m(e.home,".cline","skills")],login:()=>null}}import{readFileSync as cU}from"node:fs";import{join as Em}from"node:path";function uU(e){return e.env.CODEX_HOME||Em(e.home,".codex")}function lU(e,t){let r=e.split(/\r?\n/),n=new RegExp(`^\\s*\\[\\s*mcp_servers\\.(?:"${t}"|${t})\\s*\\]\\s*$`),o=r.findIndex((s)=>n.test(s));if(o===-1)return null;for(let s of r.slice(o+1)){if(/^\s*\[/.test(s))break;let i=s.match(/^\s*url\s*=\s*"([^"]*)"/);if(i?.[1]!==void 0)return i[1]}return""}var dU=x(b({name:p(),auth_status:p().nullish()}));function pU(e){try{let t=dU.safeParse(JSON.parse(e)),r=t.success?t.data.find((n)=>n.name===q)?.auth_status:void 0;if(r==="o_auth"||r==="bearer_token")return"signed-in";return r==="not_logged_in"?"signed-out":"unknown"}catch{return"unknown"}}function f$(e){try{return lU(cU(Em(uU(e),"config.toml"),"utf8"),q)}catch{return null}}function m$(e){let t=()=>e.which("codex")??"codex",r=(n)=>["mcp","add",q,"--url",n];return{id:"codex",name:"Codex",signInHint:"codex mcp login tripwire",detect:()=>e.which("codex")!==null,hasServer:async()=>f$(e)!==null,addServer:async(n)=>{let o=lt("codex",r(n)),s=f$(e);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Pt(e,t(),["mcp","remove",q]);return await Pt(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[Em(e.home,".agents","skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Oo(e,t(),["mcp","list","--json"],pU)})}}import{join as h$}from"node:path";function fU(e){return h$(e.env.COPILOT_HOME||h$(e.home,".copilot"),"mcp-config.json")}function g$(e){return fe(fU(e),"mcpServers",q)}function y$(e){return{id:"copilot",name:"GitHub Copilot CLI",signInHint:"/mcp auth tripwire inside Copilot CLI",detect:()=>e.which("copilot")!==null,hasServer:async()=>g$(e)!==null,addServer:(t)=>Vr(e,{binary:e.which("copilot")??"copilot",display:"copilot",addArgs:["mcp","add","--transport","http",q,t],removeArgs:["mcp","remove",q],current:g$(e),url:t}),skillsDirs:()=>[Ze(e)],login:()=>null}}import{join as nu}from"node:path";function mU(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>nu(t,"Cursor.app"));if(e.platform==="win32")return[nu(e.home,"AppData","Local","Programs","cursor","Cursor.exe")];return[]}function Tm(e){return nu(e.home,".cursor","mcp.json")}function b$(e){return{id:"cursor",name:"Cursor",signInHint:"the MCP settings in Cursor",detect:()=>e.which("cursor")!==null||Ge(e,mU(e)),hasServer:async()=>fe(Tm(e),"mcpServers",q)!==null,addServer:async(t)=>({target:Tm(e),outcome:Ve(Tm(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[nu(e.home,".agents","skills")],login:()=>null}}import{join as It}from"node:path";var w$="mcp_config.json";function hU(e){if(e.platform==="win32")return It(e.env.APPDATA||It(e.home,"AppData","Roaming"),"devin");return It(e.env.XDG_CONFIG_HOME||It(e.home,".config"),"devin")}function S$(e){return It(e.home,".codeium","windsurf")}function k$(e,t){if(e.platform==="darwin")return e.macAppDirs.map((r)=>It(r,`${t}.app`));if(e.platform==="win32")return[It(e.env.LOCALAPPDATA||It(e.home,"AppData","Local"),"Programs",t,`${t}.exe`)];return[]}function Om(e){return e.which("devin")!==null||Ge(e,k$(e,"Devin"))}function ki(e){return e.which("windsurf")!==null||Ge(e,k$(e,"Windsurf"))}function _$(e){let t=[];if(Om(e)||!ki(e))t.push(It(hU(e),w$));if(ki(e))t.push(It(S$(e),w$));return t}var v$={unchanged:0,updated:1,added:2};function x$(e){return{id:"devin",name:"Devin Desktop (Windsurf)",signInHint:"the MCP settings in Devin Desktop",detect:()=>Om(e)||ki(e),hasServer:async()=>_$(e).some((t)=>fe(t,"mcpServers",q)!==null),addServer:async(t)=>{let r=_$(e),o=r.map((s)=>Ve(s,"mcpServers",q,{serverUrl:t})).reduce((s,i)=>v$[i]>v$[s]?i:s,"unchanged");return{target:r.join(", "),outcome:o}},skillsDirs:()=>{let t=[];if(Om(e)||!ki(e))t.push(It(e.home,".agents","skills"));if(ki(e))t.push(It(S$(e),"skills"));return t},login:()=>null}}import{join as gU}from"node:path";function $$(e){return fe(gU(e.home,".factory","mcp.json"),"mcpServers",q)}function E$(e){return{id:"droid",name:"Factory Droid",signInHint:"/mcp inside Droid",detect:()=>e.which("droid")!==null,hasServer:async()=>$$(e)!==null,addServer:(t)=>Vr(e,{binary:e.which("droid")??"droid",display:"droid",addArgs:["mcp","add",q,t,"--type","http"],removeArgs:["mcp","remove",q],current:$$(e),url:t}),skillsDirs:()=>[Ze(e)],login:()=>null}}import{join as yU}from"node:path";function bU(e){return yU(e.env.GEMINI_CLI_HOME||e.home,".gemini","settings.json")}function T$(e){return fe(bU(e),"mcpServers",q,["httpUrl","url"])}function O$(e){return{id:"gemini",name:"Gemini CLI",signInHint:"/mcp auth tripwire inside Gemini CLI",detect:()=>e.which("gemini")!==null,hasServer:async()=>T$(e)!==null,addServer:(t)=>Vr(e,{binary:e.which("gemini")??"gemini",display:"gemini",addArgs:["mcp","add","--transport","http","--scope","user",q,t],removeArgs:["mcp","remove","--scope","user",q],current:T$(e),url:t}),skillsDirs:()=>[Ze(e)],login:()=>null}}import{join as Gu}from"node:path";var IH=Th(),AH=qi(),RH=dh(),Mh=Fi(),CH=Ei(),Qr=ce(),zH=Hr(),NH=ze(),LH=Jr(),DH=Yr(),ame=Uu(),jH=Lh(),MH=Dh(),qH=jh(),Bu=LT(),DT=xi();var FH=IH.Composer,UH=AH.Document,WH=RH.Schema,{YAMLError:VH,YAMLParseError:ZH,YAMLWarning:BH}=Mh,KH=CH.Alias,{isAlias:HH,isCollection:GH,isDocument:JH,isMap:Ku,isNode:YH,isPair:XH,isScalar:QH,isSeq:eG}=Qr,tG=zH.Pair,rG=NH.Scalar,nG=LH.YAMLMap,oG=DH.YAMLSeq;var sG=jH.Lexer,iG=MH.LineCounter,aG=qH.Parser,{parse:cG,parseAllDocuments:uG,parseDocument:Hu,stringify:lG}=Bu,{visit:dG,visitAsync:pG}=DT;var fG=J(p(),Sr());function qh(e,t,r){if(e===null)return null;let n=Hu(e);if(n.errors.length>0)return null;let o=J(p(),ne()).nullable().safeParse(n.toJS()),s=J(p(),ne()).safeParse(o.success?o.data?.[t]:void 0);if(!(s.success&&(r in s.data)))return null;let i=fG.safeParse(s.data[r]);return i.success?i.data:{}}function mG(e,t,r,n,o){let s=Hu(e??"");if(s.errors.length>0||!(s.contents===null||Ku(s.contents)))throw Error(`${t} is not a YAML mapping. Left it unchanged.`);let i=s.get(r);if(i!==void 0&&i!==null&&!Ku(i))throw Error(`${t} has a "${r}" value that is not a mapping. Left it unchanged.`);let a=qh(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 jT(e,t,r,n){let o=mG(vi(e),e,t,r,n);if(o.outcome!=="unchanged")vm(e,o.text);return o.outcome}var MT="extensions";function Fh(e){let t=e.env.GOOSE_PATH_ROOT;if(t)return Gu(t,"config","config.yaml");if(e.platform==="win32")return Gu(e.env.APPDATA||Gu(e.home,"AppData","Roaming"),"Block","goose","config","config.yaml");return Gu($r(e),"goose","config.yaml")}function qT(e){return{id:"goose",name:"Goose",signInHint:"the browser sign-in Goose opens on first use",detect:()=>e.which("goose")!==null||Ge(e,rr(e,["Goose"])),hasServer:async()=>qh(vi(Fh(e)),MT,q)!==null,addServer:async(t)=>({target:Fh(e),outcome:jT(Fh(e),MT,q,{type:"streamable_http",name:q,enabled:!0,uri:t,headers:{},env_keys:[],envs:{},timeout:300})}),skillsDirs:()=>[Ze(e)],login:()=>null}}function FT(e){let t=()=>e.which("grok")??"grok",r=(o)=>["mcp","add","--transport","http",q,o],n=async()=>{let o=await e.run(t(),["mcp","list"]);return o.ok&&new RegExp(`\\b${q}\\b`).test(o.stdout)};return{id:"grok",name:"Grok",signInHint:"/mcps inside Grok",detect:()=>e.which("grok")!==null,hasServer:n,addServer:async(o)=>{let s=lt("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:()=>[Ze(e)],login:()=>null}}import{join as UT}from"node:path";function Uh(e){return UT(e.home,".kiro","settings","mcp.json")}function WT(e){return{id:"kiro",name:"Kiro",signInHint:"the browser sign-in Kiro opens on first use, or /mcp auth",detect:()=>Qc(e,["kiro-cli","kiro"])!==null||Ge(e,rr(e,["Kiro"])),hasServer:async()=>fe(Uh(e),"mcpServers",q)!==null,addServer:async(t)=>({target:Uh(e),outcome:Ve(Uh(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[UT(e.home,".kiro","skills")],login:()=>null}}import{join as hG}from"node:path";function Wh(e){return hG($r(e),"muse","settings.json")}function VT(e){return{id:"muse",name:"Muse Code",signInHint:"muse mcp login tripwire",detect:()=>e.which("muse")!==null,hasServer:async()=>fe(Wh(e),"mcp_servers",q)!==null,addServer:async(t)=>({target:Wh(e),outcome:Ve(Wh(e),"mcp_servers",q,{transport:"streamable_http",url:t,enabled:!0,mode:"optional"},{defaults:{schema_version:1}})}),skillsDirs:()=>[Ze(e)],login:()=>({command:e.which("muse")??"muse",args:["mcp","login",q],status:async()=>"unknown"})}}import{join as ZT}from"node:path";var gG=new RegExp(`${String.fromCharCode(27)}\\[[0-9;]*m`,"g");function yG(e){let t=e.replace(gG,"").split(/\r?\n/).find((r)=>new RegExp(`(^|\\s)${q}\\s`).test(r));if(t===void 0)return"unknown";if(/✓/.test(t)&&/\bconnected\b/.test(t))return"signed-in";return/needs authentication/.test(t)?"signed-out":"unknown"}function BT(e,t){let r=()=>Qc(e,t.binaries),n=()=>fe(t.configPath(e),"mcp",q);return{id:t.id,name:t.name,signInHint:`${t.binaries[0]} mcp auth tripwire`,detect:()=>r()!==null||Ge(e,rr(e,t.apps))||t.extensionId!==null&&eu(e,t.extensionId),hasServer:async()=>n()!==null,addServer:async(o)=>{let s=t.configPath(e);return{target:s,outcome:Ve(s,"mcp",q,{type:"remote",url:o,enabled:!0})}},skillsDirs:()=>[Ze(e)],login:()=>{let o=r();return o?{command:o,args:["mcp","auth",q],status:()=>Oo(e,o,["mcp","list"],yG)}:null}}}function KT(e){return BT(e,{id:"opencode",name:"OpenCode",binaries:["opencode"],apps:["OpenCode"],extensionId:null,configPath:(t)=>Si(t,ZT($r(t),"opencode"),["opencode.json","opencode.jsonc"],"opencode.json")})}function HT(e){return BT(e,{id:"kilo",name:"Kilo Code",binaries:["kilo","kilocode"],apps:[],extensionId:"kilocode.kilo-code",configPath:(t)=>Si(t,t.env.KILO_CONFIG_DIR||ZT($r(t),"kilo"),["kilo.jsonc","kilo.json","opencode.jsonc","opencode.json"],"kilo.json")})}import{join as Ct}from"node:path";var bG="Visual Studio Code.app";function YT(e){return Ct(e.env.LOCALAPPDATA||Ct(e.home,"AppData","Local"),"Programs","Microsoft VS Code")}function XT(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>Ct(t,bG));if(e.platform==="win32")return[Ct(YT(e),"Code.exe")];return[]}function wG(e){if(e.platform==="darwin")return XT(e).map((t)=>Ct(t,"Contents","Resources","app","bin","code"));if(e.platform==="win32")return[Ct(YT(e),"bin","code.cmd")];return[]}function GT(e){let t=e.which("code");if(t)return t;return wG(e).find((r)=>e.exists(r))??null}function JT(e){if(e.platform==="darwin")return Ct(e.home,"Library","Application Support","Code","User","mcp.json");if(e.platform==="win32")return Ct(e.env.APPDATA||Ct(e.home,"AppData","Roaming"),"Code","User","mcp.json");return Ct(e.env.XDG_CONFIG_HOME||Ct(e.home,".config"),"Code","User","mcp.json")}function QT(e){return{id:"vscode",name:"VS Code",signInHint:"the MCP server list in VS Code",detect:()=>GT(e)!==null||Ge(e,XT(e)),hasServer:async()=>fe(JT(e),"servers",q)!==null,addServer:async(t)=>{let r=JT(e),n=fe(r,"servers",q),s=["--add-mcp",JSON.stringify({name:q,type:"http",url:t})],i=GT(e);if(!i)return{target:r,outcome:Ve(r,"servers",q,{type:"http",url:t})};let a=lt("code",s);if(n===t)return{target:a,outcome:"unchanged"};return await Pt(e,i,s),{target:a,outcome:n===null?"added":"updated"}},skillsDirs:()=>[Ct(e.home,".agents","skills")],login:()=>null}}import{join as Ju}from"node:path";function Vh(e){if(e.platform==="win32")return Ju(e.env.APPDATA||Ju(e.home,"AppData","Roaming"),"Zed","settings.json");if(e.platform==="darwin")return Ju(e.home,".config","zed","settings.json");return Ju($r(e),"zed","settings.json")}function eO(e){return{id:"zed",name:"Zed",signInHint:"the sign-in prompt in the Zed Agent Panel",detect:()=>e.which("zed")!==null||Ge(e,rr(e,["Zed","Zed Preview"])),hasServer:async()=>fe(Vh(e),"context_servers",q)!==null,addServer:async(t)=>({target:Vh(e),outcome:Ve(Vh(e),"context_servers",q,{url:t})}),skillsDirs:()=>[Ze(e)],login:()=>null}}function tO(e){return[d$(e),m$(e),b$(e),QT(e),x$(e),FT(e),KT(e),O$(e),u$(e),y$(e),a$(e),E$(e),p$(e),HT(e),WT(e),eO(e),qT(e),VT(e)]}var _G=[["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 rO(e){let t=e.AI_AGENT?.toLowerCase();if(t){let r=_G.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 vG}from"node:child_process";function SG(e){if(e==="darwin")return[["pbcopy"]];if(e==="win32")return[["clip"]];return[["wl-copy"],["xclip","-selection","clipboard"],["xsel","--clipboard","--input"]]}function kG(e,t,r,n){return new Promise((o)=>{let s=vG(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 nO(e,t){for(let[r,...n]of SG(e.platform)){let o=r?e.which(r):null;if(o&&await kG(o,n,t,e.env))return!0}return!1}var xG=`Use the \`${Us}\` skill for this project.`;function oO(e){let t=e?.trim();if(!t)return xG;let r=px(t);if(r)return fx(r);return`Tripwire was just installed. ${t}`}import{mkdirSync as TG,readFileSync as OG,renameSync as PG,writeFileSync as IG}from"node:fs";import{join as aO}from"node:path";var sO=`---
|
|
343
|
+
`}}function Oi(e){try{return eW(e,"utf8")}catch{return null}}function Mm(e,t){QU(nW(e),{recursive:!0});let r=`${e}.tripwire-${process.pid}.tmp`;rW(r,t),tW(r,e)}function Ze(e,t,r,n,o={}){let s=iW(Oi(e),e,t,r,n,o);if(s.outcome!=="unchanged")Mm(e,s.text);return s.outcome}var qm=K(p(),ne());function me(e,t,r,n=["url"]){try{let o=qm.parse(Dm(aW(e,"utf8"))),s=qm.safeParse(o[t]);if(!s.success||!(r in s.data))return null;let i=qm.safeParse(s.data[r]);if(!i.success)return"";for(let a of n){let c=i.data[a];if(typeof c==="string")return c}return""}catch{return null}}function dt(e,t){let r=t.map((n)=>/^[\w@%+=:,./-]+$/.test(n)?n:`'${n.replaceAll("'","'\\''")}'`);return[e,...r].join(" ")}async function Ct(e,t,r){let n=await e.run(t,r);if(!n.ok)throw Error(n.stderr||n.stdout||`${dt(t,r)} failed`)}async function Lo(e,t,r,n){let o=await e.run(t,r);return n(o.stdout)}function Je(e,t){return t.some((r)=>e.exists(r))}function cr(e,t){if(e.platform!=="darwin")return[];return e.macAppDirs.flatMap((r)=>t.map((n)=>No(r,`${n}.app`)))}function uu(e,t){for(let r of t){let n=e.which(r);if(n)return n}return null}var cW=[".vscode",".vscode-insiders",".cursor",".windsurf"];function lu(e,t){let r=`${t.toLowerCase()}-`;return cW.some((n)=>e.list(No(e.home,n,"extensions")).some((o)=>o.toLowerCase().startsWith(r)))}function Ii(e,t,r,n){let o=r.find((s)=>e.exists(No(t,s)));return No(t,o??n)}function Pr(e){return e.env.XDG_CONFIG_HOME||No(e.home,".config")}function Be(e){return No(e.home,".agents","skills")}async function Jr(e,t){let r=dt(t.display,t.addArgs);if(t.current===t.url)return{target:r,outcome:"unchanged"};if(t.current!==null&&t.removeArgs)await Ct(e,t.binary,t.removeArgs);return await Ct(e,t.binary,t.addArgs),{target:r,outcome:t.current===null?"added":"updated"}}function lW(e){return Ii(e,uW(e.home,".config","amp"),["settings.json","settings.jsonc"],"settings.json")}function N$(e){return me(lW(e),"amp.mcpServers",q)}function L$(e){return{id:"amp",name:"Amp",signInHint:"the browser sign-in Amp opens when it starts",detect:()=>e.which("amp")!==null,hasServer:async()=>N$(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("amp")??"amp",display:"amp",addArgs:["mcp","add",q,t],removeArgs:["mcp","remove",q],current:N$(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as Um}from"node:path";function Fm(e){return Um(e.home,".gemini","config","mcp_config.json")}function j$(e){return Je(e,cr(e,["Antigravity"]))}function D$(e){return{id:"antigravity",name:"Google Antigravity",signInHint:"/mcp inside agy, or Settings > Customizations in Antigravity",detect:()=>e.which("agy")!==null||j$(e),hasServer:async()=>me(Fm(e),"mcpServers",q,["serverUrl","url"])!==null,addServer:async(t)=>({target:Fm(e),outcome:Ze(Fm(e),"mcpServers",q,{serverUrl:t})}),skillsDirs:()=>{let t=[];if(e.which("agy")!==null)t.push(Um(e.home,".gemini","antigravity-cli","skills"));if(j$(e))t.push(Um(e.home,".gemini","config","skills"));return t},login:()=>null}}import{join as du}from"node:path";function dW(e){return e.env.CLAUDE_CONFIG_DIR||du(e.home,".claude")}function M$(e){return e.env.CLAUDE_CONFIG_DIR?du(e.env.CLAUDE_CONFIG_DIR,".claude.json"):du(e.home,".claude.json")}function pW(e){let t=/^\s*Status:\s*(.*)$/m.exec(e)?.[1]??"";if(/\bConnected\b/.test(t))return"signed-in";if(/needs authentication/i.test(t))return"signed-out";return"unknown"}function q$(e){let t=()=>e.which("claude")??"claude",r=(n)=>["mcp","add","--transport","http",q,n,"--scope","user"];return{id:"claude",name:"Claude Code",signInHint:"claude mcp login tripwire, or /mcp inside Claude Code",detect:()=>e.which("claude")!==null,hasServer:async()=>me(M$(e),"mcpServers",q)!==null,addServer:async(n)=>{let o=dt("claude",r(n)),s=me(M$(e),"mcpServers",q);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Ct(e,t(),["mcp","remove",q,"--scope","user"]);return await Ct(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[du(dW(e),"skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Lo(e,t(),["mcp","get",q],pW)})}}import{join as Wm}from"node:path";function fW(e){return e.env.CLINE_DIR||Wm(e.home,".cline")}function pu(e){return e.env.CLINE_MCP_SETTINGS_PATH||Wm(fW(e),"data","settings","cline_mcp_settings.json")}function F$(e){let t=()=>me(pu(e),"mcpServers",q);return{id:"cline",name:"Cline",signInHint:"Authorize OAuth in cline mcp, or the MCP Servers panel in Cline",detect:()=>e.which("cline")!==null||lu(e,"saoudrizwan.claude-dev"),hasServer:async()=>t()!==null,addServer:async(r)=>{let n=t();if(n===r)return{target:pu(e),outcome:"unchanged"};let o=e.which("cline");if(o&&n===null){let s=["mcp","add",q,r,"--transport","http","--yes"];return await Ct(e,o,s),{target:dt("cline",s),outcome:"added"}}return{target:pu(e),outcome:Ze(pu(e),"mcpServers",q,{type:"streamableHttp",url:r,disabled:!1})}},skillsDirs:()=>[Wm(e.home,".cline","skills")],login:()=>null}}import{readFileSync as mW}from"node:fs";import{join as Vm}from"node:path";function hW(e){return e.env.CODEX_HOME||Vm(e.home,".codex")}function gW(e,t){let r=e.split(/\r?\n/),n=new RegExp(`^\\s*\\[\\s*mcp_servers\\.(?:"${t}"|${t})\\s*\\]\\s*$`),o=r.findIndex((s)=>n.test(s));if(o===-1)return null;for(let s of r.slice(o+1)){if(/^\s*\[/.test(s))break;let i=s.match(/^\s*url\s*=\s*"([^"]*)"/);if(i?.[1]!==void 0)return i[1]}return""}var yW=k(w({name:p(),auth_status:p().nullish()}));function wW(e){try{let t=yW.safeParse(JSON.parse(e)),r=t.success?t.data.find((n)=>n.name===q)?.auth_status:void 0;if(r==="o_auth"||r==="bearer_token")return"signed-in";return r==="not_logged_in"?"signed-out":"unknown"}catch{return"unknown"}}function U$(e){try{return gW(mW(Vm(hW(e),"config.toml"),"utf8"),q)}catch{return null}}function W$(e){let t=()=>e.which("codex")??"codex",r=(n)=>["mcp","add",q,"--url",n];return{id:"codex",name:"Codex",signInHint:"codex mcp login tripwire",detect:()=>e.which("codex")!==null,hasServer:async()=>U$(e)!==null,addServer:async(n)=>{let o=dt("codex",r(n)),s=U$(e);if(s===n)return{target:o,outcome:"unchanged"};if(s!==null)await Ct(e,t(),["mcp","remove",q]);return await Ct(e,t(),r(n)),{target:o,outcome:s===null?"added":"updated"}},skillsDirs:()=>[Vm(e.home,".agents","skills")],login:()=>({command:t(),args:["mcp","login",q],status:()=>Lo(e,t(),["mcp","list","--json"],wW)})}}import{join as V$}from"node:path";function bW(e){return V$(e.env.COPILOT_HOME||V$(e.home,".copilot"),"mcp-config.json")}function Z$(e){return me(bW(e),"mcpServers",q)}function B$(e){return{id:"copilot",name:"GitHub Copilot CLI",signInHint:"/mcp auth tripwire inside Copilot CLI",detect:()=>e.which("copilot")!==null,hasServer:async()=>Z$(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("copilot")??"copilot",display:"copilot",addArgs:["mcp","add","--transport","http",q,t],removeArgs:["mcp","remove",q],current:Z$(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as fu}from"node:path";function _W(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>fu(t,"Cursor.app"));if(e.platform==="win32")return[fu(e.home,"AppData","Local","Programs","cursor","Cursor.exe")];return[]}function Zm(e){return fu(e.home,".cursor","mcp.json")}function K$(e){return{id:"cursor",name:"Cursor",signInHint:"the MCP settings in Cursor",detect:()=>e.which("cursor")!==null||Je(e,_W(e)),hasServer:async()=>me(Zm(e),"mcpServers",q)!==null,addServer:async(t)=>({target:Zm(e),outcome:Ze(Zm(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[fu(e.home,".agents","skills")],login:()=>null}}import{join as zt}from"node:path";var H$="mcp_config.json";function vW(e){if(e.platform==="win32")return zt(e.env.APPDATA||zt(e.home,"AppData","Roaming"),"devin");return zt(e.env.XDG_CONFIG_HOME||zt(e.home,".config"),"devin")}function Y$(e){return zt(e.home,".codeium","windsurf")}function X$(e,t){if(e.platform==="darwin")return e.macAppDirs.map((r)=>zt(r,`${t}.app`));if(e.platform==="win32")return[zt(e.env.LOCALAPPDATA||zt(e.home,"AppData","Local"),"Programs",t,`${t}.exe`)];return[]}function Bm(e){return e.which("devin")!==null||Je(e,X$(e,"Devin"))}function Ai(e){return e.which("windsurf")!==null||Je(e,X$(e,"Windsurf"))}function G$(e){let t=[];if(Bm(e)||!Ai(e))t.push(zt(vW(e),H$));if(Ai(e))t.push(zt(Y$(e),H$));return t}var J$={unchanged:0,updated:1,added:2};function Q$(e){return{id:"devin",name:"Devin Desktop (Windsurf)",signInHint:"the MCP settings in Devin Desktop",detect:()=>Bm(e)||Ai(e),hasServer:async()=>G$(e).some((t)=>me(t,"mcpServers",q)!==null),addServer:async(t)=>{let r=G$(e),o=r.map((s)=>Ze(s,"mcpServers",q,{serverUrl:t})).reduce((s,i)=>J$[i]>J$[s]?i:s,"unchanged");return{target:r.join(", "),outcome:o}},skillsDirs:()=>{let t=[];if(Bm(e)||!Ai(e))t.push(zt(e.home,".agents","skills"));if(Ai(e))t.push(zt(Y$(e),"skills"));return t},login:()=>null}}import{join as SW}from"node:path";function eT(e){return me(SW(e.home,".factory","mcp.json"),"mcpServers",q)}function tT(e){return{id:"droid",name:"Factory Droid",signInHint:"/mcp inside Droid",detect:()=>e.which("droid")!==null,hasServer:async()=>eT(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("droid")??"droid",display:"droid",addArgs:["mcp","add",q,t,"--type","http"],removeArgs:["mcp","remove",q],current:eT(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as kW}from"node:path";function xW(e){return kW(e.env.GEMINI_CLI_HOME||e.home,".gemini","settings.json")}function rT(e){return me(xW(e),"mcpServers",q,["httpUrl","url"])}function nT(e){return{id:"gemini",name:"Gemini CLI",signInHint:"/mcp auth tripwire inside Gemini CLI",detect:()=>e.which("gemini")!==null,hasServer:async()=>rT(e)!==null,addServer:(t)=>Jr(e,{binary:e.which("gemini")??"gemini",display:"gemini",addArgs:["mcp","add","--transport","http","--scope","user",q,t],removeArgs:["mcp","remove","--scope","user",q],current:rT(e),url:t}),skillsDirs:()=>[Be(e)],login:()=>null}}import{join as sl}from"node:path";var LG=Zh(),jG=Hi(),DG=Oh(),ng=Gi(),MG=zi(),sn=ce(),qG=en(),FG=Le(),UG=rn(),WG=nn(),Yhe=Xu(),VG=eg(),ZG=tg(),BG=rg(),rl=dP(),pP=Ri();var KG=LG.Composer,HG=jG.Document,GG=DG.Schema,{YAMLError:JG,YAMLParseError:YG,YAMLWarning:XG}=ng,QG=MG.Alias,{isAlias:e3,isCollection:t3,isDocument:r3,isMap:nl,isNode:n3,isPair:o3,isScalar:s3,isSeq:i3}=sn,a3=qG.Pair,c3=FG.Scalar,u3=UG.YAMLMap,l3=WG.YAMLSeq;var d3=VG.Lexer,p3=ZG.LineCounter,f3=BG.Parser,{parse:m3,parseAllDocuments:h3,parseDocument:ol,stringify:g3}=rl,{visit:y3,visitAsync:w3}=pP;var b3=K(p(),At());function og(e,t,r){if(e===null)return null;let n=ol(e);if(n.errors.length>0)return null;let o=K(p(),ne()).nullable().safeParse(n.toJS()),s=K(p(),ne()).safeParse(o.success?o.data?.[t]:void 0);if(!(s.success&&(r in s.data)))return null;let i=b3.safeParse(s.data[r]);return i.success?i.data:{}}function _3(e,t,r,n,o){let s=ol(e??"");if(s.errors.length>0||!(s.contents===null||nl(s.contents)))throw Error(`${t} is not a YAML mapping. Left it unchanged.`);let i=s.get(r);if(i!==void 0&&i!==null&&!nl(i))throw Error(`${t} has a "${r}" value that is not a mapping. Left it unchanged.`);let a=og(e,r,n),c={...a??{},...o};if(a&&JSON.stringify(a)===JSON.stringify(c))return{outcome:"unchanged",text:e??""};if(i===void 0||i===null)s.set(r,s.createNode({[n]:c}));else s.setIn([r,n],s.createNode(c));return{outcome:a?"updated":"added",text:s.toString()}}function fP(e,t,r,n){let o=_3(Oi(e),e,t,r,n);if(o.outcome!=="unchanged")Mm(e,o.text);return o.outcome}var mP="extensions";function sg(e){let t=e.env.GOOSE_PATH_ROOT;if(t)return sl(t,"config","config.yaml");if(e.platform==="win32")return sl(e.env.APPDATA||sl(e.home,"AppData","Roaming"),"Block","goose","config","config.yaml");return sl(Pr(e),"goose","config.yaml")}function hP(e){return{id:"goose",name:"Goose",signInHint:"the browser sign-in Goose opens on first use",detect:()=>e.which("goose")!==null||Je(e,cr(e,["Goose"])),hasServer:async()=>og(Oi(sg(e)),mP,q)!==null,addServer:async(t)=>({target:sg(e),outcome:fP(sg(e),mP,q,{type:"streamable_http",name:q,enabled:!0,uri:t,headers:{},env_keys:[],envs:{},timeout:300})}),skillsDirs:()=>[Be(e)],login:()=>null}}function gP(e){let t=()=>e.which("grok")??"grok",r=(o)=>["mcp","add","--transport","http",q,o],n=async()=>{let o=await e.run(t(),["mcp","list"]);return o.ok&&new RegExp(`\\b${q}\\b`).test(o.stdout)};return{id:"grok",name:"Grok",signInHint:"/mcps inside Grok",detect:()=>e.which("grok")!==null,hasServer:n,addServer:async(o)=>{let s=dt("grok",r(o));if(await n())return{target:s,outcome:"unchanged"};let i=await e.run(t(),r(o));if(i.ok)return{target:s,outcome:"added"};if(/already exists/i.test(`${i.stderr} ${i.stdout}`))return{target:s,outcome:"unchanged"};throw Error(i.stderr||i.stdout||`${s} failed`)},skillsDirs:()=>[Be(e)],login:()=>null}}import{join as yP}from"node:path";function ig(e){return yP(e.home,".kiro","settings","mcp.json")}function wP(e){return{id:"kiro",name:"Kiro",signInHint:"the browser sign-in Kiro opens on first use, or /mcp auth",detect:()=>uu(e,["kiro-cli","kiro"])!==null||Je(e,cr(e,["Kiro"])),hasServer:async()=>me(ig(e),"mcpServers",q)!==null,addServer:async(t)=>({target:ig(e),outcome:Ze(ig(e),"mcpServers",q,{url:t})}),skillsDirs:()=>[yP(e.home,".kiro","skills")],login:()=>null}}import{join as v3}from"node:path";function ag(e){return v3(Pr(e),"muse","settings.json")}function bP(e){return{id:"muse",name:"Muse Code",signInHint:"muse mcp login tripwire",detect:()=>e.which("muse")!==null,hasServer:async()=>me(ag(e),"mcp_servers",q)!==null,addServer:async(t)=>({target:ag(e),outcome:Ze(ag(e),"mcp_servers",q,{transport:"streamable_http",url:t,enabled:!0,mode:"optional"},{defaults:{schema_version:1}})}),skillsDirs:()=>[Be(e)],login:()=>({command:e.which("muse")??"muse",args:["mcp","login",q],status:async()=>"unknown"})}}import{join as _P}from"node:path";var S3=new RegExp(`${String.fromCharCode(27)}\\[[0-9;]*m`,"g");function k3(e){let t=e.replace(S3,"").split(/\r?\n/).find((r)=>new RegExp(`(^|\\s)${q}\\s`).test(r));if(t===void 0)return"unknown";if(/✓/.test(t)&&/\bconnected\b/.test(t))return"signed-in";return/needs authentication/.test(t)?"signed-out":"unknown"}function vP(e,t){let r=()=>uu(e,t.binaries),n=()=>me(t.configPath(e),"mcp",q);return{id:t.id,name:t.name,signInHint:`${t.binaries[0]} mcp auth tripwire`,detect:()=>r()!==null||Je(e,cr(e,t.apps))||t.extensionId!==null&&lu(e,t.extensionId),hasServer:async()=>n()!==null,addServer:async(o)=>{let s=t.configPath(e);return{target:s,outcome:Ze(s,"mcp",q,{type:"remote",url:o,enabled:!0})}},skillsDirs:()=>[Be(e)],login:()=>{let o=r();return o?{command:o,args:["mcp","auth",q],status:()=>Lo(e,o,["mcp","list"],k3)}:null}}}function SP(e){return vP(e,{id:"opencode",name:"OpenCode",binaries:["opencode"],apps:["OpenCode"],extensionId:null,configPath:(t)=>Ii(t,_P(Pr(t),"opencode"),["opencode.json","opencode.jsonc"],"opencode.json")})}function kP(e){return vP(e,{id:"kilo",name:"Kilo Code",binaries:["kilo","kilocode"],apps:[],extensionId:"kilocode.kilo-code",configPath:(t)=>Ii(t,t.env.KILO_CONFIG_DIR||_P(Pr(t),"kilo"),["kilo.jsonc","kilo.json","opencode.jsonc","opencode.json"],"kilo.json")})}import{join as jt}from"node:path";var x3="Visual Studio Code.app";function TP(e){return jt(e.env.LOCALAPPDATA||jt(e.home,"AppData","Local"),"Programs","Microsoft VS Code")}function EP(e){if(e.platform==="darwin")return e.macAppDirs.map((t)=>jt(t,x3));if(e.platform==="win32")return[jt(TP(e),"Code.exe")];return[]}function $3(e){if(e.platform==="darwin")return EP(e).map((t)=>jt(t,"Contents","Resources","app","bin","code"));if(e.platform==="win32")return[jt(TP(e),"bin","code.cmd")];return[]}function xP(e){let t=e.which("code");if(t)return t;return $3(e).find((r)=>e.exists(r))??null}function $P(e){if(e.platform==="darwin")return jt(e.home,"Library","Application Support","Code","User","mcp.json");if(e.platform==="win32")return jt(e.env.APPDATA||jt(e.home,"AppData","Roaming"),"Code","User","mcp.json");return jt(e.env.XDG_CONFIG_HOME||jt(e.home,".config"),"Code","User","mcp.json")}function PP(e){return{id:"vscode",name:"VS Code",signInHint:"the MCP server list in VS Code",detect:()=>xP(e)!==null||Je(e,EP(e)),hasServer:async()=>me($P(e),"servers",q)!==null,addServer:async(t)=>{let r=$P(e),n=me(r,"servers",q),s=["--add-mcp",JSON.stringify({name:q,type:"http",url:t})],i=xP(e);if(!i)return{target:r,outcome:Ze(r,"servers",q,{type:"http",url:t})};let a=dt("code",s);if(n===t)return{target:a,outcome:"unchanged"};return await Ct(e,i,s),{target:a,outcome:n===null?"added":"updated"}},skillsDirs:()=>[jt(e.home,".agents","skills")],login:()=>null}}import{join as il}from"node:path";function cg(e){if(e.platform==="win32")return il(e.env.APPDATA||il(e.home,"AppData","Roaming"),"Zed","settings.json");if(e.platform==="darwin")return il(e.home,".config","zed","settings.json");return il(Pr(e),"zed","settings.json")}function OP(e){return{id:"zed",name:"Zed",signInHint:"the sign-in prompt in the Zed Agent Panel",detect:()=>e.which("zed")!==null||Je(e,cr(e,["Zed","Zed Preview"])),hasServer:async()=>me(cg(e),"context_servers",q)!==null,addServer:async(t)=>({target:cg(e),outcome:Ze(cg(e),"context_servers",q,{url:t})}),skillsDirs:()=>[Be(e)],login:()=>null}}function IP(e){return[q$(e),W$(e),K$(e),PP(e),Q$(e),gP(e),SP(e),nT(e),D$(e),B$(e),L$(e),tT(e),F$(e),kP(e),wP(e),OP(e),hP(e),bP(e)]}var T3=[["claude","claude"],["codex","codex"],["cursor","cursor"],["copilot-cli","copilot"],["github-copilot-cli","copilot"],["copilot","vscode"],["vscode","vscode"],["devin","devin"],["windsurf","devin"],["cascade","devin"],["grok","grok"],["opencode","opencode"],["gemini","gemini"],["antigravity","antigravity"],["agy","antigravity"],["amp","amp"],["droid","droid"],["factory","droid"],["cline","cline"],["kilo","kilo"],["kiro","kiro"],["zed","zed"],["goose","goose"],["muse","muse"]];function AP(e){let t=e.AI_AGENT?.toLowerCase();if(t){let r=T3.find(([n])=>t.startsWith(n));if(r)return r[1]}if(e.CLAUDECODE==="1")return"claude";if(e.CODEX_SANDBOX||e.CODEX_THREAD_ID)return"codex";if(e.GEMINI_CLI==="1")return"gemini";if(e.CURSOR_AGENT)return"cursor";return t?"unknown":null}import{spawn as E3}from"node:child_process";function P3(e){if(e==="darwin")return[["pbcopy"]];if(e==="win32")return[["clip"]];return[["wl-copy"],["xclip","-selection","clipboard"],["xsel","--clipboard","--input"]]}function O3(e,t,r,n){return new Promise((o)=>{let s=E3(e,t,{env:n,stdio:["pipe","ignore","ignore"]});s.on("error",()=>o(!1)),s.on("exit",(i)=>o(i===0)),s.stdin.on("error",()=>{return}),s.stdin.end(r)})}async function RP(e,t){for(let[r,...n]of P3(e.platform)){let o=r?e.which(r):null;if(o&&await O3(o,n,t,e.env))return!0}return!1}var I3=`Use the \`${Gs}\` skill for this project.`;function CP(e){let t=e?.trim();if(!t)return I3;let r=ax(t);if(r)return ux(r);return`Tripwire was just installed. ${t}`}import{mkdirSync as C3,readFileSync as z3,renameSync as N3,writeFileSync as L3}from"node:fs";import{join as LP}from"node:path";var zP=`---
|
|
344
344
|
name: tripwire-get-started
|
|
345
345
|
description: Set up Tripwire, the contribution gatekeeper for GitHub repos, through the Tripwire MCP server. Use when the user asks to set up or get started with Tripwire, or pastes a prompt with a Tripwire org slug and run code.
|
|
346
346
|
---
|
|
@@ -420,7 +420,7 @@ you can manage Tripwire later with the \`tripwire\` CLI (\`npx @tripwire-sh/cli
|
|
|
420
420
|
--help\`): \`login\`, \`status\`, \`repos\`, \`rules\`, \`gate\`, \`workflows\`, \`runs\` and
|
|
421
421
|
\`queue\`, each with \`--json\`.
|
|
422
422
|
To write or change workflows as code, use the \`tripwire-workflows\` skill.
|
|
423
|
-
`;var
|
|
423
|
+
`;var NP=`---
|
|
424
424
|
name: tripwire-workflows
|
|
425
425
|
description: Write and change Tripwire workflows as tripwire.ts code. Use when the user wants a workflow, a gate, a schedule or an automation added, changed or explained, or mentions tripwire.ts.
|
|
426
426
|
---
|
|
@@ -434,26 +434,41 @@ the compiler checks it before anything runs.
|
|
|
434
434
|
## Steps
|
|
435
435
|
|
|
436
436
|
1. **Pull.** \`npx @tripwire-sh/cli workflows pull <repo>\`. This writes
|
|
437
|
-
\`tripwire.ts
|
|
438
|
-
|
|
439
|
-
other people edit the same workflows.
|
|
440
|
-
\`workflows pull <repo> <
|
|
441
|
-
did not name stay as they are.
|
|
442
|
-
|
|
443
|
-
|
|
437
|
+
\`tripwire.ts\`, the typed helpers in \`.tripwire/workflow.ts\` and the link in
|
|
438
|
+
\`.tripwire/project.json\`. Done when the files exist. Read \`tripwire.ts\`
|
|
439
|
+
before you change it: the canvas and other people edit the same workflows.
|
|
440
|
+
To pull only some, name them: \`workflows pull <repo> <key> <key>\`. Workflows
|
|
441
|
+
already in the file that you did not name stay as they are.
|
|
442
|
+
|
|
443
|
+
The link holds the repo, the org and each workflow's id, no secrets, so
|
|
444
|
+
commit it.
|
|
445
|
+
Anywhere under that folder, \`diff\`, \`push\`, \`list\`, \`enable\` and the other
|
|
446
|
+
commands can leave out \`<repo>\` and \`--org\`. An explicit \`<repo>\`, \`--org\`
|
|
447
|
+
or \`TRIPWIRE_ORG\` wins over the link. \`tripwire link <repo>\` and
|
|
448
|
+
\`tripwire unlink\` set and clear it; \`tripwire status\` shows it.
|
|
449
|
+
2. **Write.** Edit \`tripwire.ts\` with the reference below. Each workflow's key
|
|
450
|
+
is its name as a slug, and \`.tripwire/project.json\` maps it to the
|
|
451
|
+
workflow's id. Keep the key when you rename a workflow. A new key makes a
|
|
452
|
+
new workflow.
|
|
444
453
|
3. **Validate until clean.** \`npx @tripwire-sh/cli workflows validate --repo
|
|
445
454
|
<repo>\`. Every message names the step and, for a wrong id, the right one.
|
|
446
455
|
Fix and rerun. Done when every workflow says \`can be turned on\` and each
|
|
447
456
|
\`runs\` line reads back the schedule the user asked for, timezone included.
|
|
448
457
|
4. **Diff.** \`npx @tripwire-sh/cli workflows diff <repo>\`. Show the user the
|
|
449
458
|
lines and ask before you push.
|
|
450
|
-
5. **Push.** \`npx @tripwire-sh/cli workflows push <repo>\`.
|
|
451
|
-
|
|
459
|
+
5. **Push.** \`npx @tripwire-sh/cli workflows push <repo>\`. It opens a review
|
|
460
|
+
page in the user's browser and waits until they accept or reject it. Give
|
|
461
|
+
the user the \`review\` link it prints. Exit 0 means accepted; on exit 1 tell
|
|
462
|
+
the user why and stop. \`--force\` saves without review: use it only when the
|
|
463
|
+
user asks. New workflows start off. Turn one on only when the user says so:
|
|
452
464
|
\`npx @tripwire-sh/cli workflows enable <repo> <id>\`.
|
|
453
465
|
|
|
454
466
|
Loading \`tripwire.ts\` needs Bun or Node 22.18+. On older Node, use
|
|
455
467
|
\`bunx @tripwire-sh/cli\`. Without the CLI, the MCP tools \`get_workflow\`,
|
|
456
|
-
\`validate_workflow\` and \`apply_workflow\` do the same
|
|
468
|
+
\`validate_workflow\`, \`propose_workflow_push\` and \`apply_workflow\` do the same
|
|
469
|
+
with compiled JSON. Over the MCP, call \`begin_workflow_work\` before you build
|
|
470
|
+
so the user can watch the draft in the app, and \`finish_workflow_work\` when
|
|
471
|
+
you stop. A draft never runs. An accepted push or an apply saves the draft.
|
|
457
472
|
|
|
458
473
|
## Reference
|
|
459
474
|
|
|
@@ -461,7 +476,7 @@ Loading \`tripwire.ts\` needs Bun or Node 22.18+. On older Node, use
|
|
|
461
476
|
import { anyOf, block, check, requestReview, workflow, workflows } from "./.tripwire/workflow.ts";
|
|
462
477
|
|
|
463
478
|
export default workflows({
|
|
464
|
-
"
|
|
479
|
+
"new-contributors": workflow({
|
|
465
480
|
name: "New contributors",
|
|
466
481
|
on: "change-request.opened",
|
|
467
482
|
check: anyOf(
|
|
@@ -518,35 +533,37 @@ workflow({ steps: { opened, age, stop: block().after(age.fails) } });
|
|
|
518
533
|
- \`match\`: \`{ subjects: ["issue"], state: "open", inactiveFor: { n: 15,
|
|
519
534
|
unit: "days" }, labels, excludeLabels }\`.
|
|
520
535
|
- Use \`run: [...]\` for actions straight after the trigger.
|
|
521
|
-
`;var
|
|
522
|
-
`)}function
|
|
536
|
+
`;var j3=[{name:Gs,body:zP},{name:vk,body:NP}];function ug(e,t=Gs){return LP(e,t,"SKILL.md")}function D3(e,t,r){let n=ug(e,t),o=null;try{o=z3(n,"utf8")}catch{o=null}if(o===r)return"unchanged";C3(LP(e,t),{recursive:!0});let s=`${n}.tripwire-${process.pid}.tmp`;return L3(s,r),N3(s,n),o===null?"added":"updated"}function jP(e){let t=j3.map((r)=>D3(e,r.name,r.body));if(t.includes("added"))return"added";return t.includes("updated")?"updated":"unchanged"}async function DP(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 lg(e,t,r=new Map){try{let n=await e.addServer(t),o=e.skillsDirs().map((s)=>{let i=r.get(s)??jP(s);return r.set(s,i),{path:ug(s),outcome:i}});return{kind:"done",mcp:n,skills:o}}catch(n){return{kind:"failed",message:n instanceof Error?n.message:String(n)}}}function MP(e){return e.status().catch(()=>"unknown")}function qP(e){return Promise.all(e.map(async(t)=>{let r=t.login();if(r===null)return{kind:"manual",agent:t};return await MP(r)==="signed-in"?{kind:"signed-in",agent:t}:{kind:"run",agent:t,login:r}}))}async function M3(e,t){let r=await t(e).catch(()=>({ok:!1,stdout:"",stderr:""})),n=await MP(e.login);if(n==="unknown")return r.ok?"signed-in":"failed";return n==="signed-in"?"signed-in":"failed"}async function FP(e,t){let r=[];for(let n of e)if(n.kind==="run")r.push({agent:n.agent,outcome:await M3(n,t),login:n.login});else r.push({agent:n.agent,outcome:n.kind==="signed-in"?"already":"manual",login:null});return r}var UP=new Intl.ListFormat("en",{style:"long",type:"conjunction"});function WP(e,t){return t.split(e.home).join("~")}function q3(e,t){let{result:r}=t;if(r.kind==="failed")return xt.default.red(r.message);let n=[`${xt.default.dim("mcp ")} ${WP(e,r.mcp.target)} ${xt.default.dim(`(${r.mcp.outcome})`)}`];if(r.skills.length===0)n.push(`${xt.default.dim("skill")} ${xt.default.dim("not supported, MCP only")}`);for(let o of r.skills)n.push(`${xt.default.dim("skill")} ${WP(e,o.path)} ${xt.default.dim(`(${o.outcome})`)}`);return n.join(`
|
|
537
|
+
`)}function F3(){return xt.default.bgRed(xt.default.black(xt.default.bold(" tripwire ")))}async function U3(e){let t=await S$({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(bi(t))return null;return e.filter((r)=>t.includes(r.agent.id))}function VP(e){return dt(e.command.split(/[\\/]/).pop()??e.command,e.args)}function W3(e){switch(e.outcome){case"signed-in":return"signed in";case"already":return"already signed in";case"failed":return e.login?`not signed in, run ${VP(e.login)}`:"not signed in";case"manual":return`sign in with ${e.agent.signInHint}`}}function V3(e){let t=Math.max(...e.map(({agent:o})=>o.name.length)),r=e.map((o)=>`${o.agent.name.padEnd(t)} ${W3(o)}`);(e.some(({outcome:o})=>o==="failed")?Ne.warn:Ne.info)(`Tripwire sign-in
|
|
523
538
|
${r.join(`
|
|
524
|
-
`)}`)}async function
|
|
539
|
+
`)}`)}async function Z3(e,t){let r=t.filter((a)=>a.result.kind==="done").map(({agent:a})=>a);if(r.length===0)return!0;let o=r.some((a)=>a.login()!==null)?xi():null;o?.start("Checking Tripwire sign-in");let s=await qP(r);o?.stop("Checked Tripwire sign-in");let i=await FP(s,async({agent:a,login:c})=>(Ne.step(`${a.name}: ${VP(c)}`),e.runInteractive(c.command,c.args)));return V3(i),i.every(({outcome:a})=>a!=="failed")}function B3(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}`);Ne.info(`Sign in to the Tripwire MCP
|
|
525
540
|
${o.join(`
|
|
526
|
-
`)}`),
|
|
527
|
-
${r}`)}async function
|
|
541
|
+
`)}`),Ne.info(`Then send this prompt
|
|
542
|
+
${r}`)}async function K3(e,t){let r=await v$({message:"Copy a prompt to get started with Tripwire?",initialValue:!0});if(bi(r)||!r){Ne.step("Maybe next time");return}let n=await RP(e,t);Ne.success(n?"Copied a get-started prompt to your clipboard":"Copy this prompt to get started"),Ne.message(xt.default.gray(t))}async function ZP(e,t){let r=go(e.env),n=CP(t.instruction),o=AP(e.env),s=t.interactive&&!t.json&&o===null,i=await DP(IP(e)),a=new Map;if(t.json){let h=await Promise.all(i.map(async({agent:y})=>({agent:y,result:await lg(y,r,a)}))),g=h.map(({agent:y,result:b})=>({id:y.id,name:y.name,thisSession:y.id===o,signIn:y.signInHint,...b}));return process.stdout.write(`${JSON.stringify({mcpUrl:r,agents:g,prompt:n},null,2)}
|
|
528
543
|
`),h.every(({result:y})=>y.kind==="done")?0:1}if(process.stdout.write(`
|
|
529
|
-
${
|
|
544
|
+
${F3()}
|
|
530
545
|
|
|
531
|
-
`),
|
|
532
|
-
${
|
|
533
|
-
`;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",Xu,"-s",Yu])}}}function XG(e,t){let r=["service",Yu,"account",Xu];return{kind:"secret-service",location:"Secret Service keyring",read:async()=>{let n=await e.run(t,["lookup",...r]);return n.ok?Gh(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 yO(e,t){let r=Hh(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 qo(e){if(e.env.TRIPWIRE_CREDENTIAL_STORE==="file")return Hh(e);if(e.platform==="darwin"){let t=e.which("security");if(t)return yO(YG(e,t),e)}if(e.platform==="linux"){let t=e.which("secret-tool");if(t)return yO(XG(e,t),e)}return Hh(e)}class Ki extends Error{constructor(e="Not signed in. Run tripwire login."){super(e);this.name="NotSignedInError"}}var QG=30000;async function Jh(e,t){let r=co(e.env),n=e.env.TRIPWIRE_TOKEN;if(n)return{token:n,mcpUrl:r,source:"env"};let o=qo(e),s=await o.read();if(!s)throw new Ki;if(s.expiresAt&&s.expiresAt-QG<t.now()){let i=await sk(t,s).catch((a)=>{if(a instanceof Vs)throw a;throw new Ki("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 Qu(e){return!!e._zod}function Bt(e,t){if(Qu(e))return Vd(e,t);return e.safeParse(t)}function el(e){if(!e)return;let t;if(Qu(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 tl(e){if(Qu(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 Uo="2025-11-25";var bO=[Uo,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],en="io.modelcontextprotocol/related-task",nl="2.0",qe=ic((e)=>e!==null&&(typeof e==="object"||typeof e==="function")),wO=te([p(),P().int()]),_O=p(),ige=xe({ttl:P().optional(),pollInterval:P().optional()}),r3=b({ttl:P().optional()}),n3=b({taskId:p()}),Yh=xe({progressToken:wO.optional(),[en]:n3.optional()}),kt=b({_meta:Yh.optional()}),Hi=kt.extend({task:r3.optional()}),vO=(e)=>Hi.safeParse(e).success,Je=b({method:p(),params:kt.loose().optional()}),zt=b({_meta:Yh.optional()}),Nt=b({method:p(),params:zt.loose().optional()}),Ye=xe({_meta:Yh.optional()}),ol=te([p(),P().int()]),SO=b({jsonrpc:C(nl),id:ol,...Je.shape}).strict(),Gi=(e)=>SO.safeParse(e).success,kO=b({jsonrpc:C(nl),...Nt.shape}).strict(),xO=(e)=>kO.safeParse(e).success,Xh=b({jsonrpc:C(nl),id:ol,result:Ye}).strict(),Vn=(e)=>Xh.safeParse(e).success;var K;(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"})(K||(K={}));var Qh=b({jsonrpc:C(nl),id:ol.optional(),error:b({code:P().int(),message:p(),data:ne().optional()})}).strict();var $O=(e)=>Qh.safeParse(e).success;var sl=te([SO,kO,Xh,Qh]),age=te([Xh,Qh]),Zn=Ye.strict(),o3=zt.extend({requestId:ol.optional(),reason:p().optional()}),il=Nt.extend({method:C("notifications/cancelled"),params:o3}),s3=b({src:p(),mimeType:p().optional(),sizes:x(p()).optional(),theme:z(["light","dark"]).optional()}),Ji=b({icons:x(s3).optional()}),Fo=b({name:p(),title:p().optional()}),EO=Fo.extend({...Fo.shape,...Ji.shape,version:p(),websiteUrl:p().optional(),description:p().optional()}),i3=sc(b({applyDefaults:j().optional()}),J(p(),ne())),a3=ac((e)=>{if(e&&typeof e==="object"&&!Array.isArray(e)){if(Object.keys(e).length===0)return{form:{}}}return e},sc(b({form:i3.optional(),url:qe.optional()}),J(p(),ne()).optional())),c3=xe({list:qe.optional(),cancel:qe.optional(),requests:xe({sampling:xe({createMessage:qe.optional()}).optional(),elicitation:xe({create:qe.optional()}).optional()}).optional()}),u3=xe({list:qe.optional(),cancel:qe.optional(),requests:xe({tools:xe({call:qe.optional()}).optional()}).optional()}),l3=b({experimental:J(p(),qe).optional(),sampling:b({context:qe.optional(),tools:qe.optional()}).optional(),elicitation:a3.optional(),roots:b({listChanged:j().optional()}).optional(),tasks:c3.optional(),extensions:J(p(),qe).optional()}),d3=kt.extend({protocolVersion:p(),capabilities:l3,clientInfo:EO}),p3=Je.extend({method:C("initialize"),params:d3});var f3=b({experimental:J(p(),qe).optional(),logging:qe.optional(),completions:qe.optional(),prompts:b({listChanged:j().optional()}).optional(),resources:b({subscribe:j().optional(),listChanged:j().optional()}).optional(),tools:b({listChanged:j().optional()}).optional(),tasks:u3.optional(),extensions:J(p(),qe).optional()}),eg=Ye.extend({protocolVersion:p(),capabilities:f3,serverInfo:EO,instructions:p().optional()}),TO=Nt.extend({method:C("notifications/initialized"),params:zt.optional()}),OO=(e)=>TO.safeParse(e).success,al=Je.extend({method:C("ping"),params:kt.optional()}),m3=b({progress:P(),total:ke(P()),message:ke(p())}),h3=b({...zt.shape,...m3.shape,progressToken:wO}),cl=Nt.extend({method:C("notifications/progress"),params:h3}),g3=kt.extend({cursor:_O.optional()}),Yi=Je.extend({params:g3.optional()}),Xi=Ye.extend({nextCursor:_O.optional()}),y3=z(["working","input_required","completed","failed","cancelled"]),Qi=b({taskId:p(),status:y3,ttl:te([P(),Fs()]),createdAt:p(),lastUpdatedAt:p(),pollInterval:ke(P()),statusMessage:ke(p())}),Bn=Ye.extend({task:Qi}),b3=zt.merge(Qi),ea=Nt.extend({method:C("notifications/tasks/status"),params:b3}),ul=Je.extend({method:C("tasks/get"),params:kt.extend({taskId:p()})}),ll=Ye.merge(Qi),dl=Je.extend({method:C("tasks/result"),params:kt.extend({taskId:p()})}),cge=Ye.loose(),pl=Yi.extend({method:C("tasks/list")}),fl=Xi.extend({tasks:x(Qi)}),ml=Je.extend({method:C("tasks/cancel"),params:kt.extend({taskId:p()})}),PO=Ye.merge(Qi),IO=b({uri:p(),mimeType:ke(p()),_meta:J(p(),ne()).optional()}),AO=IO.extend({text:p()}),tg=p().refine((e)=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),RO=IO.extend({blob:tg}),ta=z(["user","assistant"]),Wo=b({audience:x(ta).optional(),priority:P().min(0).max(1).optional(),lastModified:BS({offset:!0}).optional()}),CO=b({...Fo.shape,...Ji.shape,uri:p(),description:ke(p()),mimeType:ke(p()),size:ke(P()),annotations:Wo.optional(),_meta:ke(xe({}))}),w3=b({...Fo.shape,...Ji.shape,uriTemplate:p(),description:ke(p()),mimeType:ke(p()),annotations:Wo.optional(),_meta:ke(xe({}))}),_3=Yi.extend({method:C("resources/list")}),rg=Xi.extend({resources:x(CO)}),v3=Yi.extend({method:C("resources/templates/list")}),ng=Xi.extend({resourceTemplates:x(w3)}),og=kt.extend({uri:p()}),S3=og,k3=Je.extend({method:C("resources/read"),params:S3}),sg=Ye.extend({contents:x(te([AO,RO]))}),ig=Nt.extend({method:C("notifications/resources/list_changed"),params:zt.optional()}),x3=og,$3=Je.extend({method:C("resources/subscribe"),params:x3}),E3=og,T3=Je.extend({method:C("resources/unsubscribe"),params:E3}),O3=zt.extend({uri:p()}),P3=Nt.extend({method:C("notifications/resources/updated"),params:O3}),I3=b({name:p(),description:ke(p()),required:ke(j())}),A3=b({...Fo.shape,...Ji.shape,description:ke(p()),arguments:ke(x(I3)),_meta:ke(xe({}))}),R3=Yi.extend({method:C("prompts/list")}),ag=Xi.extend({prompts:x(A3)}),C3=kt.extend({name:p(),arguments:J(p(),p()).optional()}),z3=Je.extend({method:C("prompts/get"),params:C3}),cg=b({type:C("text"),text:p(),annotations:Wo.optional(),_meta:J(p(),ne()).optional()}),ug=b({type:C("image"),data:tg,mimeType:p(),annotations:Wo.optional(),_meta:J(p(),ne()).optional()}),lg=b({type:C("audio"),data:tg,mimeType:p(),annotations:Wo.optional(),_meta:J(p(),ne()).optional()}),N3=b({type:C("tool_use"),name:p(),id:p(),input:J(p(),ne()),_meta:J(p(),ne()).optional()}),L3=b({type:C("resource"),resource:te([AO,RO]),annotations:Wo.optional(),_meta:J(p(),ne()).optional()}),D3=CO.extend({type:C("resource_link")}),dg=te([cg,ug,lg,D3,L3]),j3=b({role:ta,content:dg}),pg=Ye.extend({description:p().optional(),messages:x(j3)}),fg=Nt.extend({method:C("notifications/prompts/list_changed"),params:zt.optional()}),M3=b({title:p().optional(),readOnlyHint:j().optional(),destructiveHint:j().optional(),idempotentHint:j().optional(),openWorldHint:j().optional()}),q3=b({taskSupport:z(["required","optional","forbidden"]).optional()}),zO=b({...Fo.shape,...Ji.shape,description:p().optional(),inputSchema:b({type:C("object"),properties:J(p(),qe).optional(),required:x(p()).optional()}).catchall(ne()),outputSchema:b({type:C("object"),properties:J(p(),qe).optional(),required:x(p()).optional()}).catchall(ne()).optional(),annotations:M3.optional(),execution:q3.optional(),_meta:J(p(),ne()).optional()}),F3=Yi.extend({method:C("tools/list")}),mg=Xi.extend({tools:x(zO)}),Or=Ye.extend({content:x(dg).default([]),structuredContent:J(p(),ne()).optional(),isError:j().optional()}),uge=Or.or(Ye.extend({toolResult:ne()})),U3=Hi.extend({name:p(),arguments:J(p(),ne()).optional()}),W3=Je.extend({method:C("tools/call"),params:U3}),hg=Nt.extend({method:C("notifications/tools/list_changed"),params:zt.optional()}),NO=b({autoRefresh:j().default(!0),debounceMs:P().int().nonnegative().default(300)}),LO=z(["debug","info","notice","warning","error","critical","alert","emergency"]),V3=kt.extend({level:LO}),Z3=Je.extend({method:C("logging/setLevel"),params:V3}),B3=zt.extend({level:LO,logger:p().optional(),data:ne()}),K3=Nt.extend({method:C("notifications/message"),params:B3}),H3=b({name:p().optional()}),G3=b({hints:x(H3).optional(),costPriority:P().min(0).max(1).optional(),speedPriority:P().min(0).max(1).optional(),intelligencePriority:P().min(0).max(1).optional()}),J3=b({mode:z(["auto","required","none"]).optional()}),Y3=b({type:C("tool_result"),toolUseId:p().describe("The unique identifier for the corresponding tool call."),content:x(dg).default([]),structuredContent:b({}).loose().optional(),isError:j().optional(),_meta:J(p(),ne()).optional()}),X3=vr("type",[cg,ug,lg]),rl=vr("type",[cg,ug,lg,N3,Y3]),Q3=b({role:ta,content:te([rl,x(rl)]),_meta:J(p(),ne()).optional()}),eJ=Hi.extend({messages:x(Q3),modelPreferences:G3.optional(),systemPrompt:p().optional(),includeContext:z(["none","thisServer","allServers"]).optional(),temperature:P().optional(),maxTokens:P().int(),stopSequences:x(p()).optional(),metadata:qe.optional(),tools:x(zO).optional(),toolChoice:J3.optional()}),gg=Je.extend({method:C("sampling/createMessage"),params:eJ}),yg=Ye.extend({model:p(),stopReason:ke(z(["endTurn","stopSequence","maxTokens"]).or(p())),role:ta,content:X3}),bg=Ye.extend({model:p(),stopReason:ke(z(["endTurn","stopSequence","maxTokens","toolUse"]).or(p())),role:ta,content:te([rl,x(rl)])}),tJ=b({type:C("boolean"),title:p().optional(),description:p().optional(),default:j().optional()}),rJ=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()}),nJ=b({type:z(["number","integer"]),title:p().optional(),description:p().optional(),minimum:P().optional(),maximum:P().optional(),default:P().optional()}),oJ=b({type:C("string"),title:p().optional(),description:p().optional(),enum:x(p()),default:p().optional()}),sJ=b({type:C("string"),title:p().optional(),description:p().optional(),oneOf:x(b({const:p(),title:p()})),default:p().optional()}),iJ=b({type:C("string"),title:p().optional(),description:p().optional(),enum:x(p()),enumNames:x(p()).optional(),default:p().optional()}),aJ=te([oJ,sJ]),cJ=b({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:b({type:C("string"),enum:x(p())}),default:x(p()).optional()}),uJ=b({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:b({anyOf:x(b({const:p(),title:p()}))}),default:x(p()).optional()}),lJ=te([cJ,uJ]),dJ=te([iJ,aJ,lJ]),pJ=te([dJ,tJ,rJ,nJ]),fJ=Hi.extend({mode:C("form").optional(),message:p(),requestedSchema:b({type:C("object"),properties:J(p(),pJ),required:x(p()).optional()})}),mJ=Hi.extend({mode:C("url"),message:p(),elicitationId:p(),url:p().url()}),hJ=te([fJ,mJ]),wg=Je.extend({method:C("elicitation/create"),params:hJ}),gJ=zt.extend({elicitationId:p()}),yJ=Nt.extend({method:C("notifications/elicitation/complete"),params:gJ}),_g=Ye.extend({action:z(["accept","decline","cancel"]),content:ac((e)=>e===null?void 0:e,J(p(),te([p(),P(),j(),x(p())])).optional())}),bJ=b({type:C("ref/resource"),uri:p()});var wJ=b({type:C("ref/prompt"),name:p()}),_J=kt.extend({ref:te([wJ,bJ]),argument:b({name:p(),value:p()}),context:b({arguments:J(p(),p()).optional()}).optional()}),vJ=Je.extend({method:C("completion/complete"),params:_J});var vg=Ye.extend({completion:xe({values:x(p()).max(100),total:ke(P().int()),hasMore:ke(j())})}),SJ=b({uri:p().startsWith("file://"),name:p().optional(),_meta:J(p(),ne()).optional()}),kJ=Je.extend({method:C("roots/list"),params:kt.optional()}),xJ=Ye.extend({roots:x(SJ)}),$J=Nt.extend({method:C("notifications/roots/list_changed"),params:zt.optional()}),lge=te([al,p3,vJ,Z3,z3,R3,_3,v3,k3,$3,T3,W3,F3,ul,dl,pl,ml]),dge=te([il,cl,TO,$J,ea]),pge=te([Zn,yg,bg,_g,xJ,ll,fl,Bn]),fge=te([al,gg,wg,kJ,ul,dl,pl,ml]),mge=te([il,cl,K3,P3,ig,hg,fg,ea,yJ]),hge=te([Zn,eg,vg,pg,ag,rg,ng,sg,Or,mg,ll,fl,Bn]);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===K.UrlElicitationRequired&&r){let n=r;if(n.elicitations)return new DO(n.elicitations,t)}return new Z(e,t,r)}}class DO extends Z{constructor(e,t=`URL elicitation${e.length>1?"s":""} required`){super(K.UrlElicitationRequired,t,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}function tn(e){return e==="completed"||e==="failed"||e==="cancelled"}var EJ=Symbol("Let zodToJsonSchema decide on which parser to use");var Hge=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Sg(e){let r=el(e)?.method;if(!r)throw Error("Schema is missing a method literal");let n=tl(r);if(typeof n!=="string")throw Error("Schema method literal must be a string");return n}function kg(e,t){let r=Bt(e,t);if(!r.success)throw r.error;return r.data}var RJ=60000;class xg{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(il,(t)=>{this._oncancel(t)}),this.setNotificationHandler(cl,(t)=>{this._onprogress(t)}),this.setRequestHandler(al,(t)=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore)this.setRequestHandler(ul,async(t,r)=>{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(K.InvalidParams,"Failed to retrieve task: Task not found");return{...n}}),this.setRequestHandler(dl,async(t,r)=>{let n=async()=>{let o=t.params.taskId;if(!await this._taskStore.getTask(o,r.sessionId))throw new Z(K.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(K.InvalidParams,`Task not found: ${o}`);if(!tn(s.status))return await this._waitForTaskUpdate(o,r.signal,r.sessionId),await n();if(tn(s.status)){let i=await this._taskStore.getTaskResult(o,r.sessionId);return this._clearTaskQueue(o,r.sessionId),{...i,_meta:{...i._meta,[en]:{taskId:o}}}}return await n()};return await n()}),this.setRequestHandler(pl,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(K.InvalidParams,`Failed to list tasks: ${n instanceof Error?n.message:String(n)}`)}}),this.setRequestHandler(ml,async(t,r)=>{try{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(K.InvalidParams,`Task not found: ${t.params.taskId}`);if(tn(n.status))throw new Z(K.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(K.InvalidParams,`Task not found after cancellation: ${t.params.taskId}`);return{_meta:{},...o}}catch(n){if(n instanceof Z)throw n;throw new Z(K.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(K.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)||$O(o))this._onresponse(o);else if(Gi(o))this._onrequest(o,s);else if(xO(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(K.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?.[en]?.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(K.InvalidParams,`Task not found: ${o}`);a=!0})();if(r===void 0){let m={jsonrpc:"2.0",id:e.id,error:{code:K.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=vO(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(K.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&&d)await d.updateTaskStatus(w,"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(K.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:K.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 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(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=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(K.InternalError,String(s))}}return}let o;try{let s=await this.request(e,Bn,r);if(s.task)o=s.task.taskId,yield{type:"taskCreated",task:s.task};else throw new Z(K.InternalError,"Task creation did not return a task");while(!0){let i=await this.getTask({taskId:o},r);if(yield{type:"taskStatus",task:i},tn(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(K.InternalError,`Task ${o} failed`)};else if(i.status==="cancelled")yield{type:"error",error:new Z(K.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(K.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 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||{},[en]:a}};let m=(w)=>{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(w)}},{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((S)=>this._onerror(Error(`Failed to send cancellation: ${S}`)));let T=w instanceof Z?w:new Z(K.RequestTimeout,String(w));u(T)};this._responseHandlers.set(d,(w)=>{if(r?.signal?.aborted)return;if(w instanceof Error)return u(w);try{let T=Bt(t,w.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??RJ,g=()=>m(Z.fromError(K.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(d,h,r?.maxTotalTimeout,g,r?.resetTimeoutOnProgress??!1);let y=a?.taskId;if(y){let w=(T)=>{let S=this._responseHandlers.get(d);if(S)S(T);else this._onerror(Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,w),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((w)=>{this._cleanupTimeout(d),u(w)})})}async getTask(e,t){return this.request({method:"tasks/get",params:e},ll,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},fl,t)}async cancelTask(e,t){return this.request({method:"tasks/cancel",params:e},PO,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||{},[en]: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||{},[en]: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||{},[en]:t.relatedTask}}};await this._transport.send(s,t)}setRequestHandler(e,t){let r=Sg(e);this.assertRequestHandlerCapability(r),this._requestHandlers.set(r,(n,o)=>{let s=kg(e,n);return Promise.resolve(t(s,o))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){let r=Sg(e);this._notificationHandlers.set(r,(n)=>{let o=kg(e,n);return Promise.resolve(t(o))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let t=this._taskProgressTokens.get(e);if(t!==void 0)this._progressHandlers.delete(t),this._taskProgressTokens.delete(e)}async _enqueueTaskMessage(e,t,r){if(!this._taskStore||!this._taskMessageQueue)throw Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let n=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,t,r??this._transport?.sessionId,n)}async _clearTaskQueue(e,t){if(this._taskMessageQueue){let r=await this._taskMessageQueue.dequeueAll(e,t);for(let n of r)if(n.type==="request"&&Gi(n.message)){let o=n.message.id,s=this._requestResolvers.get(o);if(s)s(new Z(K.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(K.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);t.addEventListener("abort",()=>{clearTimeout(i),s(new Z(K.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(K.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=ea.parse({method:"notifications/tasks/status",params:i});if(await this.notification(a),tn(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(K.InvalidParams,`Task "${n}" not found - it may have been cleaned up`);if(tn(i.status))throw new Z(K.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=ea.parse({method:"notifications/tasks/status",params:a});if(await this.notification(c),tn(a.status))this._cleanupTaskProgressHandler(n)}},listTasks:(n)=>r.listTasks(n,t)}}}function jO(e){return e!==null&&typeof e==="object"&&!Array.isArray(e)}function MO(e,t){let r={...e};for(let n in t){let o=n,s=t[o];if(s===void 0)continue;let i=r[o];if(jO(i)&&jO(s))r[o]={...i,...s};else r[o]=s}return r}var UC=$n(cy(),1),WC=$n(FC(),1);function yee(){let e=new UC.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return WC.default(e),e}class yy{constructor(e){this._ajv=e??yee()}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 by{constructor(e){this._client=e}async*callToolStream(e,t=Or,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(K.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(K.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(K.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 VC(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 ZC(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 rd(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)rd(s,r[o])}}if(Array.isArray(e.anyOf)){for(let r of e.anyOf)if(typeof r!=="boolean")rd(r,t)}if(Array.isArray(e.oneOf)){for(let r of e.oneOf)if(typeof r!=="boolean")rd(r,t)}}function bee(e){if(!e)return{supportsFormMode:!1,supportsUrlMode:!1};let t=e.form!==void 0,r=e.url!==void 0;return{supportsFormMode:t||!t&&!r,supportsUrlMode:r}}class wy extends xg{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 yy,t?.listChanged)this._pendingListChangedConfig=t.listChanged}_setupListChangedHandlers(e){if(e.tools&&this._serverCapabilities?.tools?.listChanged)this._setupListChangedHandler("tools",hg,e.tools,async()=>(await this.listTools()).tools);if(e.prompts&&this._serverCapabilities?.prompts?.listChanged)this._setupListChangedHandler("prompts",fg,e.prompts,async()=>(await this.listPrompts()).prompts);if(e.resources&&this._serverCapabilities?.resources?.listChanged)this._setupListChangedHandler("resources",ig,e.resources,async()=>(await this.listResources()).resources)}get experimental(){if(!this._experimental)this._experimental={tasks:new by(this)};return this._experimental}registerCapabilities(e){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=MO(this._capabilities,e)}setRequestHandler(e,t){let n=el(e)?.method;if(!n)throw Error("Schema is missing a method literal");let o=tl(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=Bt(wg,a);if(!u.success){let w=u.error instanceof Error?u.error.message:String(u.error);throw new Z(K.InvalidParams,`Invalid elicitation request: ${w}`)}let{params:l}=u.data;l.mode=l.mode??"form";let{supportsFormMode:d,supportsUrlMode:f}=bee(this._capabilities.elicitation);if(l.mode==="form"&&!d)throw new Z(K.InvalidParams,"Client does not support form-mode elicitation requests");if(l.mode==="url"&&!f)throw new Z(K.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(t(a,c));if(l.task){let w=Bt(Bn,m);if(!w.success){let T=w.error instanceof Error?w.error.message:String(w.error);throw new Z(K.InvalidParams,`Invalid task creation result: ${T}`)}return w.data}let h=Bt(_g,m);if(!h.success){let w=h.error instanceof Error?h.error.message:String(h.error);throw new Z(K.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{rd(y,g.content)}catch{}}return g};return super.setRequestHandler(e,i)}if(s==="sampling/createMessage"){let i=async(a,c)=>{let u=Bt(gg,a);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new Z(K.InvalidParams,`Invalid sampling request: ${g}`)}let{params:l}=u.data,d=await Promise.resolve(t(a,c));if(l.task){let g=Bt(Bn,d);if(!g.success){let y=g.error instanceof Error?g.error.message:String(g.error);throw new Z(K.InvalidParams,`Invalid task creation result: ${y}`)}return g.data}let m=l.tools||l.toolChoice?bg:yg,h=Bt(m,d);if(!h.success){let g=h.error instanceof Error?h.error.message:String(h.error);throw new Z(K.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:Uo,capabilities:this._capabilities,clientInfo:this._clientInfo}},eg,t);if(r===void 0)throw Error(`Server sent invalid initialize result: ${r}`);if(!bO.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){VC(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){if(!this._capabilities)return;ZC(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Zn,e)}async complete(e,t){return this.request({method:"completion/complete",params:e},vg,t)}async setLoggingLevel(e,t){return this.request({method:"logging/setLevel",params:{level:e}},Zn,t)}async getPrompt(e,t){return this.request({method:"prompts/get",params:e},pg,t)}async listPrompts(e,t){return this.request({method:"prompts/list",params:e},ag,t)}async listResources(e,t){return this.request({method:"resources/list",params:e},rg,t)}async listResourceTemplates(e,t){return this.request({method:"resources/templates/list",params:e},ng,t)}async readResource(e,t){return this.request({method:"resources/read",params:e},sg,t)}async subscribeResource(e,t){return this.request({method:"resources/subscribe",params:e},Zn,t)}async unsubscribeResource(e,t){return this.request({method:"resources/unsubscribe",params:e},Zn,t)}async callTool(e,t=Or,r){if(this.isToolTaskRequired(e.name))throw new Z(K.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(K.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(K.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)}catch(s){if(s instanceof Z)throw s;throw new Z(K.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},mg,t);return this.cacheToolMetadata(r.tools),r}_setupListChangedHandler(e,t,r,n){let o=NO.safeParse(r);if(!o.success)throw Error(`Invalid ${e} listChanged options: ${o.error.message}`);if(typeof r.onChanged!=="function")throw Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:s,debounceMs:i}=o.data,{onChanged:a}=r,c=async()=>{if(!s){a(null,null);return}try{let l=await n();a(null,l)}catch(l){let d=l instanceof Error?l:Error(String(l));a(d,null)}},u=()=>{if(i){let l=this._listChangedDebounceTimers.get(e);if(l)clearTimeout(l);let d=setTimeout(c,i);this._listChangedDebounceTimers.set(e,d)}else c()};this.setNotificationHandler(t,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}/*!
|
|
546
|
+
`),k$(xt.default.dim("Setting up Tripwire in your coding agents")),i.length===0)return Ne.warn("No AI coding tools found"),ki("Install a supported coding agent, then run this again."),1;Ne.step(`Detected ${UP.format(i.map(({agent:h})=>h.name))}`);let c=i;if(s){let h=await U3(i);if(h===null)return iu("Cancelled"),1;c=h}if(c.length===0)return ki("No agents selected"),0;let u=s?xi():null;u?.start("Installing the Tripwire MCP and skill");let l=await Promise.all(c.map(async({agent:h})=>({agent:h,result:await lg(h,r,a)})));if(u?.stop("Installed the Tripwire MCP and skill"),!u)Ne.step("Installed the Tripwire MCP and skill");for(let h of l)(h.result.kind==="done"?Ne.success:Ne.error)(`${h.agent.name}
|
|
547
|
+
${q3(e,h)}`);let d=!0;if(s){if(d=await Z3(e,l),l.some(({result:h})=>h.kind==="done"))await K3(e,n)}else B3(l,o,n);let f=l.filter(({result:h})=>h.kind==="done").map(({agent:h})=>h.name);if(f.length>0)ki(`Done. Restart ${UP.format(f)}.`);else ki("Nothing was installed");return l.every(({result:h})=>h.kind==="done")&&d?0:1}import{dirname as jd,resolve as Sz}from"node:path";import{chmodSync as H3,mkdirSync as G3,readFileSync as J3,renameSync as Y3,rmSync as X3,writeFileSync as Q3}from"node:fs";import{join as dg}from"node:path";var eJ=w({accessToken:p().min(1),refreshToken:p().min(1).optional(),expiresAt:P().optional(),mcpUrl:p(),authUrl:p()}),al="tripwire-cli",cl="default";function fg(e){if(!e)return null;try{let t=eJ.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}function tJ(e){return dg(e.env.XDG_CONFIG_HOME||dg(e.home,".config"),"tripwire","credentials.json")}function pg(e){let t=tJ(e);return{kind:"file",location:t,read:async()=>{try{return fg(J3(t,"utf8"))}catch{return null}},write:async(r)=>{let n=dg(t,"..");G3(n,{recursive:!0,mode:448});let o=`${t}.${process.pid}.tmp`;Q3(o,JSON.stringify(r),{mode:384}),H3(o,384),Y3(o,t)},clear:async()=>{X3(t,{force:!0})}}}function rJ(e){return Buffer.from(e,"utf8").toString("hex")}function nJ(e,t){return{kind:"keychain",location:"macOS keychain",read:async()=>{let r=await e.run(t,["find-generic-password","-a",cl,"-s",al,"-w"]);return r.ok?fg(r.stdout):null},write:async(r)=>{let n=`add-generic-password -U -a ${cl} -s ${al} -l Tripwire -X ${rJ(JSON.stringify(r))}
|
|
548
|
+
`;if(!(await e.run(t,["-i"],n)).ok)throw Error("Could not save the token to the macOS keychain")},clear:async()=>{await e.run(t,["delete-generic-password","-a",cl,"-s",al])}}}function oJ(e,t){let r=["service",al,"account",cl];return{kind:"secret-service",location:"Secret Service keyring",read:async()=>{let n=await e.run(t,["lookup",...r]);return n.ok?fg(n.stdout):null},write:async(n)=>{if(!(await e.run(t,["store","--label=Tripwire",...r],JSON.stringify(n))).ok)throw Error("Could not save the token to the keyring")},clear:async()=>{await e.run(t,["clear",...r])}}}function BP(e,t){let r=pg(t);return{kind:e.kind,location:e.location,read:async()=>await e.read()??await r.read(),write:(n)=>e.write(n),clear:async()=>{await e.clear(),await r.clear()}}}function Ho(e){if(e.env.TRIPWIRE_CREDENTIAL_STORE==="file")return pg(e);if(e.platform==="darwin"){let t=e.which("security");if(t)return BP(nJ(e,t),e)}if(e.platform==="linux"){let t=e.which("secret-tool");if(t)return BP(oJ(e,t),e)}return pg(e)}class ta extends Error{constructor(e="Not signed in. Run tripwire login."){super(e);this.name="NotSignedInError"}}var sJ=30000;async function mg(e,t){let r=go(e.env),n=e.env.TRIPWIRE_TOKEN;if(n)return{token:n,mcpUrl:r,source:"env"};let o=Ho(e),s=await o.read();if(!s)throw new ta;if(s.expiresAt&&s.expiresAt-sJ<t.now()){let i=await Ak(t,s).catch((a)=>{if(a instanceof Ys)throw a;throw new ta("Session expired. Run tripwire login.")});return await o.write(i),{token:i.accessToken,mcpUrl:e.env.TRIPWIRE_MCP_URL||i.mcpUrl,source:o.kind}}return{token:s.accessToken,mcpUrl:e.env.TRIPWIRE_MCP_URL||s.mcpUrl,source:o.kind}}function ul(e){return!!e._zod}function Jt(e,t){if(ul(e))return ap(e,t);return e.safeParse(t)}function ll(e){if(!e)return;let t;if(ul(e))t=e._zod?.def?.shape;else t=e.shape;if(!t)return;if(typeof t==="function")try{return t()}catch{return}return t}function dl(e){if(ul(e)){let s=e._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=e._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=e.value;if(n!==void 0)return n;return}var Jo="2025-11-25";var KP=[Jo,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],an="io.modelcontextprotocol/related-task",fl="2.0",Ue=mc((e)=>e!==null&&(typeof e==="object"||typeof e==="function")),HP=te([p(),P().int()]),GP=p(),Jye=ve({ttl:P().optional(),pollInterval:P().optional()}),cJ=w({ttl:P().optional()}),uJ=w({taskId:p()}),hg=ve({progressToken:HP.optional(),[an]:uJ.optional()}),$t=w({_meta:hg.optional()}),ra=$t.extend({task:cJ.optional()}),JP=(e)=>ra.safeParse(e).success,Ye=w({method:p(),params:$t.loose().optional()}),Dt=w({_meta:hg.optional()}),Mt=w({method:p(),params:Dt.loose().optional()}),Xe=ve({_meta:hg.optional()}),ml=te([p(),P().int()]),YP=w({jsonrpc:C(fl),id:ml,...Ye.shape}).strict(),na=(e)=>YP.safeParse(e).success,XP=w({jsonrpc:C(fl),...Mt.shape}).strict(),QP=(e)=>XP.safeParse(e).success,gg=w({jsonrpc:C(fl),id:ml,result:Xe}).strict(),Gn=(e)=>gg.safeParse(e).success;var H;(function(e){e[e.ConnectionClosed=-32000]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(H||(H={}));var yg=w({jsonrpc:C(fl),id:ml.optional(),error:w({code:P().int(),message:p(),data:ne().optional()})}).strict();var eO=(e)=>yg.safeParse(e).success;var hl=te([YP,XP,gg,yg]),Yye=te([gg,yg]),Jn=Xe.strict(),lJ=Dt.extend({requestId:ml.optional(),reason:p().optional()}),gl=Mt.extend({method:C("notifications/cancelled"),params:lJ}),dJ=w({src:p(),mimeType:p().optional(),sizes:k(p()).optional(),theme:z(["light","dark"]).optional()}),oa=w({icons:k(dJ).optional()}),Go=w({name:p(),title:p().optional()}),tO=Go.extend({...Go.shape,...oa.shape,version:p(),websiteUrl:p().optional(),description:p().optional()}),pJ=fc(w({applyDefaults:D().optional()}),K(p(),ne())),fJ=hc((e)=>{if(e&&typeof e==="object"&&!Array.isArray(e)){if(Object.keys(e).length===0)return{form:{}}}return e},fc(w({form:pJ.optional(),url:Ue.optional()}),K(p(),ne()).optional())),mJ=ve({list:Ue.optional(),cancel:Ue.optional(),requests:ve({sampling:ve({createMessage:Ue.optional()}).optional(),elicitation:ve({create:Ue.optional()}).optional()}).optional()}),hJ=ve({list:Ue.optional(),cancel:Ue.optional(),requests:ve({tools:ve({call:Ue.optional()}).optional()}).optional()}),gJ=w({experimental:K(p(),Ue).optional(),sampling:w({context:Ue.optional(),tools:Ue.optional()}).optional(),elicitation:fJ.optional(),roots:w({listChanged:D().optional()}).optional(),tasks:mJ.optional(),extensions:K(p(),Ue).optional()}),yJ=$t.extend({protocolVersion:p(),capabilities:gJ,clientInfo:tO}),wJ=Ye.extend({method:C("initialize"),params:yJ});var bJ=w({experimental:K(p(),Ue).optional(),logging:Ue.optional(),completions:Ue.optional(),prompts:w({listChanged:D().optional()}).optional(),resources:w({subscribe:D().optional(),listChanged:D().optional()}).optional(),tools:w({listChanged:D().optional()}).optional(),tasks:hJ.optional(),extensions:K(p(),Ue).optional()}),wg=Xe.extend({protocolVersion:p(),capabilities:bJ,serverInfo:tO,instructions:p().optional()}),rO=Mt.extend({method:C("notifications/initialized"),params:Dt.optional()}),nO=(e)=>rO.safeParse(e).success,yl=Ye.extend({method:C("ping"),params:$t.optional()}),_J=w({progress:P(),total:Te(P()),message:Te(p())}),vJ=w({...Dt.shape,..._J.shape,progressToken:HP}),wl=Mt.extend({method:C("notifications/progress"),params:vJ}),SJ=$t.extend({cursor:GP.optional()}),sa=Ye.extend({params:SJ.optional()}),ia=Xe.extend({nextCursor:GP.optional()}),kJ=z(["working","input_required","completed","failed","cancelled"]),aa=w({taskId:p(),status:kJ,ttl:te([P(),Hs()]),createdAt:p(),lastUpdatedAt:p(),pollInterval:Te(P()),statusMessage:Te(p())}),Yn=Xe.extend({task:aa}),xJ=Dt.merge(aa),ca=Mt.extend({method:C("notifications/tasks/status"),params:xJ}),bl=Ye.extend({method:C("tasks/get"),params:$t.extend({taskId:p()})}),_l=Xe.merge(aa),vl=Ye.extend({method:C("tasks/result"),params:$t.extend({taskId:p()})}),Xye=Xe.loose(),Sl=sa.extend({method:C("tasks/list")}),kl=ia.extend({tasks:k(aa)}),xl=Ye.extend({method:C("tasks/cancel"),params:$t.extend({taskId:p()})}),oO=Xe.merge(aa),sO=w({uri:p(),mimeType:Te(p()),_meta:K(p(),ne()).optional()}),iO=sO.extend({text:p()}),bg=p().refine((e)=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),aO=sO.extend({blob:bg}),ua=z(["user","assistant"]),Yo=w({audience:k(ua).optional(),priority:P().min(0).max(1).optional(),lastModified:wk({offset:!0}).optional()}),cO=w({...Go.shape,...oa.shape,uri:p(),description:Te(p()),mimeType:Te(p()),size:Te(P()),annotations:Yo.optional(),_meta:Te(ve({}))}),$J=w({...Go.shape,...oa.shape,uriTemplate:p(),description:Te(p()),mimeType:Te(p()),annotations:Yo.optional(),_meta:Te(ve({}))}),TJ=sa.extend({method:C("resources/list")}),_g=ia.extend({resources:k(cO)}),EJ=sa.extend({method:C("resources/templates/list")}),vg=ia.extend({resourceTemplates:k($J)}),Sg=$t.extend({uri:p()}),PJ=Sg,OJ=Ye.extend({method:C("resources/read"),params:PJ}),kg=Xe.extend({contents:k(te([iO,aO]))}),xg=Mt.extend({method:C("notifications/resources/list_changed"),params:Dt.optional()}),IJ=Sg,AJ=Ye.extend({method:C("resources/subscribe"),params:IJ}),RJ=Sg,CJ=Ye.extend({method:C("resources/unsubscribe"),params:RJ}),zJ=Dt.extend({uri:p()}),NJ=Mt.extend({method:C("notifications/resources/updated"),params:zJ}),LJ=w({name:p(),description:Te(p()),required:Te(D())}),jJ=w({...Go.shape,...oa.shape,description:Te(p()),arguments:Te(k(LJ)),_meta:Te(ve({}))}),DJ=sa.extend({method:C("prompts/list")}),$g=ia.extend({prompts:k(jJ)}),MJ=$t.extend({name:p(),arguments:K(p(),p()).optional()}),qJ=Ye.extend({method:C("prompts/get"),params:MJ}),Tg=w({type:C("text"),text:p(),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),Eg=w({type:C("image"),data:bg,mimeType:p(),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),Pg=w({type:C("audio"),data:bg,mimeType:p(),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),FJ=w({type:C("tool_use"),name:p(),id:p(),input:K(p(),ne()),_meta:K(p(),ne()).optional()}),UJ=w({type:C("resource"),resource:te([iO,aO]),annotations:Yo.optional(),_meta:K(p(),ne()).optional()}),WJ=cO.extend({type:C("resource_link")}),Og=te([Tg,Eg,Pg,WJ,UJ]),VJ=w({role:ua,content:Og}),Ig=Xe.extend({description:p().optional(),messages:k(VJ)}),Ag=Mt.extend({method:C("notifications/prompts/list_changed"),params:Dt.optional()}),ZJ=w({title:p().optional(),readOnlyHint:D().optional(),destructiveHint:D().optional(),idempotentHint:D().optional(),openWorldHint:D().optional()}),BJ=w({taskSupport:z(["required","optional","forbidden"]).optional()}),uO=w({...Go.shape,...oa.shape,description:p().optional(),inputSchema:w({type:C("object"),properties:K(p(),Ue).optional(),required:k(p()).optional()}).catchall(ne()),outputSchema:w({type:C("object"),properties:K(p(),Ue).optional(),required:k(p()).optional()}).catchall(ne()).optional(),annotations:ZJ.optional(),execution:BJ.optional(),_meta:K(p(),ne()).optional()}),KJ=sa.extend({method:C("tools/list")}),Rg=ia.extend({tools:k(uO)}),Ar=Xe.extend({content:k(Og).default([]),structuredContent:K(p(),ne()).optional(),isError:D().optional()}),Qye=Ar.or(Xe.extend({toolResult:ne()})),HJ=ra.extend({name:p(),arguments:K(p(),ne()).optional()}),GJ=Ye.extend({method:C("tools/call"),params:HJ}),Cg=Mt.extend({method:C("notifications/tools/list_changed"),params:Dt.optional()}),lO=w({autoRefresh:D().default(!0),debounceMs:P().int().nonnegative().default(300)}),dO=z(["debug","info","notice","warning","error","critical","alert","emergency"]),JJ=$t.extend({level:dO}),YJ=Ye.extend({method:C("logging/setLevel"),params:JJ}),XJ=Dt.extend({level:dO,logger:p().optional(),data:ne()}),QJ=Mt.extend({method:C("notifications/message"),params:XJ}),e6=w({name:p().optional()}),t6=w({hints:k(e6).optional(),costPriority:P().min(0).max(1).optional(),speedPriority:P().min(0).max(1).optional(),intelligencePriority:P().min(0).max(1).optional()}),r6=w({mode:z(["auto","required","none"]).optional()}),n6=w({type:C("tool_result"),toolUseId:p().describe("The unique identifier for the corresponding tool call."),content:k(Og).default([]),structuredContent:w({}).loose().optional(),isError:D().optional(),_meta:K(p(),ne()).optional()}),o6=It("type",[Tg,Eg,Pg]),pl=It("type",[Tg,Eg,Pg,FJ,n6]),s6=w({role:ua,content:te([pl,k(pl)]),_meta:K(p(),ne()).optional()}),i6=ra.extend({messages:k(s6),modelPreferences:t6.optional(),systemPrompt:p().optional(),includeContext:z(["none","thisServer","allServers"]).optional(),temperature:P().optional(),maxTokens:P().int(),stopSequences:k(p()).optional(),metadata:Ue.optional(),tools:k(uO).optional(),toolChoice:r6.optional()}),zg=Ye.extend({method:C("sampling/createMessage"),params:i6}),Ng=Xe.extend({model:p(),stopReason:Te(z(["endTurn","stopSequence","maxTokens"]).or(p())),role:ua,content:o6}),Lg=Xe.extend({model:p(),stopReason:Te(z(["endTurn","stopSequence","maxTokens","toolUse"]).or(p())),role:ua,content:te([pl,k(pl)])}),a6=w({type:C("boolean"),title:p().optional(),description:p().optional(),default:D().optional()}),c6=w({type:C("string"),title:p().optional(),description:p().optional(),minLength:P().optional(),maxLength:P().optional(),format:z(["email","uri","date","date-time"]).optional(),default:p().optional()}),u6=w({type:z(["number","integer"]),title:p().optional(),description:p().optional(),minimum:P().optional(),maximum:P().optional(),default:P().optional()}),l6=w({type:C("string"),title:p().optional(),description:p().optional(),enum:k(p()),default:p().optional()}),d6=w({type:C("string"),title:p().optional(),description:p().optional(),oneOf:k(w({const:p(),title:p()})),default:p().optional()}),p6=w({type:C("string"),title:p().optional(),description:p().optional(),enum:k(p()),enumNames:k(p()).optional(),default:p().optional()}),f6=te([l6,d6]),m6=w({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:w({type:C("string"),enum:k(p())}),default:k(p()).optional()}),h6=w({type:C("array"),title:p().optional(),description:p().optional(),minItems:P().optional(),maxItems:P().optional(),items:w({anyOf:k(w({const:p(),title:p()}))}),default:k(p()).optional()}),g6=te([m6,h6]),y6=te([p6,f6,g6]),w6=te([y6,a6,c6,u6]),b6=ra.extend({mode:C("form").optional(),message:p(),requestedSchema:w({type:C("object"),properties:K(p(),w6),required:k(p()).optional()})}),_6=ra.extend({mode:C("url"),message:p(),elicitationId:p(),url:p().url()}),v6=te([b6,_6]),jg=Ye.extend({method:C("elicitation/create"),params:v6}),S6=Dt.extend({elicitationId:p()}),k6=Mt.extend({method:C("notifications/elicitation/complete"),params:S6}),Dg=Xe.extend({action:z(["accept","decline","cancel"]),content:hc((e)=>e===null?void 0:e,K(p(),te([p(),P(),D(),k(p())])).optional())}),x6=w({type:C("ref/resource"),uri:p()});var $6=w({type:C("ref/prompt"),name:p()}),T6=$t.extend({ref:te([$6,x6]),argument:w({name:p(),value:p()}),context:w({arguments:K(p(),p()).optional()}).optional()}),E6=Ye.extend({method:C("completion/complete"),params:T6});var Mg=Xe.extend({completion:ve({values:k(p()).max(100),total:Te(P().int()),hasMore:Te(D())})}),P6=w({uri:p().startsWith("file://"),name:p().optional(),_meta:K(p(),ne()).optional()}),O6=Ye.extend({method:C("roots/list"),params:$t.optional()}),I6=Xe.extend({roots:k(P6)}),A6=Mt.extend({method:C("notifications/roots/list_changed"),params:Dt.optional()}),ewe=te([yl,wJ,E6,YJ,qJ,DJ,TJ,EJ,OJ,AJ,CJ,GJ,KJ,bl,vl,Sl,xl]),twe=te([gl,wl,rO,A6,ca]),rwe=te([Jn,Ng,Lg,Dg,I6,_l,kl,Yn]),nwe=te([yl,zg,jg,O6,bl,vl,Sl,xl]),owe=te([gl,wl,QJ,NJ,xg,Cg,Ag,ca,k6]),swe=te([Jn,wg,Mg,Ig,$g,_g,vg,kg,Ar,Rg,_l,kl,Yn]);class Z extends Error{constructor(e,t,r){super(`MCP error ${e}: ${t}`);this.code=e,this.data=r,this.name="McpError"}static fromError(e,t,r){if(e===H.UrlElicitationRequired&&r){let n=r;if(n.elicitations)return new pO(n.elicitations,t)}return new Z(e,t,r)}}class pO extends Z{constructor(e,t=`URL elicitation${e.length>1?"s":""} required`){super(H.UrlElicitationRequired,t,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}function cn(e){return e==="completed"||e==="failed"||e==="cancelled"}var R6=Symbol("Let zodToJsonSchema decide on which parser to use");var Dwe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function qg(e){let r=ll(e)?.method;if(!r)throw Error("Schema is missing a method literal");let n=dl(r);if(typeof n!=="string")throw Error("Schema method literal must be a string");return n}function Fg(e,t){let r=Jt(e,t);if(!r.success)throw r.error;return r.data}var D6=60000;class Ug{constructor(e){if(this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(gl,(t)=>{this._oncancel(t)}),this.setNotificationHandler(wl,(t)=>{this._onprogress(t)}),this.setRequestHandler(yl,(t)=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore)this.setRequestHandler(bl,async(t,r)=>{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(H.InvalidParams,"Failed to retrieve task: Task not found");return{...n}}),this.setRequestHandler(vl,async(t,r)=>{let n=async()=>{let o=t.params.taskId;if(!await this._taskStore.getTask(o,r.sessionId))throw new Z(H.InvalidParams,`Task not found: ${o}`);if(this._taskMessageQueue){let i;while(i=await this._taskMessageQueue.dequeue(o,r.sessionId)){if(i.type==="response"||i.type==="error"){let a=i.message,c=a.id,u=this._requestResolvers.get(c);if(u)if(this._requestResolvers.delete(c),i.type==="response")u(a);else{let l=a,d=new Z(l.error.code,l.error.message,l.error.data);u(d)}else{let l=i.type==="response"?"Response":"Error";this._onerror(Error(`${l} handler missing for request ${c}`))}continue}await this._transport?.send(i.message,{relatedRequestId:r.requestId})}}let s=await this._taskStore.getTask(o,r.sessionId);if(!s)throw new Z(H.InvalidParams,`Task not found: ${o}`);if(!cn(s.status))return await this._waitForTaskUpdate(o,r.signal,r.sessionId),await n();if(cn(s.status)){let i=await this._taskStore.getTaskResult(o,r.sessionId);return this._clearTaskQueue(o,r.sessionId),{...i,_meta:{...i._meta,[an]:{taskId:o}}}}return await n()};return await n()}),this.setRequestHandler(Sl,async(t,r)=>{try{let{tasks:n,nextCursor:o}=await this._taskStore.listTasks(t.params?.cursor,r.sessionId);return{tasks:n,nextCursor:o,_meta:{}}}catch(n){throw new Z(H.InvalidParams,`Failed to list tasks: ${n instanceof Error?n.message:String(n)}`)}}),this.setRequestHandler(xl,async(t,r)=>{try{let n=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!n)throw new Z(H.InvalidParams,`Task not found: ${t.params.taskId}`);if(cn(n.status))throw new Z(H.InvalidParams,`Cannot cancel task in terminal status: ${n.status}`);await this._taskStore.updateTaskStatus(t.params.taskId,"cancelled","Client cancelled task execution.",r.sessionId),this._clearTaskQueue(t.params.taskId,r.sessionId);let o=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!o)throw new Z(H.InvalidParams,`Task not found after cancellation: ${t.params.taskId}`);return{_meta:{},...o}}catch(n){if(n instanceof Z)throw n;throw new Z(H.InvalidRequest,`Failed to cancel task: ${n instanceof Error?n.message:String(n)}`)}})}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,t,r,n,o=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(n,t),startTime:Date.now(),timeout:t,maxTotalTimeout:r,resetTimeoutOnProgress:o,onTimeout:n})}_resetTimeout(e){let t=this._timeoutInfo.get(e);if(!t)return!1;let r=Date.now()-t.startTime;if(t.maxTotalTimeout&&r>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),Z.fromError(H.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:r});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){let t=this._timeoutInfo.get(e);if(t)clearTimeout(t.timeoutId),this._timeoutInfo.delete(e)}async connect(e){if(this._transport)throw Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let t=this.transport?.onclose;this._transport.onclose=()=>{t?.(),this._onclose()};let r=this.transport?.onerror;this._transport.onerror=(o)=>{r?.(o),this._onerror(o)};let n=this._transport?.onmessage;this._transport.onmessage=(o,s)=>{if(n?.(o,s),Gn(o)||eO(o))this._onresponse(o);else if(na(o))this._onrequest(o,s);else if(QP(o))this._onnotification(o);else this._onerror(Error(`Unknown message type: ${JSON.stringify(o)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let r of this._timeoutInfo.values())clearTimeout(r.timeoutId);this._timeoutInfo.clear();for(let r of this._requestHandlerAbortControllers.values())r.abort();this._requestHandlerAbortControllers.clear();let t=Z.fromError(H.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let r of e.values())r(t)}_onerror(e){this.onerror?.(e)}_onnotification(e){let t=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;if(t===void 0)return;Promise.resolve().then(()=>t(e)).catch((r)=>this._onerror(Error(`Uncaught error in notification handler: ${r}`)))}_onrequest(e,t){let r=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,n=this._transport,o=e.params?._meta?.[an]?.taskId,s=n?.sessionId,i=this._taskStore,a=!0,c;if(o&&i&&this._taskMessageQueue&&s!==void 0)a=!1,c=(async()=>{if(!await i.getTask(o,s))throw new Z(H.InvalidParams,`Task not found: ${o}`);a=!0})();if(r===void 0){let m={jsonrpc:"2.0",id:e.id,error:{code:H.MethodNotFound,message:"Method not found"}};if(o&&c){let h={type:"error",message:m,timestamp:Date.now()};c.then(()=>this._enqueueTaskMessage(o,h,s),()=>n?.send(m)).catch((g)=>this._onerror(Error(`Failed to send an error response: ${g}`)))}else if(o&&this._taskMessageQueue)this._enqueueTaskMessage(o,{type:"error",message:m,timestamp:Date.now()},n?.sessionId).catch((h)=>this._onerror(Error(`Failed to enqueue error response: ${h}`)));else n?.send(m).catch((h)=>this._onerror(Error(`Failed to send an error response: ${h}`)));return}let u=new AbortController;this._requestHandlerAbortControllers.set(e.id,u);let l=JP(e.params)?e.params.task:void 0,d=this._taskStore?this.requestTaskStore(e,n?.sessionId):void 0,f={signal:u.signal,sessionId:n?.sessionId,_meta:e.params?._meta,sendNotification:async(m)=>{if(u.signal.aborted)return;let h={relatedRequestId:e.id};if(o)h.relatedTask={taskId:o};await this.notification(m,h)},sendRequest:async(m,h,g)=>{if(u.signal.aborted)throw new Z(H.ConnectionClosed,"Request was cancelled");let y={...g,relatedRequestId:e.id};if(o&&!y.relatedTask)y.relatedTask={taskId:o};let b=y.relatedTask?.taskId??o;if(b&&d)await d.updateTaskStatus(b,"input_required");return await this.request(m,h,y)},authInfo:t?.authInfo,requestId:e.id,requestInfo:t?.requestInfo,taskId:o,taskStore:d,taskRequestedTtl:l?.ttl,closeSSEStream:t?.closeSSEStream,closeStandaloneSSEStream:t?.closeStandaloneSSEStream};(c??Promise.resolve()).then(()=>{if(c&&u.signal.aborted)throw new Z(H.ConnectionClosed,"Request was cancelled");if(l)this.assertTaskHandlerCapability(e.method)}).then(()=>r(e,f)).then(async(m)=>{if(u.signal.aborted)return;let h={result:m,jsonrpc:"2.0",id:e.id};if(o&&this._taskMessageQueue)await this._enqueueTaskMessage(o,{type:"response",message:h,timestamp:Date.now()},n?.sessionId);else await n?.send(h)},async(m)=>{if(u.signal.aborted)return;let h={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(m.code)?m.code:H.InternalError,message:m.message??"Internal error",...m.data!==void 0&&{data:m.data}}};if(o&&this._taskMessageQueue&&a)await this._enqueueTaskMessage(o,{type:"error",message:h,timestamp:Date.now()},n?.sessionId);else await n?.send(h)}).catch((m)=>this._onerror(Error(`Failed to send response: ${m}`))).finally(()=>{if(this._requestHandlerAbortControllers.get(e.id)===u)this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:t,...r}=e.params,n=Number(t),o=this._progressHandlers.get(n);if(!o){this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let s=this._responseHandlers.get(n),i=this._timeoutInfo.get(n);if(i&&s&&i.resetTimeoutOnProgress)try{this._resetTimeout(n)}catch(a){this._responseHandlers.delete(n),this._progressHandlers.delete(n),this._cleanupTimeout(n),s(a);return}o(r)}_onresponse(e){let t=Number(e.id),r=this._requestResolvers.get(t);if(r){if(this._requestResolvers.delete(t),Gn(e))r(e);else{let s=new Z(e.error.code,e.error.message,e.error.data);r(s)}return}let n=this._responseHandlers.get(t);if(n===void 0){this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(t),this._cleanupTimeout(t);let o=!1;if(Gn(e)&&e.result&&typeof e.result==="object"){let s=e.result;if(s.task&&typeof s.task==="object"){let i=s.task;if(typeof i.taskId==="string")o=!0,this._taskProgressTokens.set(i.taskId,t)}}if(!o)this._progressHandlers.delete(t);if(Gn(e))n(e);else{let s=Z.fromError(e.error.code,e.error.message,e.error.data);n(s)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,t,r){let{task:n}=r??{};if(!n){try{yield{type:"result",result:await this.request(e,t,r)}}catch(s){yield{type:"error",error:s instanceof Z?s:new Z(H.InternalError,String(s))}}return}let o;try{let s=await this.request(e,Yn,r);if(s.task)o=s.task.taskId,yield{type:"taskCreated",task:s.task};else throw new Z(H.InternalError,"Task creation did not return a task");while(!0){let i=await this.getTask({taskId:o},r);if(yield{type:"taskStatus",task:i},cn(i.status)){if(i.status==="completed")yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)};else if(i.status==="failed")yield{type:"error",error:new Z(H.InternalError,`Task ${o} failed`)};else if(i.status==="cancelled")yield{type:"error",error:new Z(H.InternalError,`Task ${o} was cancelled`)};return}if(i.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)};return}let a=i.pollInterval??this._options?.defaultTaskPollInterval??1000;await new Promise((c)=>setTimeout(c,a)),r?.signal?.throwIfAborted()}}catch(s){yield{type:"error",error:s instanceof Z?s:new Z(H.InternalError,String(s))}}}request(e,t,r){let{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s,task:i,relatedTask:a}=r??{};return new Promise((c,u)=>{let l=(b)=>{u(b)};if(!this._transport){l(Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{if(this.assertCapabilityForMethod(e.method),i)this.assertTaskCapability(e.method)}catch(b){l(b);return}r?.signal?.throwIfAborted();let d=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:d};if(r?.onprogress)this._progressHandlers.set(d,r.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}};if(i)f.params={...f.params,task:i};if(a)f.params={...f.params,_meta:{...f.params?._meta||{},[an]:a}};let m=(b)=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:d,reason:String(b)}},{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((S)=>this._onerror(Error(`Failed to send cancellation: ${S}`)));let T=b instanceof Z?b:new Z(H.RequestTimeout,String(b));u(T)};this._responseHandlers.set(d,(b)=>{if(r?.signal?.aborted)return;if(b instanceof Error)return u(b);try{let T=Jt(t,b.result);if(!T.success)u(T.error);else c(T.data)}catch(T){u(T)}}),r?.signal?.addEventListener("abort",()=>{m(r?.signal?.reason)});let h=r?.timeout??D6,g=()=>m(Z.fromError(H.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(d,h,r?.maxTotalTimeout,g,r?.resetTimeoutOnProgress??!1);let y=a?.taskId;if(y){let b=(T)=>{let S=this._responseHandlers.get(d);if(S)S(T);else this._onerror(Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,b),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch((T)=>{this._cleanupTimeout(d),u(T)})}else this._transport.send(f,{relatedRequestId:n,resumptionToken:o,onresumptiontoken:s}).catch((b)=>{this._cleanupTimeout(d),u(b)})})}async getTask(e,t){return this.request({method:"tasks/get",params:e},_l,t)}async getTaskResult(e,t,r){return this.request({method:"tasks/result",params:e},t,r)}async listTasks(e,t){return this.request({method:"tasks/list",params:e},kl,t)}async cancelTask(e,t){return this.request({method:"tasks/cancel",params:e},oO,t)}async notification(e,t){if(!this._transport)throw Error("Not connected");this.assertNotificationCapability(e.method);let r=t?.relatedTask?.taskId;if(r){let i={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[an]:t.relatedTask}}};await this._enqueueTaskMessage(r,{type:"notification",message:i,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!t?.relatedRequestId&&!t?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let i={...e,jsonrpc:"2.0"};if(t?.relatedTask)i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[an]:t.relatedTask}}};this._transport?.send(i,t).catch((a)=>this._onerror(a))});return}let s={...e,jsonrpc:"2.0"};if(t?.relatedTask)s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[an]:t.relatedTask}}};await this._transport.send(s,t)}setRequestHandler(e,t){let r=qg(e);this.assertRequestHandlerCapability(r),this._requestHandlers.set(r,(n,o)=>{let s=Fg(e,n);return Promise.resolve(t(s,o))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){let r=qg(e);this._notificationHandlers.set(r,(n)=>{let o=Fg(e,n);return Promise.resolve(t(o))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let t=this._taskProgressTokens.get(e);if(t!==void 0)this._progressHandlers.delete(t),this._taskProgressTokens.delete(e)}async _enqueueTaskMessage(e,t,r){if(!this._taskStore||!this._taskMessageQueue)throw Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let n=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,t,r??this._transport?.sessionId,n)}async _clearTaskQueue(e,t){if(this._taskMessageQueue){let r=await this._taskMessageQueue.dequeueAll(e,t);for(let n of r)if(n.type==="request"&&na(n.message)){let o=n.message.id,s=this._requestResolvers.get(o);if(s)s(new Z(H.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(o);else this._onerror(Error(`Resolver missing for request ${o} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,t,r){let n=this._options?.defaultTaskPollInterval??1000;try{let o=await this._taskStore?.getTask(e,r);if(o?.pollInterval)n=o.pollInterval}catch{}return new Promise((o,s)=>{if(t.aborted){s(new Z(H.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);t.addEventListener("abort",()=>{clearTimeout(i),s(new Z(H.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,t){let r=this._taskStore;if(!r)throw Error("No task store configured");return{createTask:async(n)=>{if(!e)throw Error("No request provided");return await r.createTask(n,e.id,{method:e.method,params:e.params},t)},getTask:async(n)=>{let o=await r.getTask(n,t);if(!o)throw new Z(H.InvalidParams,"Failed to retrieve task: Task not found");return o},storeTaskResult:async(n,o,s)=>{await r.storeTaskResult(n,o,s,t);let i=await r.getTask(n,t);if(i){let a=ca.parse({method:"notifications/tasks/status",params:i});if(await this.notification(a),cn(i.status))this._cleanupTaskProgressHandler(n)}},getTaskResult:(n)=>r.getTaskResult(n,t),updateTaskStatus:async(n,o,s)=>{let i=await r.getTask(n,t);if(!i)throw new Z(H.InvalidParams,`Task "${n}" not found - it may have been cleaned up`);if(cn(i.status))throw new Z(H.InvalidParams,`Cannot update task "${n}" from terminal status "${i.status}" to "${o}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await r.updateTaskStatus(n,o,s,t);let a=await r.getTask(n,t);if(a){let c=ca.parse({method:"notifications/tasks/status",params:a});if(await this.notification(c),cn(a.status))this._cleanupTaskProgressHandler(n)}},listTasks:(n)=>r.listTasks(n,t)}}}function fO(e){return e!==null&&typeof e==="object"&&!Array.isArray(e)}function mO(e,t){let r={...e};for(let n in t){let o=n,s=t[o];if(s===void 0)continue;let i=r[o];if(fO(i)&&fO(s))r[o]={...i,...s};else r[o]=s}return r}var y1=In(Ty(),1),w1=In(g1(),1);function kte(){let e=new y1.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return w1.default(e),e}class Ny{constructor(e){this._ajv=e??kte()}getValidator(e){let t="$id"in e&&typeof e.$id==="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return(r)=>{if(t(r))return{valid:!0,data:r,errorMessage:void 0};else return{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(t.errors)}}}}class Ly{constructor(e){this._client=e}async*callToolStream(e,t=Ar,r){let n=this._client,o={...r,task:r?.task??(n.isToolTask(e.name)?{}:void 0)},s=n.requestStream({method:"tools/call",params:e},t,o),i=n.getToolOutputValidator(e.name);for await(let a of s){if(a.type==="result"&&i){let c=a.result;if(!c.structuredContent&&!c.isError){yield{type:"error",error:new Z(H.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(c.structuredContent)try{let u=i(c.structuredContent);if(!u.valid){yield{type:"error",error:new Z(H.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof Z){yield{type:"error",error:u};return}yield{type:"error",error:new Z(H.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};return}}yield a}}async getTask(e,t){return this._client.getTask({taskId:e},t)}async getTaskResult(e,t,r){return this._client.getTaskResult({taskId:e},t,r)}async listTasks(e,t){return this._client.listTasks(e?{cursor:e}:void 0,t)}async cancelTask(e,t){return this._client.cancelTask({taskId:e},t)}requestStream(e,t,r){return this._client.requestStream(e,t,r)}}function b1(e,t,r){if(!e)throw Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function _1(e,t,r){if(!e)throw Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}function pd(e,t){if(!e||t===null||typeof t!=="object")return;if(e.type==="object"&&e.properties&&typeof e.properties==="object"){let r=t,n=e.properties;for(let o of Object.keys(n)){let s=n[o];if(r[o]===void 0&&Object.prototype.hasOwnProperty.call(s,"default"))r[o]=s.default;if(r[o]!==void 0)pd(s,r[o])}}if(Array.isArray(e.anyOf)){for(let r of e.anyOf)if(typeof r!=="boolean")pd(r,t)}if(Array.isArray(e.oneOf)){for(let r of e.oneOf)if(typeof r!=="boolean")pd(r,t)}}function xte(e){if(!e)return{supportsFormMode:!1,supportsUrlMode:!1};let t=e.form!==void 0,r=e.url!==void 0;return{supportsFormMode:t||!t&&!r,supportsUrlMode:r}}class jy extends Ug{constructor(e,t){super(t);if(this._clientInfo=e,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=t?.capabilities??{},this._jsonSchemaValidator=t?.jsonSchemaValidator??new Ny,t?.listChanged)this._pendingListChangedConfig=t.listChanged}_setupListChangedHandlers(e){if(e.tools&&this._serverCapabilities?.tools?.listChanged)this._setupListChangedHandler("tools",Cg,e.tools,async()=>(await this.listTools()).tools);if(e.prompts&&this._serverCapabilities?.prompts?.listChanged)this._setupListChangedHandler("prompts",Ag,e.prompts,async()=>(await this.listPrompts()).prompts);if(e.resources&&this._serverCapabilities?.resources?.listChanged)this._setupListChangedHandler("resources",xg,e.resources,async()=>(await this.listResources()).resources)}get experimental(){if(!this._experimental)this._experimental={tasks:new Ly(this)};return this._experimental}registerCapabilities(e){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=mO(this._capabilities,e)}setRequestHandler(e,t){let n=ll(e)?.method;if(!n)throw Error("Schema is missing a method literal");let o=dl(n);if(typeof o!=="string")throw Error("Schema method literal must be a string");let s=o;if(s==="elicitation/create"){let i=async(a,c)=>{let u=Jt(jg,a);if(!u.success){let b=u.error instanceof Error?u.error.message:String(u.error);throw new Z(H.InvalidParams,`Invalid elicitation request: ${b}`)}let{params:l}=u.data;l.mode=l.mode??"form";let{supportsFormMode:d,supportsUrlMode:f}=xte(this._capabilities.elicitation);if(l.mode==="form"&&!d)throw new Z(H.InvalidParams,"Client does not support form-mode elicitation requests");if(l.mode==="url"&&!f)throw new Z(H.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(t(a,c));if(l.task){let b=Jt(Yn,m);if(!b.success){let T=b.error instanceof Error?b.error.message:String(b.error);throw new Z(H.InvalidParams,`Invalid task creation result: ${T}`)}return b.data}let h=Jt(Dg,m);if(!h.success){let b=h.error instanceof Error?h.error.message:String(h.error);throw new Z(H.InvalidParams,`Invalid elicitation result: ${b}`)}let g=h.data,y=l.mode==="form"?l.requestedSchema:void 0;if(l.mode==="form"&&g.action==="accept"&&g.content&&y){if(this._capabilities.elicitation?.form?.applyDefaults)try{pd(y,g.content)}catch{}}return g};return super.setRequestHandler(e,i)}if(s==="sampling/createMessage"){let i=async(a,c)=>{let u=Jt(zg,a);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new Z(H.InvalidParams,`Invalid sampling request: ${g}`)}let{params:l}=u.data,d=await Promise.resolve(t(a,c));if(l.task){let g=Jt(Yn,d);if(!g.success){let y=g.error instanceof Error?g.error.message:String(g.error);throw new Z(H.InvalidParams,`Invalid task creation result: ${y}`)}return g.data}let m=l.tools||l.toolChoice?Lg:Ng,h=Jt(m,d);if(!h.success){let g=h.error instanceof Error?h.error.message:String(h.error);throw new Z(H.InvalidParams,`Invalid sampling result: ${g}`)}return h.data};return super.setRequestHandler(e,i)}return super.setRequestHandler(e,t)}assertCapability(e,t){if(!this._serverCapabilities?.[e])throw Error(`Server does not support ${e} (required for ${t})`)}async connect(e,t){if(await super.connect(e),e.sessionId!==void 0)return;try{let r=await this.request({method:"initialize",params:{protocolVersion:Jo,capabilities:this._capabilities,clientInfo:this._clientInfo}},wg,t);if(r===void 0)throw Error(`Server sent invalid initialize result: ${r}`);if(!KP.includes(r.protocolVersion))throw Error(`Server's protocol version is not supported: ${r.protocolVersion}`);if(this._serverCapabilities=r.capabilities,this._serverVersion=r.serverInfo,e.setProtocolVersion)e.setProtocolVersion(r.protocolVersion);if(this._instructions=r.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig)this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0}catch(r){throw this.close(),r}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(e){switch(e){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw Error(`Server does not support resources (required for ${e})`);if(e==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw Error(`Server does not support resource subscriptions (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw Error(`Server does not support tools (required for ${e})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw Error(`Server does not support completions (required for ${e})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw Error(`Client does not support roots list changed notifications (required for ${e})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(!this._capabilities)return;switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw Error(`Client does not support sampling capability (required for ${e})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw Error(`Client does not support elicitation capability (required for ${e})`);break;case"roots/list":if(!this._capabilities.roots)throw Error(`Client does not support roots capability (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Client does not support tasks capability (required for ${e})`);break;case"ping":break}}assertTaskCapability(e){b1(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){if(!this._capabilities)return;_1(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Jn,e)}async complete(e,t){return this.request({method:"completion/complete",params:e},Mg,t)}async setLoggingLevel(e,t){return this.request({method:"logging/setLevel",params:{level:e}},Jn,t)}async getPrompt(e,t){return this.request({method:"prompts/get",params:e},Ig,t)}async listPrompts(e,t){return this.request({method:"prompts/list",params:e},$g,t)}async listResources(e,t){return this.request({method:"resources/list",params:e},_g,t)}async listResourceTemplates(e,t){return this.request({method:"resources/templates/list",params:e},vg,t)}async readResource(e,t){return this.request({method:"resources/read",params:e},kg,t)}async subscribeResource(e,t){return this.request({method:"resources/subscribe",params:e},Jn,t)}async unsubscribeResource(e,t){return this.request({method:"resources/unsubscribe",params:e},Jn,t)}async callTool(e,t=Ar,r){if(this.isToolTaskRequired(e.name))throw new Z(H.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let n=await this.request({method:"tools/call",params:e},t,r),o=this.getToolOutputValidator(e.name);if(o){if(!n.structuredContent&&!n.isError)throw new Z(H.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(n.structuredContent)try{let s=o(n.structuredContent);if(!s.valid)throw new Z(H.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)}catch(s){if(s instanceof Z)throw s;throw new Z(H.InvalidParams,`Failed to validate structured content: ${s instanceof Error?s.message:String(s)}`)}}return n}isToolTask(e){if(!this._serverCapabilities?.tasks?.requests?.tools?.call)return!1;return this._cachedKnownTaskTools.has(e)}isToolTaskRequired(e){return this._cachedRequiredTaskTools.has(e)}cacheToolMetadata(e){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let t of e){if(t.outputSchema){let n=this._jsonSchemaValidator.getValidator(t.outputSchema);this._cachedToolOutputValidators.set(t.name,n)}let r=t.execution?.taskSupport;if(r==="required"||r==="optional")this._cachedKnownTaskTools.add(t.name);if(r==="required")this._cachedRequiredTaskTools.add(t.name)}}getToolOutputValidator(e){return this._cachedToolOutputValidators.get(e)}async listTools(e,t){let r=await this.request({method:"tools/list",params:e},Rg,t);return this.cacheToolMetadata(r.tools),r}_setupListChangedHandler(e,t,r,n){let o=lO.safeParse(r);if(!o.success)throw Error(`Invalid ${e} listChanged options: ${o.error.message}`);if(typeof r.onChanged!=="function")throw Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:s,debounceMs:i}=o.data,{onChanged:a}=r,c=async()=>{if(!s){a(null,null);return}try{let l=await n();a(null,l)}catch(l){let d=l instanceof Error?l:Error(String(l));a(d,null)}},u=()=>{if(i){let l=this._listChangedDebounceTimers.get(e);if(l)clearTimeout(l);let d=setTimeout(c,i);this._listChangedDebounceTimers.set(e,d)}else c()};this.setNotificationHandler(t,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}/*!
|
|
534
549
|
* content-type
|
|
535
550
|
* Copyright(c) 2015 Douglas Christopher Wilson
|
|
536
551
|
* MIT Licensed
|
|
537
|
-
*/var BC=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;var wee=/\\([\u000b\u0020-\u00ff])/g;var _ee=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;var KC=vee;function vee(e){if(!e)throw TypeError("argument string is required");var t=typeof e==="object"?See(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(!_ee.test(n))throw TypeError("invalid media type");var o=new kee(n.toLowerCase());if(r!==-1){var s,i,a;BC.lastIndex=r;while(i=BC.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(wee,"$1")}o.parameters[s]=a}if(r!==t.length)throw TypeError("invalid parameter format")}return o}function See(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 kee(e){this.parameters=Object.create(null),this.type=e}function HC(e){if(!e)return;try{return KC(e).type}catch{let t=(e.split(";",1)[0]??"").trim().toLowerCase();if(t===""||e.slice(t.length).includes(","))return;return t}}function nd(e){if(!e)return{};if(e instanceof Headers)return Object.fromEntries(e.entries());if(Array.isArray(e))return Object.fromEntries(e);return{...e}}function GC(e=fetch,t){if(!t)return e;return async(r,n)=>{let o={...t,...n,headers:n?.headers?{...nd(t.headers),...nd(n.headers)}:t.headers};return e(r,o)}}var $ee=5,Eee=[301,302,303,307,308];function Tee(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 JC(e,t){let r=Eee.includes(e.status)?e.headers.get("location"):null;try{return r?new URL(r,t):void 0}catch{return}}function od(e,t,r,n,o=0){let s=JC(n,t),i=n.status===307||n.status===308||(r?.method??"GET").toUpperCase()==="GET";if(!s||o===$ee||!i)return;let a=new URL(t);if((s.username||s.password)&&(s.username!==a.username||s.password!==a.password)||!Tee(a,s))return;return Promise.resolve(n.body?.cancel()).then(()=>e(s,{...r,redirect:"manual"})).then((u)=>od(e,s,r,u,o+1)??u)}var YC=new WeakSet;function _y(e){let t=(r,n)=>(e??fetch)(r,n);return YC.add(t),t}function Xn(e=fetch){if(YC.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)=>od(e,t,r,n)??n)}}function sd(e,t){if(e.type==="opaqueredirect")return"Redirect not followed: this runtime does not expose the redirect target";let r=e.url||t,n=JC(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 vy;vy=globalThis.crypto?.webcrypto??globalThis.crypto??import("node:crypto").then((e)=>e.webcrypto);async function Oee(e){return(await vy).getRandomValues(new Uint8Array(e))}async function Pee(e){let r=Math.pow(2,8)-Math.pow(2,8)%66,n="";while(n.length<e){let o=await Oee(e-n.length);for(let s of o)if(s<r)n+="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~"[s%66]}return n}async function Iee(e){return await Pee(e)}async function Aee(e){let t=await(await vy).subtle.digest("SHA-256",new TextEncoder().encode(e));return btoa(String.fromCharCode(...new Uint8Array(t))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function Sy(e){if(!e)e=43;if(e<43||e>128)throw`Expected a length between 43 and 128. Received ${e}.`;let t=await Iee(e),r=await Aee(t);return{code_verifier:t,code_challenge:r}}var Qe=qs().superRefine((e,t)=>{if(!URL.canParse(e))return t.addIssue({code:ZS.custom,message:"URL must be parseable",fatal:!0}),Md}).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"}),QC=xe({resource:p().url(),authorization_servers:x(Qe).optional(),jwks_uri:p().url().optional(),scopes_supported:x(p()).optional(),bearer_methods_supported:x(p()).optional(),resource_signing_alg_values_supported:x(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:j().optional(),authorization_details_types_supported:x(p()).optional(),dpop_signing_alg_values_supported:x(p()).optional(),dpop_bound_access_tokens_required:j().optional()}),ky=xe({issuer:p(),authorization_endpoint:Qe,token_endpoint:Qe,registration_endpoint:Qe.optional(),scopes_supported:x(p()).optional(),response_types_supported:x(p()),response_modes_supported:x(p()).optional(),grant_types_supported:x(p()).optional(),token_endpoint_auth_methods_supported:x(p()).optional(),token_endpoint_auth_signing_alg_values_supported:x(p()).optional(),service_documentation:Qe.optional(),revocation_endpoint:Qe.optional(),revocation_endpoint_auth_methods_supported:x(p()).optional(),revocation_endpoint_auth_signing_alg_values_supported:x(p()).optional(),introspection_endpoint:p().optional(),introspection_endpoint_auth_methods_supported:x(p()).optional(),introspection_endpoint_auth_signing_alg_values_supported:x(p()).optional(),code_challenge_methods_supported:x(p()).optional(),client_id_metadata_document_supported:j().optional()}),Ree=xe({issuer:p(),authorization_endpoint:Qe,token_endpoint:Qe,userinfo_endpoint:Qe.optional(),jwks_uri:Qe,registration_endpoint:Qe.optional(),scopes_supported:x(p()).optional(),response_types_supported:x(p()),response_modes_supported:x(p()).optional(),grant_types_supported:x(p()).optional(),acr_values_supported:x(p()).optional(),subject_types_supported:x(p()),id_token_signing_alg_values_supported:x(p()),id_token_encryption_alg_values_supported:x(p()).optional(),id_token_encryption_enc_values_supported:x(p()).optional(),userinfo_signing_alg_values_supported:x(p()).optional(),userinfo_encryption_alg_values_supported:x(p()).optional(),userinfo_encryption_enc_values_supported:x(p()).optional(),request_object_signing_alg_values_supported:x(p()).optional(),request_object_encryption_alg_values_supported:x(p()).optional(),request_object_encryption_enc_values_supported:x(p()).optional(),token_endpoint_auth_methods_supported:x(p()).optional(),token_endpoint_auth_signing_alg_values_supported:x(p()).optional(),display_values_supported:x(p()).optional(),claim_types_supported:x(p()).optional(),claims_supported:x(p()).optional(),service_documentation:p().optional(),claims_locales_supported:x(p()).optional(),ui_locales_supported:x(p()).optional(),claims_parameter_supported:j().optional(),request_parameter_supported:j().optional(),request_uri_parameter_supported:j().optional(),require_request_uri_registration:j().optional(),op_policy_uri:Qe.optional(),op_tos_uri:Qe.optional(),client_id_metadata_document_supported:j().optional()}),e1=b({...Ree.shape,...ky.pick({code_challenge_methods_supported:!0}).shape}),t1=b({access_token:p(),id_token:p().optional(),token_type:p(),expires_in:WL().optional(),scope:p().optional(),refresh_token:p().optional(),issuer:p().optional().catch(void 0)}).strip(),r1=b({error:p(),error_description:p().optional(),error_uri:p().optional()}),XC=Qe.optional().or(C("").transform(()=>{return})),Cee=b({redirect_uris:x(Qe),token_endpoint_auth_method:p().optional(),grant_types:x(p()).optional(),response_types:x(p()).optional(),client_name:p().optional(),client_uri:Qe.optional(),logo_uri:XC,scope:p().optional(),contacts:x(p()).optional(),tos_uri:XC,policy_uri:p().optional(),jwks_uri:Qe.optional(),jwks:DS().optional(),software_id:p().optional(),software_version:p().optional(),software_statement:p().optional()}).strip(),zee=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(),n1=Cee.merge(zee),Hve=b({error:p(),error_description:p().optional()}).strip(),Gve=b({token:p(),token_type_hint:p().optional()}).strip();function o1(e){let t=typeof e==="string"?new URL(e):new URL(e.href);return t.hash="",t}function s1({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 Le 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 id extends Le{}id.errorCode="invalid_request";class ds extends Le{}ds.errorCode="invalid_client";class ps extends Le{}ps.errorCode="invalid_grant";class fs extends Le{}fs.errorCode="unauthorized_client";class ad extends Le{}ad.errorCode="unsupported_grant_type";class cd extends Le{}cd.errorCode="invalid_scope";class ud extends Le{}ud.errorCode="access_denied";class Sn extends Le{}Sn.errorCode="server_error";class ld extends Le{}ld.errorCode="temporarily_unavailable";class dd extends Le{}dd.errorCode="unsupported_response_type";class pd extends Le{}pd.errorCode="unsupported_token_type";class fd extends Le{}fd.errorCode="invalid_token";class md extends Le{}md.errorCode="method_not_allowed";class hd extends Le{}hd.errorCode="too_many_requests";class ms extends Le{}ms.errorCode="invalid_client_metadata";class gd extends Le{}gd.errorCode="insufficient_scope";class yd extends Le{}yd.errorCode="invalid_target";var i1={[id.errorCode]:id,[ds.errorCode]:ds,[ps.errorCode]:ps,[fs.errorCode]:fs,[ad.errorCode]:ad,[cd.errorCode]:cd,[ud.errorCode]:ud,[Sn.errorCode]:Sn,[ld.errorCode]:ld,[dd.errorCode]:dd,[pd.errorCode]:pd,[fd.errorCode]:fd,[md.errorCode]:md,[hd.errorCode]:hd,[ms.errorCode]:ms,[gd.errorCode]:gd,[yd.errorCode]:yd};class kn extends Error{constructor(e){super(e??"Unauthorized")}}function Nee(e){return["client_secret_basic","client_secret_post","none"].includes(e)}var xy="code",$y="S256";function Lee(e,t){let r=e.client_secret!==void 0;if("token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&Nee(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 Dee(e,t,r,n){let{client_id:o,client_secret:s}=t;switch(e){case"client_secret_basic":jee(o,s,r);return;case"client_secret_post":Mee(o,s,n);return;case"none":qee(o,n);return;default:throw Error(`Unsupported client authentication method: ${e}`)}}function jee(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 Mee(e,t,r){if(r.set("client_id",e),t)r.set("client_secret",t)}function qee(e,t){t.set("client_id",e)}async function c1(e){let t=e instanceof Response?e.status:void 0,r=e instanceof Response?await e.text():e;try{let n=r1.parse(JSON.parse(r)),{error:o,error_description:s,error_uri:i}=n;return new(i1[o]||Sn)(s||"",i)}catch(n){let o=e instanceof Response?sd(e,e.url):void 0,s=`${t?`HTTP ${t}: `:""}${o??`Invalid OAuth error response: ${n}. Raw body: ${r}`}`;return new Sn(s)}}function Fee(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 Oy(e,t){if(!e)return;if(typeof e.issuer!=="string")return e.issuer==null?e:{...e,issuer:void 0};return Fee(e.issuer,t)?e:void 0}var Uee=t1.omit({issuer:!0}),Wee=n1.omit({issuer:!0});function u1(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 ha(e,t){try{return await Ey(e,t)}catch(r){if(r instanceof ds||r instanceof fs)return await e.invalidateCredentials?.("all"),await Ey(e,t);else if(r instanceof ps)return await e.invalidateCredentials?.("tokens"),await Ey(e,t);throw r}}async function Ey(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 d1(c,{fetchFn:s}),!a)try{a=await l1(t,{resourceMetadataUrl:l},s)}catch{}if(u!==i.authorizationServerMetadata||a!==i.resourceMetadata)await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}else{let D=await Jee(t,{resourceMetadataUrl:l,fetchFn:s});c=D.authorizationServerUrl,u=D.authorizationServerMetadata,a=D.resourceMetadata,await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}let d=String(c),f=await Zee(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=Oy(g,d),w=e.saveClientInformation!==void 0&&!!e.redirectUrl;if(g&&!y&&!w)throw u1(g,d);let T=y?.issuer==null?y:void 0,S=async()=>{try{if(T)await e.saveClientInformation?.({...T,issuer:d})}catch{}};if(!y){if(r!==void 0)throw Error("Existing OAuth client information is required when exchanging an authorization code");let D=u?.client_id_metadata_document_supported===!0,G=e.clientMetadataUrl;if(G&&!Vee(G))throw new ms(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${G}`);if(D&&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 tte(c,{metadata:u,clientMetadata:e.clientMetadata,scope:h,fetchFn:s}),issuer:d},await e.saveClientInformation(y)}}let I=!e.redirectUrl;if(r!==void 0||I){let D=await ete(e,c,{metadata:u,resource:m,authorizationCode:r,fetchFn:s});return await S(),await e.saveTokens({...D,issuer:d}),"AUTHORIZED"}let _=Oy(await e.tokens(),d);if(_?.refresh_token&&_.issuer==null)console.warn("[mcp-sdk] stored OAuth tokens have no 'issuer' property (saved by an earlier version, or by a provider that does not keep it) and are used as-is; make sure your OAuthClientProvider stores what saveTokens() and saveClientInformation() receive unchanged.");if(_?.refresh_token)try{let D=await Qee(c,{metadata:u,clientInformation:y,refreshToken:_.refresh_token,resource:m,addClientAuthentication:e.addClientAuthentication,fetchFn:s});return await S(),await e.saveTokens({...D,issuer:d}),"AUTHORIZED"}catch(D){if(!(D instanceof Le)||D instanceof Sn);else throw D}let v=e.state?await e.state():void 0,{authorizationUrl:k,codeVerifier:A}=await Yee(c,{metadata:u,clientInformation:y,state:v,redirectUrl:e.redirectUrl,scope:h,resource:m});return await e.saveCodeVerifier(A),await e.redirectToAuthorization(k),"REDIRECT"}function Vee(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function Zee(e,t,r){let n=o1(e);if(t.validateResourceURL)return await t.validateResourceURL(n,r?.resource);if(!r)return;if(!s1({requestedResource:n,configuredResource:r.resource}))throw Error(`Protected resource ${r.resource} does not match expected ${n} (or origin)`);return new URL(r.resource)}function Py(e){let t=e.headers.get("WWW-Authenticate");if(!t)return{};let[r,n]=t.split(" ");if(r.toLowerCase()!=="bearer"||!n)return{};let o=Ty(e,"resource_metadata")||void 0,s;if(o)try{s=new URL(o)}catch{}let i=Ty(e,"scope")||void 0,a=Ty(e,"error")||void 0;return{resourceMetadataUrl:s,scope:i,error:a}}function Ty(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 l1(e,t,r=fetch){let n=await Hee(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 QC.parse(await n.json())}async function Iy(e,t,r=fetch){try{return await Xn(r)(e,{headers:t})}catch(n){if(n instanceof TypeError)if(t)return Iy(e,void 0,r);else return;throw n}}function Bee(e,t="",r={}){if(t.endsWith("/"))t=t.slice(0,-1);return r.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function a1(e,t,r=fetch){return await Iy(e,{"MCP-Protocol-Version":t},r)}function Kee(e,t){return!e||!e.ok&&e.status<500&&t!=="/"}async function Hee(e,t,r,n){let o=new URL(e),s=n?.protocolVersion??Uo,i;if(n?.metadataUrl)i=new URL(n.metadataUrl);else{let c=Bee(t,o.pathname);i=new URL(c,n?.metadataServerUrl??o),i.search=o.search}let a=await a1(i,s,r);if(!n?.metadataUrl&&Kee(a,o.pathname)){let c=new URL(`/.well-known/${t}`,o);a=await a1(c,s,r)}return a}function Gee(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 d1(e,{fetchFn:t=fetch,protocolVersion:r=Uo}={}){let n={"MCP-Protocol-Version":r,Accept:"application/json"},o=Gee(e);for(let{url:s,type:i}of o){let a=await Iy(s,n,t);if(!a)continue;if(!a.ok){if(await a.body?.cancel(),a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${i==="oauth"?"OAuth":"OpenID provider"} metadata from ${s}`)}if(i==="oauth")return ky.parse(await a.json());else return e1.parse(await a.json())}return}async function Jee(e,t){let r,n;try{if(r=await l1(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 d1(n,{fetchFn:t?.fetchFn});return{authorizationServerUrl:n,authorizationServerMetadata:o,resourceMetadata:r}}function p1(e){return typeof e==="string"?e:e.href}async function Yee(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(xy))throw Error(`Incompatible auth server: does not support response type ${xy}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes($y))throw Error(`Incompatible auth server: does not support code challenge method ${$y}`)}else a=new URL("/authorize",e);let c=await Sy(),{code_verifier:u,code_challenge:l}=c;if(a.searchParams.set("response_type",xy),a.searchParams.set("client_id",r.client_id),a.searchParams.set("code_challenge",l),a.searchParams.set("code_challenge_method",$y),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",p1(i));return{authorizationUrl:a,codeVerifier:u}}function Xee(e,t,r){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(r)})}async function f1(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",p1(s));if(o)await o(c,r,a,t);else if(n){let l=t?.token_endpoint_auth_methods_supported??[],d=Lee(n,l);Dee(d,n,c,r)}let u=await Xn(i??fetch)(a,{method:"POST",headers:c,body:r});if(!u.ok)throw await c1(u);return Uee.parse(await u.json())}async function Qee(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 f1(e,{metadata:t,tokenRequestParams:a,clientInformation:r,addClientAuthentication:s,resource:o,fetchFn:i});return{refresh_token:n,...c}}async function ete(e,t,{metadata:r,resource:n,authorizationCode:o,fetchFn:s}={}){let i=async()=>{let l=await e.clientInformation(),d=Oy(l,String(t));if(l&&!d)throw u1(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=Xee(o,l,e.redirectUrl)}return a??(a=await i()),f1(t,{metadata:r,tokenRequestParams:u,clientInformation:a,addClientAuthentication:e.addClientAuthentication,resource:n,fetchFn:s})}async function tte(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 Xn(o??fetch)(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,...n!==void 0?{scope:n}:{}})});if(!i.ok)throw await c1(i);return Wee.parse(await i.json())}class bd 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 m1=10,rte=13,Qn=32;function Ay(e){}function y1(e){if(typeof e=="function")throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=Ay,onError:r=Ay,onRetry:n=Ay,onComment:o,maxBufferSize:s}=e,i=[],a=0,c=!0,u,l="",d=0,f,m=!1;function h(_){if(m)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(c&&(c=!1,_.charCodeAt(0)===239&&_.charCodeAt(1)===187&&_.charCodeAt(2)===191&&(_=_.slice(3))),i.length===0){let A=y(_);A!==""&&(i.push(A),a=A.length),g();return}if(_.indexOf(`
|
|
538
|
-
`)===-1&&_.indexOf("\r")===-1){i.push(_),a+=_.length,g();return}i.push(_);let v=i.join("");i.length=0,a=0;let
|
|
539
|
-
`,v);for(;
|
|
540
|
-
`,v);continue}let A=_.charCodeAt(v);if(
|
|
541
|
-
`,v);continue}l=d===0?
|
|
542
|
-
${
|
|
543
|
-
`,v)}return _.slice(v)}for(;v<_.length;){let
|
|
544
|
-
`,v),
|
|
545
|
-
${oe}`,d++;return}if(
|
|
546
|
-
${v}`,d++;break;case"id":u=v.includes("\x00")?void 0:v;break;case"retry":/^\d+$/.test(v)?n(parseInt(v,10)):r(new
|
|
547
|
-
`),u=a.structuredContent?
|
|
552
|
+
*/var v1=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;var $te=/\\([\u000b\u0020-\u00ff])/g;var Tte=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;var S1=Ete;function Ete(e){if(!e)throw TypeError("argument string is required");var t=typeof e==="object"?Pte(e):e;if(typeof t!=="string")throw TypeError("argument string is required to be a string");var r=t.indexOf(";"),n=r!==-1?t.slice(0,r).trim():t.trim();if(!Tte.test(n))throw TypeError("invalid media type");var o=new Ote(n.toLowerCase());if(r!==-1){var s,i,a;v1.lastIndex=r;while(i=v1.exec(t)){if(i.index!==r)throw TypeError("invalid parameter format");if(r+=i[0].length,s=i[1].toLowerCase(),a=i[2],a.charCodeAt(0)===34){if(a=a.slice(1,-1),a.indexOf("\\")!==-1)a=a.replace($te,"$1")}o.parameters[s]=a}if(r!==t.length)throw TypeError("invalid parameter format")}return o}function Pte(e){var t;if(typeof e.getHeader==="function")t=e.getHeader("content-type");else if(typeof e.headers==="object")t=e.headers&&e.headers["content-type"];if(typeof t!=="string")throw TypeError("content-type header is missing from object");return t}function Ote(e){this.parameters=Object.create(null),this.type=e}function k1(e){if(!e)return;try{return S1(e).type}catch{let t=(e.split(";",1)[0]??"").trim().toLowerCase();if(t===""||e.slice(t.length).includes(","))return;return t}}function fd(e){if(!e)return{};if(e instanceof Headers)return Object.fromEntries(e.entries());if(Array.isArray(e))return Object.fromEntries(e);return{...e}}function x1(e=fetch,t){if(!t)return e;return async(r,n)=>{let o={...t,...n,headers:n?.headers?{...fd(t.headers),...fd(n.headers)}:t.headers};return e(r,o)}}var Ate=5,Rte=[301,302,303,307,308];function Cte(e,t){if(e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port)return!0;return e.hostname===t.hostname&&e.protocol==="http:"&&e.port===""&&t.protocol==="https:"&&t.port===""}function $1(e,t){let r=Rte.includes(e.status)?e.headers.get("location"):null;try{return r?new URL(r,t):void 0}catch{return}}function md(e,t,r,n,o=0){let s=$1(n,t),i=n.status===307||n.status===308||(r?.method??"GET").toUpperCase()==="GET";if(!s||o===Ate||!i)return;let a=new URL(t);if((s.username||s.password)&&(s.username!==a.username||s.password!==a.password)||!Cte(a,s))return;return Promise.resolve(n.body?.cancel()).then(()=>e(s,{...r,redirect:"manual"})).then((u)=>md(e,s,r,u,o+1)??u)}var T1=new WeakSet;function Dy(e){let t=(r,n)=>(e??fetch)(r,n);return T1.add(t),t}function no(e=fetch){if(T1.has(e))return e;return(t,r)=>{if(r?.redirect==="error"||r?.redirect==="manual")return e(t,r);return Promise.resolve(e(t,{...r,redirect:"manual"})).then((n)=>md(e,t,r,n)??n)}}function hd(e,t){if(e.type==="opaqueredirect")return"Redirect not followed: this runtime does not expose the redirect target";let r=e.url||t,n=$1(e,r);if(!n)return;if(n.username=n.password=n.search=n.hash="",n.protocol==="http:"&&new URL(r).protocol==="https:")return n.protocol="https:",`Redirect to plain http not followed; try ${n.href} instead`;return`Redirect to ${n.href} not followed`}var My;My=globalThis.crypto?.webcrypto??globalThis.crypto??import("node:crypto").then((e)=>e.webcrypto);async function zte(e){return(await My).getRandomValues(new Uint8Array(e))}async function Nte(e){let r=Math.pow(2,8)-Math.pow(2,8)%66,n="";while(n.length<e){let o=await zte(e-n.length);for(let s of o)if(s<r)n+="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~"[s%66]}return n}async function Lte(e){return await Nte(e)}async function jte(e){let t=await(await My).subtle.digest("SHA-256",new TextEncoder().encode(e));return btoa(String.fromCharCode(...new Uint8Array(t))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function qy(e){if(!e)e=43;if(e<43||e>128)throw`Expected a length between 43 and 128. Received ${e}.`;let t=await Lte(e),r=await jte(t);return{code_verifier:t,code_challenge:r}}var et=Ks().superRefine((e,t)=>{if(!URL.canParse(e))return t.addIssue({code:yk.custom,message:"URL must be parseable",fatal:!0}),rp}).refine((e)=>{let t=new URL(e);return t.protocol!=="javascript:"&&t.protocol!=="data:"&&t.protocol!=="vbscript:"},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),P1=ve({resource:p().url(),authorization_servers:k(et).optional(),jwks_uri:p().url().optional(),scopes_supported:k(p()).optional(),bearer_methods_supported:k(p()).optional(),resource_signing_alg_values_supported:k(p()).optional(),resource_name:p().optional(),resource_documentation:p().optional(),resource_policy_uri:p().url().optional(),resource_tos_uri:p().url().optional(),tls_client_certificate_bound_access_tokens:D().optional(),authorization_details_types_supported:k(p()).optional(),dpop_signing_alg_values_supported:k(p()).optional(),dpop_bound_access_tokens_required:D().optional()}),Fy=ve({issuer:p(),authorization_endpoint:et,token_endpoint:et,registration_endpoint:et.optional(),scopes_supported:k(p()).optional(),response_types_supported:k(p()),response_modes_supported:k(p()).optional(),grant_types_supported:k(p()).optional(),token_endpoint_auth_methods_supported:k(p()).optional(),token_endpoint_auth_signing_alg_values_supported:k(p()).optional(),service_documentation:et.optional(),revocation_endpoint:et.optional(),revocation_endpoint_auth_methods_supported:k(p()).optional(),revocation_endpoint_auth_signing_alg_values_supported:k(p()).optional(),introspection_endpoint:p().optional(),introspection_endpoint_auth_methods_supported:k(p()).optional(),introspection_endpoint_auth_signing_alg_values_supported:k(p()).optional(),code_challenge_methods_supported:k(p()).optional(),client_id_metadata_document_supported:D().optional()}),Dte=ve({issuer:p(),authorization_endpoint:et,token_endpoint:et,userinfo_endpoint:et.optional(),jwks_uri:et,registration_endpoint:et.optional(),scopes_supported:k(p()).optional(),response_types_supported:k(p()),response_modes_supported:k(p()).optional(),grant_types_supported:k(p()).optional(),acr_values_supported:k(p()).optional(),subject_types_supported:k(p()),id_token_signing_alg_values_supported:k(p()),id_token_encryption_alg_values_supported:k(p()).optional(),id_token_encryption_enc_values_supported:k(p()).optional(),userinfo_signing_alg_values_supported:k(p()).optional(),userinfo_encryption_alg_values_supported:k(p()).optional(),userinfo_encryption_enc_values_supported:k(p()).optional(),request_object_signing_alg_values_supported:k(p()).optional(),request_object_encryption_alg_values_supported:k(p()).optional(),request_object_encryption_enc_values_supported:k(p()).optional(),token_endpoint_auth_methods_supported:k(p()).optional(),token_endpoint_auth_signing_alg_values_supported:k(p()).optional(),display_values_supported:k(p()).optional(),claim_types_supported:k(p()).optional(),claims_supported:k(p()).optional(),service_documentation:p().optional(),claims_locales_supported:k(p()).optional(),ui_locales_supported:k(p()).optional(),claims_parameter_supported:D().optional(),request_parameter_supported:D().optional(),request_uri_parameter_supported:D().optional(),require_request_uri_registration:D().optional(),op_policy_uri:et.optional(),op_tos_uri:et.optional(),client_id_metadata_document_supported:D().optional()}),O1=w({...Dte.shape,...Fy.pick({code_challenge_methods_supported:!0}).shape}),I1=w({access_token:p(),id_token:p().optional(),token_type:p(),expires_in:Aj().optional(),scope:p().optional(),refresh_token:p().optional(),issuer:p().optional().catch(void 0)}).strip(),A1=w({error:p(),error_description:p().optional(),error_uri:p().optional()}),E1=et.optional().or(C("").transform(()=>{return})),Mte=w({redirect_uris:k(et),token_endpoint_auth_method:p().optional(),grant_types:k(p()).optional(),response_types:k(p()).optional(),client_name:p().optional(),client_uri:et.optional(),logo_uri:E1,scope:p().optional(),contacts:k(p()).optional(),tos_uri:E1,policy_uri:p().optional(),jwks_uri:et.optional(),jwks:uk().optional(),software_id:p().optional(),software_version:p().optional(),software_statement:p().optional()}).strip(),qte=w({client_id:p(),client_secret:p().optional(),client_id_issued_at:P().optional(),client_secret_expires_at:P().optional(),issuer:p().optional().catch(void 0)}).strip(),R1=Mte.merge(qte),Dke=w({error:p(),error_description:p().optional()}).strip(),Mke=w({token:p(),token_type_hint:p().optional()}).strip();function C1(e){let t=typeof e==="string"?new URL(e):new URL(e.href);return t.hash="",t}function z1({requestedResource:e,configuredResource:t}){let r=typeof e==="string"?new URL(e):new URL(e.href),n=typeof t==="string"?new URL(t):new URL(t.href);if(r.origin!==n.origin)return!1;if(r.pathname.length<n.pathname.length)return!1;let o=r.pathname.endsWith("/")?r.pathname:r.pathname+"/",s=n.pathname.endsWith("/")?n.pathname:n.pathname+"/";return o.startsWith(s)}class De extends Error{constructor(e,t){super(e);this.errorUri=t,this.name=this.constructor.name}toResponseObject(){let e={error:this.errorCode,error_description:this.message};if(this.errorUri)e.error_uri=this.errorUri;return e}get errorCode(){return this.constructor.errorCode}}class gd extends De{}gd.errorCode="invalid_request";class bs extends De{}bs.errorCode="invalid_client";class _s extends De{}_s.errorCode="invalid_grant";class vs extends De{}vs.errorCode="unauthorized_client";class yd extends De{}yd.errorCode="unsupported_grant_type";class wd extends De{}wd.errorCode="invalid_scope";class bd extends De{}bd.errorCode="access_denied";class Pn extends De{}Pn.errorCode="server_error";class _d extends De{}_d.errorCode="temporarily_unavailable";class vd extends De{}vd.errorCode="unsupported_response_type";class Sd extends De{}Sd.errorCode="unsupported_token_type";class kd extends De{}kd.errorCode="invalid_token";class xd extends De{}xd.errorCode="method_not_allowed";class $d extends De{}$d.errorCode="too_many_requests";class Ss extends De{}Ss.errorCode="invalid_client_metadata";class Td extends De{}Td.errorCode="insufficient_scope";class Ed extends De{}Ed.errorCode="invalid_target";var N1={[gd.errorCode]:gd,[bs.errorCode]:bs,[_s.errorCode]:_s,[vs.errorCode]:vs,[yd.errorCode]:yd,[wd.errorCode]:wd,[bd.errorCode]:bd,[Pn.errorCode]:Pn,[_d.errorCode]:_d,[vd.errorCode]:vd,[Sd.errorCode]:Sd,[kd.errorCode]:kd,[xd.errorCode]:xd,[$d.errorCode]:$d,[Ss.errorCode]:Ss,[Td.errorCode]:Td,[Ed.errorCode]:Ed};class On extends Error{constructor(e){super(e??"Unauthorized")}}function Fte(e){return["client_secret_basic","client_secret_post","none"].includes(e)}var Uy="code",Wy="S256";function Ute(e,t){let r=e.client_secret!==void 0;if("token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&Fte(e.token_endpoint_auth_method)&&(t.length===0||t.includes(e.token_endpoint_auth_method)))return e.token_endpoint_auth_method;if(t.length===0)return r?"client_secret_basic":"none";if(r&&t.includes("client_secret_basic"))return"client_secret_basic";if(r&&t.includes("client_secret_post"))return"client_secret_post";if(t.includes("none"))return"none";return r?"client_secret_post":"none"}function Wte(e,t,r,n){let{client_id:o,client_secret:s}=t;switch(e){case"client_secret_basic":Vte(o,s,r);return;case"client_secret_post":Zte(o,s,n);return;case"none":Bte(o,n);return;default:throw Error(`Unsupported client authentication method: ${e}`)}}function Vte(e,t,r){if(!t)throw Error("client_secret_basic authentication requires a client_secret");let n=btoa(`${e}:${t}`);r.set("Authorization",`Basic ${n}`)}function Zte(e,t,r){if(r.set("client_id",e),t)r.set("client_secret",t)}function Bte(e,t){t.set("client_id",e)}async function j1(e){let t=e instanceof Response?e.status:void 0,r=e instanceof Response?await e.text():e;try{let n=A1.parse(JSON.parse(r)),{error:o,error_description:s,error_uri:i}=n;return new(N1[o]||Pn)(s||"",i)}catch(n){let o=e instanceof Response?hd(e,e.url):void 0,s=`${t?`HTTP ${t}: `:""}${o??`Invalid OAuth error response: ${n}. Raw body: ${r}`}`;return new Pn(s)}}function Kte(e,t){let[r,n]=[e,t];try{[r,n]=[new URL(e).href,new URL(t).href]}catch{}return r===n||r.endsWith("/")&&r.slice(0,-1)===n||n.endsWith("/")&&n.slice(0,-1)===r}function By(e,t){if(!e)return;if(typeof e.issuer!=="string")return e.issuer==null?e:{...e,issuer:void 0};return Kte(e.issuer,t)?e:void 0}var Hte=I1.omit({issuer:!0}),Gte=R1.omit({issuer:!0});function D1(e,t){return Error(`OAuth client information is bound to authorization server ${e.issuer} and is not presented to ${t}. Clear the stored client information, or correct \`expectedIssuer\`, if the authorization server has moved.`)}async function ka(e,t){try{return await Vy(e,t)}catch(r){if(r instanceof bs||r instanceof vs)return await e.invalidateCredentials?.("all"),await Vy(e,t);else if(r instanceof _s)return await e.invalidateCredentials?.("tokens"),await Vy(e,t);throw r}}async function Vy(e,{serverUrl:t,authorizationCode:r,scope:n,resourceMetadataUrl:o,fetchFn:s}){let i=await e.discoveryState?.(),a,c,u,l=o;if(!l&&i?.resourceMetadataUrl)l=new URL(i.resourceMetadataUrl);if(i?.authorizationServerUrl){if(c=i.authorizationServerUrl,a=i.resourceMetadata,u=i.authorizationServerMetadata??await q1(c,{fetchFn:s}),!a)try{a=await M1(t,{resourceMetadataUrl:l},s)}catch{}if(u!==i.authorizationServerMetadata||a!==i.resourceMetadata)await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}else{let j=await rre(t,{resourceMetadataUrl:l,fetchFn:s});c=j.authorizationServerUrl,u=j.authorizationServerMetadata,a=j.resourceMetadata,await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:l?.toString(),resourceMetadata:a,authorizationServerMetadata:u})}let d=String(c),f=await Yte(t,e,a),m=f&&a&&!e.validateResourceURL?a.resource:f,h=n||a?.scopes_supported?.join(" ")||e.clientMetadata.scope,g=await Promise.resolve(e.clientInformation()),y=By(g,d),b=e.saveClientInformation!==void 0&&!!e.redirectUrl;if(g&&!y&&!b)throw D1(g,d);let T=y?.issuer==null?y:void 0,S=async()=>{try{if(T)await e.saveClientInformation?.({...T,issuer:d})}catch{}};if(!y){if(r!==void 0)throw Error("Existing OAuth client information is required when exchanging an authorization code");let j=u?.client_id_metadata_document_supported===!0,Y=e.clientMetadataUrl;if(Y&&!Jte(Y))throw new Ss(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${Y}`);if(j&&Y)y={client_id:Y,issuer:d},await e.saveClientInformation?.(y);else{if(!e.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");y={...await are(c,{metadata:u,clientMetadata:e.clientMetadata,scope:h,fetchFn:s}),issuer:d},await e.saveClientInformation(y)}}let I=!e.redirectUrl;if(r!==void 0||I){let j=await ire(e,c,{metadata:u,resource:m,authorizationCode:r,fetchFn:s});return await S(),await e.saveTokens({...j,issuer:d}),"AUTHORIZED"}let _=By(await e.tokens(),d);if(_?.refresh_token&&_.issuer==null)console.warn("[mcp-sdk] stored OAuth tokens have no 'issuer' property (saved by an earlier version, or by a provider that does not keep it) and are used as-is; make sure your OAuthClientProvider stores what saveTokens() and saveClientInformation() receive unchanged.");if(_?.refresh_token)try{let j=await sre(c,{metadata:u,clientInformation:y,refreshToken:_.refresh_token,resource:m,addClientAuthentication:e.addClientAuthentication,fetchFn:s});return await S(),await e.saveTokens({...j,issuer:d}),"AUTHORIZED"}catch(j){if(!(j instanceof De)||j instanceof Pn);else throw j}let v=e.state?await e.state():void 0,{authorizationUrl:x,codeVerifier:A}=await nre(c,{metadata:u,clientInformation:y,state:v,redirectUrl:e.redirectUrl,scope:h,resource:m});return await e.saveCodeVerifier(A),await e.redirectToAuthorization(x),"REDIRECT"}function Jte(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function Yte(e,t,r){let n=C1(e);if(t.validateResourceURL)return await t.validateResourceURL(n,r?.resource);if(!r)return;if(!z1({requestedResource:n,configuredResource:r.resource}))throw Error(`Protected resource ${r.resource} does not match expected ${n} (or origin)`);return new URL(r.resource)}function Ky(e){let t=e.headers.get("WWW-Authenticate");if(!t)return{};let[r,n]=t.split(" ");if(r.toLowerCase()!=="bearer"||!n)return{};let o=Zy(e,"resource_metadata")||void 0,s;if(o)try{s=new URL(o)}catch{}let i=Zy(e,"scope")||void 0,a=Zy(e,"error")||void 0;return{resourceMetadataUrl:s,scope:i,error:a}}function Zy(e,t){let r=e.headers.get("WWW-Authenticate");if(!r)return null;let n=new RegExp(`${t}=(?:"([^"]+)"|([^\\s,]+))`),o=r.match(n);if(o)return o[1]||o[2];return null}async function M1(e,t,r=fetch){let n=await ere(e,"oauth-protected-resource",r,{protocolVersion:t?.protocolVersion,metadataUrl:t?.resourceMetadataUrl});if(!n||n.status===404)throw await n?.body?.cancel(),Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!n.ok)throw await n.body?.cancel(),Error(`HTTP ${n.status} trying to load well-known OAuth protected resource metadata.`);return P1.parse(await n.json())}async function Hy(e,t,r=fetch){try{return await no(r)(e,{headers:t})}catch(n){if(n instanceof TypeError)if(t)return Hy(e,void 0,r);else return;throw n}}function Xte(e,t="",r={}){if(t.endsWith("/"))t=t.slice(0,-1);return r.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function L1(e,t,r=fetch){return await Hy(e,{"MCP-Protocol-Version":t},r)}function Qte(e,t){return!e||!e.ok&&e.status<500&&t!=="/"}async function ere(e,t,r,n){let o=new URL(e),s=n?.protocolVersion??Jo,i;if(n?.metadataUrl)i=new URL(n.metadataUrl);else{let c=Xte(t,o.pathname);i=new URL(c,n?.metadataServerUrl??o),i.search=o.search}let a=await L1(i,s,r);if(!n?.metadataUrl&&Qte(a,o.pathname)){let c=new URL(`/.well-known/${t}`,o);a=await L1(c,s,r)}return a}function tre(e){let t=typeof e==="string"?new URL(e):e,r=t.pathname!=="/",n=[];if(!r)return n.push({url:new URL("/.well-known/oauth-authorization-server",t.origin),type:"oauth"}),n.push({url:new URL("/.well-known/openid-configuration",t.origin),type:"oidc"}),n;let o=t.pathname;if(o.endsWith("/"))o=o.slice(0,-1);return n.push({url:new URL(`/.well-known/oauth-authorization-server${o}`,t.origin),type:"oauth"}),n.push({url:new URL(`/.well-known/openid-configuration${o}`,t.origin),type:"oidc"}),n.push({url:new URL(`${o}/.well-known/openid-configuration`,t.origin),type:"oidc"}),n}async function q1(e,{fetchFn:t=fetch,protocolVersion:r=Jo}={}){let n={"MCP-Protocol-Version":r,Accept:"application/json"},o=tre(e);for(let{url:s,type:i}of o){let a=await Hy(s,n,t);if(!a)continue;if(!a.ok){if(await a.body?.cancel(),a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${i==="oauth"?"OAuth":"OpenID provider"} metadata from ${s}`)}if(i==="oauth")return Fy.parse(await a.json());else return O1.parse(await a.json())}return}async function rre(e,t){let r,n;try{if(r=await M1(e,{resourceMetadataUrl:t?.resourceMetadataUrl},t?.fetchFn),r.authorization_servers&&r.authorization_servers.length>0)n=r.authorization_servers[0]}catch{}if(!n)n=String(new URL("/",e));let o=await q1(n,{fetchFn:t?.fetchFn});return{authorizationServerUrl:n,authorizationServerMetadata:o,resourceMetadata:r}}function F1(e){return typeof e==="string"?e:e.href}async function nre(e,{metadata:t,clientInformation:r,redirectUrl:n,scope:o,state:s,resource:i}){let a;if(t){if(a=new URL(t.authorization_endpoint),!t.response_types_supported.includes(Uy))throw Error(`Incompatible auth server: does not support response type ${Uy}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes(Wy))throw Error(`Incompatible auth server: does not support code challenge method ${Wy}`)}else a=new URL("/authorize",e);let c=await qy(),{code_verifier:u,code_challenge:l}=c;if(a.searchParams.set("response_type",Uy),a.searchParams.set("client_id",r.client_id),a.searchParams.set("code_challenge",l),a.searchParams.set("code_challenge_method",Wy),a.searchParams.set("redirect_uri",String(n)),s)a.searchParams.set("state",s);if(o)a.searchParams.set("scope",o);if(o?.includes("offline_access"))a.searchParams.append("prompt","consent");if(i)a.searchParams.set("resource",F1(i));return{authorizationUrl:a,codeVerifier:u}}function ore(e,t,r){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(r)})}async function U1(e,{metadata:t,tokenRequestParams:r,clientInformation:n,addClientAuthentication:o,resource:s,fetchFn:i}){let a=t?.token_endpoint?new URL(t.token_endpoint):new URL("/token",e),c=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(s)r.set("resource",F1(s));if(o)await o(c,r,a,t);else if(n){let l=t?.token_endpoint_auth_methods_supported??[],d=Ute(n,l);Wte(d,n,c,r)}let u=await no(i??fetch)(a,{method:"POST",headers:c,body:r});if(!u.ok)throw await j1(u);return Hte.parse(await u.json())}async function sre(e,{metadata:t,clientInformation:r,refreshToken:n,resource:o,addClientAuthentication:s,fetchFn:i}){let a=new URLSearchParams({grant_type:"refresh_token",refresh_token:n}),c=await U1(e,{metadata:t,tokenRequestParams:a,clientInformation:r,addClientAuthentication:s,resource:o,fetchFn:i});return{refresh_token:n,...c}}async function ire(e,t,{metadata:r,resource:n,authorizationCode:o,fetchFn:s}={}){let i=async()=>{let l=await e.clientInformation(),d=By(l,String(t));if(l&&!d)throw D1(l,String(t));return d},a=await i(),c=e.clientMetadata.scope,u;if(e.prepareTokenRequest)u=await e.prepareTokenRequest(c);if(!u){if(!o)throw Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!e.redirectUrl)throw Error("redirectUrl is required for authorization_code flow");let l=await e.codeVerifier();u=ore(o,l,e.redirectUrl)}return a??(a=await i()),U1(t,{metadata:r,tokenRequestParams:u,clientInformation:a,addClientAuthentication:e.addClientAuthentication,resource:n,fetchFn:s})}async function are(e,{metadata:t,clientMetadata:r,scope:n,fetchFn:o}){let s;if(t){if(!t.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");s=new URL(t.registration_endpoint)}else s=new URL("/register",e);let i=await no(o??fetch)(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,...n!==void 0?{scope:n}:{}})});if(!i.ok)throw await j1(i);return Gte.parse(await i.json())}class Pd extends Error{constructor(e,t){super(e),this.name="ParseError",this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}}var W1=10,cre=13,oo=32;function Gy(e){}function B1(e){if(typeof e=="function")throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=Gy,onError:r=Gy,onRetry:n=Gy,onComment:o,maxBufferSize:s}=e,i=[],a=0,c=!0,u,l="",d=0,f,m=!1;function h(_){if(m)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(c&&(c=!1,_.charCodeAt(0)===239&&_.charCodeAt(1)===187&&_.charCodeAt(2)===191&&(_=_.slice(3))),i.length===0){let A=y(_);A!==""&&(i.push(A),a=A.length),g();return}if(_.indexOf(`
|
|
553
|
+
`)===-1&&_.indexOf("\r")===-1){i.push(_),a+=_.length,g();return}i.push(_);let v=i.join("");i.length=0,a=0;let x=y(v);x!==""&&(i.push(x),a=x.length),g()}function g(){s!==void 0&&(a+l.length<=s||(m=!0,i.length=0,a=0,u=void 0,l="",d=0,f=void 0,r(new Pd(`Buffered data exceeded max buffer size of ${s} characters`,{type:"max-buffer-size-exceeded"}))))}function y(_){let v=0;if(_.indexOf("\r")===-1){let x=_.indexOf(`
|
|
554
|
+
`,v);for(;x!==-1;){if(v===x){d>0&&t({id:u,event:f,data:l}),u=void 0,l="",d=0,f=void 0,v=x+1,x=_.indexOf(`
|
|
555
|
+
`,v);continue}let A=_.charCodeAt(v);if(V1(_,v,A)){let j=_.charCodeAt(v+5)===oo?v+6:v+5,Y=_.slice(j,x);if(d===0&&_.charCodeAt(x+1)===W1){t({id:u,event:f,data:Y}),u=void 0,l="",f=void 0,v=x+2,x=_.indexOf(`
|
|
556
|
+
`,v);continue}l=d===0?Y:`${l}
|
|
557
|
+
${Y}`,d++}else Z1(_,v,A)?f=_.slice(_.charCodeAt(v+6)===oo?v+7:v+6,x)||void 0:b(_,v,x);v=x+1,x=_.indexOf(`
|
|
558
|
+
`,v)}return _.slice(v)}for(;v<_.length;){let x=_.indexOf("\r",v),A=_.indexOf(`
|
|
559
|
+
`,v),j=-1;if(x!==-1&&A!==-1?j=x<A?x:A:x!==-1?x===_.length-1?j=-1:j=x:A!==-1&&(j=A),j===-1)break;b(_,v,j),v=j+1,_.charCodeAt(v-1)===cre&&_.charCodeAt(v)===W1&&v++}return _.slice(v)}function b(_,v,x){if(v===x){S();return}let A=_.charCodeAt(v);if(V1(_,v,A)){let W=_.charCodeAt(v+5)===oo?v+6:v+5,oe=_.slice(W,x);l=d===0?oe:`${l}
|
|
560
|
+
${oe}`,d++;return}if(Z1(_,v,A)){f=_.slice(_.charCodeAt(v+6)===oo?v+7:v+6,x)||void 0;return}if(A===105&&_.charCodeAt(v+1)===100&&_.charCodeAt(v+2)===58){let W=_.slice(_.charCodeAt(v+3)===oo?v+4:v+3,x);u=W.includes("\x00")?void 0:W;return}if(A===58){if(o){let W=_.slice(v,x);o(W.slice(_.charCodeAt(v+1)===oo?2:1))}return}let j=_.slice(v,x),Y=j.indexOf(":");if(Y===-1){T(j,"",j);return}let ie=j.slice(0,Y),ae=j.charCodeAt(Y+1)===oo?2:1,Me=j.slice(Y+ae);T(ie,Me,j)}function T(_,v,x){switch(_){case"event":f=v||void 0;break;case"data":l=d===0?v:`${l}
|
|
561
|
+
${v}`,d++;break;case"id":u=v.includes("\x00")?void 0:v;break;case"retry":/^\d+$/.test(v)?n(parseInt(v,10)):r(new Pd(`Invalid \`retry\` value: "${v}"`,{type:"invalid-retry",value:v,line:x}));break;default:r(new Pd(`Unknown field "${_.length>20?`${_.slice(0,20)}…`:_}"`,{type:"unknown-field",field:_,value:v,line:x}));break}}function S(){d>0&&t({id:u,event:f,data:l}),u=void 0,l="",d=0,f=void 0}function I(_={}){if(_.consume&&i.length>0){let v=i.join("");b(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:I}}function V1(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 Z1(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 Jy extends TransformStream{constructor({onError:e,onRetry:t,onComment:r,maxBufferSize:n}={}){let o;super({start(s){o=B1({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 ure={initialReconnectionDelay:1000,maxReconnectionDelay:30000,reconnectionDelayGrowFactor:1.5,maxRetries:2};class Lr extends Error{constructor(e,t){super(`Streamable HTTP error: ${t}`);this.code=e}}class Yy{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=x1(t?.fetch,t?.requestInit),this._followRedirects=t?.redirectPolicy==="follow",this._followRedirects)this._fetch=Dy(this._fetch),this._fetchWithInit=Dy(this._fetchWithInit);this._sessionId=t?.sessionId,this._reconnectionOptions=t?.reconnectionOptions??ure}_unfollowedRedirect(e,t){let r=hd(e,t);return r&&!this._followRedirects?`${r} (redirectPolicy: 'same-origin')`:r}async _authThenStart(){if(!this._authProvider)throw new On("No auth provider");let e;try{e=await ka(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 On;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=fd(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:md(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 Lr(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 Jy({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=hl.parse(JSON.parse(f.data));if(Gn(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 On("No auth provider");if(await ka(this._authProvider,{serverUrl:this._url,authorizationCode:e,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new On("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:na(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 no(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 Lr(401,"Server returned 401 after successful authentication");let{resourceMetadataUrl:m,scope:h}=Ky(i);if(this._resourceMetadataUrl=m,this._scope=h,await ka(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new On;return this._hasCompletedAuthFlow=!0,this.send(e)}if(i.status===403&&this._authProvider){let{resourceMetadataUrl:m,scope:h,error:g}=Ky(i);if(g==="insufficient_scope"){let y=i.headers.get("WWW-Authenticate");if(this._lastUpscopingHeader===y)throw new Lr(403,"Server returned 403 after trying upscoping");if(h)this._scope=h;if(m)this._resourceMetadataUrl=m;if(this._lastUpscopingHeader=y??void 0,await ka(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetch})!=="AUTHORIZED")throw new On;return this.send(e)}}throw new Lr(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(),nO(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=k1(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)=>hl.parse(h)):[hl.parse(f)];for(let h of m)this.onmessage?.(h)}else throw await i.body?.cancel(),new Lr(-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 no(this._fetch??fetch)(this._url,t);if(await r.body?.cancel(),!r.ok&&r.status!==405)throw new Lr(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 lre(e){try{let t=At().safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}function dre(e){if(e instanceof Lr&&e.code===401)return!0;return/\b401\b|unauthorized/i.test(e.message)}async function Od(e,t,r,n){let o=new Yy(new URL(e.mcpUrl),{requestInit:{headers:{Authorization:`Bearer ${e.token}`}},fetch:n}),s=new jy({name:"tripwire-cli",version:gc});try{await s.connect(o);let i=await s.callTool({name:t,arguments:r},Ar),a=Ar.parse(i),c=a.content.flatMap((l)=>l.type==="text"?[l.text]:[]).join(`
|
|
562
|
+
`),u=a.structuredContent?At().safeParse(a.structuredContent):null;return{isError:a.isError===!0,text:c,data:u?.success?u.data:lre(c)}}catch(i){if(i instanceof Error&&dre(i))throw new ta("The Tripwire server rejected the token. Run tripwire login.");throw i}finally{await s.close().catch(()=>{return})}}var se=In(Qc(),1);import{emitKeypressEvents as pre}from"node:readline";import{stripVTControlCharacters as fre}from"node:util";var yt=se.default.dim("│"),mre=se.default.dim("─");function Xy(e){return e.filter((t)=>t.disabled===void 0)}function hre(e,t){let r=t.toLowerCase();return e.label.toLowerCase().includes(r)||e.value.toLowerCase().includes(r)}function H1(e,t){return t?e.filter((r)=>hre(r,t)):[...e]}function G1(e,t){let r=Xy(e),n=r.filter((o)=>t.has(o.value)).length;if(n===0)return"none";return n===r.length?"all":"partial"}function gre(e,t,r){let n=H1(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=G1(e,o)==="all";for(let i of Xy(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 yre(e,t,r){let n=t?se.default.cyan("❯"):" ";if(e.disabled!==void 0){let a=t?se.default.underline(e.label):e.label;return`${yt} ${n} ${se.default.dim(`- ${a} (${e.disabled})`)}`}let o=r.has(e.value)?se.default.green("●"):se.default.dim("○"),s=t?se.default.underline(e.label):e.label,i=e.hint?se.default.dim(` (${e.hint})`):"";return`${yt} ${n} ${o} ${s}${i}`}function K1(e,t){return e.filter((r)=>t.has(r.value)).map((r)=>r.label)}function wre(e,t,r){let{message:n,items:o,maxVisible:s=8}=e;if(r==="submit")return[`${se.default.green("◇")} ${se.default.bold(n)}`,`${yt} ${se.default.dim(K1(o,t.selected).join(", "))}`];if(r==="cancel")return[`${se.default.red("■")} ${se.default.bold(n)}`,`${yt} ${se.default.strikethrough(se.default.dim("Cancelled"))}`];let i=H1(o,t.query),a=[`${se.default.green("◆")} ${se.default.bold(n)}`,`${yt} ${se.default.dim("Search:")} ${t.query}${se.default.inverse(" ")}`,`${yt} ${se.default.dim("↑↓ move, space select, enter confirm")}`,yt],c=Xy(o),u=c.filter((h)=>t.selected.has(h.value)).length,l=G1(o,t.selected),d=l==="all"?se.default.green("●"):l==="partial"?se.default.yellow("◐"):se.default.dim("○"),f=t.cursor===0;if(a.push(`${yt} ${f?se.default.cyan("❯"):" "} ${d} ${f?se.default.underline(se.default.bold("Select All")):se.default.bold("Select All")} ${se.default.dim(`(${u}/${c.length})`)}`,`${yt} ${mre.repeat(36)}`),i.length===0)a.push(`${yt} ${se.default.dim("No matches found")}`);else{let h=t.cursor-1,g=Math.max(0,Math.min(h-Math.floor(s/2),i.length-s)),y=Math.min(i.length,g+s);i.slice(g,y).forEach((T,S)=>{a.push(yre(T,g+S===h,t.selected))});let b=[g>0?`↑ ${g} more`:"",y<i.length?`↓ ${i.length-y} more`:""].filter(Boolean);if(b.length>0)a.push(`${yt} ${se.default.dim(b.join(" "))}`)}let m=K1(o,t.selected);if(a.push(yt),m.length===0)a.push(`${yt} ${se.default.dim("Selected: (none)")}`);else{let h=m.length<=3?m.join(", "):`${m.slice(0,3).join(", ")} +${m.length-3} more`;a.push(`${yt} ${se.default.green("Selected:")} ${h}`)}return a.push(se.default.dim("└")),a}function bre(e,t){let r=Math.max(1,t);return e.reduce((n,o)=>n+Math.max(1,Math.ceil(fre(o).length/r)),0)}function J1(e,t,r){return new Promise((n)=>{let o={query:"",cursor:0,selected:new Set(t)},s=0,i=(l)=>{let d=wre(e,o,l),f=s>0?`\x1B[${s}A\x1B[J`:"";r.write(`${f}${d.join(`
|
|
548
563
|
`)}
|
|
549
|
-
`),s=
|
|
564
|
+
`),s=bre(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=gre(e.items,o,d);if(o=f.state,f.done){a(f.done);return}i()},u=()=>a("cancel");if(pre(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 Y1,mkdirSync as _re,readFileSync as vre,rmSync as Sre,writeFileSync as kre}from"node:fs";import{dirname as Id,join as xa,resolve as Qy}from"node:path";var X1=xa(".tripwire","project.json"),Ad=w({org:p().min(1).optional(),repo:p().min(1),workflows:K(p().min(1),p().min(1)).optional()});class Rd extends Error{path;constructor(e){super(`${e} is not a valid Tripwire link. Run tripwire link <repo> to rewrite it.`);this.path=e}}function xre(e){let t=new Rd(e),r;try{r=At().parse(JSON.parse(vre(e,"utf8")))}catch{throw t}let n=Ad.safeParse(r);if(!n.success)throw t;return n.data}function $a(e,t){let r=t===void 0?void 0:Qy(t),n=Qy(e);while(!0){let o=xa(n,X1);if(Y1(o))return{path:o,link:xre(o)};let s=Id(n);if(n===r||s===n)return null;n=s}}function Cd(e,t){let r=xa(Qy(e),X1);_re(Id(r),{recursive:!0});let n=Ad.parse(t);return kre(r,`${JSON.stringify(n,null,"\t")}
|
|
565
|
+
`),r}function Q1(e){Sre(e,{force:!0})}function ez(e,t){let r=e||t?.link.repo;if(!r)throw Error("No repo given. Pass one, or run tripwire link <repo> in this project.");return r}function tz(e,t,r){return e||t||r?.link.org}function ew(e,t){return JSON.stringify(Ad.parse(e))===JSON.stringify(Ad.parse(t))}function tw(e){return Object.fromEntries([...e].map(([t,r])=>[r,t]).sort(([t],[r])=>t.localeCompare(r)))}function rz(e,t,r,n){if(!t||!n||Y1(xa(r,e)))return e;return xa(Id(Id(n.path)),e)}var $re=new Set(["1","true","yes"]);function nz(e){return e!==void 0&&$re.has(e.trim().toLowerCase())}function oz(e,t){if(nz(e.TRIPWIRE_NO_BROWSER)||e.BROWSER==="none")return!1;if(nz(e.CI))return!1;let r=Boolean(e.DISPLAY||e.WAYLAND_DISPLAY);if((e.SSH_CONNECTION||e.SSH_TTY)&&!r)return!1;if(t==="darwin"||t==="win32")return!0;return r}var Tre=2000,Ere=5;async function sz(e,t){let r=e,n=0;while(r.status==="pending")try{r=await t.read(P0),n=0}catch(o){if(n+=1,n>=Ere)throw o;await t.sleep(Tre)}return r}function Pre(e){return`${e} ${e===1?"workflow":"workflows"}`}function rw(e){return`Waiting for someone to accept ${Pre(e.workflows.length)} on ${e.repo}`}function iz(e,t){return Se(e.workflows.map((r)=>[r.outcome??"skipped",[r.name,r.url].filter(Boolean).join(" ")]),t)}function az(e,t){switch(e.status){case"rejected":return"The push was declined. Nothing was saved.";case"expired":return"The review link expired. Nothing was saved. Push again.";case"stale":return`These workflows changed on the server after the push. Nothing was saved. Run tripwire workflows diff ${t}, then push again.`;default:return"The push was not accepted. Nothing was saved."}}function cz(e,t){return e.map((r)=>ir(`${r.name} was not sent for review. ${r.issues.join(" ")}`,t)).join(`
|
|
566
|
+
`)}import{existsSync as ow,mkdirSync as Ore,readFileSync as Ire,writeFileSync as lz}from"node:fs";import{basename as Are,dirname as sw,join as dz,resolve as zd}from"node:path";import{pathToFileURL as Rre}from"node:url";var Ta="tripwire.ts",Cre=w({typescript:te([p(),D()]).optional()});function zre(){if(process.versions.bun)return!0;let e=Cre.safeParse(process.features);return e.success&&Boolean(e.data.typescript)}function pz(e){let t=dz(sw(zd(e)),Io);return Ore(sw(t),{recursive:!0}),lz(t,E0(`/**
|
|
550
567
|
* The \`tripwire.ts\` authoring API. A workflow file default-exports
|
|
551
568
|
* \`workflows({ ... })\`; each entry compiles to one stored WorkflowDefinition.
|
|
552
569
|
*
|
|
@@ -950,15 +967,15 @@ export function authoring<C extends AuthoringCatalog>() {
|
|
|
950
967
|
},
|
|
951
968
|
};
|
|
952
969
|
}
|
|
953
|
-
`)),t}async function
|
|
970
|
+
`)),t}async function Nd(e){let t=zd(e);if(!ow(t))throw Error(`No ${e} here. Run tripwire workflows pull <repo> to start one.`);if(!zre())throw Error("Loading tripwire.ts needs Node 22.18 or later, or Bun. Run it with bunx @tripwire-sh/cli instead.");let r=dz(sw(t),Io);if(!ow(r))pz(t);let n=`${Rre(t).href}?at=${Date.now()}`;return y0(await import(n))}var Nre=w({workflows:k(w({id:p(),appId:p().optional(),name:p().optional(),enabled:D().optional(),definition:ut}))});function iw(e){return Nre.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 Lre(e){return[...new Set(e.nodes.flatMap((t)=>t.type==="trigger"?t.kinds:[]))]}function jre(e){let t=T0(e);return t.ok?void 0:`cannot be written as code. ${t.reason}`}function fz(e,t){return e.map((r)=>{let n=jre(r.definition);if(n)return{value:r.id,label:r.name,disabled:n};let o=r.appId?t.get(r.appId):void 0,s=o?.state??(r.enabled?"on":"off"),i=gm(Lre(r.definition),o?.schedules??[]),a=i.length>2?`${i.slice(0,2).join(", ")} +${i.length-2} more`:i.join(", "),c=[Bc[s].toLowerCase(),a].filter(Boolean).join(", ");return{value:r.id,label:r.name,hint:c}})}function mz(e,t){return e.filter((r)=>r.disabled===void 0).filter((r)=>t===null||t.includes(r.value)).map((r)=>r.value)}function hz(e,t,r=new Map){let n=Dn(e.map((s)=>s.definition),r),o=(s,i)=>s.id===i||s.appId===i||s.name===i||n.get(s.id)===i;return{picked:e.filter((s)=>t.some((i)=>o(s,i))),unknown:t.filter((s)=>!e.some((i)=>o(i,s)))}}function Dre(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 Mre=K(p(),At());function gz(e){let t=new Set(e.flatMap((r)=>r.nodes.flatMap((n)=>n.type==="rule"&&n.ref.startsWith("custom-")?[n.ref]:[])));return[...Ge,...[...t].map((r)=>{let[n=r,o="1"]=r.split("@");return{ruleId:n,version:Number(o),name:n,configSchema:Mre}})]}function uz(e){return`${e} ${e===1?"workflow":"workflows"}`}function yz(e){let t=e.pulled-e.count;return t>0?`${uz(e.count)}, ${t} left out`:uz(e.count)}async function wz(e){let t=zd(e);if(!ow(t))return{kind:"none"};try{let r=await Nd(e);return r.ok?{kind:"code",text:Ire(t,"utf8"),definitions:r.definitions}:{kind:"unreadable"}}catch{return{kind:"unreadable"}}}function nw(e,t){return Gc(e,{importFrom:Io,keys:t}).code}function qre(e){return e.length<=1?e[0]??"":`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`}function Fre(e,t,r,n){if(t.kind==="unreadable")return`${e} does not compile, so a pull cannot keep its other workflows. Fix it, or pass --force to replace it.`;if(t.kind!=="code")return null;let o=r.filter((i)=>{let a=t.definitions.find((c)=>c.id===i.id);return a!==void 0&&nw([a])!==nw([i])}).map((i)=>i.name),s=Are(e);if(o.length>0)return`${qre(o)} in ${s} ${o.length===1?"differs":"differ"} from the server. Run tripwire workflows diff <repo> to compare, or pass --force to take the server's version.`;if(nw(t.definitions,n)!==t.text)return`${s} has edits a pull would rewrite. Pass --force to rewrite it, or diff it first.`;return null}function bz(e,t,r,n={kind:"none"},o=new Map){let s=zd(e),i=Dre(n.kind==="code"?n.definitions:[],t),{code:a,warnings:c,written:u,keys:l}=Gc(i.definitions,{importFrom:Io,keys:o}),d=n.kind==="code"&&n.text===a,f=r||d?null:Fre(e,n,t,o);if(f)throw Error(f);let m=pz(s);lz(s,a);let h=new Set(t.map((g)=>g.id));return{file:s,module:m,count:u.filter((g)=>h.has(g)).length,pulled:t.length,kept:i.kept,warnings:c,keys:l}}function _z(e,t){return e.map((r)=>{let n=[[r.valid?"ok":"error",r.valid?t.good(`${r.id} can be turned on`):t.bad(`${r.id} cannot be turned on yet`)]];for(let o of r.issues)n.push([o.severity==="error"?"fix":"warn",`${o.step}: ${o.message}`]);for(let o of r.schedules)n.push(["runs",`${o.nodeId}: ${o.description??o.summary}`]);return Se(n,t)}).join(`
|
|
954
971
|
|
|
955
|
-
`)}var
|
|
972
|
+
`)}var Ure=w({json:D().optional(),org:p().optional()}),Wre=ve({user:ve({name:p().nullish(),email:p().nullish()})}),Vre=1000;function Zre(){try{return{link:$a(process.cwd())}}catch(e){return{link:null,linkError:e instanceof Error?e:Error(String(e))}}}function Xt(e,t){let r=Ure.parse(e.optsWithGlobals()),{link:n,linkError:o}=Zre();return{json:r.json===!0,org:tz(r.org,t.env.TRIPWIRE_ORG,n),link:n,linkError:o,style:wi(process.stdout.isTTY===!0,t.env),errStyle:wi(process.stderr.isTTY===!0,t.env)}}function ke(e){process.stdout.write(e.endsWith(`
|
|
956
973
|
`)?e:`${e}
|
|
957
|
-
`)}function
|
|
974
|
+
`)}function wt(e){process.stderr.write(e.endsWith(`
|
|
958
975
|
`)?e:`${e}
|
|
959
|
-
`)}function
|
|
976
|
+
`)}function Bre(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=At().safeParse(JSON.parse(n));return[r,o.success?o.data:n]}catch{return[r,n]}}function io(e,t,r){if(r.json){let n=t.isError?{error:Ao(t.text,t.data)}:t.data??{text:t.text};return ke(JSON.stringify(n,null,2)),t.isError?1:0}if(t.isError)return wt(ir(Ao(t.text,t.data),r.errStyle)),1;return ke(B0(e,t.data,r.style)??(t.text||JSON.stringify(t.data,null,2))),0}function so(e,t){if(t.json)ke(JSON.stringify({error:Ao(e.message)},null,2));else wt(ir(Ao(e.message),t.errStyle));return 1}function kz(e,t){return e.org?{org:e.org,...t}:t}function Kre(e,t){if(!t&&e.linkError)throw e.linkError;return ez(t,e.link)}function jr(e,t,r,n){let o=Xt(t,e.system);try{return n(Kre(o,r))}catch(s){process.exitCode=so(s instanceof Error?s:Error(String(s)),o);return}}function xz(e){let{org:t,repo:r}=e.link;return[["linked",t?`${r} in org ${t}`:r],["file",e.path]]}function Ld(e,t,r){return rz(r,t.getOptionValueSource("file")==="default",process.cwd(),Xt(t,e.system).link)}function Hre(e,t,r){if(!r||!t.link||e.isError)return e;let n=K(p(),At()).safeParse(e.data);return n.success?{...e,data:{...n.data,link:{...t.link.link,path:t.link.path}}}:e}async function Tt(e,t,r,n,o=!1){let s=Xt(t,e.system);try{let i=await mg(e.system,e.auth),a=await Od(i,r,kz(s,n),e.fetch);if(process.exitCode=io(r,s.json?Hre(a,s,o):a,s),o&&s.link&&!s.json&&!a.isError)ke(Se(xz(s.link),s.style))}catch(i){process.exitCode=so(i instanceof Error?i:Error(String(i)),s)}}async function Gre(e,t){let r=Xt(t,e.system),n=t.opts().browser,o=kk(e.system.env),s=go(e.system.env);try{let i=await Pk(e.auth,o,s),a=i.verification_uri_complete??i.verification_uri;if(wt(Se([["code",V0(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 Ik(e.auth,o,s,i),u=await Yre(e.system,c);if(r.json)ke(JSON.stringify({signedIn:!0,store:u},null,2));else{let l=await Jre(e,c);ke(Se([["done",l?`Signed in as ${l}`:"Signed in"]],r.style))}}catch(i){process.exitCode=so(i instanceof Error?i:Error(String(i)),r)}}async function vz(e,t){try{let r=await Od({token:t.accessToken,mcpUrl:e.system.env.TRIPWIRE_MCP_URL||t.mcpUrl,source:"file"},"whoami",{},e.fetch),n=Wre.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 Jre(e,t){let r=await vz(e,t);if(r)return r;return await e.auth.sleep(Vre),await vz(e,t)}async function Yre(e,t){let r=Ho(e);try{return await r.write(t),r.location}catch{let n=Ho({...e,env:{...e.env,TRIPWIRE_CREDENTIAL_STORE:"file"}});return await n.write(t),n.location}}async function Xre(e,t){let r=Xt(t,e.system),n=Ho(e.system),o=await n.read();if(o)await Rk(e.auth,o);if(await n.clear(),r.json)ke(JSON.stringify({signedIn:!1},null,2));else ke(Se([["done",o?"Signed out":"Not signed in"]],r.style))}var uw=w({workflows:k(w({id:p(),valid:D().optional(),outcome:p().optional(),reason:p().optional(),url:p().optional(),enabled:D().optional(),issues:k(te([p(),w({step:p(),message:p(),severity:p().optional()}).transform((e)=>e.severity==="warning"?"":`${e.step}: ${e.message}`)])).optional(),changes:k(w({change:z(["added","removed","changed"]),subject:p(),text:p()})).optional()}))}),Qre={added:"+",removed:"-",changed:"~"};function $z(e){return(e.issues??[]).filter(Boolean).join(" ")}function ene(e,t){let r=$z(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 Tz(e,t,r){let n=uw.safeParse(e);if(!n.success)return JSON.stringify(e,null,2);return n.data.workflows.map((o)=>{let i=(o.changes??[]).map((a)=>` ${Qre[a.change]} ${a.subject} ${a.text}`);return[t.label(r(o)),...i].join(`
|
|
960
977
|
`)}).join(`
|
|
961
978
|
|
|
962
|
-
`)}function
|
|
963
|
-
`)}async function M1(e,t){let r=await vd(e);if(r.ok)return r.definitions;if(t.json)st(JSON.stringify({valid:!1,issues:r.issues},null,2));else xn(jy(r.issues,t));return null}async function wa(e,t,r,n){let o=await Jh(e.system,e.auth);return await wd(o,r,L1(t,n),e.fetch)}async function Sd(e,t,r){let n=hs(e,t.system);try{process.exitCode=await r(n)}catch(o){process.exitCode=ya(o instanceof Error?o:Error(String(o)),n)}}var Dte=["on","off","cant-run","needs-fixes","cant-turn-on"],jte=x(xe({id:p(),state:z(Dte).optional(),schedules:x(p()).optional()}));async function Mte(e,t,r){let n=await wa(e,t,"list_workflows",{repo:r}),o=jte.safeParse(n.data);return new Map((o.success?o.data:[]).map((s)=>[s.id,{state:s.state,schedules:s.schedules}]))}function qte(e){return e.kind==="code"?e.definitions.map((t)=>t.id):null}async function Fte(e,t,r,n,o){let s=T1(n,await Mte(e,t,r));if(s.filter((a)=>!a.disabled).length<2)return n;let i=await v1({message:"Pick workflows to pull",items:s,maxVisible:12},O1(s,qte(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 Ute(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 Wte(e,t,r,n,o){return Sd(t,e,async(s)=>{let i=await wa(e,s,"get_workflow",{repo:r});if(i.isError)return ba("get_workflow",i,s);let a=E1(i.data),c=await R1(o.file),u=a;if(n.length>0){let f=P1(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 Fte(e,s,r,a,c);if(!f)return Jc("Pull cancelled"),0;u=f}let l=C1(o.file,u.map((f)=>f.definition),o.force===!0,c);if(s.json)return st(JSON.stringify(l,null,2)),0;let d=[["wrote",`${l.file} (${A1(l)})`]];if(l.kept.length>0)d.push(["kept",Ute(l.kept)]);return d.push(["helpers",l.module],...l.warnings.map((f)=>["note",f])),st(We(d,s.style)),0})}function Vte(e,t,r){return Sd(t,e,async(n)=>{let o=await vd(r.file),s=o.ok?[]:o.issues,{definitions:i}=o,a=[],c=null;if(i.length>0&&r.repo){let l=await wa(e,n,"validate_workflow",{repo:r.repo,definitions:qy(i)});if(l.isError){if(s.length>0)xn(jy(s,n));return ba("validate_workflow",l,n)}c=l.data,a=Kte.parse(l.data).workflows}else if(i.length>0)a=Zx(i,I1(i));let u=s.length===0&&a.every((l)=>l.valid);if(n.json)return st(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)xn(jy(s,n));if(a.length>0)st(z1(a,n.style));return u?0:1})}function Zte(e,t,r,n){return Sd(t,e,async(o)=>{let s=await M1(n.file,o);if(!s)return 1;let i=await wa(e,o,"validate_workflow",{repo:r,definitions:qy(s)});if(o.json||i.isError)return ba("validate_workflow",i,o);st(j1(i.data,o.style,(u)=>(u.changes??[]).length===0?`${u.id}: no changes`:u.id));let a=My.safeParse(i.data),c=a.success?a.data.workflows.filter((u)=>u.valid===!1):[];for(let u of c){let l=D1(u);xn(m0(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 Bte(e,t,r,n){return Sd(t,e,async(o)=>{let s=await M1(n.file,o);if(!s)return 1;let i=await wa(e,o,"apply_workflow",{repo:r,definitions:qy(s)});if(i.isError)return ba("apply_workflow",i,o);let a=My.safeParse(i.data),c=a.success?a.data.workflows.filter((u)=>u.outcome==="refused"):[];if(o.json)return st(JSON.stringify(i.data??{text:i.text},null,2)),c.length>0?1:0;st(j1(i.data,o.style,(u)=>[u.id,u.outcome,u.url].filter(Boolean).join(" ")));for(let u of c)xn(Nn(Lte(u,r),o.errStyle));return c.length>0?1:0})}var Kte=b({workflows:x(b({id:p(),name:p(),valid:j(),issues:x(b({rule:p(),severity:z(["error","warning"]),step:p(),message:p()})),schedules:x(b({nodeId:p(),summary:p(),timezone:p(),defaulted:j(),description:p().optional()}))}))});function qy(e){return Sr().parse(JSON.parse(JSON.stringify(e)))}function q1(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)=>Ate(t,a)),e.command("logout").description("Revoke and remove the stored token").action((i,a)=>zte(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(Ite));if(l.enabled===void 0&&l.config===void 0)throw Error("Pass --enable, --disable or --param.")}catch(d){process.exitCode=ya(d instanceof Error?d:Error(String(d)),hs(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",ga).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)=>Wte(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",ga).option("--repo <repo>","Also check against this repo, custom rules included").action((i,a)=>Vte(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",ga).action((i,a,c)=>Zte(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",ga).action((i,a,c)=>Bte(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=ya(Error(g0(c)),hs(l,t.system));return}return xt(t,l,"decide_moderation",{repo:i,itemId:a,decision:c})})}var Hte=new Set(["install","login","logout","whoami","status","repos","rules","gate","workflows","runs","queue","help"]),Gte=new Set(["--help","-h","--version","-V"]),Jte=new Set(["--org"]);function Yte(e){if(e.some((n)=>Gte.has(n)))return{kind:"run",argv:e};let t=0;while(t<e.length){let n=e[t]??"";if(!n.startsWith("-"))break;t+=Jte.has(n)?2:1}let r=e[t];if(r===void 0)return{kind:"help"};if(Hte.has(r))return{kind:"run",argv:e};return{kind:"unknown",command:r}}async function F1(e,t){let r=Yte(t),n=Qte(e);if(r.kind==="unknown"){process.stderr.write(`${Nn(`Unknown command ${r.command}. Run tripwire --help.`,li(process.stderr.isTTY===!0,e.env))}
|
|
964
|
-
`),process.exitCode=1;return}if(r.kind==="help"){n.outputHelp();return}await n.parseAsync(r.argv,{from:"user"})}async function
|
|
979
|
+
`)}function aw(e,t){return e.map((r)=>ir(f0(r),t.errStyle)).join(`
|
|
980
|
+
`)}async function Ez(e,t){let r=await Nd(e);if(r.ok)return r.definitions;if(t.json)ke(JSON.stringify({valid:!1,issues:r.issues},null,2));else wt(aw(r.issues,t));return null}async function Dr(e,t,r,n){let o=await mg(e.system,e.auth);return await Od(o,r,kz(t,n),e.fetch)}async function Dd(e,t,r){let n=Xt(e,t.system);try{process.exitCode=await r(n)}catch(o){process.exitCode=so(o instanceof Error?o:Error(String(o)),n)}}function tne(e,t){let r=jd(Sz(e)),n=$a(r,r),o=!n||n.link.repo!==t.repo||n.link.org!==t.org;if(n&&ew(n.link,t))return{path:n.path,linked:o};return{path:Cd(r,t),linked:o}}function lw(e,t){let r=$a(jd(Sz(e)));return{found:r,mapping:r&&r.link.repo===t?r.link.workflows??{}:{}}}function Ea(e){return new Map(e.matches.map((t)=>[t.id,t.key]))}async function rne(e,t,r){let n=await Dr(e,t,"get_workflow",{repo:r});return n.isError?[]:iw(n.data).map((o)=>o.definition)}async function dw(e,t,r,n,o){let{mapping:s}=lw(n,r),i=o.some((u)=>!s[u.id]),a=i?await rne(e,t,r):[],c=Zc(o,a,s);for(let u of c.matches){if(u.by==="new"&&i)wt(tu(`${u.key} matches no workflow on the server, so a push adds it as a new one.`,t.errStyle));if(u.by==="name"){let l=a.find((d)=>d.id===u.id)?.name;wt(tu(`${u.key} has no saved id in .tripwire/project.json, so it matches ${l??u.id} on the server by its name.`,t.errStyle))}}return c}function cw(e,t,r){let{found:n}=lw(e,t);if(!n||n.link.repo!==t)return;let o=new Set(r.matches.map((c)=>c.id)),s=Object.entries(n.link.workflows??{}).filter(([,c])=>!o.has(c)),i=tw(new Map([...s.map(([c,u])=>[u,c]),...Ea(r)])),a={...n.link,workflows:i};if(!ew(n.link,a))Cd(jd(jd(n.path)),a)}var nne=ve({workflows:k(ve({id:p()}))});function pw(e,t){let r=nne.safeParse(e);if(!r.success)return e;return At().parse({...r.data,workflows:r.data.workflows.map((n)=>({...n,id:t.get(n.id)??n.id}))})}var one=["on","off","cant-run","needs-fixes","cant-turn-on"],sne=k(ve({id:p(),state:z(one).optional(),schedules:k(p()).optional()}));async function ine(e,t,r){let n=await Dr(e,t,"list_workflows",{repo:r}),o=sne.safeParse(n.data);return new Map((o.success?o.data:[]).map((s)=>[s.id,{state:s.state,schedules:s.schedules}]))}function ane(e){return e.kind==="code"?e.definitions.map((t)=>t.id):null}async function cne(e,t,r,n,o){let s=fz(n,await ine(e,t,r));if(s.filter((a)=>!a.disabled).length<2)return n;let i=await J1({message:"Pick workflows to pull",items:s,maxVisible:12},mz(s,ane(o)),{input:process.stdin,write:(a)=>process.stdout.write(a),columns:()=>process.stdout.columns||80});return i?n.filter((a)=>i.includes(a.id)):null}function une(e){let t=e.length===1?e[0]??"":`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`;return e.length===1?`${t}, not pulled and left as it was`:`${t}, not pulled and left as they were`}function lne(e,t,r,n,o){return Dd(t,e,async(s)=>{let i=await Dr(e,s,"get_workflow",{repo:r});if(i.isError)return io("get_workflow",i,s);let a=iw(i.data),c=await wz(o.file),{mapping:u}=lw(o.file,r),l=c.kind==="code"?Zc(c.definitions,a.map((T)=>T.definition),u):null,d=c.kind==="code"&&l?{...c,definitions:l.definitions}:c,f=new Map([...Object.entries(u).map(([T,S])=>[S,T]),...l?Ea(l):[]]),m=new Map([...f,...Dn(a.map((T)=>T.definition),f)]),h=a;if(n.length>0){let T=hz(a,n,m);if(T.unknown.length>0)throw Error(`No workflow ${T.unknown.join(", ")} on ${r}. Run tripwire workflows list <repo> to see them.`);h=T.picked}else if(process.stdin.isTTY&&process.stdout.isTTY&&!(s.json||o.all||o.yes)){let T=await cne(e,s,r,a,d);if(!T)return iu("Pull cancelled"),0;h=T}let g=bz(o.file,h.map((T)=>T.definition),o.force===!0,d,m),y=o.link?tne(o.file,{org:s.org,repo:r,workflows:tw(g.keys)}):null;if(s.json)return ke(JSON.stringify({...g,keys:Object.fromEntries(g.keys),link:y?.path??null},null,2)),0;let b=[["wrote",`${g.file} (${yz(g)})`]];if(g.kept.length>0)b.push(["kept",une(g.kept)]);if(b.push(["helpers",g.module]),y?.linked)b.push(["linked",`${r} in ${y.path}`]);return b.push(...g.warnings.map((T)=>["note",T])),ke(Se(b,s.style)),0})}function dne(e,t,r){return Dd(t,e,async(n)=>{let o=await Nd(r.file),s=o.ok?[]:o.issues,{definitions:i}=o,a=[],c=null;if(i.length>0&&r.repo){let l=await dw(e,n,r.repo,r.file,i),d=await Dr(e,n,"validate_workflow",{repo:r.repo,definitions:Md(l.definitions)});if(d.isError){if(s.length>0)wt(aw(s,n));return io("validate_workflow",d,n)}c=d.data,a=yne.parse(pw(d.data,Ea(l))).workflows}else if(i.length>0){a=w0(i,gz(i));let l=n.link?.link;i=Zc(i,[],l?l.workflows??{}:{}).definitions}let u=s.length===0&&a.every((l)=>l.valid);if(n.json)return ke(JSON.stringify(c!==null&&s.length===0?c:{valid:u,issues:s,workflows:a,definitions:r.repo?void 0:i},null,2)),u?0:1;if(s.length>0)wt(aw(s,n));if(a.length>0)ke(_z(a,n.style));return u?0:1})}function pne(e,t,r,n){return Dd(t,e,async(o)=>{let s=await Ez(n.file,o);if(!s)return 1;let i=await dw(e,o,r,n.file,s),a=await Dr(e,o,"validate_workflow",{repo:r,definitions:Md(i.definitions)});if(o.json||a.isError)return io("validate_workflow",a,o);let c={...a,data:pw(a.data,Ea(i))};ke(Tz(c.data,o.style,(d)=>(d.changes??[]).length===0?`${d.id}: no changes`:d.id));let u=uw.safeParse(c.data),l=u.success?u.data.workflows.filter((d)=>d.valid===!1):[];for(let d of l){let f=$z(d);wt(tu(d.enabled?`${d.id} is on, so a push will be refused. ${f}`:`${d.id} could not be turned on after a push. ${f}`,o.errStyle))}return 0})}async function fne(e,t,r,n,o){let s=await Dr(e,t,"apply_workflow",{repo:r,definitions:Md(o.definitions)});if(s.isError)return io("apply_workflow",s,t);cw(n,r,o);let i=t.json?s:{...s,data:pw(s.data,Ea(o))},a=uw.safeParse(i.data),c=a.success?a.data.workflows.filter((u)=>u.outcome==="refused"):[];if(t.json)return ke(JSON.stringify(i.data??{text:i.text},null,2)),c.length>0?1:0;ke(Tz(i.data,t.style,(u)=>[u.id,u.outcome,u.url].filter(Boolean).join(" ")));for(let u of c)wt(ir(ene(u,r),t.errStyle));return c.length>0?1:0}async function mne(e,t,r,n){let o=await Dr(e,{...t,org:r.org},"get_workflow_push",{push:r.id,waitSeconds:n});if(o.isError)throw Error(Ao(o.text,o.data));return fm.parse(o.data)}async function hne(e,t,r){let n=process.stderr.isTTY&&!t.json?xi({output:process.stderr}):null;if(n?.start(rw(r)),!n&&!t.json)wt(Se([["",rw(r)]],t.errStyle));try{let o=await sz(r,{read:(s)=>mne(e,t,r,s),sleep:e.auth.sleep});return n?.stop(O0[o.status]),o}catch(o){throw n?.error("Lost track of the review"),o}}function gne(e,t,r,n){return Dd(t,e,async(o)=>{let s=await Ez(n.file,o);if(!s)return 1;let i=await dw(e,o,r,n.file,s);if(n.force)return await fne(e,o,r,n.file,i);let a=await Dr(e,o,"propose_workflow_push",{repo:r,definitions:Md(i.definitions)});if(a.isError)return io("propose_workflow_push",a,o);let c=A0.parse(a.data);if(c.result==="unchanged"){if(cw(n.file,r,i),o.json)ke(JSON.stringify(c,null,2));else ke(Se([["done","No changes to push"]],o.style));return 0}if(c.result==="blocked"){if(o.json)ke(JSON.stringify(c,null,2));else wt(cz(c.workflows,o.errStyle));return 1}let{push:u}=c;if(o.json&&!n.wait)return ke(JSON.stringify(u,null,2)),0;if(!o.json)wt(Se([["review",u.url]],o.errStyle));if(n.browser&&e.openUrl&&oz(e.system.env,e.system.platform))await e.openUrl(u.url).catch(()=>{return});let l=await hne(e,o,u);if(l.status==="accepted")cw(n.file,r,i);if(o.json)ke(JSON.stringify(l,null,2));else if(l.status==="accepted")ke(iz(l,o.style));else wt(ir(az(l,r),o.errStyle));return I0(l.status)})}var yne=w({workflows:k(w({id:p(),name:p(),valid:D(),issues:k(w({rule:p(),severity:z(["error","warning"]),step:p(),message:p()})),schedules:k(w({nodeId:p(),summary:p(),timezone:p(),defaulted:D(),description:p().optional()}))}))});function Md(e){return At().parse(JSON.parse(JSON.stringify(e)))}async function wne(e,t,r){let n=Xt(t,e.system);try{let o=await Dr(e,n,"list_workflows",{repo:r});if(o.isError){process.exitCode=io("list_workflows",o,n);return}let s=$a(process.cwd(),process.cwd()),i={org:n.org,repo:r,workflows:s?.link.repo===r?s.link.workflows:void 0},a=Cd(process.cwd(),i),c={path:a,link:{...i}};if(n.json){ke(JSON.stringify({...c.link,path:a},null,2));return}ke(Se(xz(c),n.style))}catch(o){process.exitCode=so(o instanceof Error?o:Error(String(o)),n)}}function bne(e,t){let r=Xt(t,e.system),n=r.link?.path??(r.linkError instanceof Rd?r.linkError.path:null);if(n)Q1(n);if(r.json){ke(JSON.stringify({unlinked:n},null,2));return}ke(Se([["done",n?`Unlinked, removed ${n}`:"Not linked"]],r.style))}function Pz(e,t){e.command("login").description("Sign in with the OAuth device flow and store the token").option("--no-browser","Print the link without opening a browser").action((i,a)=>Gre(t,a)),e.command("logout").description("Revoke and remove the stored token").action((i,a)=>Xre(t,a)),e.command("whoami").description("Show the signed-in account, access status and orgs").action((i,a)=>Tt(t,a,"whoami",{},!0)),e.command("status").description("Show setup status and the next step").action((i,a)=>Tt(t,a,"setup_status",{},!0)),e.command("link <repo>").description("Save the repo (and --org) to .tripwire/project.json here, so later commands can leave them out").action((i,a,c)=>wne(t,c,i)),e.command("unlink").description("Remove the nearest .tripwire/project.json").action((i,a)=>bne(t,a)),e.command("repos").description("List repos and their gate state").action((i,a)=>Tt(t,a,"list_repos",{}));let r=e.command("rules").description("Read and change rules");r.command("list [repo]").description("List a repo's rules (default: the linked repo), or the rule catalog when there is no repo").option("--catalog","List the rule catalog").action((i,a,c)=>{let u=Xt(c,t.system).link;return i||u&&!a.catalog?jr(t,c,i,(l)=>Tt(t,c,"get_repo_rules",{repo:l})):Tt(t,c,"list_rule_catalog",{})}),r.command("set <repoOrRule> [ruleId]").usage("[options] [repo] <ruleId>").description("Turn a rule on or off and set its params").option("--enable","Turn the rule on").option("--disable","Turn the rule off").option("--param <key=value>","Set a param, repeatable. Values parse as JSON when they can",(i,a)=>[...a,i],[]).action((i,a,c,u)=>{let[l,d]=a===void 0?[void 0,i]:[i,a],f={ruleId:d};if(c.enable||c.disable)f.enabled=c.enable===!0;try{if(c.param.length>0)f.config=Object.fromEntries(c.param.map(Bre));if(f.enabled===void 0&&f.config===void 0)throw Error("Pass --enable, --disable or --param.")}catch(m){process.exitCode=so(m instanceof Error?m:Error(String(m)),Xt(u,t.system));return}return jr(t,u,l,(m)=>Tt(t,u,"set_rule",{repo:m,...f}))}),e.command("gate").description("Control the Tripwire gate on a repo").command("on [repo]").description("Turn the gate on for a repo").action((i,a,c)=>jr(t,c,i,(u)=>Tt(t,c,"turn_on_gate",{repo:u})));let n=e.command("workflows").description("Manage workflows as tripwire.ts code: pull, validate, diff and push");n.command("pull [repo] [workflows...]").description("Write a repo's workflows to tripwire.ts, with the typed helpers and the repo link in .tripwire/").option("--file <path>","Where to write the code",Ta).option("--all","Pull every workflow without asking").option("-y, --yes","Skip the picker").option("--force","Overwrite workflows that differ from the server").option("--no-link","Do not save the repo to .tripwire/project.json").action((i,a,c,u)=>jr(t,u,i,(l)=>lne(t,u,l,a,{...c,file:Ld(t,u,c.file)}))),n.command("validate").description("Compile tripwire.ts and check it; with --repo, against that repo's rules").option("--file <path>","The workflow file",Ta).option("--repo <repo>","Also check against this repo, custom rules included").action((i,a)=>dne(t,a,{...i,file:Ld(t,a,i.file)})),n.command("diff [repo]").description("Show what a push of tripwire.ts would change on the repo").option("--file <path>","The workflow file",Ta).action((i,a,c)=>jr(t,c,i,(u)=>pne(t,c,u,{...a,file:Ld(t,c,a.file)}))),n.command("push [repo]").description("Send tripwire.ts for review in the browser, then save it once accepted. New workflows start off").option("--file <path>","The workflow file",Ta).option("--force","Save without review").option("--no-browser","Print the review link without opening a browser").option("--wait","With --json, wait for the review").action((i,a,c)=>jr(t,c,i,(u)=>gne(t,c,u,{...a,file:Ld(t,c,a.file)}))),n.command("list [repo]").description("List a repo's workflows").action((i,a,c)=>jr(t,c,i,(u)=>Tt(t,c,"list_workflows",{repo:u})));for(let i of["enable","disable"])n.command(`${i} <repoOrWorkflow> [workflowId]`).usage("[options] [repo] <workflowId>").description(`${i==="enable"?"Enable":"Disable"} a workflow`).action((a,c,u,l)=>{let[d,f]=c===void 0?[void 0,a]:[a,c];return jr(t,l,d,(m)=>Tt(t,l,"set_workflow_enabled",{repo:m,workflowId:f,enabled:i==="enable"}))});let o=e.command("runs").description("Inspect runs");o.command("list").description("List recent runs").option("--repo <repo>","Only runs for this repo").option("--limit <n>","How many runs to show",(i)=>Number.parseInt(i,10)).action((i,a)=>{let c={};if(i.repo)c.repo=i.repo;if(i.limit)c.limit=i.limit;return Tt(t,a,"list_runs",c)}),o.command("show <runId>").description("Show one run with its rule results").action((i,a,c)=>Tt(t,c,"get_run",{runId:i}));let s=e.command("queue").description("Work the human review queue");s.command("list").description("List items waiting for human review").option("--repo <repo>","Only items for this repo").action((i,a)=>Tt(t,a,"list_moderation_queue",i.repo?{repo:i.repo}:{})),s.command("decide <first> <second> [third]").usage("[options] [repo] <itemId> <action>").description("Decide an item: approve, remove or ban. A ban returns a link a human must open").action((i,a,c,u,l)=>{let[d,f,m]=c===void 0?[void 0,i,a]:[i,a,c];if(!["approve","remove","ban"].includes(m)){process.exitCode=so(Error(Z0(m)),Xt(l,t.system));return}return jr(t,l,d,(h)=>Tt(t,l,"decide_moderation",{repo:h,itemId:f,decision:m}))})}var _ne=new Set(["install","login","logout","whoami","status","link","unlink","repos","rules","gate","workflows","runs","queue","help"]),vne=new Set(["--help","-h","--version","-V"]),Sne=new Set(["--org"]);function kne(e){if(e.some((n)=>vne.has(n)))return{kind:"run",argv:e};let t=0;while(t<e.length){let n=e[t]??"";if(!n.startsWith("-"))break;t+=Sne.has(n)?2:1}let r=e[t];if(r===void 0)return{kind:"help"};if(_ne.has(r))return{kind:"run",argv:e};return{kind:"unknown",command:r}}async function Oz(e,t){let r=kne(t),n=$ne(e);if(r.kind==="unknown"){process.stderr.write(`${ir(`Unknown command ${r.command}. Run tripwire --help.`,wi(process.stderr.isTTY===!0,e.env))}
|
|
981
|
+
`),process.exitCode=1;return}if(r.kind==="help"){n.outputHelp();return}await n.parseAsync(r.argv,{from:"user"})}async function xne(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 $ne(e,t={}){let r=new qw().name("tripwire").description("Set up Tripwire in your coding agents and manage it from the terminal").version(gc).option("--json","Print machine-readable JSON").option("--org <slug>","Org to act on (default: TRIPWIRE_ORG, the linked project, or your only org)").showHelpAfterError();return r.command("install [instruction]").description("Add the Tripwire MCP server and get-started skill to your coding agents. instruction is org-slug#run-code or text for the copied prompt").option("--no-interactive","Install into every detected agent without prompts").option("-y, --yes","Alias for --no-interactive").action(async(n,o,s)=>{let i=s.optsWithGlobals().json===!0,a=process.stdin.isTTY===!0&&process.stdout.isTTY===!0;process.exitCode=await ZP(e,{interactive:o.interactive&&!o.yes&&a,json:i,instruction:n})}),Pz(r,{system:e,auth:Tk,openUrl:(n)=>xne(e,n),...t}),r}import{spawn as Iz}from"node:child_process";import{accessSync as Tne,constants as Ene,existsSync as Az,readdirSync as Pne}from"node:fs";import{homedir as One}from"node:os";import{delimiter as Rz,join as Cz}from"node:path";function Ine(e){try{return Tne(e,Ene.X_OK),!0}catch{return!1}}function Ane(e,t,r){let n=(t.PATH??"").split(Rz).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=Cz(s,`${e}${i}`);if(Az(a)&&Ine(a))return a}return null}function Rne(e,t,r,n){return new Promise((o)=>{let s=Iz(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 Cne(e,t,r){return new Promise((n)=>{let o=Iz(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 zne(e){try{return Pne(e)}catch{return[]}}function Nne(e,t){if(e.TRIPWIRE_APP_DIRS!==void 0)return e.TRIPWIRE_APP_DIRS.split(Rz).filter(Boolean);return["/Applications",Cz(t,"Applications")]}function zz(e=process.env,t=process.platform){let r=e.HOME??e.USERPROFILE??One();return{platform:t,home:r,env:e,macAppDirs:Nne(e,r),run:(n,o,s)=>Rne(n,o,e,s),runInteractive:(n,o)=>Cne(n,o,e),which:(n)=>Ane(n,e,t),exists:Az,list:zne}}await Oz(zz(),process.argv.slice(2));
|