@pickled-dev/cli 0.17.0 → 0.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +132 -125
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,173 +1,173 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
2
|
// @bun
|
|
3
|
-
var
|
|
4
|
-
`)}displayWidth($){return
|
|
3
|
+
var $X=Object.create;var{getPrototypeOf:ZX,defineProperty:_5,getOwnPropertyNames:XX}=Object;var zX=Object.prototype.hasOwnProperty;function qX($){return this[$]}var GX,JX,M5=($,Z,X)=>{var z=$!=null&&typeof $==="object";if(z){var q=Z?GX??=new WeakMap:JX??=new WeakMap,G=q.get($);if(G)return G}X=$!=null?$X(ZX($)):{};let J=Z||!$||!$.__esModule?_5(X,"default",{value:$,enumerable:!0}):X;for(let Q of XX($))if(!zX.call(J,Q))_5(J,Q,{get:qX.bind($,Q),enumerable:!0});if(z)q.set($,J);return J};var M=($,Z)=>()=>(Z||$((Z={exports:{}}).exports,Z),Z.exports);var V0=import.meta.require;var b$=M((QX)=>{class U4 extends Error{constructor($,Z,X){super(X);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=Z,this.exitCode=$,this.nestedError=void 0}}class F5 extends U4{constructor($){super(1,"commander.invalidArgument",$);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}QX.CommanderError=U4;QX.InvalidArgumentError=F5});var N1=M((VX)=>{var{InvalidArgumentError:HX}=b$();class O5{constructor($,Z){switch(this.description=Z||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,$[0]){case"<":this.required=!0,this._name=$.slice(1,-1);break;case"[":this.required=!1,this._name=$.slice(1,-1);break;default:this.required=!0,this._name=$;break}if(this._name.endsWith("..."))this.variadic=!0,this._name=this._name.slice(0,-3)}name(){return this._name}_collectValue($,Z){if(Z===this.defaultValue||!Array.isArray(Z))return[$];return Z.push($),Z}default($,Z){return this.defaultValue=$,this.defaultValueDescription=Z,this}argParser($){return this.parseArg=$,this}choices($){return this.argChoices=$.slice(),this.parseArg=(Z,X)=>{if(!this.argChoices.includes(Z))throw new HX(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(Z,X);return Z},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function WX($){let Z=$.name()+($.variadic===!0?"...":"");return $.required?"<"+Z+">":"["+Z+"]"}VX.Argument=O5;VX.humanReadableArgName=WX});var H4=M((LX)=>{var{humanReadableArgName:TX}=N1();class w5{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext($){this.helpWidth=this.helpWidth??$.helpWidth??80}visibleCommands($){let Z=$.commands.filter((z)=>!z._hidden),X=$._getHelpCommand();if(X&&!X._hidden)Z.push(X);if(this.sortSubcommands)Z.sort((z,q)=>{return z.name().localeCompare(q.name())});return Z}compareOptions($,Z){let X=(z)=>{return z.short?z.short.replace(/^-/,""):z.long.replace(/^--/,"")};return X($).localeCompare(X(Z))}visibleOptions($){let Z=$.options.filter((z)=>!z.hidden),X=$._getHelpOption();if(X&&!X.hidden){let z=X.short&&$._findOption(X.short),q=X.long&&$._findOption(X.long);if(!z&&!q)Z.push(X);else if(X.long&&!q)Z.push($.createOption(X.long,X.description));else if(X.short&&!z)Z.push($.createOption(X.short,X.description))}if(this.sortOptions)Z.sort(this.compareOptions);return Z}visibleGlobalOptions($){if(!this.showGlobalOptions)return[];let Z=[];for(let X=$.parent;X;X=X.parent){let z=X.options.filter((q)=>!q.hidden);Z.push(...z)}if(this.sortOptions)Z.sort(this.compareOptions);return Z}visibleArguments($){if($._argsDescription)$.registeredArguments.forEach((Z)=>{Z.description=Z.description||$._argsDescription[Z.name()]||""});if($.registeredArguments.find((Z)=>Z.description))return $.registeredArguments;return[]}subcommandTerm($){let Z=$.registeredArguments.map((X)=>TX(X)).join(" ");return $._name+($._aliases[0]?"|"+$._aliases[0]:"")+($.options.length?" [options]":"")+(Z?" "+Z:"")}optionTerm($){return $.flags}argumentTerm($){return $.name()}longestSubcommandTermLength($,Z){return Z.visibleCommands($).reduce((X,z)=>{return Math.max(X,this.displayWidth(Z.styleSubcommandTerm(Z.subcommandTerm(z))))},0)}longestOptionTermLength($,Z){return Z.visibleOptions($).reduce((X,z)=>{return Math.max(X,this.displayWidth(Z.styleOptionTerm(Z.optionTerm(z))))},0)}longestGlobalOptionTermLength($,Z){return Z.visibleGlobalOptions($).reduce((X,z)=>{return Math.max(X,this.displayWidth(Z.styleOptionTerm(Z.optionTerm(z))))},0)}longestArgumentTermLength($,Z){return Z.visibleArguments($).reduce((X,z)=>{return Math.max(X,this.displayWidth(Z.styleArgumentTerm(Z.argumentTerm(z))))},0)}commandUsage($){let Z=$._name;if($._aliases[0])Z=Z+"|"+$._aliases[0];let X="";for(let z=$.parent;z;z=z.parent)X=z.name()+" "+X;return X+Z+" "+$.usage()}commandDescription($){return $.description()}subcommandDescription($){return $.summary()||$.description()}optionDescription($){let Z=[];if($.argChoices)Z.push(`choices: ${$.argChoices.map((X)=>JSON.stringify(X)).join(", ")}`);if($.defaultValue!==void 0){if($.required||$.optional||$.isBoolean()&&typeof $.defaultValue==="boolean")Z.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`)}if($.presetArg!==void 0&&$.optional)Z.push(`preset: ${JSON.stringify($.presetArg)}`);if($.envVar!==void 0)Z.push(`env: ${$.envVar}`);if(Z.length>0){let X=`(${Z.join(", ")})`;if($.description)return`${$.description} ${X}`;return X}return $.description}argumentDescription($){let Z=[];if($.argChoices)Z.push(`choices: ${$.argChoices.map((X)=>JSON.stringify(X)).join(", ")}`);if($.defaultValue!==void 0)Z.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`);if(Z.length>0){let X=`(${Z.join(", ")})`;if($.description)return`${$.description} ${X}`;return X}return $.description}formatItemList($,Z,X){if(Z.length===0)return[];return[X.styleTitle($),...Z,""]}groupItems($,Z,X){let z=new Map;return $.forEach((q)=>{let G=X(q);if(!z.has(G))z.set(G,[])}),Z.forEach((q)=>{let G=X(q);if(!z.has(G))z.set(G,[]);z.get(G).push(q)}),z}formatHelp($,Z){let X=Z.padWidth($,Z),z=Z.helpWidth??80;function q(W,H){return Z.formatItem(W,X,H,Z)}let G=[`${Z.styleTitle("Usage:")} ${Z.styleUsage(Z.commandUsage($))}`,""],J=Z.commandDescription($);if(J.length>0)G=G.concat([Z.boxWrap(Z.styleCommandDescription(J),z),""]);let Q=Z.visibleArguments($).map((W)=>{return q(Z.styleArgumentTerm(Z.argumentTerm(W)),Z.styleArgumentDescription(Z.argumentDescription(W)))});if(G=G.concat(this.formatItemList("Arguments:",Q,Z)),this.groupItems($.options,Z.visibleOptions($),(W)=>W.helpGroupHeading??"Options:").forEach((W,H)=>{let V=W.map((B)=>{return q(Z.styleOptionTerm(Z.optionTerm(B)),Z.styleOptionDescription(Z.optionDescription(B)))});G=G.concat(this.formatItemList(H,V,Z))}),Z.showGlobalOptions){let W=Z.visibleGlobalOptions($).map((H)=>{return q(Z.styleOptionTerm(Z.optionTerm(H)),Z.styleOptionDescription(Z.optionDescription(H)))});G=G.concat(this.formatItemList("Global Options:",W,Z))}return this.groupItems($.commands,Z.visibleCommands($),(W)=>W.helpGroup()||"Commands:").forEach((W,H)=>{let V=W.map((B)=>{return q(Z.styleSubcommandTerm(Z.subcommandTerm(B)),Z.styleSubcommandDescription(Z.subcommandDescription(B)))});G=G.concat(this.formatItemList(H,V,Z))}),G.join(`
|
|
4
|
+
`)}displayWidth($){return P5($).length}styleTitle($){return $}styleUsage($){return $.split(" ").map((Z)=>{if(Z==="[options]")return this.styleOptionText(Z);if(Z==="[command]")return this.styleSubcommandText(Z);if(Z[0]==="["||Z[0]==="<")return this.styleArgumentText(Z);return this.styleCommandText(Z)}).join(" ")}styleCommandDescription($){return this.styleDescriptionText($)}styleOptionDescription($){return this.styleDescriptionText($)}styleSubcommandDescription($){return this.styleDescriptionText($)}styleArgumentDescription($){return this.styleDescriptionText($)}styleDescriptionText($){return $}styleOptionTerm($){return this.styleOptionText($)}styleSubcommandTerm($){return $.split(" ").map((Z)=>{if(Z==="[options]")return this.styleOptionText(Z);if(Z[0]==="["||Z[0]==="<")return this.styleArgumentText(Z);return this.styleSubcommandText(Z)}).join(" ")}styleArgumentTerm($){return this.styleArgumentText($)}styleOptionText($){return $}styleArgumentText($){return $}styleSubcommandText($){return $}styleCommandText($){return $}padWidth($,Z){return Math.max(Z.longestOptionTermLength($,Z),Z.longestGlobalOptionTermLength($,Z),Z.longestSubcommandTermLength($,Z),Z.longestArgumentTermLength($,Z))}preformatted($){return/\n[^\S\r\n]/.test($)}formatItem($,Z,X,z){let G=" ".repeat(2);if(!X)return G+$;let J=$.padEnd(Z+$.length-z.displayWidth($)),Q=2,U=(this.helpWidth??80)-Z-Q-2,W;if(U<this.minWidthToWrap||z.preformatted(X))W=X;else W=z.boxWrap(X,U).replace(/\n/g,`
|
|
5
5
|
`+" ".repeat(Z+Q));return G+J+" ".repeat(Q)+W.replace(/\n/g,`
|
|
6
6
|
${G}`)}boxWrap($,Z){if(Z<this.minWidthToWrap)return $;let X=$.split(/\r\n|\n/),z=/[\s]*[^\s]+/g,q=[];return X.forEach((G)=>{let J=G.match(z);if(J===null){q.push("");return}let Q=[J.shift()],Y=this.displayWidth(Q[0]);J.forEach((U)=>{let W=this.displayWidth(U);if(Y+W<=Z){Q.push(U),Y+=W;return}q.push(Q.join(""));let H=U.trimStart();Q=[H],Y=this.displayWidth(H)}),q.push(Q.join(""))}),q.join(`
|
|
7
|
-
`)}}function
|
|
7
|
+
`)}}function P5($){let Z=/\x1b\[\d*(;\d*)*m/g;return $.replace(Z,"")}LX.Help=w5;LX.stripColor=P5});var W4=M((OX)=>{var{InvalidArgumentError:MX}=b$();class R5{constructor($,Z){this.flags=$,this.description=Z||"",this.required=$.includes("<"),this.optional=$.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test($),this.mandatory=!1;let X=FX($);if(this.short=X.shortFlag,this.long=X.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($,Z){return this.defaultValue=$,this.defaultValueDescription=Z,this}preset($){return this.presetArg=$,this}conflicts($){return this.conflictsWith=this.conflictsWith.concat($),this}implies($){let Z=$;if(typeof $==="string")Z={[$]:!0};return this.implied=Object.assign(this.implied||{},Z),this}env($){return this.envVar=$,this}argParser($){return this.parseArg=$,this}makeOptionMandatory($=!0){return this.mandatory=!!$,this}hideHelp($=!0){return this.hidden=!!$,this}_collectValue($,Z){if(Z===this.defaultValue||!Array.isArray(Z))return[$];return Z.push($),Z}choices($){return this.argChoices=$.slice(),this.parseArg=(Z,X)=>{if(!this.argChoices.includes(Z))throw new MX(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(Z,X);return Z},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){if(this.negate)return I5(this.name().replace(/^no-/,""));return I5(this.name())}helpGroup($){return this.helpGroupHeading=$,this}is($){return this.short===$||this.long===$}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class A5{constructor($){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,$.forEach((Z)=>{if(Z.negate)this.negativeOptions.set(Z.attributeName(),Z);else this.positiveOptions.set(Z.attributeName(),Z)}),this.negativeOptions.forEach((Z,X)=>{if(this.positiveOptions.has(X))this.dualOptions.add(X)})}valueFromOption($,Z){let X=Z.attributeName();if(!this.dualOptions.has(X))return!0;let z=this.negativeOptions.get(X).presetArg,q=z!==void 0?z:!1;return Z.negate===(q===$)}}function I5($){return $.split("-").reduce((Z,X)=>{return Z+X[0].toUpperCase()+X.slice(1)})}function FX($){let Z,X,z=/^-[^-]$/,q=/^--[^-]/,G=$.split(/[ |,]+/).concat("guard");if(z.test(G[0]))Z=G.shift();if(q.test(G[0]))X=G.shift();if(!Z&&z.test(G[0]))Z=G.shift();if(!Z&&q.test(G[0]))Z=X,X=G.shift();if(G[0].startsWith("-")){let J=G[0],Q=`option creation failed due to '${J}' in option flags '${$}'`;if(/^-[^-][^-]/.test(J))throw Error(`${Q}
|
|
8
8
|
- a short flag is a single dash and a single character
|
|
9
9
|
- either use a single dash and a single character (for a short flag)
|
|
10
10
|
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(z.test(J))throw Error(`${Q}
|
|
11
11
|
- too many short flags`);if(q.test(J))throw Error(`${Q}
|
|
12
12
|
- too many long flags`);throw Error(`${Q}
|
|
13
|
-
- unrecognised flag format`)}if(Z===void 0&&X===void 0)throw Error(`option creation failed due to no flags found in '${$}'.`);return{shortFlag:Z,longFlag:X}}OX.Option=
|
|
13
|
+
- unrecognised flag format`)}if(Z===void 0&&X===void 0)throw Error(`option creation failed due to no flags found in '${$}'.`);return{shortFlag:Z,longFlag:X}}OX.Option=R5;OX.DualOptions=A5});var j5=M((AX)=>{function IX($,Z){if(Math.abs($.length-Z.length)>3)return Math.max($.length,Z.length);let X=[];for(let z=0;z<=$.length;z++)X[z]=[z];for(let z=0;z<=Z.length;z++)X[0][z]=z;for(let z=1;z<=Z.length;z++)for(let q=1;q<=$.length;q++){let G=1;if($[q-1]===Z[z-1])G=0;else G=1;if(X[q][z]=Math.min(X[q-1][z]+1,X[q][z-1]+1,X[q-1][z-1]+G),q>1&&z>1&&$[q-1]===Z[z-2]&&$[q-2]===Z[z-1])X[q][z]=Math.min(X[q][z],X[q-2][z-2]+1)}return X[$.length][Z.length]}function RX($,Z){if(!Z||Z.length===0)return"";Z=Array.from(new Set(Z));let X=$.startsWith("--");if(X)$=$.slice(2),Z=Z.map((J)=>J.slice(2));let z=[],q=3,G=0.4;if(Z.forEach((J)=>{if(J.length<=1)return;let Q=IX($,J),Y=Math.max($.length,J.length);if((Y-Q)/Y>G){if(Q<q)q=Q,z=[J];else if(Q===q)z.push(J)}}),z.sort((J,Q)=>J.localeCompare(Q)),X)z=z.map((J)=>`--${J}`);if(z.length>1)return`
|
|
14
14
|
(Did you mean one of ${z.join(", ")}?)`;if(z.length===1)return`
|
|
15
|
-
(Did you mean ${z[0]}?)`;return""}
|
|
16
|
-
- specify the name in Command constructor or using .name()`);if(Z=Z||{},Z.isDefault)this._defaultCommandName=$._name;if(Z.noHelp||Z.hidden)$._hidden=!0;return this._registerCommand($),$.parent=this,$._checkForBrokenPassThrough(),this}createArgument($,Z){return new
|
|
17
|
-
Expecting one of '${X.join("', '")}'`);if(this._lifeCycleHooks[$])this._lifeCycleHooks[$].push(Z);else this._lifeCycleHooks[$]=[Z];return this}exitOverride($){if($)this._exitCallback=$;else this._exitCallback=(Z)=>{if(Z.code!=="commander.executeSubCommandAsync")throw Z};return this}_exit($,Z,X){if(this._exitCallback)this._exitCallback(new
|
|
18
|
-
- already used by option '${Z.flags}'`)}this._initOptionGroup($),this.options.push($)}_registerCommand($){let Z=(z)=>{return[z.name()].concat(z.aliases())},X=Z($).find((z)=>this._findCommand(z));if(X){let z=Z(this._findCommand(X)).join("|"),q=Z($).join("|");throw Error(`cannot add command '${q}' as already have command '${z}'`)}this._initCommandGroup($),this.commands.push($)}addOption($){this._registerOption($);let Z=$.name(),X=$.attributeName();if($.negate){let q=$.long.replace(/^--no-/,"--");if(!this._findOption(q))this.setOptionValueWithSource(X,$.defaultValue===void 0?!0:$.defaultValue,"default")}else if($.defaultValue!==void 0)this.setOptionValueWithSource(X,$.defaultValue,"default");let z=(q,G,J)=>{if(q==null&&$.presetArg!==void 0)q=$.presetArg;let Q=this.getOptionValue(X);if(q!==null&&$.parseArg)q=this._callParseArg($,q,Q,G);else if(q!==null&&$.variadic)q=$._collectValue(q,Q);if(q==null)if($.negate)q=!1;else if($.isBoolean()||$.optional)q=!0;else q="";this.setOptionValueWithSource(X,q,J)};if(this.on("option:"+Z,(q)=>{let G=`error: option '${$.flags}' argument '${q}' is invalid.`;z(q,G,"cli")}),$.envVar)this.on("optionEnv:"+Z,(q)=>{let G=`error: option '${$.flags}' value '${q}' from env '${$.envVar}' is invalid.`;z(q,G,"env")});return this}_optionEx($,Z,X,z,q){if(typeof Z==="object"&&Z instanceof
|
|
19
|
-
- 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($,Z,X){if(
|
|
15
|
+
(Did you mean ${z[0]}?)`;return""}AX.suggestSimilar=RX});var E5=M((yX)=>{var NX=V0("events").EventEmitter,V4=V0("child_process"),K0=V0("path"),S1=V0("fs"),b=V0("process"),{Argument:SX,humanReadableArgName:CX}=N1(),{CommanderError:K4}=b$(),{Help:EX,stripColor:bX}=H4(),{Option:N5,DualOptions:xX}=W4(),{suggestSimilar:S5}=j5();class T4 extends NX{constructor($){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=$||"",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:(Z)=>b.stdout.write(Z),writeErr:(Z)=>b.stderr.write(Z),outputError:(Z,X)=>X(Z),getOutHelpWidth:()=>b.stdout.isTTY?b.stdout.columns:void 0,getErrHelpWidth:()=>b.stderr.isTTY?b.stderr.columns:void 0,getOutHasColors:()=>B4()??(b.stdout.isTTY&&b.stdout.hasColors?.()),getErrHasColors:()=>B4()??(b.stderr.isTTY&&b.stderr.hasColors?.()),stripColor:(Z)=>bX(Z)},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($){return this._outputConfiguration=$._outputConfiguration,this._helpOption=$._helpOption,this._helpCommand=$._helpCommand,this._helpConfiguration=$._helpConfiguration,this._exitCallback=$._exitCallback,this._storeOptionsAsProperties=$._storeOptionsAsProperties,this._combineFlagAndOptionalValue=$._combineFlagAndOptionalValue,this._allowExcessArguments=$._allowExcessArguments,this._enablePositionalOptions=$._enablePositionalOptions,this._showHelpAfterError=$._showHelpAfterError,this._showSuggestionAfterError=$._showSuggestionAfterError,this}_getCommandAndAncestors(){let $=[];for(let Z=this;Z;Z=Z.parent)$.push(Z);return $}command($,Z,X){let z=Z,q=X;if(typeof z==="object"&&z!==null)q=z,z=null;q=q||{};let[,G,J]=$.match(/([^ ]+) *(.*)/),Q=this.createCommand(G);if(z)Q.description(z),Q._executableHandler=!0;if(q.isDefault)this._defaultCommandName=Q._name;if(Q._hidden=!!(q.noHelp||q.hidden),Q._executableFile=q.executableFile||null,J)Q.arguments(J);if(this._registerCommand(Q),Q.parent=this,Q.copyInheritedSettings(this),z)return this;return Q}createCommand($){return new T4($)}createHelp(){return Object.assign(new EX,this.configureHelp())}configureHelp($){if($===void 0)return this._helpConfiguration;return this._helpConfiguration=$,this}configureOutput($){if($===void 0)return this._outputConfiguration;return this._outputConfiguration={...this._outputConfiguration,...$},this}showHelpAfterError($=!0){if(typeof $!=="string")$=!!$;return this._showHelpAfterError=$,this}showSuggestionAfterError($=!0){return this._showSuggestionAfterError=!!$,this}addCommand($,Z){if(!$._name)throw Error(`Command passed to .addCommand() must have a name
|
|
16
|
+
- specify the name in Command constructor or using .name()`);if(Z=Z||{},Z.isDefault)this._defaultCommandName=$._name;if(Z.noHelp||Z.hidden)$._hidden=!0;return this._registerCommand($),$.parent=this,$._checkForBrokenPassThrough(),this}createArgument($,Z){return new SX($,Z)}argument($,Z,X,z){let q=this.createArgument($,Z);if(typeof X==="function")q.default(z).argParser(X);else q.default(X);return this.addArgument(q),this}arguments($){return $.trim().split(/ +/).forEach((Z)=>{this.argument(Z)}),this}addArgument($){let Z=this.registeredArguments.slice(-1)[0];if(Z?.variadic)throw Error(`only the last argument can be variadic '${Z.name()}'`);if($.required&&$.defaultValue!==void 0&&$.parseArg===void 0)throw Error(`a default value for a required argument is never used: '${$.name()}'`);return this.registeredArguments.push($),this}helpCommand($,Z){if(typeof $==="boolean"){if(this._addImplicitHelpCommand=$,$&&this._defaultCommandGroup)this._initCommandGroup(this._getHelpCommand());return this}let X=$??"help [command]",[,z,q]=X.match(/([^ ]+) *(.*)/),G=Z??"display help for command",J=this.createCommand(z);if(J.helpOption(!1),q)J.arguments(q);if(G)J.description(G);if(this._addImplicitHelpCommand=!0,this._helpCommand=J,$||Z)this._initCommandGroup(J);return this}addHelpCommand($,Z){if(typeof $!=="object")return this.helpCommand($,Z),this;return this._addImplicitHelpCommand=!0,this._helpCommand=$,this._initCommandGroup($),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($,Z){let X=["preSubcommand","preAction","postAction"];if(!X.includes($))throw Error(`Unexpected value for event passed to hook : '${$}'.
|
|
17
|
+
Expecting one of '${X.join("', '")}'`);if(this._lifeCycleHooks[$])this._lifeCycleHooks[$].push(Z);else this._lifeCycleHooks[$]=[Z];return this}exitOverride($){if($)this._exitCallback=$;else this._exitCallback=(Z)=>{if(Z.code!=="commander.executeSubCommandAsync")throw Z};return this}_exit($,Z,X){if(this._exitCallback)this._exitCallback(new K4($,Z,X));b.exit($)}action($){let Z=(X)=>{let z=this.registeredArguments.length,q=X.slice(0,z);if(this._storeOptionsAsProperties)q[z]=this;else q[z]=this.opts();return q.push(this),$.apply(this,q)};return this._actionHandler=Z,this}createOption($,Z){return new N5($,Z)}_callParseArg($,Z,X,z){try{return $.parseArg(Z,X)}catch(q){if(q.code==="commander.invalidArgument"){let G=`${z} ${q.message}`;this.error(G,{exitCode:q.exitCode,code:q.code})}throw q}}_registerOption($){let Z=$.short&&this._findOption($.short)||$.long&&this._findOption($.long);if(Z){let X=$.long&&this._findOption($.long)?$.long:$.short;throw Error(`Cannot add option '${$.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${X}'
|
|
18
|
+
- already used by option '${Z.flags}'`)}this._initOptionGroup($),this.options.push($)}_registerCommand($){let Z=(z)=>{return[z.name()].concat(z.aliases())},X=Z($).find((z)=>this._findCommand(z));if(X){let z=Z(this._findCommand(X)).join("|"),q=Z($).join("|");throw Error(`cannot add command '${q}' as already have command '${z}'`)}this._initCommandGroup($),this.commands.push($)}addOption($){this._registerOption($);let Z=$.name(),X=$.attributeName();if($.negate){let q=$.long.replace(/^--no-/,"--");if(!this._findOption(q))this.setOptionValueWithSource(X,$.defaultValue===void 0?!0:$.defaultValue,"default")}else if($.defaultValue!==void 0)this.setOptionValueWithSource(X,$.defaultValue,"default");let z=(q,G,J)=>{if(q==null&&$.presetArg!==void 0)q=$.presetArg;let Q=this.getOptionValue(X);if(q!==null&&$.parseArg)q=this._callParseArg($,q,Q,G);else if(q!==null&&$.variadic)q=$._collectValue(q,Q);if(q==null)if($.negate)q=!1;else if($.isBoolean()||$.optional)q=!0;else q="";this.setOptionValueWithSource(X,q,J)};if(this.on("option:"+Z,(q)=>{let G=`error: option '${$.flags}' argument '${q}' is invalid.`;z(q,G,"cli")}),$.envVar)this.on("optionEnv:"+Z,(q)=>{let G=`error: option '${$.flags}' value '${q}' from env '${$.envVar}' is invalid.`;z(q,G,"env")});return this}_optionEx($,Z,X,z,q){if(typeof Z==="object"&&Z instanceof N5)throw Error("To add an Option object use addOption() instead of option() or requiredOption()");let G=this.createOption(Z,X);if(G.makeOptionMandatory(!!$.mandatory),typeof z==="function")G.default(q).argParser(z);else if(z instanceof RegExp){let J=z;z=(Q,Y)=>{let U=J.exec(Q);return U?U[0]:Y},G.default(q).argParser(z)}else G.default(z);return this.addOption(G)}option($,Z,X,z){return this._optionEx({},$,Z,X,z)}requiredOption($,Z,X,z){return this._optionEx({mandatory:!0},$,Z,X,z)}combineFlagAndOptionalValue($=!0){return this._combineFlagAndOptionalValue=!!$,this}allowUnknownOption($=!0){return this._allowUnknownOption=!!$,this}allowExcessArguments($=!0){return this._allowExcessArguments=!!$,this}enablePositionalOptions($=!0){return this._enablePositionalOptions=!!$,this}passThroughOptions($=!0){return this._passThroughOptions=!!$,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($=!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=!!$,this}getOptionValue($){if(this._storeOptionsAsProperties)return this[$];return this._optionValues[$]}setOptionValue($,Z){return this.setOptionValueWithSource($,Z,void 0)}setOptionValueWithSource($,Z,X){if(this._storeOptionsAsProperties)this[$]=Z;else this._optionValues[$]=Z;return this._optionValueSources[$]=X,this}getOptionValueSource($){return this._optionValueSources[$]}getOptionValueSourceWithGlobals($){let Z;return this._getCommandAndAncestors().forEach((X)=>{if(X.getOptionValueSource($)!==void 0)Z=X.getOptionValueSource($)}),Z}_prepareUserArgs($,Z){if($!==void 0&&!Array.isArray($))throw Error("first parameter to parse must be array or undefined");if(Z=Z||{},$===void 0&&Z.from===void 0){if(b.versions?.electron)Z.from="electron";let z=b.execArgv??[];if(z.includes("-e")||z.includes("--eval")||z.includes("-p")||z.includes("--print"))Z.from="eval"}if($===void 0)$=b.argv;this.rawArgs=$.slice();let X;switch(Z.from){case void 0:case"node":this._scriptPath=$[1],X=$.slice(2);break;case"electron":if(b.defaultApp)this._scriptPath=$[1],X=$.slice(2);else X=$.slice(1);break;case"user":X=$.slice(0);break;case"eval":X=$.slice(1);break;default:throw Error(`unexpected parse option { from: '${Z.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);return this._name=this._name||"program",X}parse($,Z){this._prepareForParse();let X=this._prepareUserArgs($,Z);return this._parseCommand([],X),this}async parseAsync($,Z){this._prepareForParse();let X=this._prepareUserArgs($,Z);return await this._parseCommand([],X),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.
|
|
19
|
+
- 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($,Z,X){if(S1.existsSync($))return;let z=Z?`searched for local subcommand relative to directory '${Z}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",q=`'${$}' does not exist
|
|
20
20
|
- if '${X}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
|
|
21
21
|
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
|
|
22
|
-
- ${z}`;throw Error(q)}_executeSubCommand($,Z){Z=Z.slice();let X=!1,z=[".js",".ts",".tsx",".mjs",".cjs"];function q(U,W){let H=
|
|
22
|
+
- ${z}`;throw Error(q)}_executeSubCommand($,Z){Z=Z.slice();let X=!1,z=[".js",".ts",".tsx",".mjs",".cjs"];function q(U,W){let H=K0.resolve(U,W);if(S1.existsSync(H))return H;if(z.includes(K0.extname(W)))return;let V=z.find((B)=>S1.existsSync(`${H}${B}`));if(V)return`${H}${V}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let G=$._executableFile||`${this._name}-${$._name}`,J=this._executableDir||"";if(this._scriptPath){let U;try{U=S1.realpathSync(this._scriptPath)}catch{U=this._scriptPath}J=K0.resolve(K0.dirname(U),J)}if(J){let U=q(J,G);if(!U&&!$._executableFile&&this._scriptPath){let W=K0.basename(this._scriptPath,K0.extname(this._scriptPath));if(W!==this._name)U=q(J,`${W}-${$._name}`)}G=U||G}X=z.includes(K0.extname(G));let Q;if(b.platform!=="win32")if(X)Z.unshift(G),Z=C5(b.execArgv).concat(Z),Q=V4.spawn(b.argv[0],Z,{stdio:"inherit"});else Q=V4.spawn(G,Z,{stdio:"inherit"});else this._checkForMissingExecutable(G,J,$._name),Z.unshift(G),Z=C5(b.execArgv).concat(Z),Q=V4.spawn(b.execPath,Z,{stdio:"inherit"});if(!Q.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((W)=>{b.on(W,()=>{if(Q.killed===!1&&Q.exitCode===null)Q.kill(W)})});let Y=this._exitCallback;Q.on("close",(U)=>{if(U=U??1,!Y)b.exit(U);else Y(new K4(U,"commander.executeSubCommandAsync","(close)"))}),Q.on("error",(U)=>{if(U.code==="ENOENT")this._checkForMissingExecutable(G,J,$._name);else if(U.code==="EACCES")throw Error(`'${G}' not executable`);if(!Y)b.exit(1);else{let W=new K4(1,"commander.executeSubCommandAsync","(error)");W.nestedError=U,Y(W)}}),this.runningCommand=Q}_dispatchSubcommand($,Z,X){let z=this._findCommand($);if(!z)this.help({error:!0});z._prepareForParse();let q;return q=this._chainOrCallSubCommandHook(q,z,"preSubcommand"),q=this._chainOrCall(q,()=>{if(z._executableHandler)this._executeSubCommand(z,Z.concat(X));else return z._parseCommand(Z,X)}),q}_dispatchHelpCommand($){if(!$)this.help();let Z=this._findCommand($);if(Z&&!Z._executableHandler)Z.help();return this._dispatchSubcommand($,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach(($,Z)=>{if($.required&&this.args[Z]==null)this.missingArgument($.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 $=(X,z,q)=>{let G=z;if(z!==null&&X.parseArg){let J=`error: command-argument value '${z}' is invalid for argument '${X.name()}'.`;G=this._callParseArg(X,z,q,J)}return G};this._checkNumberOfArguments();let Z=[];this.registeredArguments.forEach((X,z)=>{let q=X.defaultValue;if(X.variadic){if(z<this.args.length){if(q=this.args.slice(z),X.parseArg)q=q.reduce((G,J)=>{return $(X,J,G)},X.defaultValue)}else if(q===void 0)q=[]}else if(z<this.args.length){if(q=this.args[z],X.parseArg)q=$(X,q,X.defaultValue)}Z[z]=q}),this.processedArgs=Z}_chainOrCall($,Z){if($?.then&&typeof $.then==="function")return $.then(()=>Z());return Z()}_chainOrCallHooks($,Z){let X=$,z=[];if(this._getCommandAndAncestors().reverse().filter((q)=>q._lifeCycleHooks[Z]!==void 0).forEach((q)=>{q._lifeCycleHooks[Z].forEach((G)=>{z.push({hookedCommand:q,callback:G})})}),Z==="postAction")z.reverse();return z.forEach((q)=>{X=this._chainOrCall(X,()=>{return q.callback(q.hookedCommand,this)})}),X}_chainOrCallSubCommandHook($,Z,X){let z=$;if(this._lifeCycleHooks[X]!==void 0)this._lifeCycleHooks[X].forEach((q)=>{z=this._chainOrCall(z,()=>{return q(this,Z)})});return z}_parseCommand($,Z){let X=this.parseOptions(Z);if(this._parseOptionsEnv(),this._parseOptionsImplied(),$=$.concat(X.operands),Z=X.unknown,this.args=$.concat(Z),$&&this._findCommand($[0]))return this._dispatchSubcommand($[0],$.slice(1),Z);if(this._getHelpCommand()&&$[0]===this._getHelpCommand().name())return this._dispatchHelpCommand($[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(Z),this._dispatchSubcommand(this._defaultCommandName,$,Z);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(X.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let z=()=>{if(X.unknown.length>0)this.unknownOption(X.unknown[0])},q=`command:${this.name()}`;if(this._actionHandler){z(),this._processArguments();let G;if(G=this._chainOrCallHooks(G,"preAction"),G=this._chainOrCall(G,()=>this._actionHandler(this.processedArgs)),this.parent)G=this._chainOrCall(G,()=>{this.parent.emit(q,$,Z)});return G=this._chainOrCallHooks(G,"postAction"),G}if(this.parent?.listenerCount(q))z(),this._processArguments(),this.parent.emit(q,$,Z);else if($.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",$,Z);if(this.listenerCount("command:*"))this.emit("command:*",$,Z);else if(this.commands.length)this.unknownCommand();else z(),this._processArguments()}else if(this.commands.length)z(),this.help({error:!0});else z(),this._processArguments()}_findCommand($){if(!$)return;return this.commands.find((Z)=>Z._name===$||Z._aliases.includes($))}_findOption($){return this.options.find((Z)=>Z.is($))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(($)=>{$.options.forEach((Z)=>{if(Z.mandatory&&$.getOptionValue(Z.attributeName())===void 0)$.missingMandatoryOptionValue(Z)})})}_checkForConflictingLocalOptions(){let $=this.options.filter((X)=>{let z=X.attributeName();if(this.getOptionValue(z)===void 0)return!1;return this.getOptionValueSource(z)!=="default"});$.filter((X)=>X.conflictsWith.length>0).forEach((X)=>{let z=$.find((q)=>X.conflictsWith.includes(q.attributeName()));if(z)this._conflictingOption(X,z)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(($)=>{$._checkForConflictingLocalOptions()})}parseOptions($){let Z=[],X=[],z=Z;function q(U){return U.length>1&&U[0]==="-"}let G=(U)=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(U))return!1;return!this._getCommandAndAncestors().some((W)=>W.options.map((H)=>H.short).some((H)=>/^-\d$/.test(H)))},J=null,Q=null,Y=0;while(Y<$.length||Q){let U=Q??$[Y++];if(Q=null,U==="--"){if(z===X)z.push(U);z.push(...$.slice(Y));break}if(J&&(!q(U)||G(U))){this.emit(`option:${J.name()}`,U);continue}if(J=null,q(U)){let W=this._findOption(U);if(W){if(W.required){let H=$[Y++];if(H===void 0)this.optionMissingArgument(W);this.emit(`option:${W.name()}`,H)}else if(W.optional){let H=null;if(Y<$.length&&(!q($[Y])||G($[Y])))H=$[Y++];this.emit(`option:${W.name()}`,H)}else this.emit(`option:${W.name()}`);J=W.variadic?W:null;continue}}if(U.length>2&&U[0]==="-"&&U[1]!=="-"){let W=this._findOption(`-${U[1]}`);if(W){if(W.required||W.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${W.name()}`,U.slice(2));else this.emit(`option:${W.name()}`),Q=`-${U.slice(2)}`;continue}}if(/^--[^=]+=/.test(U)){let W=U.indexOf("="),H=this._findOption(U.slice(0,W));if(H&&(H.required||H.optional)){this.emit(`option:${H.name()}`,U.slice(W+1));continue}}if(z===Z&&q(U)&&!(this.commands.length===0&&G(U)))z=X;if((this._enablePositionalOptions||this._passThroughOptions)&&Z.length===0&&X.length===0){if(this._findCommand(U)){Z.push(U),X.push(...$.slice(Y));break}else if(this._getHelpCommand()&&U===this._getHelpCommand().name()){Z.push(U,...$.slice(Y));break}else if(this._defaultCommandName){X.push(U,...$.slice(Y));break}}if(this._passThroughOptions){z.push(U,...$.slice(Y));break}z.push(U)}return{operands:Z,unknown:X}}opts(){if(this._storeOptionsAsProperties){let $={},Z=this.options.length;for(let X=0;X<Z;X++){let z=this.options[X].attributeName();$[z]=z===this._versionOptionName?this._version:this[z]}return $}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(($,Z)=>Object.assign($,Z.opts()),{})}error($,Z){if(this._outputConfiguration.outputError(`${$}
|
|
23
23
|
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
|
|
24
24
|
`);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
|
|
25
|
-
`),this.outputHelp({error:!0});let X=Z||{},z=X.exitCode||1,q=X.code||"commander.error";this._exit(z,q,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in b.env){let Z=$.attributeName();if(this.getOptionValue(Z)===void 0||["default","config","env"].includes(this.getOptionValueSource(Z)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,b.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new
|
|
26
|
-
`),this._exit(0,"commander.version",$)}),this}description($,Z){if($===void 0&&Z===void 0)return this._description;if(this._description=$,Z)this._argsDescription=Z;return this}summary($){if($===void 0)return this._summary;return this._summary=$,this}alias($){if($===void 0)return this._aliases[0];let Z=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)Z=this.commands[this.commands.length-1];if($===Z._name)throw Error("Command alias can't be the same as its name");let X=this.parent?._findCommand($);if(X){let z=[X.name()].concat(X.aliases()).join("|");throw Error(`cannot add alias '${$}' to command '${this.name()}' as already have command '${z}'`)}return Z._aliases.push($),this}aliases($){if($===void 0)return this._aliases;return $.forEach((Z)=>this.alias(Z)),this}usage($){if($===void 0){if(this._usage)return this._usage;let Z=this.registeredArguments.map((X)=>{return
|
|
25
|
+
`),this.outputHelp({error:!0});let X=Z||{},z=X.exitCode||1,q=X.code||"commander.error";this._exit(z,q,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in b.env){let Z=$.attributeName();if(this.getOptionValue(Z)===void 0||["default","config","env"].includes(this.getOptionValueSource(Z)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,b.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new xX(this.options),Z=(X)=>{return this.getOptionValue(X)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(X))};this.options.filter((X)=>X.implied!==void 0&&Z(X.attributeName())&&$.valueFromOption(this.getOptionValue(X.attributeName()),X)).forEach((X)=>{Object.keys(X.implied).filter((z)=>!Z(z)).forEach((z)=>{this.setOptionValueWithSource(z,X.implied[z],"implied")})})}missingArgument($){let Z=`error: missing required argument '${$}'`;this.error(Z,{code:"commander.missingArgument"})}optionMissingArgument($){let Z=`error: option '${$.flags}' argument missing`;this.error(Z,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue($){let Z=`error: required option '${$.flags}' not specified`;this.error(Z,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption($,Z){let X=(G)=>{let J=G.attributeName(),Q=this.getOptionValue(J),Y=this.options.find((W)=>W.negate&&J===W.attributeName()),U=this.options.find((W)=>!W.negate&&J===W.attributeName());if(Y&&(Y.presetArg===void 0&&Q===!1||Y.presetArg!==void 0&&Q===Y.presetArg))return Y;return U||G},z=(G)=>{let J=X(G),Q=J.attributeName();if(this.getOptionValueSource(Q)==="env")return`environment variable '${J.envVar}'`;return`option '${J.flags}'`},q=`error: ${z($)} cannot be used with ${z(Z)}`;this.error(q,{code:"commander.conflictingOption"})}unknownOption($){if(this._allowUnknownOption)return;let Z="";if($.startsWith("--")&&this._showSuggestionAfterError){let z=[],q=this;do{let G=q.createHelp().visibleOptions(q).filter((J)=>J.long).map((J)=>J.long);z=z.concat(G),q=q.parent}while(q&&!q._enablePositionalOptions);Z=S5($,z)}let X=`error: unknown option '${$}'${Z}`;this.error(X,{code:"commander.unknownOption"})}_excessArguments($){if(this._allowExcessArguments)return;let Z=this.registeredArguments.length,X=Z===1?"":"s",q=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${Z} argument${X} but got ${$.length}.`;this.error(q,{code:"commander.excessArguments"})}unknownCommand(){let $=this.args[0],Z="";if(this._showSuggestionAfterError){let z=[];this.createHelp().visibleCommands(this).forEach((q)=>{if(z.push(q.name()),q.alias())z.push(q.alias())}),Z=S5($,z)}let X=`error: unknown command '${$}'${Z}`;this.error(X,{code:"commander.unknownCommand"})}version($,Z,X){if($===void 0)return this._version;this._version=$,Z=Z||"-V, --version",X=X||"output the version number";let z=this.createOption(Z,X);return this._versionOptionName=z.attributeName(),this._registerOption(z),this.on("option:"+z.name(),()=>{this._outputConfiguration.writeOut(`${$}
|
|
26
|
+
`),this._exit(0,"commander.version",$)}),this}description($,Z){if($===void 0&&Z===void 0)return this._description;if(this._description=$,Z)this._argsDescription=Z;return this}summary($){if($===void 0)return this._summary;return this._summary=$,this}alias($){if($===void 0)return this._aliases[0];let Z=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)Z=this.commands[this.commands.length-1];if($===Z._name)throw Error("Command alias can't be the same as its name");let X=this.parent?._findCommand($);if(X){let z=[X.name()].concat(X.aliases()).join("|");throw Error(`cannot add alias '${$}' to command '${this.name()}' as already have command '${z}'`)}return Z._aliases.push($),this}aliases($){if($===void 0)return this._aliases;return $.forEach((Z)=>this.alias(Z)),this}usage($){if($===void 0){if(this._usage)return this._usage;let Z=this.registeredArguments.map((X)=>{return CX(X)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?Z:[]).join(" ")}return this._usage=$,this}name($){if($===void 0)return this._name;return this._name=$,this}helpGroup($){if($===void 0)return this._helpGroupHeading??"";return this._helpGroupHeading=$,this}commandsGroup($){if($===void 0)return this._defaultCommandGroup??"";return this._defaultCommandGroup=$,this}optionsGroup($){if($===void 0)return this._defaultOptionGroup??"";return this._defaultOptionGroup=$,this}_initOptionGroup($){if(this._defaultOptionGroup&&!$.helpGroupHeading)$.helpGroup(this._defaultOptionGroup)}_initCommandGroup($){if(this._defaultCommandGroup&&!$.helpGroup())$.helpGroup(this._defaultCommandGroup)}nameFromFilename($){return this._name=K0.basename($,K0.extname($)),this}executableDir($){if($===void 0)return this._executableDir;return this._executableDir=$,this}helpInformation($){let Z=this.createHelp(),X=this._getOutputContext($);Z.prepareContext({error:X.error,helpWidth:X.helpWidth,outputHasColors:X.hasColors});let z=Z.formatHelp(this,Z);if(X.hasColors)return z;return this._outputConfiguration.stripColor(z)}_getOutputContext($){$=$||{};let Z=!!$.error,X,z,q;if(Z)X=(J)=>this._outputConfiguration.writeErr(J),z=this._outputConfiguration.getErrHasColors(),q=this._outputConfiguration.getErrHelpWidth();else X=(J)=>this._outputConfiguration.writeOut(J),z=this._outputConfiguration.getOutHasColors(),q=this._outputConfiguration.getOutHelpWidth();return{error:Z,write:(J)=>{if(!z)J=this._outputConfiguration.stripColor(J);return X(J)},hasColors:z,helpWidth:q}}outputHelp($){let Z;if(typeof $==="function")Z=$,$=void 0;let X=this._getOutputContext($),z={error:X.error,write:X.write,command:this};this._getCommandAndAncestors().reverse().forEach((G)=>G.emit("beforeAllHelp",z)),this.emit("beforeHelp",z);let q=this.helpInformation({error:X.error});if(Z){if(q=Z(q),typeof q!=="string"&&!Buffer.isBuffer(q))throw Error("outputHelp callback must return a string or a Buffer")}if(X.write(q),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",z),this._getCommandAndAncestors().forEach((G)=>G.emit("afterAllHelp",z))}helpOption($,Z){if(typeof $==="boolean"){if($){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($??"-h, --help",Z??"display help for command"),$||Z)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption($){return this._helpOption=$,this._initOptionGroup($),this}help($){this.outputHelp($);let Z=Number(b.exitCode??0);if(Z===0&&$&&typeof $!=="function"&&$.error)Z=1;this._exit(Z,"commander.help","(outputHelp)")}addHelpText($,Z){let X=["beforeAll","before","after","afterAll"];if(!X.includes($))throw Error(`Unexpected value for position to addHelpText.
|
|
27
27
|
Expecting one of '${X.join("', '")}'`);let z=`${$}Help`;return this.on(z,(q)=>{let G;if(typeof Z==="function")G=Z({error:q.error,command:q.command});else G=Z;if(G)q.write(`${G}
|
|
28
|
-
`)}),this}_outputHelpIfRequested($){let Z=this._getHelpOption();if(Z&&$.find((z)=>Z.is(z)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function
|
|
29
|
-
`)}}
|
|
30
|
-
`)?
|
|
28
|
+
`)}),this}_outputHelpIfRequested($){let Z=this._getHelpOption();if(Z&&$.find((z)=>Z.is(z)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function C5($){return $.map((Z)=>{if(!Z.startsWith("--inspect"))return Z;let X,z="127.0.0.1",q="9229",G;if((G=Z.match(/^(--inspect(-brk)?)$/))!==null)X=G[1];else if((G=Z.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(X=G[1],/^\d+$/.test(G[3]))q=G[3];else z=G[3];else if((G=Z.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)X=G[1],z=G[3],q=G[4];if(X&&q!=="0")return`${X}=${z}:${parseInt(q)+1}`;return Z})}function B4(){if(b.env.NO_COLOR||b.env.FORCE_COLOR==="0"||b.env.FORCE_COLOR==="false")return!1;if(b.env.FORCE_COLOR||b.env.CLICOLOR_FORCE!==void 0)return!0;return}yX.Command=T4;yX.useColor=B4});var k5=M((vX)=>{var{Argument:b5}=N1(),{Command:L4}=E5(),{CommanderError:hX,InvalidArgumentError:x5}=b$(),{Help:gX}=H4(),{Option:y5}=W4();vX.program=new L4;vX.createCommand=($)=>new L4($);vX.createOption=($,Z)=>new y5($,Z);vX.createArgument=($,Z)=>new b5($,Z);vX.Command=L4;vX.Option=y5;vX.Argument=b5;vX.Help=gX;vX.CommanderError=hX;vX.InvalidArgumentError=x5;vX.InvalidOptionArgumentError=x5});var C=M((Gz)=>{var F4=Symbol.for("yaml.alias"),g5=Symbol.for("yaml.document"),C1=Symbol.for("yaml.map"),v5=Symbol.for("yaml.pair"),O4=Symbol.for("yaml.scalar"),E1=Symbol.for("yaml.seq"),B0=Symbol.for("yaml.node.type"),tX=($)=>!!$&&typeof $==="object"&&$[B0]===F4,eX=($)=>!!$&&typeof $==="object"&&$[B0]===g5,$z=($)=>!!$&&typeof $==="object"&&$[B0]===C1,Zz=($)=>!!$&&typeof $==="object"&&$[B0]===v5,u5=($)=>!!$&&typeof $==="object"&&$[B0]===O4,Xz=($)=>!!$&&typeof $==="object"&&$[B0]===E1;function m5($){if($&&typeof $==="object")switch($[B0]){case C1:case E1:return!0}return!1}function zz($){if($&&typeof $==="object")switch($[B0]){case F4:case C1:case O4:case E1:return!0}return!1}var qz=($)=>(u5($)||m5($))&&!!$.anchor;Gz.ALIAS=F4;Gz.DOC=g5;Gz.MAP=C1;Gz.NODE_TYPE=B0;Gz.PAIR=v5;Gz.SCALAR=O4;Gz.SEQ=E1;Gz.hasAnchor=qz;Gz.isAlias=tX;Gz.isCollection=m5;Gz.isDocument=eX;Gz.isMap=$z;Gz.isNode=zz;Gz.isPair=Zz;Gz.isScalar=u5;Gz.isSeq=Xz});var x$=M((wz)=>{var v=C(),i=Symbol("break visit"),d5=Symbol("skip children"),Y0=Symbol("remove node");function b1($,Z){let X=p5(Z);if(v.isDocument($)){if($$(null,$.contents,X,Object.freeze([$]))===Y0)$.contents=null}else $$(null,$,X,Object.freeze([]))}b1.BREAK=i;b1.SKIP=d5;b1.REMOVE=Y0;function $$($,Z,X,z){let q=l5($,Z,X,z);if(v.isNode(q)||v.isPair(q))return c5($,z,q),$$($,q,X,z);if(typeof q!=="symbol"){if(v.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let G=0;G<Z.items.length;++G){let J=$$(G,Z.items[G],X,z);if(typeof J==="number")G=J-1;else if(J===i)return i;else if(J===Y0)Z.items.splice(G,1),G-=1}}else if(v.isPair(Z)){z=Object.freeze(z.concat(Z));let G=$$("key",Z.key,X,z);if(G===i)return i;else if(G===Y0)Z.key=null;let J=$$("value",Z.value,X,z);if(J===i)return i;else if(J===Y0)Z.value=null}}return q}async function x1($,Z){let X=p5(Z);if(v.isDocument($)){if(await Z$(null,$.contents,X,Object.freeze([$]))===Y0)$.contents=null}else await Z$(null,$,X,Object.freeze([]))}x1.BREAK=i;x1.SKIP=d5;x1.REMOVE=Y0;async function Z$($,Z,X,z){let q=await l5($,Z,X,z);if(v.isNode(q)||v.isPair(q))return c5($,z,q),Z$($,q,X,z);if(typeof q!=="symbol"){if(v.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let G=0;G<Z.items.length;++G){let J=await Z$(G,Z.items[G],X,z);if(typeof J==="number")G=J-1;else if(J===i)return i;else if(J===Y0)Z.items.splice(G,1),G-=1}}else if(v.isPair(Z)){z=Object.freeze(z.concat(Z));let G=await Z$("key",Z.key,X,z);if(G===i)return i;else if(G===Y0)Z.key=null;let J=await Z$("value",Z.value,X,z);if(J===i)return i;else if(J===Y0)Z.value=null}}return q}function p5($){if(typeof $==="object"&&($.Collection||$.Node||$.Value))return Object.assign({Alias:$.Node,Map:$.Node,Scalar:$.Node,Seq:$.Node},$.Value&&{Map:$.Value,Scalar:$.Value,Seq:$.Value},$.Collection&&{Map:$.Collection,Seq:$.Collection},$);return $}function l5($,Z,X,z){if(typeof X==="function")return X($,Z,z);if(v.isMap(Z))return X.Map?.($,Z,z);if(v.isSeq(Z))return X.Seq?.($,Z,z);if(v.isPair(Z))return X.Pair?.($,Z,z);if(v.isScalar(Z))return X.Scalar?.($,Z,z);if(v.isAlias(Z))return X.Alias?.($,Z,z);return}function c5($,Z,X){let z=Z[Z.length-1];if(v.isCollection(z))z.items[$]=X;else if(v.isPair(z))if($==="key")z.key=X;else z.value=X;else if(v.isDocument(z))z.contents=X;else{let q=v.isAlias(z)?"alias":"scalar";throw Error(`Cannot replace node with ${q} parent`)}}wz.visit=b1;wz.visitAsync=x1});var w4=M((Nz)=>{var i5=C(),Rz=x$(),Az={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},jz=($)=>$.replace(/[!,[\]{}]/g,(Z)=>Az[Z]);class o{constructor($,Z){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},o.defaultYaml,$),this.tags=Object.assign({},o.defaultTags,Z)}clone(){let $=new o(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new o(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:o.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},o.defaultTags);break}return $}add($,Z){if(this.atNextDocument)this.yaml={explicit:o.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},o.defaultTags),this.atNextDocument=!1;let X=$.trim().split(/[ \t]+/),z=X.shift();switch(z){case"%TAG":{if(X.length!==2){if(Z(0,"%TAG directive should contain exactly two parts"),X.length<2)return!1}let[q,G]=X;return this.tags[q]=G,!0}case"%YAML":{if(this.yaml.explicit=!0,X.length!==1)return Z(0,"%YAML directive should contain exactly one part"),!1;let[q]=X;if(q==="1.1"||q==="1.2")return this.yaml.version=q,!0;else{let G=/^\d+\.\d+$/.test(q);return Z(6,`Unsupported YAML version ${q}`,G),!1}}default:return Z(0,`Unknown directive ${z}`,!0),!1}}tagName($,Z){if($==="!")return"!";if($[0]!=="!")return Z(`Not a valid tag: ${$}`),null;if($[1]==="<"){let G=$.slice(2,-1);if(G==="!"||G==="!!")return Z(`Verbatim tags aren't resolved, so ${$} is invalid.`),null;if($[$.length-1]!==">")Z("Verbatim tags must end with a >");return G}let[,X,z]=$.match(/^(.*!)([^!]*)$/s);if(!z)Z(`The ${$} tag has no suffix`);let q=this.tags[X];if(q)try{return q+decodeURIComponent(z)}catch(G){return Z(String(G)),null}if(X==="!")return $;return Z(`Could not resolve tag: ${$}`),null}tagString($){for(let[Z,X]of Object.entries(this.tags))if($.startsWith(X))return Z+jz($.substring(X.length));return $[0]==="!"?$:`!<${$}>`}toString($){let Z=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],X=Object.entries(this.tags),z;if($&&X.length>0&&i5.isNode($.contents)){let q={};Rz.visit($.contents,(G,J)=>{if(i5.isNode(J)&&J.tag)q[J.tag]=!0}),z=Object.keys(q)}else z=[];for(let[q,G]of X){if(q==="!!"&&G==="tag:yaml.org,2002:")continue;if(!$||z.some((J)=>J.startsWith(G)))Z.push(`%TAG ${q} ${G}`)}return Z.join(`
|
|
29
|
+
`)}}o.defaultYaml={explicit:!1,version:"1.2"};o.defaultTags={"!!":"tag:yaml.org,2002:"};Nz.Directives=o});var y1=M((xz)=>{var a5=C(),Cz=x$();function Ez($){if(/[\x00-\x19\s,[\]{}]/.test($)){let X=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(X)}return!0}function n5($){let Z=new Set;return Cz.visit($,{Value(X,z){if(z.anchor)Z.add(z.anchor)}}),Z}function s5($,Z){for(let X=1;;++X){let z=`${$}${X}`;if(!Z.has(z))return z}}function bz($,Z){let X=[],z=new Map,q=null;return{onAnchor:(G)=>{X.push(G),q??(q=n5($));let J=s5(Z,q);return q.add(J),J},setAnchors:()=>{for(let G of X){let J=z.get(G);if(typeof J==="object"&&J.anchor&&(a5.isScalar(J.node)||a5.isCollection(J.node)))J.node.anchor=J.anchor;else{let Q=Error("Failed to resolve repeated object (this should not happen)");throw Q.source=G,Q}}},sourceObjects:z}}xz.anchorIsValid=Ez;xz.anchorNames=n5;xz.createNodeAnchors=bz;xz.findNewAnchor=s5});var P4=M((gz)=>{function y$($,Z,X,z){if(z&&typeof z==="object")if(Array.isArray(z))for(let q=0,G=z.length;q<G;++q){let J=z[q],Q=y$($,z,String(q),J);if(Q===void 0)delete z[q];else if(Q!==J)z[q]=Q}else if(z instanceof Map)for(let q of Array.from(z.keys())){let G=z.get(q),J=y$($,z,q,G);if(J===void 0)z.delete(q);else if(J!==G)z.set(q,J)}else if(z instanceof Set)for(let q of Array.from(z)){let G=y$($,z,q,q);if(G===void 0)z.delete(q);else if(G!==q)z.delete(q),z.add(G)}else for(let[q,G]of Object.entries(z)){let J=y$($,z,q,G);if(J===void 0)delete z[q];else if(J!==G)z[q]=J}return $.call(Z,X,z)}gz.applyReviver=y$});var w0=M((mz)=>{var uz=C();function r5($,Z,X){if(Array.isArray($))return $.map((z,q)=>r5(z,String(q),X));if($&&typeof $.toJSON==="function"){if(!X||!uz.hasAnchor($))return $.toJSON(Z,X);let z={aliasCount:0,count:1,res:void 0};X.anchors.set($,z),X.onCreate=(G)=>{z.res=G,delete X.onCreate};let q=$.toJSON(Z,X);if(X.onCreate)X.onCreate(q);return q}if(typeof $==="bigint"&&!X?.keep)return Number($);return $}mz.toJS=r5});var k1=M((cz)=>{var pz=P4(),o5=C(),lz=w0();class t5{constructor($){Object.defineProperty(this,o5.NODE_TYPE,{value:$})}clone(){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)$.range=this.range.slice();return $}toJS($,{mapAsMap:Z,maxAliasCount:X,onAnchor:z,reviver:q}={}){if(!o5.isDocument($))throw TypeError("A document argument is required");let G={anchors:new Map,doc:$,keep:!0,mapAsMap:Z===!0,mapKeyWarned:!1,maxAliasCount:typeof X==="number"?X:100},J=lz.toJS(this,"",G);if(typeof z==="function")for(let{count:Q,res:Y}of G.anchors.values())z(Y,Q);return typeof q==="function"?pz.applyReviver(q,{"":J},"",J):J}}cz.NodeBase=t5});var k$=M((oz)=>{var az=y1(),nz=x$(),X$=C(),sz=k1(),rz=w0();class e5 extends sz.NodeBase{constructor($){super(X$.ALIAS);this.source=$,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve($,Z){let X;if(Z?.aliasResolveCache)X=Z.aliasResolveCache;else if(X=[],nz.visit($,{Node:(q,G)=>{if(X$.isAlias(G)||X$.hasAnchor(G))X.push(G)}}),Z)Z.aliasResolveCache=X;let z=void 0;for(let q of X){if(q===this)break;if(q.anchor===this.source)z=q}return z}toJSON($,Z){if(!Z)return{source:this.source};let{anchors:X,doc:z,maxAliasCount:q}=Z,G=this.resolve(z,Z);if(!G){let Q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(Q)}let J=X.get(G);if(!J)rz.toJS(G,null,Z),J=X.get(G);if(J?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(q>=0){if(J.count+=1,J.aliasCount===0)J.aliasCount=f1(z,G,X);if(J.count*J.aliasCount>q)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return J.res}toString($,Z,X){let z=`*${this.source}`;if($){if(az.anchorIsValid(this.source),$.options.verifyAliasOrder&&!$.anchors.has(this.source)){let q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(q)}if($.implicitKey)return`${z} `}return z}}function f1($,Z,X){if(X$.isAlias(Z)){let z=Z.resolve($),q=X&&z&&X.get(z);return q?q.count*q.aliasCount:0}else if(X$.isCollection(Z)){let z=0;for(let q of Z.items){let G=f1($,q,X);if(G>z)z=G}return z}else if(X$.isPair(Z)){let z=f1($,Z.key,X),q=f1($,Z.value,X);return Math.max(z,q)}return 1}oz.Alias=e5});var g=M((z7)=>{var ez=C(),$7=k1(),Z7=w0(),X7=($)=>!$||typeof $!=="function"&&typeof $!=="object";class g0 extends $7.NodeBase{constructor($){super(ez.SCALAR);this.value=$}toJSON($,Z){return Z?.keep?this.value:Z7.toJS(this.value,$,Z)}toString(){return String(this.value)}}g0.BLOCK_FOLDED="BLOCK_FOLDED";g0.BLOCK_LITERAL="BLOCK_LITERAL";g0.PLAIN="PLAIN";g0.QUOTE_DOUBLE="QUOTE_DOUBLE";g0.QUOTE_SINGLE="QUOTE_SINGLE";z7.Scalar=g0;z7.isScalarValue=X7});var f$=M((H7)=>{var J7=k$(),v0=C(),$6=g(),Q7="tag:yaml.org,2002:";function Y7($,Z,X){if(Z){let z=X.filter((G)=>G.tag===Z),q=z.find((G)=>!G.format)??z[0];if(!q)throw Error(`Tag ${Z} not found`);return q}return X.find((z)=>z.identify?.($)&&!z.format)}function U7($,Z,X){if(v0.isDocument($))$=$.contents;if(v0.isNode($))return $;if(v0.isPair($)){let H=X.schema[v0.MAP].createNode?.(X.schema,null,X);return H.items.push($),H}if($ instanceof String||$ instanceof Number||$ instanceof Boolean||typeof BigInt<"u"&&$ instanceof BigInt)$=$.valueOf();let{aliasDuplicateObjects:z,onAnchor:q,onTagObj:G,schema:J,sourceObjects:Q}=X,Y=void 0;if(z&&$&&typeof $==="object")if(Y=Q.get($),Y)return Y.anchor??(Y.anchor=q($)),new J7.Alias(Y.anchor);else Y={anchor:null,node:null},Q.set($,Y);if(Z?.startsWith("!!"))Z=Q7+Z.slice(2);let U=Y7($,Z,J.tags);if(!U){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let H=new $6.Scalar($);if(Y)Y.node=H;return H}U=$ instanceof Map?J[v0.MAP]:(Symbol.iterator in Object($))?J[v0.SEQ]:J[v0.MAP]}if(G)G(U),delete X.onTagObj;let W=U?.createNode?U.createNode(X.schema,$,X):typeof U?.nodeClass?.from==="function"?U.nodeClass.from(X.schema,$,X):new $6.Scalar($);if(Z)W.tag=Z;else if(!U.default)W.tag=U.tag;if(Y)Y.node=W;return W}H7.createNode=U7});var h1=M((B7)=>{var V7=f$(),U0=C(),K7=k1();function I4($,Z,X){let z=X;for(let q=Z.length-1;q>=0;--q){let G=Z[q];if(typeof G==="number"&&Number.isInteger(G)&&G>=0){let J=[];J[G]=z,z=J}else z=new Map([[G,z]])}return V7.createNode(z,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var Z6=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class X6 extends K7.NodeBase{constructor($,Z){super($);Object.defineProperty(this,"schema",{value:Z,configurable:!0,enumerable:!1,writable:!0})}clone($){let Z=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if($)Z.schema=$;if(Z.items=Z.items.map((X)=>U0.isNode(X)||U0.isPair(X)?X.clone($):X),this.range)Z.range=this.range.slice();return Z}addIn($,Z){if(Z6($))this.add(Z);else{let[X,...z]=$,q=this.get(X,!0);if(U0.isCollection(q))q.addIn(z,Z);else if(q===void 0&&this.schema)this.set(X,I4(this.schema,z,Z));else throw Error(`Expected YAML collection at ${X}. Remaining path: ${z}`)}}deleteIn($){let[Z,...X]=$;if(X.length===0)return this.delete(Z);let z=this.get(Z,!0);if(U0.isCollection(z))return z.deleteIn(X);else throw Error(`Expected YAML collection at ${Z}. Remaining path: ${X}`)}getIn($,Z){let[X,...z]=$,q=this.get(X,!0);if(z.length===0)return!Z&&U0.isScalar(q)?q.value:q;else return U0.isCollection(q)?q.getIn(z,Z):void 0}hasAllNullValues($){return this.items.every((Z)=>{if(!U0.isPair(Z))return!1;let X=Z.value;return X==null||$&&U0.isScalar(X)&&X.value==null&&!X.commentBefore&&!X.comment&&!X.tag})}hasIn($){let[Z,...X]=$;if(X.length===0)return this.has(Z);let z=this.get(Z,!0);return U0.isCollection(z)?z.hasIn(X):!1}setIn($,Z){let[X,...z]=$;if(z.length===0)this.set(X,Z);else{let q=this.get(X,!0);if(U0.isCollection(q))q.setIn(z,Z);else if(q===void 0&&this.schema)this.set(X,I4(this.schema,z,Z));else throw Error(`Expected YAML collection at ${X}. Remaining path: ${z}`)}}}B7.Collection=X6;B7.collectionFromPath=I4;B7.isEmptyPath=Z6});var h$=M((F7)=>{var _7=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function R4($,Z){if(/^\n+$/.test($))return $.substring(1);return Z?$.replace(/^(?! *$)/gm,Z):$}var M7=($,Z,X)=>$.endsWith(`
|
|
30
|
+
`)?R4(X,Z):X.includes(`
|
|
31
31
|
`)?`
|
|
32
|
-
`+
|
|
33
|
-
`){if(X==="block")
|
|
34
|
-
`&&B!=="\t"){let
|
|
35
|
-
`&&
|
|
36
|
-
${Z}${$.slice(0,
|
|
37
|
-
${Z}${$.slice(
|
|
38
|
-
`);z=Z,q=Z+1,G=$[q]}return z}
|
|
39
|
-
`){if(G-J>z)return!0;if(J=G+1,q-J<=z)return!1}return!0}function
|
|
32
|
+
`+R4(X,Z):($.endsWith(" ")?"":" ")+X;F7.indentComment=R4;F7.lineComment=M7;F7.stringifyComment=_7});var q6=M((R7)=>{function I7($,Z,X="flow",{indentAtStart:z,lineWidth:q=80,minContentWidth:G=20,onFold:J,onOverflow:Q}={}){if(!q||q<0)return $;if(q<G)G=0;let Y=Math.max(1+G,1+q-Z.length);if($.length<=Y)return $;let U=[],W={},H=q-Z.length;if(typeof z==="number")if(z>q-Math.max(2,G))U.push(0);else H=q-z;let V=void 0,B=void 0,L=!1,K=-1,T=-1,D=-1;if(X==="block"){if(K=z6($,K,Z.length),K!==-1)H=K+Y}for(let O;O=$[K+=1];){if(X==="quoted"&&O==="\\"){switch(T=K,$[K+1]){case"x":K+=3;break;case"u":K+=5;break;case"U":K+=9;break;default:K+=1}D=K}if(O===`
|
|
33
|
+
`){if(X==="block")K=z6($,K,Z.length);H=K+Z.length+Y,V=void 0}else{if(O===" "&&B&&B!==" "&&B!==`
|
|
34
|
+
`&&B!=="\t"){let P=$[K+1];if(P&&P!==" "&&P!==`
|
|
35
|
+
`&&P!=="\t")V=K}if(K>=H)if(V)U.push(V),H=V+Y,V=void 0;else if(X==="quoted"){while(B===" "||B==="\t")B=O,O=$[K+=1],L=!0;let P=K>D+1?K-2:T-1;if(W[P])return $;U.push(P),W[P]=!0,H=P+Y,V=void 0}else L=!0}B=O}if(L&&Q)Q();if(U.length===0)return $;if(J)J();let _=$.slice(0,U[0]);for(let O=0;O<U.length;++O){let P=U[O],R=U[O+1]||$.length;if(P===0)_=`
|
|
36
|
+
${Z}${$.slice(0,R)}`;else{if(X==="quoted"&&W[P])_+=`${$[P]}\\`;_+=`
|
|
37
|
+
${Z}${$.slice(P+1,R)}`}}return _}function z6($,Z,X){let z=Z,q=Z+1,G=$[q];while(G===" "||G==="\t")if(Z<q+X)G=$[++Z];else{do G=$[++Z];while(G&&G!==`
|
|
38
|
+
`);z=Z,q=Z+1,G=$[q]}return z}R7.FOLD_BLOCK="block";R7.FOLD_FLOW="flow";R7.FOLD_QUOTED="quoted";R7.foldFlowLines=I7});var v$=M((x7)=>{var z0=g(),P0=q6(),v1=($,Z)=>({indentAtStart:Z?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),u1=($)=>/^(%|---|\.\.\.)/m.test($);function C7($,Z,X){if(!Z||Z<0)return!1;let z=Z-X,q=$.length;if(q<=z)return!1;for(let G=0,J=0;G<q;++G)if($[G]===`
|
|
39
|
+
`){if(G-J>z)return!0;if(J=G+1,q-J<=z)return!1}return!0}function g$($,Z){let X=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return X;let{implicitKey:z}=Z,q=Z.options.doubleQuotedMinMultiLineLength,G=Z.indent||(u1($)?" ":""),J="",Q=0;for(let Y=0,U=X[Y];U;U=X[++Y]){if(U===" "&&X[Y+1]==="\\"&&X[Y+2]==="n")J+=X.slice(Q,Y)+"\\ ",Y+=1,Q=Y,U="\\";if(U==="\\")switch(X[Y+1]){case"u":{J+=X.slice(Q,Y);let W=X.substr(Y+2,4);switch(W){case"0000":J+="\\0";break;case"0007":J+="\\a";break;case"000b":J+="\\v";break;case"001b":J+="\\e";break;case"0085":J+="\\N";break;case"00a0":J+="\\_";break;case"2028":J+="\\L";break;case"2029":J+="\\P";break;default:if(W.substr(0,2)==="00")J+="\\x"+W.substr(2);else J+=X.substr(Y,6)}Y+=5,Q=Y+1}break;case"n":if(z||X[Y+2]==='"'||X.length<q)Y+=1;else{J+=X.slice(Q,Y)+`
|
|
40
40
|
|
|
41
41
|
`;while(X[Y+2]==="\\"&&X[Y+3]==="n"&&X[Y+4]!=='"')J+=`
|
|
42
|
-
`,Y+=2;if(J+=G,X[Y+2]===" ")J+="\\";Y+=1,Q=Y+1}break;default:Y+=1}}return J=Q?J+X.slice(Q):X,z?J:
|
|
43
|
-
`)||/[ \t]\n|\n[ \t]/.test($))return
|
|
44
|
-
${X}`)+"'";return Z.implicitKey?z:
|
|
42
|
+
`,Y+=2;if(J+=G,X[Y+2]===" ")J+="\\";Y+=1,Q=Y+1}break;default:Y+=1}}return J=Q?J+X.slice(Q):X,z?J:P0.foldFlowLines(J,G,P0.FOLD_QUOTED,v1(Z,!1))}function A4($,Z){if(Z.options.singleQuote===!1||Z.implicitKey&&$.includes(`
|
|
43
|
+
`)||/[ \t]\n|\n[ \t]/.test($))return g$($,Z);let X=Z.indent||(u1($)?" ":""),z="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
44
|
+
${X}`)+"'";return Z.implicitKey?z:P0.foldFlowLines(z,X,P0.FOLD_FLOW,v1(Z,!1))}function z$($,Z){let{singleQuote:X}=Z.options,z;if(X===!1)z=g$;else{let q=$.includes('"'),G=$.includes("'");if(q&&!G)z=A4;else if(G&&!q)z=g$;else z=X?A4:g$}return z($,Z)}var j4;try{j4=new RegExp(`(^|(?<!
|
|
45
45
|
))
|
|
46
46
|
+(?!
|
|
47
|
-
|$)`,"g")}catch{
|
|
47
|
+
|$)`,"g")}catch{j4=/\n+(?!\n|$)/g}function g1({comment:$,type:Z,value:X},z,q,G){let{blockQuote:J,commentString:Q,lineWidth:Y}=z.options;if(!J||/\n[\t ]+$/.test(X))return z$(X,z);let U=z.indent||(z.forceBlockIndent||u1(X)?" ":""),W=J==="literal"?!0:J==="folded"||Z===z0.Scalar.BLOCK_FOLDED?!1:Z===z0.Scalar.BLOCK_LITERAL?!0:!C7(X,Y,U.length);if(!X)return W?`|
|
|
48
48
|
`:`>
|
|
49
|
-
`;let H,V;for(V=X.length;V>0;--V){let
|
|
50
|
-
`&&
|
|
49
|
+
`;let H,V;for(V=X.length;V>0;--V){let R=X[V-1];if(R!==`
|
|
50
|
+
`&&R!=="\t"&&R!==" ")break}let B=X.substring(V),L=B.indexOf(`
|
|
51
51
|
`);if(L===-1)H="-";else if(X===B||L!==B.length-1){if(H="+",G)G()}else H="";if(B){if(X=X.slice(0,-B.length),B[B.length-1]===`
|
|
52
|
-
`)B=B.slice(0,-1);B=B.replace(
|
|
53
|
-
`)D=
|
|
54
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`),
|
|
55
|
-
${U}${
|
|
56
|
-
${U}${_}${X}${B}`}function
|
|
57
|
-
`)||W&&/[[\]{},]/.test(G))return
|
|
58
|
-
`)?
|
|
59
|
-
`))return
|
|
60
|
-
${Y}`);if(J){let V=(
|
|
61
|
-
${Z.indent}${Q}`}
|
|
62
|
-
${Q}:`}else if(
|
|
63
|
-
`:"",_){let S=U(_);
|
|
64
|
-
${
|
|
65
|
-
`&&
|
|
52
|
+
`)B=B.slice(0,-1);B=B.replace(j4,`$&${U}`)}let K=!1,T,D=-1;for(T=0;T<X.length;++T){let R=X[T];if(R===" ")K=!0;else if(R===`
|
|
53
|
+
`)D=T;else break}let _=X.substring(0,D<T?D+1:T);if(_)X=X.substring(_.length),_=_.replace(/\n+/g,`$&${U}`);let P=(K?U?"2":"1":"")+H;if($){if(P+=" "+Q($.replace(/ ?[\r\n]+/g," ")),q)q()}if(!W){let R=X.replace(/\n+/g,`
|
|
54
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`),I=!1,S=v1(z,!0);if(J!=="folded"&&Z!==z0.Scalar.BLOCK_FOLDED)S.onOverflow=()=>{I=!0};let F=P0.foldFlowLines(`${_}${R}${B}`,U,P0.FOLD_BLOCK,S);if(!I)return`>${P}
|
|
55
|
+
${U}${F}`}return X=X.replace(/\n+/g,`$&${U}`),`|${P}
|
|
56
|
+
${U}${_}${X}${B}`}function E7($,Z,X,z){let{type:q,value:G}=$,{actualString:J,implicitKey:Q,indent:Y,indentStep:U,inFlow:W}=Z;if(Q&&G.includes(`
|
|
57
|
+
`)||W&&/[[\]{},]/.test(G))return z$(G,Z);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(G))return Q||W||!G.includes(`
|
|
58
|
+
`)?z$(G,Z):g1($,Z,X,z);if(!Q&&!W&&q!==z0.Scalar.PLAIN&&G.includes(`
|
|
59
|
+
`))return g1($,Z,X,z);if(u1(G)){if(Y==="")return Z.forceBlockIndent=!0,g1($,Z,X,z);else if(Q&&Y===U)return z$(G,Z)}let H=G.replace(/\n+/g,`$&
|
|
60
|
+
${Y}`);if(J){let V=(K)=>K.default&&K.tag!=="tag:yaml.org,2002:str"&&K.test?.test(H),{compat:B,tags:L}=Z.doc.schema;if(L.some(V)||B?.some(V))return z$(G,Z)}return Q?H:P0.foldFlowLines(H,Y,P0.FOLD_FLOW,v1(Z,!1))}function b7($,Z,X,z){let{implicitKey:q,inFlow:G}=Z,J=typeof $.value==="string"?$:Object.assign({},$,{value:String($.value)}),{type:Q}=$;if(Q!==z0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(J.value))Q=z0.Scalar.QUOTE_DOUBLE}let Y=(W)=>{switch(W){case z0.Scalar.BLOCK_FOLDED:case z0.Scalar.BLOCK_LITERAL:return q||G?z$(J.value,Z):g1(J,Z,X,z);case z0.Scalar.QUOTE_DOUBLE:return g$(J.value,Z);case z0.Scalar.QUOTE_SINGLE:return A4(J.value,Z);case z0.Scalar.PLAIN:return E7(J,Z,X,z);default:return null}},U=Y(Q);if(U===null){let{defaultKeyType:W,defaultStringType:H}=Z.options,V=q&&W||H;if(U=Y(V),U===null)throw Error(`Unsupported default string type ${V}`)}return U}x7.stringifyString=b7});var u$=M((d7)=>{var k7=y1(),I0=C(),f7=h$(),h7=v$();function g7($,Z){let X=Object.assign({blockQuote:!0,commentString:f7.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,trueStr:"true",verifyAliasOrder:!0},$.schema.toStringOptions,Z),z;switch(X.collectionStyle){case"block":z=!1;break;case"flow":z=!0;break;default:z=null}return{anchors:new Set,doc:$,flowCollectionPadding:X.flowCollectionPadding?" ":"",indent:"",indentStep:typeof X.indent==="number"?" ".repeat(X.indent):" ",inFlow:z,options:X}}function v7($,Z){if(Z.tag){let q=$.filter((G)=>G.tag===Z.tag);if(q.length>0)return q.find((G)=>G.format===Z.format)??q[0]}let X=void 0,z;if(I0.isScalar(Z)){z=Z.value;let q=$.filter((G)=>G.identify?.(z));if(q.length>1){let G=q.filter((J)=>J.test);if(G.length>0)q=G}X=q.find((G)=>G.format===Z.format)??q.find((G)=>!G.format)}else z=Z,X=$.find((q)=>q.nodeClass&&z instanceof q.nodeClass);if(!X){let q=z?.constructor?.name??(z===null?"null":typeof z);throw Error(`Tag not resolved for ${q} value`)}return X}function u7($,Z,{anchors:X,doc:z}){if(!z.directives)return"";let q=[],G=(I0.isScalar($)||I0.isCollection($))&&$.anchor;if(G&&k7.anchorIsValid(G))X.add(G),q.push(`&${G}`);let J=$.tag??(Z.default?null:Z.tag);if(J)q.push(z.directives.tagString(J));return q.join(" ")}function m7($,Z,X,z){if(I0.isPair($))return $.toString(Z,X,z);if(I0.isAlias($)){if(Z.doc.directives)return $.toString(Z);if(Z.resolvedAliases?.has($))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(Z.resolvedAliases)Z.resolvedAliases.add($);else Z.resolvedAliases=new Set([$]);$=$.resolve(Z.doc)}}let q=void 0,G=I0.isNode($)?$:Z.doc.createNode($,{onTagObj:(Y)=>q=Y});q??(q=v7(Z.doc.schema.tags,G));let J=u7(G,q,Z);if(J.length>0)Z.indentAtStart=(Z.indentAtStart??0)+J.length+1;let Q=typeof q.stringify==="function"?q.stringify(G,Z,X,z):I0.isScalar(G)?h7.stringifyString(G,Z,X,z):G.toString(Z,X,z);if(!J)return Q;return I0.isScalar(G)||Q[0]==="{"||Q[0]==="["?`${J} ${Q}`:`${J}
|
|
61
|
+
${Z.indent}${Q}`}d7.createStringifyContext=g7;d7.stringify=m7});var Q6=M((i7)=>{var T0=C(),G6=g(),J6=u$(),m$=h$();function c7({key:$,value:Z},X,z,q){let{allNullValues:G,doc:J,indent:Q,indentStep:Y,options:{commentString:U,indentSeq:W,simpleKeys:H}}=X,V=T0.isNode($)&&$.comment||null;if(H){if(V)throw Error("With simple keys, key nodes cannot have comments");if(T0.isCollection($)||!T0.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let B=!H&&(!$||V&&Z==null&&!X.inFlow||T0.isCollection($)||(T0.isScalar($)?$.type===G6.Scalar.BLOCK_FOLDED||$.type===G6.Scalar.BLOCK_LITERAL:typeof $==="object"));X=Object.assign({},X,{allNullValues:!1,implicitKey:!B&&(H||!G),indent:Q+Y});let L=!1,K=!1,T=J6.stringify($,X,()=>L=!0,()=>K=!0);if(!B&&!X.inFlow&&T.length>1024){if(H)throw Error("With simple keys, single line scalar must not span more than 1024 characters");B=!0}if(X.inFlow){if(G||Z==null){if(L&&z)z();return T===""?"?":B?`? ${T}`:T}}else if(G&&!H||Z==null&&B){if(T=`? ${T}`,V&&!L)T+=m$.lineComment(T,X.indent,U(V));else if(K&&q)q();return T}if(L)V=null;if(B){if(V)T+=m$.lineComment(T,X.indent,U(V));T=`? ${T}
|
|
62
|
+
${Q}:`}else if(T=`${T}:`,V)T+=m$.lineComment(T,X.indent,U(V));let D,_,O;if(T0.isNode(Z))D=!!Z.spaceBefore,_=Z.commentBefore,O=Z.comment;else if(D=!1,_=null,O=null,Z&&typeof Z==="object")Z=J.createNode(Z);if(X.implicitKey=!1,!B&&!V&&T0.isScalar(Z))X.indentAtStart=T.length+1;if(K=!1,!W&&Y.length>=2&&!X.inFlow&&!B&&T0.isSeq(Z)&&!Z.flow&&!Z.tag&&!Z.anchor)X.indent=X.indent.substring(2);let P=!1,R=J6.stringify(Z,X,()=>P=!0,()=>K=!0),I=" ";if(V||D||_){if(I=D?`
|
|
63
|
+
`:"",_){let S=U(_);I+=`
|
|
64
|
+
${m$.indentComment(S,X.indent)}`}if(R===""&&!X.inFlow){if(I===`
|
|
65
|
+
`&&O)I=`
|
|
66
66
|
|
|
67
|
-
`}else
|
|
68
|
-
${X.indent}`}else if(!B&&
|
|
69
|
-
`),E=
|
|
70
|
-
${X.indent}`}}else if(
|
|
71
|
-
`)
|
|
72
|
-
${Y}${
|
|
67
|
+
`}else I+=`
|
|
68
|
+
${X.indent}`}else if(!B&&T0.isCollection(Z)){let S=R[0],F=R.indexOf(`
|
|
69
|
+
`),E=F!==-1,a=X.inFlow??Z.flow??Z.items.length===0;if(E||!a){let c=!1;if(E&&(S==="&"||S==="!")){let y=R.indexOf(" ");if(S==="&"&&y!==-1&&y<F&&R[y+1]==="!")y=R.indexOf(" ",y+1);if(y===-1||F<y)c=!0}if(!c)I=`
|
|
70
|
+
${X.indent}`}}else if(R===""||R[0]===`
|
|
71
|
+
`)I="";if(T+=I+R,X.inFlow){if(P&&z)z()}else if(O&&!P)T+=m$.lineComment(T,X.indent,U(O));else if(K&&q)q();return T}i7.stringifyPair=c7});var N4=M((r7)=>{var Y6=V0("process");function n7($,...Z){if($==="debug")console.log(...Z)}function s7($,Z){if($==="debug"||$==="warn")if(typeof Y6.emitWarning==="function")Y6.emitWarning(Z);else console.warn(Z)}r7.debug=n7;r7.warn=s7});var p1=M(($3)=>{var d$=C(),U6=g(),m1="<<",d1={identify:($)=>$===m1||typeof $==="symbol"&&$.description===m1,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new U6.Scalar(Symbol(m1)),{addToJSMap:H6}),stringify:()=>m1},e7=($,Z)=>(d1.identify(Z)||d$.isScalar(Z)&&(!Z.type||Z.type===U6.Scalar.PLAIN)&&d1.identify(Z.value))&&$?.doc.schema.tags.some((X)=>X.tag===d1.tag&&X.default);function H6($,Z,X){if(X=$&&d$.isAlias(X)?X.resolve($.doc):X,d$.isSeq(X))for(let z of X.items)S4($,Z,z);else if(Array.isArray(X))for(let z of X)S4($,Z,z);else S4($,Z,X)}function S4($,Z,X){let z=$&&d$.isAlias(X)?X.resolve($.doc):X;if(!d$.isMap(z))throw Error("Merge sources must be maps or map aliases");let q=z.toJSON(null,$,Map);for(let[G,J]of q)if(Z instanceof Map){if(!Z.has(G))Z.set(G,J)}else if(Z instanceof Set)Z.add(G);else if(!Object.prototype.hasOwnProperty.call(Z,G))Object.defineProperty(Z,G,{value:J,writable:!0,enumerable:!0,configurable:!0});return Z}$3.addMergeToJSMap=H6;$3.isMergeKey=e7;$3.merge=d1});var E4=M((Y3)=>{var q3=N4(),W6=p1(),G3=u$(),V6=C(),C4=w0();function J3($,Z,{key:X,value:z}){if(V6.isNode(X)&&X.addToJSMap)X.addToJSMap($,Z,z);else if(W6.isMergeKey($,X))W6.addMergeToJSMap($,Z,z);else{let q=C4.toJS(X,"",$);if(Z instanceof Map)Z.set(q,C4.toJS(z,q,$));else if(Z instanceof Set)Z.add(q);else{let G=Q3(X,q,$),J=C4.toJS(z,G,$);if(G in Z)Object.defineProperty(Z,G,{value:J,writable:!0,enumerable:!0,configurable:!0});else Z[G]=J}}return Z}function Q3($,Z,X){if(Z===null)return"";if(typeof Z!=="object")return String(Z);if(V6.isNode($)&&X?.doc){let z=G3.createStringifyContext(X.doc,{});z.anchors=new Set;for(let G of X.anchors.keys())z.anchors.add(G.anchor);z.inFlow=!0,z.inStringifyKey=!0;let q=$.toString(z);if(!X.mapKeyWarned){let G=JSON.stringify(q);if(G.length>40)G=G.substring(0,36)+'..."';q3.warn(X.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${G}. Set mapAsMap: true to use object keys.`),X.mapKeyWarned=!0}return q}return JSON.stringify(Z)}Y3.addPairToJSMap=J3});var R0=M((K3)=>{var K6=f$(),H3=Q6(),W3=E4(),l1=C();function V3($,Z,X){let z=K6.createNode($,void 0,X),q=K6.createNode(Z,void 0,X);return new c1(z,q)}class c1{constructor($,Z=null){Object.defineProperty(this,l1.NODE_TYPE,{value:l1.PAIR}),this.key=$,this.value=Z}clone($){let{key:Z,value:X}=this;if(l1.isNode(Z))Z=Z.clone($);if(l1.isNode(X))X=X.clone($);return new c1(Z,X)}toJSON($,Z){let X=Z?.mapAsMap?new Map:{};return W3.addPairToJSMap(Z,X,this)}toString($,Z,X){return $?.doc?H3.stringifyPair(this,$,Z,X):JSON.stringify(this)}}K3.Pair=c1;K3.createPair=V3});var b4=M((M3)=>{var u0=C(),B6=u$(),i1=h$();function L3($,Z,X){return(Z.inFlow??$.flow?_3:D3)($,Z,X)}function D3({comment:$,items:Z},X,{blockItemPrefix:z,flowChars:q,itemIndent:G,onChompKeep:J,onComment:Q}){let{indent:Y,options:{commentString:U}}=X,W=Object.assign({},X,{indent:G,type:null}),H=!1,V=[];for(let L=0;L<Z.length;++L){let K=Z[L],T=null;if(u0.isNode(K)){if(!H&&K.spaceBefore)V.push("");if(a1(X,V,K.commentBefore,H),K.comment)T=K.comment}else if(u0.isPair(K)){let _=u0.isNode(K.key)?K.key:null;if(_){if(!H&&_.spaceBefore)V.push("");a1(X,V,_.commentBefore,H)}}H=!1;let D=B6.stringify(K,W,()=>T=null,()=>H=!0);if(T)D+=i1.lineComment(D,G,U(T));if(H&&T)H=!1;V.push(z+D)}let B;if(V.length===0)B=q.start+q.end;else{B=V[0];for(let L=1;L<V.length;++L){let K=V[L];B+=K?`
|
|
72
|
+
${Y}${K}`:`
|
|
73
73
|
`}}if($){if(B+=`
|
|
74
|
-
`+
|
|
75
|
-
`)))U=!0;H.push(D),W=H.length}let{start:V,end:B}=X;if(H.length===0)return V+B;else{if(!U){let L=H.reduce((T
|
|
76
|
-
${G}${q}${
|
|
74
|
+
`+i1.indentComment(U($),Y),Q)Q()}else if(H&&J)J();return B}function _3({items:$},Z,{flowChars:X,itemIndent:z}){let{indent:q,indentStep:G,flowCollectionPadding:J,options:{commentString:Q}}=Z;z+=G;let Y=Object.assign({},Z,{indent:z,inFlow:!0,type:null}),U=!1,W=0,H=[];for(let L=0;L<$.length;++L){let K=$[L],T=null;if(u0.isNode(K)){if(K.spaceBefore)H.push("");if(a1(Z,H,K.commentBefore,!1),K.comment)T=K.comment}else if(u0.isPair(K)){let _=u0.isNode(K.key)?K.key:null;if(_){if(_.spaceBefore)H.push("");if(a1(Z,H,_.commentBefore,!1),_.comment)U=!0}let O=u0.isNode(K.value)?K.value:null;if(O){if(O.comment)T=O.comment;if(O.commentBefore)U=!0}else if(K.value==null&&_?.comment)T=_.comment}if(T)U=!0;let D=B6.stringify(K,Y,()=>T=null);if(L<$.length-1)D+=",";if(T)D+=i1.lineComment(D,z,Q(T));if(!U&&(H.length>W||D.includes(`
|
|
75
|
+
`)))U=!0;H.push(D),W=H.length}let{start:V,end:B}=X;if(H.length===0)return V+B;else{if(!U){let L=H.reduce((K,T)=>K+T.length+2,2);U=Z.options.lineWidth>0&&L>Z.options.lineWidth}if(U){let L=V;for(let K of H)L+=K?`
|
|
76
|
+
${G}${q}${K}`:`
|
|
77
77
|
`;return`${L}
|
|
78
|
-
${q}${B}`}else return`${V}${J}${H.join(" ")}${J}${B}`}}function
|
|
79
|
-
`:" ")}return
|
|
78
|
+
${q}${B}`}else return`${V}${J}${H.join(" ")}${J}${B}`}}function a1({indent:$,options:{commentString:Z}},X,z,q){if(z&&q)z=z.replace(/^\n+/,"");if(z){let G=i1.indentComment(Z(z),$);X.push(G.trimStart())}}M3.stringifyCollection=L3});var j0=M((R3)=>{var O3=b4(),w3=E4(),P3=h1(),A0=C(),n1=R0(),I3=g();function p$($,Z){let X=A0.isScalar(Z)?Z.value:Z;for(let z of $)if(A0.isPair(z)){if(z.key===Z||z.key===X)return z;if(A0.isScalar(z.key)&&z.key.value===X)return z}return}class T6 extends P3.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor($){super(A0.MAP,$);this.items=[]}static from($,Z,X){let{keepUndefined:z,replacer:q}=X,G=new this($),J=(Q,Y)=>{if(typeof q==="function")Y=q.call(Z,Q,Y);else if(Array.isArray(q)&&!q.includes(Q))return;if(Y!==void 0||z)G.items.push(n1.createPair(Q,Y,X))};if(Z instanceof Map)for(let[Q,Y]of Z)J(Q,Y);else if(Z&&typeof Z==="object")for(let Q of Object.keys(Z))J(Q,Z[Q]);if(typeof $.sortMapEntries==="function")G.items.sort($.sortMapEntries);return G}add($,Z){let X;if(A0.isPair($))X=$;else if(!$||typeof $!=="object"||!("key"in $))X=new n1.Pair($,$?.value);else X=new n1.Pair($.key,$.value);let z=p$(this.items,X.key),q=this.schema?.sortMapEntries;if(z){if(!Z)throw Error(`Key ${X.key} already set`);if(A0.isScalar(z.value)&&I3.isScalarValue(X.value))z.value.value=X.value;else z.value=X.value}else if(q){let G=this.items.findIndex((J)=>q(X,J)<0);if(G===-1)this.items.push(X);else this.items.splice(G,0,X)}else this.items.push(X)}delete($){let Z=p$(this.items,$);if(!Z)return!1;return this.items.splice(this.items.indexOf(Z),1).length>0}get($,Z){let z=p$(this.items,$)?.value;return(!Z&&A0.isScalar(z)?z.value:z)??void 0}has($){return!!p$(this.items,$)}set($,Z){this.add(new n1.Pair($,Z),!0)}toJSON($,Z,X){let z=X?new X:Z?.mapAsMap?new Map:{};if(Z?.onCreate)Z.onCreate(z);for(let q of this.items)w3.addPairToJSMap(Z,z,q);return z}toString($,Z,X){if(!$)return JSON.stringify(this);for(let z of this.items)if(!A0.isPair(z))throw Error(`Map items must all be pairs; found ${JSON.stringify(z)} instead`);if(!$.allNullValues&&this.hasAllNullValues(!1))$=Object.assign({},$,{allNullValues:!0});return O3.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:X,onComment:Z})}}R3.YAMLMap=T6;R3.findPair=p$});var q$=M((C3)=>{var N3=C(),L6=j0(),S3={collection:"map",default:!0,nodeClass:L6.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,Z){if(!N3.isMap($))Z("Expected a mapping for this tag");return $},createNode:($,Z,X)=>L6.YAMLMap.from($,Z,X)};C3.map=S3});var N0=M((h3)=>{var b3=f$(),x3=b4(),y3=h1(),r1=C(),k3=g(),f3=w0();class D6 extends y3.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(r1.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let Z=s1($);if(typeof Z!=="number")return!1;return this.items.splice(Z,1).length>0}get($,Z){let X=s1($);if(typeof X!=="number")return;let z=this.items[X];return!Z&&r1.isScalar(z)?z.value:z}has($){let Z=s1($);return typeof Z==="number"&&Z<this.items.length}set($,Z){let X=s1($);if(typeof X!=="number")throw Error(`Expected a valid index, not ${$}.`);let z=this.items[X];if(r1.isScalar(z)&&k3.isScalarValue(Z))z.value=Z;else this.items[X]=Z}toJSON($,Z){let X=[];if(Z?.onCreate)Z.onCreate(X);let z=0;for(let q of this.items)X.push(f3.toJS(q,String(z++),Z));return X}toString($,Z,X){if(!$)return JSON.stringify(this);return x3.stringifyCollection(this,$,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:($.indent||"")+" ",onChompKeep:X,onComment:Z})}static from($,Z,X){let{replacer:z}=X,q=new this($);if(Z&&Symbol.iterator in Object(Z)){let G=0;for(let J of Z){if(typeof z==="function"){let Q=Z instanceof Set?J:String(G++);J=z.call(Z,Q,J)}q.items.push(b3.createNode(J,void 0,X))}}return q}}function s1($){let Z=r1.isScalar($)?$.value:$;if(Z&&typeof Z==="string")Z=Number(Z);return typeof Z==="number"&&Number.isInteger(Z)&&Z>=0?Z:null}h3.YAMLSeq=D6});var G$=M((m3)=>{var v3=C(),_6=N0(),u3={collection:"seq",default:!0,nodeClass:_6.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,Z){if(!v3.isSeq($))Z("Expected a sequence for this tag");return $},createNode:($,Z,X)=>_6.YAMLSeq.from($,Z,X)};m3.seq=u3});var l$=M((c3)=>{var p3=v$(),l3={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,Z,X,z){return Z=Object.assign({actualString:!0},Z),p3.stringifyString($,Z,X,z)}};c3.string=l3});var o1=M((a3)=>{var M6=g(),F6={identify:($)=>$==null,createNode:()=>new M6.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new M6.Scalar(null),stringify:({source:$},Z)=>typeof $==="string"&&F6.test.test($)?$:Z.options.nullStr};a3.nullTag=F6});var x4=M((r3)=>{var s3=g(),O6={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new s3.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:Z},X){if($&&O6.test.test($)){let z=$[0]==="t"||$[0]==="T";if(Z===z)return $}return Z?X.options.trueStr:X.options.falseStr}};r3.boolTag=O6});var J$=M((e3)=>{function t3({format:$,minFractionDigits:Z,tag:X,value:z}){if(typeof z==="bigint")return String(z);let q=typeof z==="number"?z:Number(z);if(!isFinite(q))return isNaN(q)?".nan":q<0?"-.inf":".inf";let G=Object.is(z,-0)?"-0":JSON.stringify(z);if(!$&&Z&&(!X||X==="tag:yaml.org,2002:float")&&/^\d/.test(G)){let J=G.indexOf(".");if(J<0)J=G.length,G+=".";let Q=Z-(G.length-J-1);while(Q-- >0)G+="0"}return G}e3.stringifyNumber=t3});var k4=M((Gq)=>{var Zq=g(),y4=J$(),Xq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:y4.stringifyNumber},zq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():y4.stringifyNumber($)}},qq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let Z=new Zq.Scalar(parseFloat($)),X=$.indexOf(".");if(X!==-1&&$[$.length-1]==="0")Z.minFractionDigits=$.length-X-1;return Z},stringify:y4.stringifyNumber};Gq.float=qq;Gq.floatExp=zq;Gq.floatNaN=Xq});var h4=M((Vq)=>{var w6=J$(),t1=($)=>typeof $==="bigint"||Number.isInteger($),f4=($,Z,X,{intAsBigInt:z})=>z?BigInt($):parseInt($.substring(Z),X);function P6($,Z,X){let{value:z}=$;if(t1(z)&&z>=0)return X+z.toString(Z);return w6.stringifyNumber($)}var Uq={identify:($)=>t1($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,Z,X)=>f4($,2,8,X),stringify:($)=>P6($,8,"0o")},Hq={identify:t1,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,Z,X)=>f4($,0,10,X),stringify:w6.stringifyNumber},Wq={identify:($)=>t1($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,Z,X)=>f4($,2,16,X),stringify:($)=>P6($,16,"0x")};Vq.int=Hq;Vq.intHex=Wq;Vq.intOct=Uq});var I6=M((wq)=>{var Lq=q$(),Dq=o1(),_q=G$(),Mq=l$(),Fq=x4(),g4=k4(),v4=h4(),Oq=[Lq.map,_q.seq,Mq.string,Dq.nullTag,Fq.boolTag,v4.intOct,v4.int,v4.intHex,g4.floatNaN,g4.floatExp,g4.float];wq.schema=Oq});var A6=M((Cq)=>{var Iq=g(),Rq=q$(),Aq=G$();function R6($){return typeof $==="bigint"||Number.isInteger($)}var e1=({value:$})=>JSON.stringify($),jq=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:e1},{identify:($)=>$==null,createNode:()=>new Iq.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:e1},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:e1},{identify:R6,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,Z,{intAsBigInt:X})=>X?BigInt($):parseInt($,10),stringify:({value:$})=>R6($)?$.toString():JSON.stringify($)},{identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:($)=>parseFloat($),stringify:e1}],Nq={default:!0,tag:"",test:/^/,resolve($,Z){return Z(`Unresolved plain scalar ${JSON.stringify($)}`),$}},Sq=[Rq.map,Aq.seq].concat(jq,Nq);Cq.schema=Sq});var m4=M((yq)=>{var c$=V0("buffer"),u4=g(),bq=v$(),xq={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,Z){if(typeof c$.Buffer==="function")return c$.Buffer.from($,"base64");else if(typeof atob==="function"){let X=atob($.replace(/[\n\r]/g,"")),z=new Uint8Array(X.length);for(let q=0;q<X.length;++q)z[q]=X.charCodeAt(q);return z}else return Z("This environment does not support reading binary tags; either Buffer or atob is required"),$},stringify({comment:$,type:Z,value:X},z,q,G){if(!X)return"";let J=X,Q;if(typeof c$.Buffer==="function")Q=J instanceof c$.Buffer?J.toString("base64"):c$.Buffer.from(J.buffer).toString("base64");else if(typeof btoa==="function"){let Y="";for(let U=0;U<J.length;++U)Y+=String.fromCharCode(J[U]);Q=btoa(Y)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(Z??(Z=u4.Scalar.BLOCK_LITERAL),Z!==u4.Scalar.QUOTE_DOUBLE){let Y=Math.max(z.options.lineWidth-z.indent.length,z.options.minContentWidth),U=Math.ceil(Q.length/Y),W=Array(U);for(let H=0,V=0;H<U;++H,V+=Y)W[H]=Q.substr(V,Y);Q=W.join(Z===u4.Scalar.BLOCK_LITERAL?`
|
|
79
|
+
`:" ")}return bq.stringifyString({comment:$,type:Z,value:Q},z,q,G)}};yq.binary=xq});var Z2=M((vq)=>{var $2=C(),d4=R0(),fq=g(),hq=N0();function j6($,Z){if($2.isSeq($))for(let X=0;X<$.items.length;++X){let z=$.items[X];if($2.isPair(z))continue;else if($2.isMap(z)){if(z.items.length>1)Z("Each pair must have its own sequence indicator");let q=z.items[0]||new d4.Pair(new fq.Scalar(null));if(z.commentBefore)q.key.commentBefore=q.key.commentBefore?`${z.commentBefore}
|
|
80
80
|
${q.key.commentBefore}`:z.commentBefore;if(z.comment){let G=q.value??q.key;G.comment=G.comment?`${z.comment}
|
|
81
|
-
${G.comment}`:z.comment}z=q}$.items[X]=t1.isPair(z)?z:new m4.Pair(z)}else Z("Expected a sequence for this tag");return $}function j6($,Z,X){let{replacer:z}=X,q=new kq.YAMLSeq($);q.tag="tag:yaml.org,2002:pairs";let G=0;if(Z&&Symbol.iterator in Object(Z))for(let J of Z){if(typeof z==="function")J=z.call(Z,String(G++),J);let Q,Y;if(Array.isArray(J))if(J.length===2)Q=J[0],Y=J[1];else throw TypeError(`Expected [key, value] tuple: ${J}`);else if(J&&J instanceof Object){let U=Object.keys(J);if(U.length===1)Q=U[0],Y=J[Q];else throw TypeError(`Expected tuple with one key, not ${U.length} keys`)}else Q=J;q.items.push(m4.createPair(Q,Y,X))}return q}var fq={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:A6,createNode:j6};hq.createPairs=j6;hq.pairs=fq;hq.resolvePairs=A6});var p4=O((pq)=>{var N6=C(),d4=w0(),l$=j0(),mq=N0(),S6=e1();class m0 extends mq.YAMLSeq{constructor(){super();this.add=l$.YAMLMap.prototype.add.bind(this),this.delete=l$.YAMLMap.prototype.delete.bind(this),this.get=l$.YAMLMap.prototype.get.bind(this),this.has=l$.YAMLMap.prototype.has.bind(this),this.set=l$.YAMLMap.prototype.set.bind(this),this.tag=m0.tag}toJSON($,Z){if(!Z)return super.toJSON($);let X=new Map;if(Z?.onCreate)Z.onCreate(X);for(let z of this.items){let q,G;if(N6.isPair(z))q=d4.toJS(z.key,"",Z),G=d4.toJS(z.value,q,Z);else q=d4.toJS(z,"",Z);if(X.has(q))throw Error("Ordered maps must not include duplicate keys");X.set(q,G)}return X}static from($,Z,X){let z=S6.createPairs($,Z,X),q=new this;return q.items=z.items,q}}m0.tag="tag:yaml.org,2002:omap";var dq={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:m0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=S6.resolvePairs($,Z),z=[];for(let{key:q}of X.items)if(N6.isScalar(q))if(z.includes(q.value))Z(`Ordered maps must not include duplicate keys: ${q.value}`);else z.push(q.value);return Object.assign(new m0,X)},createNode:($,Z,X)=>m0.from($,Z,X)};pq.YAMLOMap=m0;pq.omap=dq});var x6=O((iq)=>{var C6=h();function E6({value:$,source:Z},X){if(Z&&($?b6:y6).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var b6={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new C6.Scalar(!0),stringify:E6},y6={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new C6.Scalar(!1),stringify:E6};iq.falseTag=y6;iq.trueTag=b6});var k6=O((eq)=>{var sq=h(),l4=G$(),rq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:l4.stringifyNumber},oq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($.replace(/_/g,"")),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():l4.stringifyNumber($)}},tq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new sq.Scalar(parseFloat($.replace(/_/g,""))),X=$.indexOf(".");if(X!==-1){let z=$.substring(X+1).replace(/_/g,"");if(z[z.length-1]==="0")Z.minFractionDigits=z.length}return Z},stringify:l4.stringifyNumber};eq.float=tq;eq.floatExp=oq;eq.floatNaN=rq});var h6=O((QG)=>{var f6=G$(),c$=($)=>typeof $==="bigint"||Number.isInteger($);function $2($,Z,X,{intAsBigInt:z}){let q=$[0];if(q==="-"||q==="+")Z+=1;if($=$.substring(Z).replace(/_/g,""),z){switch(X){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let J=BigInt($);return q==="-"?BigInt(-1)*J:J}let G=parseInt($,X);return q==="-"?-1*G:G}function c4($,Z,X){let{value:z}=$;if(c$(z)){let q=z.toString(Z);return z<0?"-"+X+q.substr(1):X+q}return f6.stringifyNumber($)}var zG={identify:c$,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>$2($,2,2,X),stringify:($)=>c4($,2,"0b")},qG={identify:c$,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>$2($,1,8,X),stringify:($)=>c4($,8,"0")},GG={identify:c$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>$2($,0,10,X),stringify:f6.stringifyNumber},JG={identify:c$,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>$2($,2,16,X),stringify:($)=>c4($,16,"0x")};QG.int=GG;QG.intBin=zG;QG.intHex=JG;QG.intOct=qG});var i4=O((TG)=>{var z2=C(),Z2=I0(),X2=j0();class d0 extends X2.YAMLMap{constructor($){super($);this.tag=d0.tag}add($){let Z;if(z2.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new Z2.Pair($.key,null);else Z=new Z2.Pair($,null);if(!X2.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=X2.findPair(this.items,$);return!Z&&z2.isPair(X)?z2.isScalar(X.key)?X.key.value:X.key:X}set($,Z){if(typeof Z!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Z}`);let X=X2.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new Z2.Pair($))}toJSON($,Z){return super.toJSON($,Z,Set)}toString($,Z,X){if(!$)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},$,{allNullValues:!0}),Z,X);else throw Error("Set items must all have null values")}static from($,Z,X){let{replacer:z}=X,q=new this($);if(Z&&Symbol.iterator in Object(Z))for(let G of Z){if(typeof z==="function")G=z.call(Z,G,G);q.items.push(Z2.createPair(G,null,X))}return q}}d0.tag="tag:yaml.org,2002:set";var VG={collection:"map",identify:($)=>$ instanceof Set,nodeClass:d0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>d0.from($,Z,X),resolve($,Z){if(z2.isMap($))if($.hasAllNullValues(!0))return Object.assign(new d0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};TG.YAMLSet=d0;TG.set=VG});var n4=O((OG)=>{var LG=G$();function a4($,Z){let X=$[0],z=X==="-"||X==="+"?$.substring(1):$,q=(J)=>Z?BigInt(J):Number(J),G=z.replace(/_/g,"").split(":").reduce((J,Q)=>J*q(60)+q(Q),q(0));return X==="-"?q(-1)*G:G}function g6($){let{value:Z}=$,X=(J)=>J;if(typeof Z==="bigint")X=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return LG.stringifyNumber($);let z="";if(Z<0)z="-",Z*=X(-1);let q=X(60),G=[Z%q];if(Z<60)G.unshift(0);else if(Z=(Z-G[0])/q,G.unshift(Z%q),Z>=60)Z=(Z-G[0])/q,G.unshift(Z);return z+G.map((J)=>String(J).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var DG={identify:($)=>typeof $==="bigint"||Number.isInteger($),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:($,Z,{intAsBigInt:X})=>a4($,X),stringify:g6},_G={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:($)=>a4($,!1),stringify:g6},v6={identify:($)=>$ 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($){let Z=$.match(v6.test);if(!Z)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,X,z,q,G,J,Q]=Z.map(Number),Y=Z[7]?Number((Z[7]+"00").substr(1,3)):0,U=Date.UTC(X,z-1,q,G||0,J||0,Q||0,Y),W=Z[8];if(W&&W!=="Z"){let H=a4(W,!1);if(Math.abs(H)<30)H*=60;U-=60000*H}return new Date(U)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};OG.floatTime=_G;OG.intTime=DG;OG.timestamp=v6});var m6=O((yG)=>{var RG=z$(),PG=s1(),IG=q$(),AG=d$(),jG=u4(),u6=x6(),s4=k6(),q2=h6(),NG=m1(),SG=p4(),CG=e1(),EG=i4(),r4=n4(),bG=[RG.map,IG.seq,AG.string,PG.nullTag,u6.trueTag,u6.falseTag,q2.intBin,q2.intOct,q2.int,q2.intHex,s4.floatNaN,s4.floatExp,s4.float,jG.binary,NG.merge,SG.omap,CG.pairs,EG.set,r4.intTime,r4.floatTime,r4.timestamp];yG.schema=bG});var o6=O((dG)=>{var c6=z$(),kG=s1(),i6=q$(),fG=d$(),hG=b4(),o4=x4(),t4=f4(),gG=R6(),vG=I6(),a6=u4(),i$=m1(),n6=p4(),s6=e1(),d6=m6(),r6=i4(),G2=n4(),p6=new Map([["core",gG.schema],["failsafe",[c6.map,i6.seq,fG.string]],["json",vG.schema],["yaml11",d6.schema],["yaml-1.1",d6.schema]]),l6={binary:a6.binary,bool:hG.boolTag,float:o4.float,floatExp:o4.floatExp,floatNaN:o4.floatNaN,floatTime:G2.floatTime,int:t4.int,intHex:t4.intHex,intOct:t4.intOct,intTime:G2.intTime,map:c6.map,merge:i$.merge,null:kG.nullTag,omap:n6.omap,pairs:s6.pairs,seq:i6.seq,set:r6.set,timestamp:G2.timestamp},uG={"tag:yaml.org,2002:binary":a6.binary,"tag:yaml.org,2002:merge":i$.merge,"tag:yaml.org,2002:omap":n6.omap,"tag:yaml.org,2002:pairs":s6.pairs,"tag:yaml.org,2002:set":r6.set,"tag:yaml.org,2002:timestamp":G2.timestamp};function mG($,Z,X){let z=p6.get(Z);if(z&&!$)return X&&!z.includes(i$.merge)?z.concat(i$.merge):z.slice();let q=z;if(!q)if(Array.isArray($))q=[];else{let G=Array.from(p6.keys()).filter((J)=>J!=="yaml11").map((J)=>JSON.stringify(J)).join(", ");throw Error(`Unknown schema "${Z}"; use one of ${G} or define customTags array`)}if(Array.isArray($))for(let G of $)q=q.concat(G);else if(typeof $==="function")q=$(q.slice());if(X)q=q.concat(i$.merge);return q.reduce((G,J)=>{let Q=typeof J==="string"?l6[J]:J;if(!Q){let Y=JSON.stringify(J),U=Object.keys(l6).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${Y}; use one of ${U}`)}if(!G.includes(Q))G.push(Q);return G},[])}dG.coreKnownTags=uG;dG.getTags=mG});var Z9=O((sG)=>{var e4=C(),cG=z$(),iG=q$(),aG=d$(),J2=o6(),nG=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class $9{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:q,sortMapEntries:G,toStringDefaults:J}){this.compat=Array.isArray($)?J2.getTags($,"compat"):$?J2.getTags(null,$):null,this.name=typeof q==="string"&&q||"core",this.knownTags=z?J2.coreKnownTags:{},this.tags=J2.getTags(Z,this.name,X),this.toStringOptions=J??null,Object.defineProperty(this,e4.MAP,{value:cG.map}),Object.defineProperty(this,e4.SCALAR,{value:aG.string}),Object.defineProperty(this,e4.SEQ,{value:iG.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?nG:null}clone(){let $=Object.create($9.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}sG.Schema=$9});var t6=O((eG)=>{var oG=C(),X9=g$(),a$=k$();function tG($,Z){let X=[],z=Z.directives===!0;if(Z.directives!==!1&&$.directives){let Y=$.directives.toString($);if(Y)X.push(Y),z=!0;else if($.directives.docStart)z=!0}if(z)X.push("---");let q=X9.createStringifyContext($,Z),{commentString:G}=q.options;if($.commentBefore){if(X.length!==1)X.unshift("");let Y=G($.commentBefore);X.unshift(a$.indentComment(Y,""))}let J=!1,Q=null;if($.contents){if(oG.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=G($.contents.commentBefore);X.push(a$.indentComment(W,""))}q.forceBlockIndent=!!$.comment,Q=$.contents.comment}let Y=Q?void 0:()=>J=!0,U=X9.stringify($.contents,q,()=>Q=null,Y);if(Q)U+=a$.lineComment(U,"",G(Q));if((U[0]==="|"||U[0]===">")&&X[X.length-1]==="---")X[X.length-1]=`--- ${U}`;else X.push(U)}else X.push(X9.stringify($.contents,q));if($.directives?.docEnd)if($.comment){let Y=G($.comment);if(Y.includes(`
|
|
82
|
-
`))X.push("..."),X.push(
|
|
81
|
+
${G.comment}`:z.comment}z=q}$.items[X]=$2.isPair(z)?z:new d4.Pair(z)}else Z("Expected a sequence for this tag");return $}function N6($,Z,X){let{replacer:z}=X,q=new hq.YAMLSeq($);q.tag="tag:yaml.org,2002:pairs";let G=0;if(Z&&Symbol.iterator in Object(Z))for(let J of Z){if(typeof z==="function")J=z.call(Z,String(G++),J);let Q,Y;if(Array.isArray(J))if(J.length===2)Q=J[0],Y=J[1];else throw TypeError(`Expected [key, value] tuple: ${J}`);else if(J&&J instanceof Object){let U=Object.keys(J);if(U.length===1)Q=U[0],Y=J[Q];else throw TypeError(`Expected tuple with one key, not ${U.length} keys`)}else Q=J;q.items.push(d4.createPair(Q,Y,X))}return q}var gq={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:j6,createNode:N6};vq.createPairs=N6;vq.pairs=gq;vq.resolvePairs=j6});var l4=M((cq)=>{var S6=C(),p4=w0(),i$=j0(),pq=N0(),C6=Z2();class m0 extends pq.YAMLSeq{constructor(){super();this.add=i$.YAMLMap.prototype.add.bind(this),this.delete=i$.YAMLMap.prototype.delete.bind(this),this.get=i$.YAMLMap.prototype.get.bind(this),this.has=i$.YAMLMap.prototype.has.bind(this),this.set=i$.YAMLMap.prototype.set.bind(this),this.tag=m0.tag}toJSON($,Z){if(!Z)return super.toJSON($);let X=new Map;if(Z?.onCreate)Z.onCreate(X);for(let z of this.items){let q,G;if(S6.isPair(z))q=p4.toJS(z.key,"",Z),G=p4.toJS(z.value,q,Z);else q=p4.toJS(z,"",Z);if(X.has(q))throw Error("Ordered maps must not include duplicate keys");X.set(q,G)}return X}static from($,Z,X){let z=C6.createPairs($,Z,X),q=new this;return q.items=z.items,q}}m0.tag="tag:yaml.org,2002:omap";var lq={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:m0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=C6.resolvePairs($,Z),z=[];for(let{key:q}of X.items)if(S6.isScalar(q))if(z.includes(q.value))Z(`Ordered maps must not include duplicate keys: ${q.value}`);else z.push(q.value);return Object.assign(new m0,X)},createNode:($,Z,X)=>m0.from($,Z,X)};cq.YAMLOMap=m0;cq.omap=lq});var k6=M((nq)=>{var E6=g();function b6({value:$,source:Z},X){if(Z&&($?x6:y6).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var x6={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new E6.Scalar(!0),stringify:b6},y6={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new E6.Scalar(!1),stringify:b6};nq.falseTag=y6;nq.trueTag=x6});var f6=M((ZG)=>{var oq=g(),c4=J$(),tq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:c4.stringifyNumber},eq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($.replace(/_/g,"")),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():c4.stringifyNumber($)}},$G={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new oq.Scalar(parseFloat($.replace(/_/g,""))),X=$.indexOf(".");if(X!==-1){let z=$.substring(X+1).replace(/_/g,"");if(z[z.length-1]==="0")Z.minFractionDigits=z.length}return Z},stringify:c4.stringifyNumber};ZG.float=$G;ZG.floatExp=eq;ZG.floatNaN=tq});var g6=M((UG)=>{var h6=J$(),a$=($)=>typeof $==="bigint"||Number.isInteger($);function X2($,Z,X,{intAsBigInt:z}){let q=$[0];if(q==="-"||q==="+")Z+=1;if($=$.substring(Z).replace(/_/g,""),z){switch(X){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let J=BigInt($);return q==="-"?BigInt(-1)*J:J}let G=parseInt($,X);return q==="-"?-1*G:G}function i4($,Z,X){let{value:z}=$;if(a$(z)){let q=z.toString(Z);return z<0?"-"+X+q.substr(1):X+q}return h6.stringifyNumber($)}var GG={identify:a$,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>X2($,2,2,X),stringify:($)=>i4($,2,"0b")},JG={identify:a$,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>X2($,1,8,X),stringify:($)=>i4($,8,"0")},QG={identify:a$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>X2($,0,10,X),stringify:h6.stringifyNumber},YG={identify:a$,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>X2($,2,16,X),stringify:($)=>i4($,16,"0x")};UG.int=QG;UG.intBin=GG;UG.intHex=YG;UG.intOct=JG});var a4=M((TG)=>{var G2=C(),z2=R0(),q2=j0();class d0 extends q2.YAMLMap{constructor($){super($);this.tag=d0.tag}add($){let Z;if(G2.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new z2.Pair($.key,null);else Z=new z2.Pair($,null);if(!q2.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=q2.findPair(this.items,$);return!Z&&G2.isPair(X)?G2.isScalar(X.key)?X.key.value:X.key:X}set($,Z){if(typeof Z!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Z}`);let X=q2.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new z2.Pair($))}toJSON($,Z){return super.toJSON($,Z,Set)}toString($,Z,X){if(!$)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},$,{allNullValues:!0}),Z,X);else throw Error("Set items must all have null values")}static from($,Z,X){let{replacer:z}=X,q=new this($);if(Z&&Symbol.iterator in Object(Z))for(let G of Z){if(typeof z==="function")G=z.call(Z,G,G);q.items.push(z2.createPair(G,null,X))}return q}}d0.tag="tag:yaml.org,2002:set";var BG={collection:"map",identify:($)=>$ instanceof Set,nodeClass:d0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>d0.from($,Z,X),resolve($,Z){if(G2.isMap($))if($.hasAllNullValues(!0))return Object.assign(new d0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};TG.YAMLSet=d0;TG.set=BG});var s4=M((OG)=>{var _G=J$();function n4($,Z){let X=$[0],z=X==="-"||X==="+"?$.substring(1):$,q=(J)=>Z?BigInt(J):Number(J),G=z.replace(/_/g,"").split(":").reduce((J,Q)=>J*q(60)+q(Q),q(0));return X==="-"?q(-1)*G:G}function v6($){let{value:Z}=$,X=(J)=>J;if(typeof Z==="bigint")X=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return _G.stringifyNumber($);let z="";if(Z<0)z="-",Z*=X(-1);let q=X(60),G=[Z%q];if(Z<60)G.unshift(0);else if(Z=(Z-G[0])/q,G.unshift(Z%q),Z>=60)Z=(Z-G[0])/q,G.unshift(Z);return z+G.map((J)=>String(J).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var MG={identify:($)=>typeof $==="bigint"||Number.isInteger($),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:($,Z,{intAsBigInt:X})=>n4($,X),stringify:v6},FG={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:($)=>n4($,!1),stringify:v6},u6={identify:($)=>$ 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($){let Z=$.match(u6.test);if(!Z)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,X,z,q,G,J,Q]=Z.map(Number),Y=Z[7]?Number((Z[7]+"00").substr(1,3)):0,U=Date.UTC(X,z-1,q,G||0,J||0,Q||0,Y),W=Z[8];if(W&&W!=="Z"){let H=n4(W,!1);if(Math.abs(H)<30)H*=60;U-=60000*H}return new Date(U)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};OG.floatTime=FG;OG.intTime=MG;OG.timestamp=u6});var d6=M((kG)=>{var RG=q$(),AG=o1(),jG=G$(),NG=l$(),SG=m4(),m6=k6(),r4=f6(),J2=g6(),CG=p1(),EG=l4(),bG=Z2(),xG=a4(),o4=s4(),yG=[RG.map,jG.seq,NG.string,AG.nullTag,m6.trueTag,m6.falseTag,J2.intBin,J2.intOct,J2.int,J2.intHex,r4.floatNaN,r4.floatExp,r4.float,SG.binary,CG.merge,EG.omap,bG.pairs,xG.set,o4.intTime,o4.floatTime,o4.timestamp];kG.schema=yG});var t6=M((lG)=>{var i6=q$(),hG=o1(),a6=G$(),gG=l$(),vG=x4(),t4=k4(),e4=h4(),uG=I6(),mG=A6(),n6=m4(),n$=p1(),s6=l4(),r6=Z2(),p6=d6(),o6=a4(),Q2=s4(),l6=new Map([["core",uG.schema],["failsafe",[i6.map,a6.seq,gG.string]],["json",mG.schema],["yaml11",p6.schema],["yaml-1.1",p6.schema]]),c6={binary:n6.binary,bool:vG.boolTag,float:t4.float,floatExp:t4.floatExp,floatNaN:t4.floatNaN,floatTime:Q2.floatTime,int:e4.int,intHex:e4.intHex,intOct:e4.intOct,intTime:Q2.intTime,map:i6.map,merge:n$.merge,null:hG.nullTag,omap:s6.omap,pairs:r6.pairs,seq:a6.seq,set:o6.set,timestamp:Q2.timestamp},dG={"tag:yaml.org,2002:binary":n6.binary,"tag:yaml.org,2002:merge":n$.merge,"tag:yaml.org,2002:omap":s6.omap,"tag:yaml.org,2002:pairs":r6.pairs,"tag:yaml.org,2002:set":o6.set,"tag:yaml.org,2002:timestamp":Q2.timestamp};function pG($,Z,X){let z=l6.get(Z);if(z&&!$)return X&&!z.includes(n$.merge)?z.concat(n$.merge):z.slice();let q=z;if(!q)if(Array.isArray($))q=[];else{let G=Array.from(l6.keys()).filter((J)=>J!=="yaml11").map((J)=>JSON.stringify(J)).join(", ");throw Error(`Unknown schema "${Z}"; use one of ${G} or define customTags array`)}if(Array.isArray($))for(let G of $)q=q.concat(G);else if(typeof $==="function")q=$(q.slice());if(X)q=q.concat(n$.merge);return q.reduce((G,J)=>{let Q=typeof J==="string"?c6[J]:J;if(!Q){let Y=JSON.stringify(J),U=Object.keys(c6).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${Y}; use one of ${U}`)}if(!G.includes(Q))G.push(Q);return G},[])}lG.coreKnownTags=dG;lG.getTags=pG});var X9=M((oG)=>{var $9=C(),aG=q$(),nG=G$(),sG=l$(),Y2=t6(),rG=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class Z9{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:q,sortMapEntries:G,toStringDefaults:J}){this.compat=Array.isArray($)?Y2.getTags($,"compat"):$?Y2.getTags(null,$):null,this.name=typeof q==="string"&&q||"core",this.knownTags=z?Y2.coreKnownTags:{},this.tags=Y2.getTags(Z,this.name,X),this.toStringOptions=J??null,Object.defineProperty(this,$9.MAP,{value:aG.map}),Object.defineProperty(this,$9.SCALAR,{value:sG.string}),Object.defineProperty(this,$9.SEQ,{value:nG.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?rG:null}clone(){let $=Object.create(Z9.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}oG.Schema=Z9});var e6=M((ZJ)=>{var eG=C(),z9=u$(),s$=h$();function $J($,Z){let X=[],z=Z.directives===!0;if(Z.directives!==!1&&$.directives){let Y=$.directives.toString($);if(Y)X.push(Y),z=!0;else if($.directives.docStart)z=!0}if(z)X.push("---");let q=z9.createStringifyContext($,Z),{commentString:G}=q.options;if($.commentBefore){if(X.length!==1)X.unshift("");let Y=G($.commentBefore);X.unshift(s$.indentComment(Y,""))}let J=!1,Q=null;if($.contents){if(eG.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=G($.contents.commentBefore);X.push(s$.indentComment(W,""))}q.forceBlockIndent=!!$.comment,Q=$.contents.comment}let Y=Q?void 0:()=>J=!0,U=z9.stringify($.contents,q,()=>Q=null,Y);if(Q)U+=s$.lineComment(U,"",G(Q));if((U[0]==="|"||U[0]===">")&&X[X.length-1]==="---")X[X.length-1]=`--- ${U}`;else X.push(U)}else X.push(z9.stringify($.contents,q));if($.directives?.docEnd)if($.comment){let Y=G($.comment);if(Y.includes(`
|
|
82
|
+
`))X.push("..."),X.push(s$.indentComment(Y,""));else X.push(`... ${Y}`)}else X.push("...");else{let Y=$.comment;if(Y&&J)Y=Y.replace(/^\n+/,"");if(Y){if((!J||Q)&&X[X.length-1]!=="")X.push("");X.push(s$.indentComment(G(Y),""))}}return X.join(`
|
|
83
83
|
`)+`
|
|
84
|
-
`}
|
|
84
|
+
`}ZJ.stringifyDocument=$J});var r$=M((HJ)=>{var zJ=k$(),Q$=h1(),t=C(),qJ=R0(),GJ=w0(),JJ=X9(),QJ=e6(),q9=y1(),YJ=P4(),UJ=f$(),G9=w4();class J9{constructor($,Z,X){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,t.NODE_TYPE,{value:t.DOC});let z=null;if(typeof Z==="function"||Array.isArray(Z))z=Z;else if(X===void 0&&Z)X=Z,Z=void 0;let q=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},X);this.options=q;let{version:G}=q;if(X?._directives){if(this.directives=X._directives.atDocument(),this.directives.yaml.explicit)G=this.directives.yaml.version}else this.directives=new G9.Directives({version:G});this.setSchema(G,X),this.contents=$===void 0?null:this.createNode($,z,X)}clone(){let $=Object.create(J9.prototype,{[t.NODE_TYPE]:{value:t.DOC}});if($.commentBefore=this.commentBefore,$.comment=this.comment,$.errors=this.errors.slice(),$.warnings=this.warnings.slice(),$.options=Object.assign({},this.options),this.directives)$.directives=this.directives.clone();if($.schema=this.schema.clone(),$.contents=t.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(Y$(this.contents))this.contents.add($)}addIn($,Z){if(Y$(this.contents))this.contents.addIn($,Z)}createAlias($,Z){if(!$.anchor){let X=q9.anchorNames(this);$.anchor=!Z||X.has(Z)?q9.findNewAnchor(Z||"a",X):Z}return new zJ.Alias($.anchor)}createNode($,Z,X){let z=void 0;if(typeof Z==="function")$=Z.call({"":$},"",$),z=Z;else if(Array.isArray(Z)){let K=(D)=>typeof D==="number"||D instanceof String||D instanceof Number,T=Z.filter(K).map(String);if(T.length>0)Z=Z.concat(T);z=Z}else if(X===void 0&&Z)X=Z,Z=void 0;let{aliasDuplicateObjects:q,anchorPrefix:G,flow:J,keepUndefined:Q,onTagObj:Y,tag:U}=X??{},{onAnchor:W,setAnchors:H,sourceObjects:V}=q9.createNodeAnchors(this,G||"a"),B={aliasDuplicateObjects:q??!0,keepUndefined:Q??!1,onAnchor:W,onTagObj:Y,replacer:z,schema:this.schema,sourceObjects:V},L=UJ.createNode($,U,B);if(J&&t.isCollection(L))L.flow=!0;return H(),L}createPair($,Z,X={}){let z=this.createNode($,null,X),q=this.createNode(Z,null,X);return new qJ.Pair(z,q)}delete($){return Y$(this.contents)?this.contents.delete($):!1}deleteIn($){if(Q$.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return Y$(this.contents)?this.contents.deleteIn($):!1}get($,Z){return t.isCollection(this.contents)?this.contents.get($,Z):void 0}getIn($,Z){if(Q$.isEmptyPath($))return!Z&&t.isScalar(this.contents)?this.contents.value:this.contents;return t.isCollection(this.contents)?this.contents.getIn($,Z):void 0}has($){return t.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(Q$.isEmptyPath($))return this.contents!==void 0;return t.isCollection(this.contents)?this.contents.hasIn($):!1}set($,Z){if(this.contents==null)this.contents=Q$.collectionFromPath(this.schema,[$],Z);else if(Y$(this.contents))this.contents.set($,Z)}setIn($,Z){if(Q$.isEmptyPath($))this.contents=Z;else if(this.contents==null)this.contents=Q$.collectionFromPath(this.schema,Array.from($),Z);else if(Y$(this.contents))this.contents.setIn($,Z)}setSchema($,Z={}){if(typeof $==="number")$=String($);let X;switch($){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new G9.Directives({version:"1.1"});X={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=$;else this.directives=new G9.Directives({version:$});X={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;X=null;break;default:{let z=JSON.stringify($);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${z}`)}}if(Z.schema instanceof Object)this.schema=Z.schema;else if(X)this.schema=new JJ.Schema(Object.assign(X,Z));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:$,jsonArg:Z,mapAsMap:X,maxAliasCount:z,onAnchor:q,reviver:G}={}){let J={anchors:new Map,doc:this,keep:!$,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof z==="number"?z:100},Q=GJ.toJS(this.contents,Z??"",J);if(typeof q==="function")for(let{count:Y,res:U}of J.anchors.values())q(U,Y);return typeof G==="function"?YJ.applyReviver(G,{"":Q},"",Q):Q}toJSON($,Z){return this.toJS({json:!0,jsonArg:$,mapAsMap:!1,onAnchor:Z})}toString($={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in $&&(!Number.isInteger($.indent)||Number($.indent)<=0)){let Z=JSON.stringify($.indent);throw Error(`"indent" option must be a positive integer, not ${Z}`)}return QJ.stringifyDocument(this,$)}}function Y$($){if(t.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}HJ.Document=J9});var o$=M((KJ)=>{class U2 extends Error{constructor($,Z,X,z){super();this.name=$,this.code=X,this.message=z,this.pos=Z}}class $8 extends U2{constructor($,Z,X){super("YAMLParseError",$,Z,X)}}class Z8 extends U2{constructor($,Z,X){super("YAMLWarning",$,Z,X)}}var VJ=($,Z)=>(X)=>{if(X.pos[0]===-1)return;X.linePos=X.pos.map((Q)=>Z.linePos(Q));let{line:z,col:q}=X.linePos[0];X.message+=` at line ${z}, column ${q}`;let G=q-1,J=$.substring(Z.lineStarts[z-1],Z.lineStarts[z]).replace(/[\n\r]+$/,"");if(G>=60&&J.length>80){let Q=Math.min(G-39,J.length-79);J="\u2026"+J.substring(Q),G-=Q-1}if(J.length>80)J=J.substring(0,79)+"\u2026";if(z>1&&/^ *$/.test(J.substring(0,G))){let Q=$.substring(Z.lineStarts[z-2],Z.lineStarts[z-1]);if(Q.length>80)Q=Q.substring(0,79)+`\u2026
|
|
85
85
|
`;J=Q+J}if(/[^ ]/.test(J)){let Q=1,Y=X.linePos[1];if(Y?.line===z&&Y.col>q)Q=Math.max(1,Math.min(Y.col-q,80-G));let U=" ".repeat(G)+"^".repeat(Q);X.message+=`:
|
|
86
86
|
|
|
87
87
|
${J}
|
|
88
88
|
${U}
|
|
89
|
-
`}};
|
|
90
|
-
`))return!0;if($.end){for(let Z of $.end)if(Z.type==="newline")return!0}return!1;case"flow-collection":for(let Z of $.items){for(let X of Z.start)if(X.type==="newline")return!0;if(Z.sep){for(let X of Z.sep)if(X.type==="newline")return!0}if(
|
|
91
|
-
`+
|
|
92
|
-
`+
|
|
93
|
-
`+
|
|
94
|
-
`+S;else
|
|
95
|
-
`+E.comment;else
|
|
96
|
-
`+
|
|
97
|
-
`.repeat(Math.max(1,J.length-1)):"",
|
|
98
|
-
`;for(let
|
|
99
|
-
`;else if(
|
|
89
|
+
`}};KJ.YAMLError=U2;KJ.YAMLParseError=$8;KJ.YAMLWarning=Z8;KJ.prettifyError=VJ});var t$=M((MJ)=>{function _J($,{flow:Z,indicator:X,next:z,offset:q,onError:G,parentIndent:J,startOnNewline:Q}){let Y=!1,U=Q,W=Q,H="",V="",B=!1,L=!1,K=null,T=null,D=null,_=null,O=null,P=null,R=null;for(let F of $){if(L){if(F.type!=="space"&&F.type!=="newline"&&F.type!=="comma")G(F.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");L=!1}if(K){if(U&&F.type!=="comment"&&F.type!=="newline")G(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");K=null}switch(F.type){case"space":if(!Z&&(X!=="doc-start"||z?.type!=="flow-collection")&&F.source.includes("\t"))K=F;W=!0;break;case"comment":{if(!W)G(F,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let E=F.source.substring(1)||" ";if(!H)H=E;else H+=V+E;V="",U=!1;break}case"newline":if(U){if(H)H+=F.source;else if(!P||X!=="seq-item-ind")Y=!0}else V+=F.source;if(U=!0,B=!0,T||D)_=F;W=!0;break;case"anchor":if(T)G(F,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(F.source.endsWith(":"))G(F.offset+F.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);T=F,R??(R=F.offset),U=!1,W=!1,L=!0;break;case"tag":{if(D)G(F,"MULTIPLE_TAGS","A node can have at most one tag");D=F,R??(R=F.offset),U=!1,W=!1,L=!0;break}case X:if(T||D)G(F,"BAD_PROP_ORDER",`Anchors and tags must be after the ${F.source} indicator`);if(P)G(F,"UNEXPECTED_TOKEN",`Unexpected ${F.source} in ${Z??"collection"}`);P=F,U=X==="seq-item-ind"||X==="explicit-key-ind",W=!1;break;case"comma":if(Z){if(O)G(F,"UNEXPECTED_TOKEN",`Unexpected , in ${Z}`);O=F,U=!1,W=!1;break}default:G(F,"UNEXPECTED_TOKEN",`Unexpected ${F.type} token`),U=!1,W=!1}}let I=$[$.length-1],S=I?I.offset+I.source.length:q;if(L&&z&&z.type!=="space"&&z.type!=="newline"&&z.type!=="comma"&&(z.type!=="scalar"||z.source!==""))G(z.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(K&&(U&&K.indent<=J||z?.type==="block-map"||z?.type==="block-seq"))G(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:O,found:P,spaceBefore:Y,comment:H,hasNewline:B,anchor:T,tag:D,newlineAfterProp:_,end:S,start:R??S}}MJ.resolveProps=_J});var H2=M((OJ)=>{function Q9($){if(!$)return null;switch($.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if($.source.includes(`
|
|
90
|
+
`))return!0;if($.end){for(let Z of $.end)if(Z.type==="newline")return!0}return!1;case"flow-collection":for(let Z of $.items){for(let X of Z.start)if(X.type==="newline")return!0;if(Z.sep){for(let X of Z.sep)if(X.type==="newline")return!0}if(Q9(Z.key)||Q9(Z.value))return!0}return!1;default:return!0}}OJ.containsNewline=Q9});var Y9=M((RJ)=>{var PJ=H2();function IJ($,Z,X){if(Z?.type==="flow-collection"){let z=Z.end[0];if(z.indent===$&&(z.source==="]"||z.source==="}")&&PJ.containsNewline(Z))X(z,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}RJ.flowIndentCheck=IJ});var U9=M((NJ)=>{var X8=C();function jJ($,Z,X){let{uniqueKeys:z}=$.options;if(z===!1)return!1;let q=typeof z==="function"?z:(G,J)=>G===J||X8.isScalar(G)&&X8.isScalar(J)&&G.value===J.value;return Z.some((G)=>q(G.key,X))}NJ.mapIncludes=jJ});var Q8=M((yJ)=>{var z8=R0(),CJ=j0(),q8=t$(),EJ=H2(),G8=Y9(),bJ=U9(),J8="All mapping items must start at the same column";function xJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let Q=new(G?.nodeClass??CJ.YAMLMap)(X.schema);if(X.atRoot)X.atRoot=!1;let Y=z.offset,U=null;for(let W of z.items){let{start:H,key:V,sep:B,value:L}=W,K=q8.resolveProps(H,{indicator:"explicit-key-ind",next:V??B?.[0],offset:Y,onError:q,parentIndent:z.indent,startOnNewline:!0}),T=!K.found;if(T){if(V){if(V.type==="block-seq")q(Y,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in V&&V.indent!==z.indent)q(Y,"BAD_INDENT",J8)}if(!K.anchor&&!K.tag&&!B){if(U=K.end,K.comment)if(Q.comment)Q.comment+=`
|
|
91
|
+
`+K.comment;else Q.comment=K.comment;continue}if(K.newlineAfterProp||EJ.containsNewline(V))q(V??H[H.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(K.found?.indent!==z.indent)q(Y,"BAD_INDENT",J8);X.atKey=!0;let D=K.end,_=V?$(X,V,K,q):Z(X,D,H,null,K,q);if(X.schema.compat)G8.flowIndentCheck(z.indent,V,q);if(X.atKey=!1,bJ.mapIncludes(X,Q.items,_))q(D,"DUPLICATE_KEY","Map keys must be unique");let O=q8.resolveProps(B??[],{indicator:"map-value-ind",next:L,offset:_.range[2],onError:q,parentIndent:z.indent,startOnNewline:!V||V.type==="block-scalar"});if(Y=O.end,O.found){if(T){if(L?.type==="block-map"&&!O.hasNewline)q(Y,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(X.options.strict&&K.start<O.found.offset-1024)q(_.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let P=L?$(X,L,O,q):Z(X,Y,B,null,O,q);if(X.schema.compat)G8.flowIndentCheck(z.indent,L,q);Y=P.range[2];let R=new z8.Pair(_,P);if(X.options.keepSourceTokens)R.srcToken=W;Q.items.push(R)}else{if(T)q(_.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(O.comment)if(_.comment)_.comment+=`
|
|
92
|
+
`+O.comment;else _.comment=O.comment;let P=new z8.Pair(_);if(X.options.keepSourceTokens)P.srcToken=W;Q.items.push(P)}}if(U&&U<Y)q(U,"IMPOSSIBLE","Map comment with trailing content");return Q.range=[z.offset,Y,U??Y],Q}yJ.resolveBlockMap=xJ});var Y8=M((uJ)=>{var fJ=N0(),hJ=t$(),gJ=Y9();function vJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let Q=new(G?.nodeClass??fJ.YAMLSeq)(X.schema);if(X.atRoot)X.atRoot=!1;if(X.atKey)X.atKey=!1;let Y=z.offset,U=null;for(let{start:W,value:H}of z.items){let V=hJ.resolveProps(W,{indicator:"seq-item-ind",next:H,offset:Y,onError:q,parentIndent:z.indent,startOnNewline:!0});if(!V.found)if(V.anchor||V.tag||H)if(H?.type==="block-seq")q(V.end,"BAD_INDENT","All sequence items must start at the same column");else q(Y,"MISSING_CHAR","Sequence item without - indicator");else{if(U=V.end,V.comment)Q.comment=V.comment;continue}let B=H?$(X,H,V,q):Z(X,V.end,W,null,V,q);if(X.schema.compat)gJ.flowIndentCheck(z.indent,H,q);Y=B.range[2],Q.items.push(B)}return Q.range=[z.offset,Y,U??Y],Q}uJ.resolveBlockSeq=vJ});var U$=M((pJ)=>{function dJ($,Z,X,z){let q="";if($){let G=!1,J="";for(let Q of $){let{source:Y,type:U}=Q;switch(U){case"space":G=!0;break;case"comment":{if(X&&!G)z(Q,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let W=Y.substring(1)||" ";if(!q)q=W;else q+=J+W;J="";break}case"newline":if(q)J+=Y;G=!0;break;default:z(Q,"UNEXPECTED_TOKEN",`Unexpected ${U} at node end`)}Z+=Y.length}}return{comment:q,offset:Z}}pJ.resolveEnd=dJ});var W8=M((tJ)=>{var cJ=C(),iJ=R0(),U8=j0(),aJ=N0(),nJ=U$(),H8=t$(),sJ=H2(),rJ=U9(),H9="Block collections are not allowed within flow collections",W9=($)=>$&&($.type==="block-map"||$.type==="block-seq");function oJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let J=z.start.source==="{",Q=J?"flow map":"flow sequence",U=new(G?.nodeClass??(J?U8.YAMLMap:aJ.YAMLSeq))(X.schema);U.flow=!0;let W=X.atRoot;if(W)X.atRoot=!1;if(X.atKey)X.atKey=!1;let H=z.offset+z.start.source.length;for(let T=0;T<z.items.length;++T){let D=z.items[T],{start:_,key:O,sep:P,value:R}=D,I=H8.resolveProps(_,{flow:Q,indicator:"explicit-key-ind",next:O??P?.[0],offset:H,onError:q,parentIndent:z.indent,startOnNewline:!1});if(!I.found){if(!I.anchor&&!I.tag&&!P&&!R){if(T===0&&I.comma)q(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Q}`);else if(T<z.items.length-1)q(I.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${Q}`);if(I.comment)if(U.comment)U.comment+=`
|
|
93
|
+
`+I.comment;else U.comment=I.comment;H=I.end;continue}if(!J&&X.options.strict&&sJ.containsNewline(O))q(O,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(T===0){if(I.comma)q(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Q}`)}else{if(!I.comma)q(I.start,"MISSING_CHAR",`Missing , between ${Q} items`);if(I.comment){let S="";$:for(let F of _)switch(F.type){case"comma":case"space":break;case"comment":S=F.source.substring(1);break $;default:break $}if(S){let F=U.items[U.items.length-1];if(cJ.isPair(F))F=F.value??F.key;if(F.comment)F.comment+=`
|
|
94
|
+
`+S;else F.comment=S;I.comment=I.comment.substring(S.length+1)}}}if(!J&&!P&&!I.found){let S=R?$(X,R,I,q):Z(X,I.end,P,null,I,q);if(U.items.push(S),H=S.range[2],W9(R))q(S.range,"BLOCK_IN_FLOW",H9)}else{X.atKey=!0;let S=I.end,F=O?$(X,O,I,q):Z(X,S,_,null,I,q);if(W9(O))q(F.range,"BLOCK_IN_FLOW",H9);X.atKey=!1;let E=H8.resolveProps(P??[],{flow:Q,indicator:"map-value-ind",next:R,offset:F.range[2],onError:q,parentIndent:z.indent,startOnNewline:!1});if(E.found){if(!J&&!I.found&&X.options.strict){if(P)for(let y of P){if(y===E.found)break;if(y.type==="newline"){q(y,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(I.start<E.found.offset-1024)q(E.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(R)if("source"in R&&R.source?.[0]===":")q(R,"MISSING_CHAR",`Missing space after : in ${Q}`);else q(E.start,"MISSING_CHAR",`Missing , or : between ${Q} items`);let a=R?$(X,R,E,q):E.found?Z(X,E.end,P,null,E,q):null;if(a){if(W9(R))q(a.range,"BLOCK_IN_FLOW",H9)}else if(E.comment)if(F.comment)F.comment+=`
|
|
95
|
+
`+E.comment;else F.comment=E.comment;let c=new iJ.Pair(F,a);if(X.options.keepSourceTokens)c.srcToken=D;if(J){let y=U;if(rJ.mapIncludes(X,y.items,F))q(S,"DUPLICATE_KEY","Map keys must be unique");y.items.push(c)}else{let y=new U8.YAMLMap(X.schema);y.flow=!0,y.items.push(c);let H0=(a??F).range;y.range=[F.range[0],H0[1],H0[2]],U.items.push(y)}H=a?a.range[2]:E.end}}let V=J?"}":"]",[B,...L]=z.end,K=H;if(B?.source===V)K=B.offset+B.source.length;else{let T=Q[0].toUpperCase()+Q.substring(1),D=W?`${T} must end with a ${V}`:`${T} in block collection must be sufficiently indented and end with a ${V}`;if(q(H,W?"MISSING_CHAR":"BAD_INDENT",D),B&&B.source.length!==1)L.unshift(B)}if(L.length>0){let T=nJ.resolveEnd(L,K,X.options.strict,q);if(T.comment)if(U.comment)U.comment+=`
|
|
96
|
+
`+T.comment;else U.comment=T.comment;U.range=[z.offset,K,T.offset]}else U.range=[z.offset,K,K];return U}tJ.resolveFlowCollection=oJ});var V8=M((YQ)=>{var $Q=C(),ZQ=g(),XQ=j0(),zQ=N0(),qQ=Q8(),GQ=Y8(),JQ=W8();function V9($,Z,X,z,q,G){let J=X.type==="block-map"?qQ.resolveBlockMap($,Z,X,z,G):X.type==="block-seq"?GQ.resolveBlockSeq($,Z,X,z,G):JQ.resolveFlowCollection($,Z,X,z,G),Q=J.constructor;if(q==="!"||q===Q.tagName)return J.tag=Q.tagName,J;if(q)J.tag=q;return J}function QQ($,Z,X,z,q){let G=z.tag,J=!G?null:Z.directives.tagName(G.source,(V)=>q(G,"TAG_RESOLVE_FAILED",V));if(X.type==="block-seq"){let{anchor:V,newlineAfterProp:B}=z,L=V&&G?V.offset>G.offset?V:G:V??G;if(L&&(!B||B.offset<L.offset))q(L,"MISSING_CHAR","Missing newline after block sequence props")}let Q=X.type==="block-map"?"map":X.type==="block-seq"?"seq":X.start.source==="{"?"map":"seq";if(!G||!J||J==="!"||J===XQ.YAMLMap.tagName&&Q==="map"||J===zQ.YAMLSeq.tagName&&Q==="seq")return V9($,Z,X,q,J);let Y=Z.schema.tags.find((V)=>V.tag===J&&V.collection===Q);if(!Y){let V=Z.schema.knownTags[J];if(V?.collection===Q)Z.schema.tags.push(Object.assign({},V,{default:!1})),Y=V;else{if(V)q(G,"BAD_COLLECTION_TYPE",`${V.tag} used for ${Q} collection, but expects ${V.collection??"scalar"}`,!0);else q(G,"TAG_RESOLVE_FAILED",`Unresolved tag: ${J}`,!0);return V9($,Z,X,q,J)}}let U=V9($,Z,X,q,J,Y),W=Y.resolve?.(U,(V)=>q(G,"TAG_RESOLVE_FAILED",V),Z.options)??U,H=$Q.isNode(W)?W:new ZQ.Scalar(W);if(H.range=U.range,H.tag=J,Y?.format)H.format=Y.format;return H}YQ.composeCollection=QQ});var B9=M((KQ)=>{var K9=g();function HQ($,Z,X){let z=Z.offset,q=WQ(Z,$.options.strict,X);if(!q)return{value:"",type:null,comment:"",range:[z,z,z]};let G=q.mode===">"?K9.Scalar.BLOCK_FOLDED:K9.Scalar.BLOCK_LITERAL,J=Z.source?VQ(Z.source):[],Q=J.length;for(let K=J.length-1;K>=0;--K){let T=J[K][1];if(T===""||T==="\r")Q=K;else break}if(Q===0){let K=q.chomp==="+"&&J.length>0?`
|
|
97
|
+
`.repeat(Math.max(1,J.length-1)):"",T=z+q.length;if(Z.source)T+=Z.source.length;return{value:K,type:G,comment:q.comment,range:[z,T,T]}}let Y=Z.indent+q.indent,U=Z.offset+q.length,W=0;for(let K=0;K<Q;++K){let[T,D]=J[K];if(D===""||D==="\r"){if(q.indent===0&&T.length>Y)Y=T.length}else{if(T.length<Y)X(U+T.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(q.indent===0)Y=T.length;if(W=K,Y===0&&!$.atRoot)X(U,"BAD_INDENT","Block scalar values in collections must be indented");break}U+=T.length+D.length+1}for(let K=J.length-1;K>=Q;--K)if(J[K][0].length>Y)Q=K+1;let H="",V="",B=!1;for(let K=0;K<W;++K)H+=J[K][0].slice(Y)+`
|
|
98
|
+
`;for(let K=W;K<Q;++K){let[T,D]=J[K];U+=T.length+D.length+1;let _=D[D.length-1]==="\r";if(_)D=D.slice(0,-1);if(D&&T.length<Y){let P=`Block scalar lines must not be less indented than their ${q.indent?"explicit indentation indicator":"first line"}`;X(U-D.length-(_?2:1),"BAD_INDENT",P),T=""}if(G===K9.Scalar.BLOCK_LITERAL)H+=V+T.slice(Y)+D,V=`
|
|
99
|
+
`;else if(T.length>Y||D[0]==="\t"){if(V===" ")V=`
|
|
100
100
|
`;else if(!B&&V===`
|
|
101
101
|
`)V=`
|
|
102
102
|
|
|
103
|
-
`;H+=V+
|
|
103
|
+
`;H+=V+T.slice(Y)+D,V=`
|
|
104
104
|
`,B=!0}else if(D==="")if(V===`
|
|
105
105
|
`)H+=`
|
|
106
106
|
`;else V=`
|
|
107
|
-
`;else H+=V+D,V=" ",B=!1}switch(q.chomp){case"-":break;case"+":for(let
|
|
108
|
-
`+J[
|
|
107
|
+
`;else H+=V+D,V=" ",B=!1}switch(q.chomp){case"-":break;case"+":for(let K=Q;K<J.length;++K)H+=`
|
|
108
|
+
`+J[K][0].slice(Y);if(H[H.length-1]!==`
|
|
109
109
|
`)H+=`
|
|
110
110
|
`;break;default:H+=`
|
|
111
|
-
`}let L=z+q.length+Z.source.length;return{value:H,type:G,comment:q.comment,range:[z,L,L]}}function
|
|
111
|
+
`}let L=z+q.length+Z.source.length;return{value:H,type:G,comment:q.comment,range:[z,L,L]}}function WQ({offset:$,props:Z},X,z){if(Z[0].type!=="block-scalar-header")return z(Z[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:q}=Z[0],G=q[0],J=0,Q="",Y=-1;for(let V=1;V<q.length;++V){let B=q[V];if(!Q&&(B==="-"||B==="+"))Q=B;else{let L=Number(B);if(!J&&L)J=L;else if(Y===-1)Y=$+V}}if(Y!==-1)z(Y,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${q}`);let U=!1,W="",H=q.length;for(let V=1;V<Z.length;++V){let B=Z[V];switch(B.type){case"space":U=!0;case"newline":H+=B.source.length;break;case"comment":if(X&&!U)z(B,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");H+=B.source.length,W=B.source.substring(1);break;case"error":z(B,"UNEXPECTED_TOKEN",B.message),H+=B.source.length;break;default:{let L=`Unexpected token in block scalar header: ${B.type}`;z(B,"UNEXPECTED_TOKEN",L);let K=B.source;if(K&&typeof K==="string")H+=K.length}}}return{mode:G,indent:J,chomp:Q,comment:W,length:H}}function VQ($){let Z=$.split(/\n( *)/),X=Z[0],z=X.match(/^( *)/),G=[z?.[1]?[z[1],X.slice(z[1].length)]:["",X]];for(let J=1;J<Z.length;J+=2)G.push([Z[J],Z[J+1]]);return G}KQ.resolveBlockScalar=HQ});var L9=M((PQ)=>{var T9=g(),TQ=U$();function LQ($,Z,X){let{offset:z,type:q,source:G,end:J}=$,Q,Y,U=(V,B,L)=>X(z+V,B,L);switch(q){case"scalar":Q=T9.Scalar.PLAIN,Y=DQ(G,U);break;case"single-quoted-scalar":Q=T9.Scalar.QUOTE_SINGLE,Y=_Q(G,U);break;case"double-quoted-scalar":Q=T9.Scalar.QUOTE_DOUBLE,Y=MQ(G,U);break;default:return X($,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${q}`),{value:"",type:null,comment:"",range:[z,z+G.length,z+G.length]}}let W=z+G.length,H=TQ.resolveEnd(J,W,Z,X);return{value:Y,type:Q,comment:H.comment,range:[z,W,H.offset]}}function DQ($,Z){let X="";switch($[0]){case"\t":X="a tab character";break;case",":X="flow indicator character ,";break;case"%":X="directive indicator character %";break;case"|":case">":{X=`block scalar indicator ${$[0]}`;break}case"@":case"`":{X=`reserved character ${$[0]}`;break}}if(X)Z(0,"BAD_SCALAR_START",`Plain value cannot start with ${X}`);return K8($)}function _Q($,Z){if($[$.length-1]!=="'"||$.length===1)Z($.length,"MISSING_CHAR","Missing closing 'quote");return K8($.slice(1,-1)).replace(/''/g,"'")}function K8($){let Z,X;try{Z=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
112
112
|
`,"sy"),X=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
113
113
|
`,"sy")}catch{Z=/(.*?)[ \t]*\r?\n/sy,X=/[ \t]*(.*?)[ \t]*\r?\n/sy}let z=Z.exec($);if(!z)return $;let q=z[1],G=" ",J=Z.lastIndex;X.lastIndex=J;while(z=X.exec($)){if(z[1]==="")if(G===`
|
|
114
114
|
`)q+=G;else G=`
|
|
115
|
-
`;else q+=G+z[1],G=" ";J=X.lastIndex}let Q=/[ \t]*(.*)/sy;return Q.lastIndex=J,z=Q.exec($),q+G+(z?.[1]??"")}function
|
|
115
|
+
`;else q+=G+z[1],G=" ";J=X.lastIndex}let Q=/[ \t]*(.*)/sy;return Q.lastIndex=J,z=Q.exec($),q+G+(z?.[1]??"")}function MQ($,Z){let X="";for(let z=1;z<$.length-1;++z){let q=$[z];if(q==="\r"&&$[z+1]===`
|
|
116
116
|
`)continue;if(q===`
|
|
117
|
-
`){let{fold:G,offset:J}=
|
|
117
|
+
`){let{fold:G,offset:J}=FQ($,z);X+=G,z=J}else if(q==="\\"){let G=$[++z],J=OQ[G];if(J)X+=J;else if(G===`
|
|
118
118
|
`){G=$[z+1];while(G===" "||G==="\t")G=$[++z+1]}else if(G==="\r"&&$[z+1]===`
|
|
119
|
-
`){G=$[++z+1];while(G===" "||G==="\t")G=$[++z+1]}else if(G==="x"||G==="u"||G==="U"){let Q={x:2,u:4,U:8}[G];X+=
|
|
119
|
+
`){G=$[++z+1];while(G===" "||G==="\t")G=$[++z+1]}else if(G==="x"||G==="u"||G==="U"){let Q={x:2,u:4,U:8}[G];X+=wQ($,z+1,Q,Z),z+=Q}else{let Q=$.substr(z-1,2);Z(z-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${Q}`),X+=Q}}else if(q===" "||q==="\t"){let G=z,J=$[z+1];while(J===" "||J==="\t")J=$[++z+1];if(J!==`
|
|
120
120
|
`&&!(J==="\r"&&$[z+2]===`
|
|
121
|
-
`))X+=z>G?$.slice(G,z+1):q}else X+=q}if($[$.length-1]!=='"'||$.length===1)Z($.length,"MISSING_CHAR",'Missing closing "quote');return X}function
|
|
121
|
+
`))X+=z>G?$.slice(G,z+1):q}else X+=q}if($[$.length-1]!=='"'||$.length===1)Z($.length,"MISSING_CHAR",'Missing closing "quote');return X}function FQ($,Z){let X="",z=$[Z+1];while(z===" "||z==="\t"||z===`
|
|
122
122
|
`||z==="\r"){if(z==="\r"&&$[Z+2]!==`
|
|
123
123
|
`)break;if(z===`
|
|
124
124
|
`)X+=`
|
|
125
125
|
`;Z+=1,z=$[Z+1]}if(!X)X=" ";return{fold:X,offset:Z}}var OQ={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
126
|
-
`,r:"\r",t:"\t",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function
|
|
126
|
+
`,r:"\r",t:"\t",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function wQ($,Z,X,z){let q=$.substr(Z,X),J=q.length===X&&/^[0-9a-fA-F]+$/.test(q)?parseInt(q,16):NaN;if(isNaN(J)){let Q=$.substr(Z-2,X+2);return z(Z-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${Q}`),Q}return String.fromCodePoint(J)}PQ.resolveFlowScalar=LQ});var T8=M((CQ)=>{var p0=C(),B8=g(),RQ=B9(),AQ=L9();function jQ($,Z,X,z){let{value:q,type:G,comment:J,range:Q}=Z.type==="block-scalar"?RQ.resolveBlockScalar($,Z,z):AQ.resolveFlowScalar(Z,$.options.strict,z),Y=X?$.directives.tagName(X.source,(H)=>z(X,"TAG_RESOLVE_FAILED",H)):null,U;if($.options.stringKeys&&$.atKey)U=$.schema[p0.SCALAR];else if(Y)U=NQ($.schema,q,Y,X,z);else if(Z.type==="scalar")U=SQ($,q,Z,z);else U=$.schema[p0.SCALAR];let W;try{let H=U.resolve(q,(V)=>z(X??Z,"TAG_RESOLVE_FAILED",V),$.options);W=p0.isScalar(H)?H:new B8.Scalar(H)}catch(H){let V=H instanceof Error?H.message:String(H);z(X??Z,"TAG_RESOLVE_FAILED",V),W=new B8.Scalar(q)}if(W.range=Q,W.source=q,G)W.type=G;if(Y)W.tag=Y;if(U.format)W.format=U.format;if(J)W.comment=J;return W}function NQ($,Z,X,z,q){if(X==="!")return $[p0.SCALAR];let G=[];for(let Q of $.tags)if(!Q.collection&&Q.tag===X)if(Q.default&&Q.test)G.push(Q);else return Q;for(let Q of G)if(Q.test?.test(Z))return Q;let J=$.knownTags[X];if(J&&!J.collection)return $.tags.push(Object.assign({},J,{default:!1,test:void 0})),J;return q(z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${X}`,X!=="tag:yaml.org,2002:str"),$[p0.SCALAR]}function SQ({atKey:$,directives:Z,schema:X},z,q,G){let J=X.tags.find((Q)=>(Q.default===!0||$&&Q.default==="key")&&Q.test?.test(z))||X[p0.SCALAR];if(X.compat){let Q=X.compat.find((Y)=>Y.default&&Y.test?.test(z))??X[p0.SCALAR];if(J.tag!==Q.tag){let Y=Z.tagString(J.tag),U=Z.tagString(Q.tag),W=`Value may be parsed as either ${Y} or ${U}`;G(q,"TAG_RESOLVE_FAILED",W,!0)}}return J}CQ.composeScalar=jQ});var L8=M((xQ)=>{function bQ($,Z,X){if(Z){X??(X=Z.length);for(let z=X-1;z>=0;--z){let q=Z[z];switch(q.type){case"space":case"comment":case"newline":$-=q.source.length;continue}q=Z[++z];while(q?.type==="space")$+=q.source.length,q=Z[++z];break}}return $}xQ.emptyScalarPosition=bQ});var M8=M((dQ)=>{var kQ=k$(),fQ=C(),hQ=V8(),D8=T8(),gQ=U$(),vQ=L8(),uQ={composeNode:_8,composeEmptyNode:D9};function _8($,Z,X,z){let q=$.atKey,{spaceBefore:G,comment:J,anchor:Q,tag:Y}=X,U,W=!0;switch(Z.type){case"alias":if(U=mQ($,Z,z),Q||Y)z(Z,"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=D8.composeScalar($,Z,Y,z),Q)U.anchor=Q.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(U=hQ.composeCollection(uQ,$,Z,X,z),Q)U.anchor=Q.source.substring(1);break;default:{let H=Z.type==="error"?Z.message:`Unsupported token (type: ${Z.type})`;z(Z,"UNEXPECTED_TOKEN",H),U=D9($,Z.offset,void 0,null,X,z),W=!1}}if(Q&&U.anchor==="")z(Q,"BAD_ALIAS","Anchor cannot be an empty string");if(q&&$.options.stringKeys&&(!fQ.isScalar(U)||typeof U.value!=="string"||U.tag&&U.tag!=="tag:yaml.org,2002:str"))z(Y??Z,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(G)U.spaceBefore=!0;if(J)if(Z.type==="scalar"&&Z.source==="")U.comment=J;else U.commentBefore=J;if($.options.keepSourceTokens&&W)U.srcToken=Z;return U}function D9($,Z,X,z,{spaceBefore:q,comment:G,anchor:J,tag:Q,end:Y},U){let W={type:"scalar",offset:vQ.emptyScalarPosition(Z,X,z),indent:-1,source:""},H=D8.composeScalar($,W,Q,U);if(J){if(H.anchor=J.source.substring(1),H.anchor==="")U(J,"BAD_ALIAS","Anchor cannot be an empty string")}if(q)H.spaceBefore=!0;if(G)H.comment=G,H.range[2]=Y;return H}function mQ({options:$},{offset:Z,source:X,end:z},q){let G=new kQ.Alias(X.substring(1));if(G.source==="")q(Z,"BAD_ALIAS","Alias cannot be an empty string");if(G.source.endsWith(":"))q(Z+X.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let J=Z+X.length,Q=gQ.resolveEnd(z,J,$.strict,q);if(G.range=[Z,J,Q.offset],Q.comment)G.comment=Q.comment;return G}dQ.composeEmptyNode=D9;dQ.composeNode=_8});var O8=M((sQ)=>{var cQ=r$(),F8=M8(),iQ=U$(),aQ=t$();function nQ($,Z,{offset:X,start:z,value:q,end:G},J){let Q=Object.assign({_directives:Z},$),Y=new cQ.Document(void 0,Q),U={atKey:!1,atRoot:!0,directives:Y.directives,options:Y.options,schema:Y.schema},W=aQ.resolveProps(z,{indicator:"doc-start",next:q??G?.[0],offset:X,onError:J,parentIndent:0,startOnNewline:!0});if(W.found){if(Y.directives.docStart=!0,q&&(q.type==="block-map"||q.type==="block-seq")&&!W.hasNewline)J(W.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}Y.contents=q?F8.composeNode(U,q,W,J):F8.composeEmptyNode(U,W.end,z,null,W,J);let H=Y.contents.range[2],V=iQ.resolveEnd(G,H,!1,J);if(V.comment)Y.comment=V.comment;return Y.range=[X,H,V.offset],Y}sQ.composeDoc=nQ});var _9=M((XY)=>{var oQ=V0("process"),tQ=w4(),eQ=r$(),e$=o$(),w8=C(),$Y=O8(),ZY=U$();function $1($){if(typeof $==="number")return[$,$+1];if(Array.isArray($))return $.length===2?$:[$[0],$[1]];let{offset:Z,source:X}=$;return[Z,Z+(typeof X==="string"?X.length:1)]}function P8($){let Z="",X=!1,z=!1;for(let q=0;q<$.length;++q){let G=$[q];switch(G[0]){case"#":Z+=(Z===""?"":z?`
|
|
127
127
|
|
|
128
128
|
`:`
|
|
129
|
-
`)+(G.substring(1)||" "),X=!0,z=!1;break;case"%":if($[q+1]?.[0]!=="#")q+=1;X=!1;break;default:if(!X)z=!0;X=!1}}return{comment:Z,afterEmptyLine:z}}class
|
|
130
|
-
${X}`:X;else if(z||$.directives.docStart||!q)$.commentBefore=X;else if(
|
|
129
|
+
`)+(G.substring(1)||" "),X=!0,z=!1;break;case"%":if($[q+1]?.[0]!=="#")q+=1;X=!1;break;default:if(!X)z=!0;X=!1}}return{comment:Z,afterEmptyLine:z}}class I8{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(Z,X,z,q)=>{let G=$1(Z);if(q)this.warnings.push(new e$.YAMLWarning(G,X,z));else this.errors.push(new e$.YAMLParseError(G,X,z))},this.directives=new tQ.Directives({version:$.version||"1.2"}),this.options=$}decorate($,Z){let{comment:X,afterEmptyLine:z}=P8(this.prelude);if(X){let q=$.contents;if(Z)$.comment=$.comment?`${$.comment}
|
|
130
|
+
${X}`:X;else if(z||$.directives.docStart||!q)$.commentBefore=X;else if(w8.isCollection(q)&&!q.flow&&q.items.length>0){let G=q.items[0];if(w8.isPair(G))G=G.key;let J=G.commentBefore;G.commentBefore=J?`${X}
|
|
131
131
|
${J}`:X}else{let G=q.commentBefore;q.commentBefore=G?`${X}
|
|
132
|
-
${G}`:X}}if(Z)Array.prototype.push.apply($.errors,this.errors),Array.prototype.push.apply($.warnings,this.warnings);else $.errors=this.errors,$.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:
|
|
133
|
-
${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.push(new
|
|
132
|
+
${G}`:X}}if(Z)Array.prototype.push.apply($.errors,this.errors),Array.prototype.push.apply($.warnings,this.warnings);else $.errors=this.errors,$.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:P8(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose($,Z=!1,X=-1){for(let z of $)yield*this.next(z);yield*this.end(Z,X)}*next($){if(oQ.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(Z,X,z)=>{let q=$1($);q[0]+=Z,this.onError(q,"BAD_DIRECTIVE",X,z)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let Z=$Y.composeDoc(this.options,this.directives,$,this.onError);if(this.atDirectives&&!Z.directives.docStart)this.onError($,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(Z,!1),this.doc)yield this.doc;this.doc=Z,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push($.source);break;case"error":{let Z=$.source?`${$.message}: ${JSON.stringify($.source)}`:$.message,X=new e$.YAMLParseError($1($),"UNEXPECTED_TOKEN",Z);if(this.atDirectives||!this.doc)this.errors.push(X);else this.doc.errors.push(X);break}case"doc-end":{if(!this.doc){this.errors.push(new e$.YAMLParseError($1($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let Z=ZY.resolveEnd($.end,$.offset+$.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),Z.comment){let X=this.doc.comment;this.doc.comment=X?`${X}
|
|
133
|
+
${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.push(new e$.YAMLParseError($1($),"UNEXPECTED_TOKEN",`Unsupported token ${$.type}`))}}*end($=!1,Z=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if($){let X=Object.assign({_directives:this.directives},this.options),z=new eQ.Document(void 0,X);if(this.atDirectives)this.onError(Z,"MISSING_CHAR","Missing directives-end indicator line");z.range=[0,Z,Z],this.decorate(z,!1),yield z}}}XY.Composer=I8});var j8=M((WY)=>{var qY=B9(),GY=L9(),JY=o$(),R8=v$();function QY($,Z=!0,X){if($){let z=(q,G,J)=>{let Q=typeof q==="number"?q:Array.isArray(q)?q[0]:q.offset;if(X)X(Q,G,J);else throw new JY.YAMLParseError([Q,Q+1],G,J)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return GY.resolveFlowScalar($,Z,z);case"block-scalar":return qY.resolveBlockScalar({options:{strict:Z}},$,z)}}return null}function YY($,Z){let{implicitKey:X=!1,indent:z,inFlow:q=!1,offset:G=-1,type:J="PLAIN"}=Z,Q=R8.stringifyString({type:J,value:$},{implicitKey:X,indent:z>0?" ".repeat(z):"",inFlow:q,options:{blockQuote:!0,lineWidth:-1}}),Y=Z.end??[{type:"newline",offset:-1,indent:z,source:`
|
|
134
134
|
`}];switch(Q[0]){case"|":case">":{let U=Q.indexOf(`
|
|
135
135
|
`),W=Q.substring(0,U),H=Q.substring(U+1)+`
|
|
136
|
-
`,V=[{type:"block-scalar-header",offset:G,indent:z,source:W}];if(!
|
|
137
|
-
`});return{type:"block-scalar",offset:G,indent:z,props:V,source:H}}case'"':return{type:"double-quoted-scalar",offset:G,indent:z,source:Q,end:Y};case"'":return{type:"single-quoted-scalar",offset:G,indent:z,source:Q,end:Y};default:return{type:"scalar",offset:G,indent:z,source:Q,end:Y}}}function
|
|
136
|
+
`,V=[{type:"block-scalar-header",offset:G,indent:z,source:W}];if(!A8(V,Y))V.push({type:"newline",offset:-1,indent:z,source:`
|
|
137
|
+
`});return{type:"block-scalar",offset:G,indent:z,props:V,source:H}}case'"':return{type:"double-quoted-scalar",offset:G,indent:z,source:Q,end:Y};case"'":return{type:"single-quoted-scalar",offset:G,indent:z,source:Q,end:Y};default:return{type:"scalar",offset:G,indent:z,source:Q,end:Y}}}function UY($,Z,X={}){let{afterKey:z=!1,implicitKey:q=!1,inFlow:G=!1,type:J}=X,Q="indent"in $?$.indent:null;if(z&&typeof Q==="number")Q+=2;if(!J)switch($.type){case"single-quoted-scalar":J="QUOTE_SINGLE";break;case"double-quoted-scalar":J="QUOTE_DOUBLE";break;case"block-scalar":{let U=$.props[0];if(U.type!=="block-scalar-header")throw Error("Invalid block scalar header");J=U.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:J="PLAIN"}let Y=R8.stringifyString({type:J,value:Z},{implicitKey:q||Q===null,indent:Q!==null&&Q>0?" ".repeat(Q):"",inFlow:G,options:{blockQuote:!0,lineWidth:-1}});switch(Y[0]){case"|":case">":HY($,Y);break;case'"':M9($,Y,"double-quoted-scalar");break;case"'":M9($,Y,"single-quoted-scalar");break;default:M9($,Y,"scalar")}}function HY($,Z){let X=Z.indexOf(`
|
|
138
138
|
`),z=Z.substring(0,X),q=Z.substring(X+1)+`
|
|
139
|
-
`;if($.type==="block-scalar"){let G=$.props[0];if(G.type!=="block-scalar-header")throw Error("Invalid block scalar header");G.source=z,$.source=q}else{let{offset:G}=$,J="indent"in $?$.indent:-1,Q=[{type:"block-scalar-header",offset:G,indent:J,source:z}];if(!
|
|
140
|
-
`});for(let Y of Object.keys($))if(Y!=="type"&&Y!=="offset")delete $[Y];Object.assign($,{type:"block-scalar",indent:J,props:Q,source:q})}}function
|
|
141
|
-
`};delete $.items,Object.assign($,{type:X,source:Z,end:[q]});break}default:{let z="indent"in $?$.indent:-1,q="end"in $&&Array.isArray($.end)?$.end.filter((G)=>G.type==="space"||G.type==="comment"||G.type==="newline"):[];for(let G of Object.keys($))if(G!=="type"&&G!=="offset")delete $[G];Object.assign($,{type:X,indent:z,source:Z,end:q})}}}
|
|
139
|
+
`;if($.type==="block-scalar"){let G=$.props[0];if(G.type!=="block-scalar-header")throw Error("Invalid block scalar header");G.source=z,$.source=q}else{let{offset:G}=$,J="indent"in $?$.indent:-1,Q=[{type:"block-scalar-header",offset:G,indent:J,source:z}];if(!A8(Q,"end"in $?$.end:void 0))Q.push({type:"newline",offset:-1,indent:J,source:`
|
|
140
|
+
`});for(let Y of Object.keys($))if(Y!=="type"&&Y!=="offset")delete $[Y];Object.assign($,{type:"block-scalar",indent:J,props:Q,source:q})}}function A8($,Z){if(Z)for(let X of Z)switch(X.type){case"space":case"comment":$.push(X);break;case"newline":return $.push(X),!0}return!1}function M9($,Z,X){switch($.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":$.type=X,$.source=Z;break;case"block-scalar":{let z=$.props.slice(1),q=Z.length;if($.props[0].type==="block-scalar-header")q-=$.props[0].source.length;for(let G of z)G.offset+=q;delete $.props,Object.assign($,{type:X,source:Z,end:z});break}case"block-map":case"block-seq":{let q={type:"newline",offset:$.offset+Z.length,indent:$.indent,source:`
|
|
141
|
+
`};delete $.items,Object.assign($,{type:X,source:Z,end:[q]});break}default:{let z="indent"in $?$.indent:-1,q="end"in $&&Array.isArray($.end)?$.end.filter((G)=>G.type==="space"||G.type==="comment"||G.type==="newline"):[];for(let G of Object.keys($))if(G!=="type"&&G!=="offset")delete $[G];Object.assign($,{type:X,indent:z,source:Z,end:q})}}}WY.createScalarToken=YY;WY.resolveAsScalar=QY;WY.setScalarValue=UY});var N8=M((LY)=>{var TY=($)=>("type"in $)?V2($):W2($);function V2($){switch($.type){case"block-scalar":{let Z="";for(let X of $.props)Z+=V2(X);return Z+$.source}case"block-map":case"block-seq":{let Z="";for(let X of $.items)Z+=W2(X);return Z}case"flow-collection":{let Z=$.start.source;for(let X of $.items)Z+=W2(X);for(let X of $.end)Z+=X.source;return Z}case"document":{let Z=W2($);if($.end)for(let X of $.end)Z+=X.source;return Z}default:{let Z=$.source;if("end"in $&&$.end)for(let X of $.end)Z+=X.source;return Z}}}function W2({start:$,key:Z,sep:X,value:z}){let q="";for(let G of $)q+=G.source;if(Z)q+=V2(Z);if(X)for(let G of X)q+=G.source;if(z)q+=V2(z);return q}LY.stringify=TY});var E8=M((MY)=>{var F9=Symbol("break visit"),_Y=Symbol("skip children"),S8=Symbol("remove item");function l0($,Z){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};C8(Object.freeze([]),$,Z)}l0.BREAK=F9;l0.SKIP=_Y;l0.REMOVE=S8;l0.itemAtPath=($,Z)=>{let X=$;for(let[z,q]of Z){let G=X?.[z];if(G&&"items"in G)X=G.items[q];else return}return X};l0.parentCollection=($,Z)=>{let X=l0.itemAtPath($,Z.slice(0,-1)),z=Z[Z.length-1][0],q=X?.[z];if(q&&"items"in q)return q;throw Error("Parent collection not found")};function C8($,Z,X){let z=X(Z,$);if(typeof z==="symbol")return z;for(let q of["key","value"]){let G=Z[q];if(G&&"items"in G){for(let J=0;J<G.items.length;++J){let Q=C8(Object.freeze($.concat([[q,J]])),G.items[J],X);if(typeof Q==="number")J=Q-1;else if(Q===F9)return F9;else if(Q===S8)G.items.splice(J,1),J-=1}if(typeof z==="function"&&q==="key")z=z(Z,$)}}return typeof z==="function"?z(Z,$):z}MY.visit=l0});var K2=M((jY)=>{var O9=j8(),OY=N8(),wY=E8(),w9="\uFEFF",P9="\x02",I9="\x18",R9="\x1F",PY=($)=>!!$&&("items"in $),IY=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function RY($){switch($){case w9:return"<BOM>";case P9:return"<DOC>";case I9:return"<FLOW_END>";case R9:return"<SCALAR>";default:return JSON.stringify($)}}function AY($){switch($){case w9:return"byte-order-mark";case P9:return"doc-mode";case I9:return"flow-error-end";case R9:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
142
142
|
`:case`\r
|
|
143
|
-
`: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($[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}
|
|
144
|
-
`:case"\r":case"\t":return!0;default:return!1}}var
|
|
145
|
-
\r `),
|
|
143
|
+
`: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($[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}jY.createScalarToken=O9.createScalarToken;jY.resolveAsScalar=O9.resolveAsScalar;jY.setScalarValue=O9.setScalarValue;jY.stringify=OY.stringify;jY.visit=wY.visit;jY.BOM=w9;jY.DOCUMENT=P9;jY.FLOW_END=I9;jY.SCALAR=R9;jY.isCollection=PY;jY.isScalar=IY;jY.prettyToken=RY;jY.tokenType=AY});var j9=M((pY)=>{var Z1=K2();function q0($){switch($){case void 0:case" ":case`
|
|
144
|
+
`:case"\r":case"\t":return!0;default:return!1}}var b8=new Set("0123456789ABCDEFabcdef"),mY=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),B2=new Set(",[]{}"),dY=new Set(` ,[]{}
|
|
145
|
+
\r `),A9=($)=>!$||dY.has($);class x8{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($,Z=!1){if($){if(typeof $!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+$:$,this.lineEndPos=null}this.atEnd=!Z;let X=this.next??"stream";while(X&&(Z||this.hasChars(1)))X=yield*this.parseNext(X)}atLineEnd(){let $=this.pos,Z=this.buffer[$];while(Z===" "||Z==="\t")Z=this.buffer[++$];if(!Z||Z==="#"||Z===`
|
|
146
146
|
`)return!0;if(Z==="\r")return this.buffer[$+1]===`
|
|
147
147
|
`;return!1}charAt($){return this.buffer[this.pos+$]}continueScalar($){let Z=this.buffer[$];if(this.indentNext>0){let X=0;while(Z===" ")Z=this.buffer[++X+$];if(Z==="\r"){let z=this.buffer[X+$+1];if(z===`
|
|
148
148
|
`||!z&&!this.atEnd)return $+X+1}return Z===`
|
|
149
|
-
`||X>=this.indentNext||!Z&&!this.atEnd?$+X:-1}if(Z==="-"||Z==="."){let X=this.buffer.substr($,3);if((X==="---"||X==="...")&&
|
|
150
|
-
`,this.pos),this.lineEndPos=$;if($===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[$-1]==="\r")$-=1;return this.buffer.substring(this.pos,$)}hasChars($){return this.pos+$<=this.buffer.length}setNext($){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=$,null}peek($){return this.buffer.substr(this.pos,$)}*parseNext($){switch($){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 $=this.getLine();if($===null)return this.setNext("stream");if($[0]===
|
|
149
|
+
`||X>=this.indentNext||!Z&&!this.atEnd?$+X:-1}if(Z==="-"||Z==="."){let X=this.buffer.substr($,3);if((X==="---"||X==="...")&&q0(this.buffer[$+3]))return-1}return $}getLine(){let $=this.lineEndPos;if(typeof $!=="number"||$!==-1&&$<this.pos)$=this.buffer.indexOf(`
|
|
150
|
+
`,this.pos),this.lineEndPos=$;if($===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[$-1]==="\r")$-=1;return this.buffer.substring(this.pos,$)}hasChars($){return this.pos+$<=this.buffer.length}setNext($){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=$,null}peek($){return this.buffer.substr(this.pos,$)}*parseNext($){switch($){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 $=this.getLine();if($===null)return this.setNext("stream");if($[0]===Z1.BOM)yield*this.pushCount(1),$=$.substring(1);if($[0]==="%"){let Z=$.length,X=$.indexOf("#");while(X!==-1){let q=$[X-1];if(q===" "||q==="\t"){Z=X-1;break}else X=$.indexOf("#",X+1)}while(!0){let q=$[Z-1];if(q===" "||q==="\t")Z-=1;else break}let z=(yield*this.pushCount(Z))+(yield*this.pushSpaces(!0));return yield*this.pushCount($.length-z),this.pushNewline(),"stream"}if(this.atLineEnd()){let Z=yield*this.pushSpaces(!0);return yield*this.pushCount($.length-Z),yield*this.pushNewline(),"stream"}return yield Z1.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let $=this.charAt(0);if(!$&&!this.atEnd)return this.setNext("line-start");if($==="-"||$==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let Z=this.peek(3);if((Z==="---"||Z==="...")&&q0(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,Z==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!q0(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[$,Z]=this.peek(2);if(!Z&&!this.atEnd)return this.setNext("block-start");if(($==="-"||$==="?"||$===":")&&q0(Z)){let X=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=X,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let $=this.getLine();if($===null)return this.setNext("doc");let Z=yield*this.pushIndicators();switch($[Z]){case"#":yield*this.pushCount($.length-Z);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(A9),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return Z+=yield*this.parseBlockScalarHeader(),Z+=yield*this.pushSpaces(!0),yield*this.pushCount($.length-Z),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let $,Z,X=-1;do{if($=yield*this.pushNewline(),$>0)Z=yield*this.pushSpaces(!1),this.indentValue=X=Z;else Z=0;Z+=yield*this.pushSpaces(!0)}while($+Z>0);let z=this.getLine();if(z===null)return this.setNext("flow");if(X!==-1&&X<this.indentNext&&z[0]!=="#"||X===0&&(z.startsWith("---")||z.startsWith("..."))&&q0(z[3])){if(!(X===this.indentNext-1&&this.flowLevel===1&&(z[0]==="]"||z[0]==="}")))return this.flowLevel=0,yield Z1.FLOW_END,yield*this.parseLineStart()}let q=0;while(z[q]===",")q+=yield*this.pushCount(1),q+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(q+=yield*this.pushIndicators(),z[q]){case void 0:return"flow";case"#":return yield*this.pushCount(z.length-q),"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(A9),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let G=this.charAt(1);if(this.flowKey||q0(G)||G===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let $=this.charAt(0),Z=this.buffer.indexOf($,this.pos+1);if($==="'")while(Z!==-1&&this.buffer[Z+1]==="'")Z=this.buffer.indexOf("'",Z+2);else while(Z!==-1){let q=0;while(this.buffer[Z-1-q]==="\\")q+=1;if(q%2===0)break;Z=this.buffer.indexOf('"',Z+1)}let X=this.buffer.substring(0,Z),z=X.indexOf(`
|
|
151
151
|
`,this.pos);if(z!==-1){while(z!==-1){let q=this.continueScalar(z+1);if(q===-1)break;z=X.indexOf(`
|
|
152
|
-
`,q)}if(z!==-1)Z=z-(X[z-1]==="\r"?2:1)}if(Z===-1){if(!this.atEnd)return this.setNext("quoted-scalar");Z=this.buffer.length}return yield*this.pushToIndex(Z+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let Z=this.buffer[++$];if(Z==="+")this.blockScalarKeep=!0;else if(Z>"0"&&Z<="9")this.blockScalarIndent=Number(Z)-1;else if(Z!=="-")break}return yield*this.pushUntil((Z)=>
|
|
152
|
+
`,q)}if(z!==-1)Z=z-(X[z-1]==="\r"?2:1)}if(Z===-1){if(!this.atEnd)return this.setNext("quoted-scalar");Z=this.buffer.length}return yield*this.pushToIndex(Z+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let Z=this.buffer[++$];if(Z==="+")this.blockScalarKeep=!0;else if(Z>"0"&&Z<="9")this.blockScalarIndent=Number(Z)-1;else if(Z!=="-")break}return yield*this.pushUntil((Z)=>q0(Z)||Z==="#")}*parseBlockScalar(){let $=this.pos-1,Z=0,X;$:for(let q=this.pos;X=this.buffer[q];++q)switch(X){case" ":Z+=1;break;case`
|
|
153
153
|
`:$=q,Z=0;break;case"\r":{let G=this.buffer[q+1];if(!G&&!this.atEnd)return this.setNext("block-scalar");if(G===`
|
|
154
154
|
`)break}default:break $}if(!X&&!this.atEnd)return this.setNext("block-scalar");if(Z>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=Z;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let q=this.continueScalar($+1);if(q===-1)break;$=this.buffer.indexOf(`
|
|
155
155
|
`,q)}while($!==-1);if($===-1){if(!this.atEnd)return this.setNext("block-scalar");$=this.buffer.length}}let z=$+1;X=this.buffer[z];while(X===" ")X=this.buffer[++z];if(X==="\t"){while(X==="\t"||X===" "||X==="\r"||X===`
|
|
156
156
|
`)X=this.buffer[++z];$=z-1}else if(!this.blockScalarKeep)do{let q=$-1,G=this.buffer[q];if(G==="\r")G=this.buffer[--q];let J=q;while(G===" ")G=this.buffer[--q];if(G===`
|
|
157
|
-
`&&q>=this.pos&&q+1+Z>J)$=q;else break}while(!0);return yield
|
|
157
|
+
`&&q>=this.pos&&q+1+Z>J)$=q;else break}while(!0);return yield Z1.SCALAR,yield*this.pushToIndex($+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let $=this.flowLevel>0,Z=this.pos-1,X=this.pos-1,z;while(z=this.buffer[++X])if(z===":"){let q=this.buffer[X+1];if(q0(q)||$&&B2.has(q))break;Z=X}else if(q0(z)){let q=this.buffer[X+1];if(z==="\r")if(q===`
|
|
158
158
|
`)X+=1,z=`
|
|
159
|
-
`,q=this.buffer[X+1];else Z=X;if(q==="#"||$&&
|
|
160
|
-
`){let G=this.continueScalar(X+1);if(G===-1)break;X=Math.max(X,G-2)}}else{if($&&
|
|
159
|
+
`,q=this.buffer[X+1];else Z=X;if(q==="#"||$&&B2.has(q))break;if(z===`
|
|
160
|
+
`){let G=this.continueScalar(X+1);if(G===-1)break;X=Math.max(X,G-2)}}else{if($&&B2.has(z))break;Z=X}if(!z&&!this.atEnd)return this.setNext("plain-scalar");return yield Z1.SCALAR,yield*this.pushToIndex(Z+1,!0),$?"flow":"doc"}*pushCount($){if($>0)return yield this.buffer.substr(this.pos,$),this.pos+=$,$;return 0}*pushToIndex($,Z){let X=this.buffer.slice(this.pos,$);if(X)return yield X,this.pos+=X.length,X.length;else if(Z)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(A9))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,Z=this.charAt(1);if(q0(Z)||$&&B2.has(Z)){if(!$)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let $=this.pos+2,Z=this.buffer[$];while(!q0(Z)&&Z!==">")Z=this.buffer[++$];return yield*this.pushToIndex(Z===">"?$+1:$,!1)}else{let $=this.pos+1,Z=this.buffer[$];while(Z)if(mY.has(Z))Z=this.buffer[++$];else if(Z==="%"&&b8.has(this.buffer[$+1])&&b8.has(this.buffer[$+2]))Z=this.buffer[$+=3];else break;return yield*this.pushToIndex($,!1)}}*pushNewline(){let $=this.buffer[this.pos];if($===`
|
|
161
161
|
`)return yield*this.pushCount(1);else if($==="\r"&&this.charAt(1)===`
|
|
162
|
-
`)return yield*this.pushCount(2);else return 0}*pushSpaces($){let Z=this.pos-1,X;do X=this.buffer[++Z];while(X===" "||$&&X==="\t");let z=Z-this.pos;if(z>0)yield this.buffer.substr(this.pos,z),this.pos=Z;return z}*pushUntil($){let Z=this.pos,X=this.buffer[Z];while(!$(X))X=this.buffer[++Z];return yield*this.pushToIndex(Z,!1)}}
|
|
162
|
+
`)return yield*this.pushCount(2);else return 0}*pushSpaces($){let Z=this.pos-1,X;do X=this.buffer[++Z];while(X===" "||$&&X==="\t");let z=Z-this.pos;if(z>0)yield this.buffer.substr(this.pos,z),this.pos=Z;return z}*pushUntil($){let Z=this.pos,X=this.buffer[Z];while(!$(X))X=this.buffer[++Z];return yield*this.pushToIndex(Z,!1)}}pY.Lexer=x8});var N9=M((cY)=>{class y8{constructor(){this.lineStarts=[],this.addNewLine=($)=>this.lineStarts.push($),this.linePos=($)=>{let Z=0,X=this.lineStarts.length;while(Z<X){let q=Z+X>>1;if(this.lineStarts[q]<$)Z=q+1;else X=q}if(this.lineStarts[Z]===$)return{line:Z+1,col:1};if(Z===0)return{line:0,col:$};let z=this.lineStarts[Z-1];return{line:Z,col:$-z+1}}}}cY.LineCounter=y8});var S9=M((sY)=>{var aY=V0("process"),k8=K2(),nY=j9();function S0($,Z){for(let X=0;X<$.length;++X)if($[X].type===Z)return!0;return!1}function f8($){for(let Z=0;Z<$.length;++Z)switch($[Z].type){case"space":case"comment":case"newline":break;default:return Z}return-1}function g8($){switch($?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function T2($){switch($.type){case"document":return $.start;case"block-map":{let Z=$.items[$.items.length-1];return Z.sep??Z.start}case"block-seq":return $.items[$.items.length-1].start;default:return[]}}function H$($){if($.length===0)return[];let Z=$.length;$:while(--Z>=0)switch($[Z].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break $}while($[++Z]?.type==="space");return $.splice(Z,$.length)}function h8($){if($.start.type==="flow-seq-start"){for(let Z of $.items)if(Z.sep&&!Z.value&&!S0(Z.start,"explicit-key-ind")&&!S0(Z.sep,"map-value-ind")){if(Z.key)Z.value=Z.key;if(delete Z.key,g8(Z.value))if(Z.value.end)Array.prototype.push.apply(Z.value.end,Z.sep);else Z.value.end=Z.sep;else Array.prototype.push.apply(Z.start,Z.sep);delete Z.sep}}}class v8{constructor($){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new nY.Lexer,this.onNewLine=$}*parse($,Z=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let X of this.lexer.lex($,Z))yield*this.next(X);if(!Z)yield*this.end()}*next($){if(this.source=$,aY.env.LOG_TOKENS)console.log("|",k8.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let Z=k8.tokenType($);if(!Z){let X=`Not a YAML token: ${$}`;yield*this.pop({type:"error",offset:this.offset,message:X,source:$}),this.offset+=$.length}else if(Z==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=Z,yield*this.step(),Z){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+$.length);break;case"space":if(this.atNewLine&&$[0]===" ")this.indent+=$.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=$.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=$.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 $=this.peek(1);if(this.type==="doc-end"&&$?.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(!$)return yield*this.stream();switch($.type){case"document":return yield*this.document($);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar($);case"block-scalar":return yield*this.blockScalar($);case"block-map":return yield*this.blockMap($);case"block-seq":return yield*this.blockSequence($);case"flow-collection":return yield*this.flowCollection($);case"doc-end":return yield*this.documentEnd($)}yield*this.pop()}peek($){return this.stack[this.stack.length-$]}*pop($){let Z=$??this.stack.pop();if(!Z)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield Z;else{let X=this.peek(1);if(Z.type==="block-scalar")Z.indent="indent"in X?X.indent:0;else if(Z.type==="flow-collection"&&X.type==="document")Z.indent=0;if(Z.type==="flow-collection")h8(Z);switch(X.type){case"document":X.value=Z;break;case"block-scalar":X.props.push(Z);break;case"block-map":{let z=X.items[X.items.length-1];if(z.value){X.items.push({start:[],key:Z,sep:[]}),this.onKeyLine=!0;return}else if(z.sep)z.value=Z;else{Object.assign(z,{key:Z,sep:[]}),this.onKeyLine=!z.explicitKey;return}break}case"block-seq":{let z=X.items[X.items.length-1];if(z.value)X.items.push({start:[],value:Z});else z.value=Z;break}case"flow-collection":{let z=X.items[X.items.length-1];if(!z||z.value)X.items.push({start:[],key:Z,sep:[]});else if(z.sep)z.value=Z;else Object.assign(z,{key:Z,sep:[]});return}default:yield*this.pop(),yield*this.pop(Z)}if((X.type==="document"||X.type==="block-map"||X.type==="block-seq")&&(Z.type==="block-map"||Z.type==="block-seq")){let z=Z.items[Z.items.length-1];if(z&&!z.sep&&!z.value&&z.start.length>0&&f8(z.start)===-1&&(Z.indent===0||z.start.every((q)=>q.type!=="comment"||q.indent<Z.indent))){if(X.type==="document")X.end=z.start;else X.items.push({start:z.start});Z.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 $={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")$.start.push(this.sourceToken);this.stack.push($);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document($){if($.value)return yield*this.lineEnd($);switch(this.type){case"doc-start":{if(f8($.start)!==-1)yield*this.pop(),yield*this.step();else $.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":$.start.push(this.sourceToken);return}let Z=this.startBlockValue($);if(Z)this.stack.push(Z);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar($){if(this.type==="map-value-ind"){let Z=T2(this.peek(2)),X=H$(Z),z;if($.end)z=$.end,z.push(this.sourceToken),delete $.end;else z=[this.sourceToken];let q={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:X,key:$,sep:z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=q}else yield*this.lineEnd($)}*blockScalar($){switch(this.type){case"space":case"comment":case"newline":$.props.push(this.sourceToken);return;case"scalar":if($.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let Z=this.source.indexOf(`
|
|
163
163
|
`)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
|
|
164
|
-
`,Z)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,Z.value){let X="end"in Z.value?Z.value.end:void 0;if((Array.isArray(X)?X[X.length-1]:void 0)?.type==="comment")X?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else{if(this.atIndentedComment(Z.start,$.indent)){let z=$.items[$.items.length-2]?.value?.end;if(Array.isArray(z)){Array.prototype.push.apply(z,Z.start),z.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return}if(this.indent>=$.indent){let X=!this.onKeyLine&&this.indent===$.indent,z=X&&(Z.sep||Z.explicitKey)&&this.type!=="seq-item-ind",q=[];if(z&&Z.sep&&!Z.value){let G=[];for(let J=0;J<Z.sep.length;++J){let Q=Z.sep[J];switch(Q.type){case"newline":G.push(J);break;case"space":break;case"comment":if(Q.indent>$.indent)G.length=0;break;default:G.length=0}}if(G.length>=2)q=Z.sep.splice(G[1])}switch(this.type){case"anchor":case"tag":if(z||Z.value)q.push(this.sourceToken),$.items.push({start:q}),this.onKeyLine=!0;else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"explicit-key-ind":if(!Z.sep&&!Z.explicitKey)Z.start.push(this.sourceToken),Z.explicitKey=!0;else if(z||Z.value)q.push(this.sourceToken),$.items.push({start:q,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(Z.explicitKey)if(!Z.sep)if(S0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let G=
|
|
164
|
+
`,Z)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,Z.value){let X="end"in Z.value?Z.value.end:void 0;if((Array.isArray(X)?X[X.length-1]:void 0)?.type==="comment")X?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else{if(this.atIndentedComment(Z.start,$.indent)){let z=$.items[$.items.length-2]?.value?.end;if(Array.isArray(z)){Array.prototype.push.apply(z,Z.start),z.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return}if(this.indent>=$.indent){let X=!this.onKeyLine&&this.indent===$.indent,z=X&&(Z.sep||Z.explicitKey)&&this.type!=="seq-item-ind",q=[];if(z&&Z.sep&&!Z.value){let G=[];for(let J=0;J<Z.sep.length;++J){let Q=Z.sep[J];switch(Q.type){case"newline":G.push(J);break;case"space":break;case"comment":if(Q.indent>$.indent)G.length=0;break;default:G.length=0}}if(G.length>=2)q=Z.sep.splice(G[1])}switch(this.type){case"anchor":case"tag":if(z||Z.value)q.push(this.sourceToken),$.items.push({start:q}),this.onKeyLine=!0;else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"explicit-key-ind":if(!Z.sep&&!Z.explicitKey)Z.start.push(this.sourceToken),Z.explicitKey=!0;else if(z||Z.value)q.push(this.sourceToken),$.items.push({start:q,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(Z.explicitKey)if(!Z.sep)if(S0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let G=H$(Z.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:G,key:null,sep:[this.sourceToken]}]})}else if(Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(S0(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]});else if(g8(Z.key)&&!S0(Z.sep,"newline")){let G=H$(Z.start),J=Z.key,Q=Z.sep;Q.push(this.sourceToken),delete Z.key,delete Z.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:G,key:J,sep:Q}]})}else if(q.length>0)Z.sep=Z.sep.concat(q,this.sourceToken);else Z.sep.push(this.sourceToken);else if(!Z.sep)Object.assign(Z,{key:null,sep:[this.sourceToken]});else if(Z.value||z)$.items.push({start:q,key:null,sep:[this.sourceToken]});else if(S0(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else Z.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let G=this.flowScalar(this.type);if(z||Z.value)$.items.push({start:q,key:G,sep:[]}),this.onKeyLine=!0;else if(Z.sep)this.stack.push(G);else Object.assign(Z,{key:G,sep:[]}),this.onKeyLine=!0;return}default:{let G=this.startBlockValue($);if(G){if(G.type==="block-seq"){if(!Z.explicitKey&&Z.sep&&!S0(Z.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(X)$.items.push({start:q});this.stack.push(G);return}}}}yield*this.pop(),yield*this.step()}*blockSequence($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(Z.value){let X="end"in Z.value?Z.value.end:void 0;if((Array.isArray(X)?X[X.length-1]:void 0)?.type==="comment")X?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(Z.start,$.indent)){let z=$.items[$.items.length-2]?.value?.end;if(Array.isArray(z)){Array.prototype.push.apply(z,Z.start),z.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return;case"anchor":case"tag":if(Z.value||this.indent<=$.indent)break;Z.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==$.indent)break;if(Z.value||S0(Z.start,"seq-item-ind"))$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return}if(this.indent>$.indent){let X=this.startBlockValue($);if(X){this.stack.push(X);return}}yield*this.pop(),yield*this.step()}*flowCollection($){let Z=$.items[$.items.length-1];if(this.type==="flow-error-end"){let X;do yield*this.pop(),X=this.peek(1);while(X?.type==="flow-collection")}else if($.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!Z||Z.sep)$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return;case"map-value-ind":if(!Z||Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Object.assign(Z,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!Z||Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let z=this.flowScalar(this.type);if(!Z||Z.value)$.items.push({start:[],key:z,sep:[]});else if(Z.sep)this.stack.push(z);else Object.assign(Z,{key:z,sep:[]});return}case"flow-map-end":case"flow-seq-end":$.end.push(this.sourceToken);return}let X=this.startBlockValue($);if(X)this.stack.push(X);else yield*this.pop(),yield*this.step()}else{let X=this.peek(2);if(X.type==="block-map"&&(this.type==="map-value-ind"&&X.indent===$.indent||this.type==="newline"&&!X.items[X.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&X.type!=="flow-collection"){let z=T2(X),q=H$(z);h8($);let G=$.end.splice(1,$.end.length);G.push(this.sourceToken);let J={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:q,key:$,sep:G}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=J}else yield*this.lineEnd($)}}flowScalar($){if(this.onNewLine){let Z=this.source.indexOf(`
|
|
165
165
|
`)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
|
|
166
|
-
`,Z)+1}return{type:$,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue($){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 Z=T2($),X=U$(Z);return X.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:X,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let Z=T2($),X=U$(Z);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:X,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment($,Z){if(this.type!=="comment")return!1;if(this.indent<=Z)return!1;return $.every((X)=>X.type==="newline"||X.type==="space")}*documentEnd($){if(this.type!=="doc-mode"){if($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd($){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($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}aY.Parser=g8});var p8=O((XU)=>{var v8=D9(),sY=n$(),$1=s$(),rY=j4(),oY=C(),tY=j9(),u8=N9();function m8($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new tY.LineCounter||null,prettyErrors:Z}}function eY($,Z={}){let{lineCounter:X,prettyErrors:z}=m8(Z),q=new u8.Parser(X?.addNewLine),G=new v8.Composer(Z),J=Array.from(G.compose(q.parse($)));if(z&&X)for(let Q of J)Q.errors.forEach($1.prettifyError($,X)),Q.warnings.forEach($1.prettifyError($,X));if(J.length>0)return J;return Object.assign([],{empty:!0},G.streamInfo())}function d8($,Z={}){let{lineCounter:X,prettyErrors:z}=m8(Z),q=new u8.Parser(X?.addNewLine),G=new v8.Composer(Z),J=null;for(let Q of G.compose(q.parse($),!0,$.length))if(!J)J=Q;else if(J.options.logLevel!=="silent"){J.errors.push(new $1.YAMLParseError(Q.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&X)J.errors.forEach($1.prettifyError($,X)),J.warnings.forEach($1.prettifyError($,X));return J}function $U($,Z,X){let z=void 0;if(typeof Z==="function")z=Z;else if(X===void 0&&Z&&typeof Z==="object")X=Z;let q=d8($,X);if(!q)return null;if(q.warnings.forEach((G)=>rY.warn(q.options.logLevel,G)),q.errors.length>0)if(q.options.logLevel!=="silent")throw q.errors[0];else q.errors=[];return q.toJS(Object.assign({reviver:z},X))}function ZU($,Z,X){let z=null;if(typeof Z==="function"||Array.isArray(Z))z=Z;else if(X===void 0&&Z)X=Z;if(typeof X==="string")X=X.length;if(typeof X==="number"){let q=Math.round(X);X=q<1?void 0:q>8?{indent:8}:{indent:q}}if($===void 0){let{keepUndefined:q}=X??Z??{};if(!q)return}if(oY.isDocument($)&&!z)return $.toString(X);return new sY.Document($,z,X).toString(X)}XU.parse=$U;XU.parseAllDocuments=eY;XU.parseDocument=d8;XU.stringify=ZU});var c8=O((OU)=>{var QU=D9(),YU=n$(),UU=Z9(),S9=s$(),HU=y$(),C0=C(),WU=I0(),VU=h(),TU=j0(),BU=N0(),KU=W2(),LU=A9(),DU=j9(),_U=N9(),B2=p8(),l8=E$();OU.Composer=QU.Composer;OU.Document=YU.Document;OU.Schema=UU.Schema;OU.YAMLError=S9.YAMLError;OU.YAMLParseError=S9.YAMLParseError;OU.YAMLWarning=S9.YAMLWarning;OU.Alias=HU.Alias;OU.isAlias=C0.isAlias;OU.isCollection=C0.isCollection;OU.isDocument=C0.isDocument;OU.isMap=C0.isMap;OU.isNode=C0.isNode;OU.isPair=C0.isPair;OU.isScalar=C0.isScalar;OU.isSeq=C0.isSeq;OU.Pair=WU.Pair;OU.Scalar=VU.Scalar;OU.YAMLMap=TU.YAMLMap;OU.YAMLSeq=BU.YAMLSeq;OU.CST=KU;OU.Lexer=LU.Lexer;OU.LineCounter=DU.LineCounter;OU.Parser=_U.Parser;OU.parse=B2.parse;OU.parseAllDocuments=B2.parseAllDocuments;OU.parseDocument=B2.parseDocument;OU.stringify=B2.stringify;OU.visit=l8.visit;OU.visitAsync=l8.visitAsync});var k5=_5(x5(),1),{program:t0,createCommand:AV,createArgument:jV,createOption:NV,CommanderError:SV,InvalidArgumentError:CV,InvalidOptionArgumentError:EV,Command:bV,Argument:yV,Option:L4,Help:xV}=k5.default;var f5={name:"@pickled-dev/cli",version:"0.16.2",description:"Test what agents actually understand about your product",module:"dist/index.js",type:"module",bin:{pickled:"./dist/index.js"},files:["dist"],scripts:{dev:"bun run ./src/index.ts",build:"bun build ./src/index.ts --outdir ./dist --target bun --minify --external @anthropic-ai/claude-agent-sdk",release:"semantic-release"},dependencies:{commander:"^14.0.2",chalk:"^5.6.2","@anthropic-ai/claude-agent-sdk":"^0.3.0"},devDependencies:{"@pickled-dev/config":"workspace:*","@pickled-dev/core":"workspace:*","semantic-release":"^25.0.2","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/exec":"^7.1.0","@semantic-release/git":"^10.0.1","@semantic-release/github":"^12.0.2","semantic-release-ai-notes":"^0.3.0"}};import WV from"path";var Q0={category:"cli",provider:"claude-code",model:"sonnet"},D4=["Read","Glob","Grep","Bash"],_4=["Edit","MultiEdit","Write","NotebookEdit"];var i8=_5(c8(),1);async function H$($){let Z=`${$}/pickled.yml`,X=Bun.file(Z);if(!await X.exists())throw Error(`pickled.yml not found in ${$}`);let z;try{let q=await X.text();z=i8.default.parse(q)}catch(q){throw Error(`Failed to parse pickled.yml: ${q}`)}return sU(z),z}function sU($){if(!$.tool?.name)throw Error("pickled.yml: 'tool.name' is required");if(!Array.isArray($.scenarios)||$.scenarios.length===0)throw Error("pickled.yml: 'scenarios' must be a non-empty array");if($.docs?.sources)for(let[X,z]of Object.entries($.docs.sources))XH(X,z);if($.toolsets){if(typeof $.toolsets!=="object"||Array.isArray($.toolsets))throw Error("pickled.yml: 'toolsets' must be an object mapping name to configuration");for(let[X,z]of Object.entries($.toolsets))if(typeof z!=="object"||z===null||Array.isArray(z))throw Error(`pickled.yml: toolsets["${X}"] must be an object`)}if($.targets)for(let[X,z]of Object.entries($.targets)){if(z.systemPrompt!==void 0)throw Error(`pickled.yml: target "${X}" sets 'systemPrompt', which bypasses the citation contract. Remove it; custom prompts are not supported in citation mode.`);if(z.provider==="codex-cli"){if(!z.model)throw Error(`pickled.yml: target "${X}" (codex-cli) requires an explicit 'model' field. Codex's default model can change without notice; pin it for reproducible evals.`);if(z.maxTurns!==void 0)throw Error(`pickled.yml: target "${X}" (codex-cli) sets 'maxTurns', but the codex CLI does not support a turn cap. Remove the field.`)}if(z.category==="api"){if(!z.model)throw Error(`pickled.yml: target "${X}" (api/${z.provider}) requires an explicit 'model' field. Pickled does not substitute a default; reproducible evals depend on pinning the model.`);let q=["allowedTools","disallowedTools","mcpServers","permissionMode","maxTurns","maxThinkingTokens","maxBudgetUsd"];for(let G of q)if(z[G]!==void 0)throw Error(`pickled.yml: target "${X}" (api/${z.provider}) sets '${G}', which only applies to CLI/Agent SDK targets. Remove the field; API targets accept only model/temperature/maxTokens/threshold.`);if(z.workspaceContext!==void 0)throw Error(`pickled.yml: target "${X}" (api/${z.provider}) sets 'workspaceContext', which only applies to IDE targets. Remove the field.`)}}let Z=new Set(Object.keys($.docs?.sources??{}));for(let X of $.scenarios){if(!X.name||!X.prompt)throw Error("pickled.yml: every scenario needs 'name' and 'prompt'");if(X.requiredSources!==void 0){if(!Array.isArray(X.requiredSources))throw Error(`pickled.yml: scenario "${X.name}" has non-array 'requiredSources'. Omit the field to skip citation scoring, or set [] for "any cited source counts".`);for(let z of X.requiredSources)if(!Z.has(z))throw Error(`pickled.yml: scenario "${X.name}" references unknown source "${z}". Declared sources: ${[...Z].join(", ")||"(none)"}`)}GH(X.name,X.traps),ZH(X.name,X.compareSurfaces,Z),oU(X.name,X.matrix,Z,new Set(Object.keys($.targets??{})),new Set(Object.keys($.toolsets??{none:{}}))),tU(X.name,X.expected),eU(X.name,X.verifiers,Z),$H(X)}rU($)}function rU($){if(!$.docs?.sources)return;let Z=[];for(let[z,q]of Object.entries($.docs.sources)){if(typeof q==="string")continue;let G=q.audit?.traps;if(Array.isArray(G))Z.push({id:z,list:G})}if(Z.length===0)return;let X=new Map;for(let z of $.scenarios)for(let q of z.traps??[]){let G=X.get(q.id);if(G!==void 0)throw Error(`pickled.yml: trap id "${q.id}" is declared in both scenario "${G}" and scenario "${z.name}". Globally unique trap ids are required when any source uses list-form audit.traps suppression. Rename one of the traps.`);X.set(q.id,z.name)}for(let{id:z,list:q}of Z)for(let G of q)if(!X.has(G)){let J=[...X.keys()].join(", ")||"(none)";throw Error(`pickled.yml: docs.sources["${z}"].audit.traps lists unknown trap id "${G}". Declared trap ids: ${J}`)}}function oU($,Z,X,z,q){if(Z===void 0)return;if(typeof Z!=="object"||Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" matrix must be an object with optional interfaces/sources/toolsets arrays`);let G=(J,Q,Y)=>{let U=Z[J];if(U===void 0)return;if(!Array.isArray(U))throw Error(`pickled.yml: scenario "${$}" matrix.${J} must be an array of ${Y} names`);if(U.length===0)throw Error(`pickled.yml: scenario "${$}" matrix.${J} cannot be empty (omit the field to use defaults)`);for(let W of U){if(typeof W!=="string")throw Error(`pickled.yml: scenario "${$}" matrix.${J} entries must be strings`);if(!Q.has(W))throw Error(`pickled.yml: scenario "${$}" matrix.${J} references unknown ${Y} "${W}". Declared: ${[...Q].join(", ")||"(none)"}`)}};G("interfaces",z,"target"),G("sources",X,"source"),G("toolsets",q,"toolset")}function tU($,Z){if(Z===void 0)return;if(typeof Z!=="object"||Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" expected must be an object with optional includes/excludes arrays`);let X=(z)=>{let q=Z[z];if(q===void 0)return;if(!Array.isArray(q))throw Error(`pickled.yml: scenario "${$}" expected.${z} must be an array of strings`);if(q.length===0)throw Error(`pickled.yml: scenario "${$}" expected.${z} cannot be empty (omit the field instead)`);for(let G=0;G<q.length;G++)if(typeof q[G]!=="string"||q[G].length===0)throw Error(`pickled.yml: scenario "${$}" expected.${z}[${G}] must be a non-empty string`)};X("includes"),X("excludes")}function eU($,Z,X){if(Z===void 0)return;if(typeof Z!=="object"||Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" verifiers must be an object`);let z=Z.sources;if(z===void 0)return;if(!Array.isArray(z))throw Error(`pickled.yml: scenario "${$}" verifiers.sources must be an array of source IDs`);for(let q of z){if(typeof q!=="string")throw Error(`pickled.yml: scenario "${$}" verifiers.sources entries must be strings`);if(!X.has(q))throw Error(`pickled.yml: scenario "${$}" verifiers.sources references unknown source "${q}"`)}}function $H($){let Z=$.requiredSources!==void 0,X=$.expected!==void 0&&($.expected.includes!==void 0&&$.expected.includes.length>0||$.expected.excludes!==void 0&&$.expected.excludes.length>0),z=$.traps!==void 0&&$.traps.length>0;if(!Z&&!X&&!z)throw Error(`pickled.yml: scenario "${$.name}" must declare at least one of requiredSources, expected.includes/excludes, or traps. A scenario with nothing to check has no verdict.`)}function ZH($,Z,X){if(Z===void 0)return;if(!Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" compareSurfaces must be an array of source-id lists`);if(Z.length===0)throw Error(`pickled.yml: scenario "${$}" compareSurfaces cannot be empty (use a non-empty list of surfaces, or remove the field)`);for(let z=0;z<Z.length;z++){let q=Z[z];if(!Array.isArray(q))throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] must be an array of source ids`);if(q.length===0)throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] must be a non-empty list of source ids`);for(let G of q){if(typeof G!=="string")throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] entries must be string source ids`);if(!X.has(G))throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] references unknown source "${G}". Declared sources: ${[...X].join(", ")||"(none)"}`)}}}function XH($,Z){if(typeof Z==="string"){if(Z.length===0)throw Error(`pickled.yml: docs.sources["${$}"] string form must be a non-empty file path or URL`);return}if(!Z||typeof Z!=="object")throw Error(`pickled.yml: docs.sources["${$}"] must be a string (path/URL) or an object with a 'path' field`);let X=Z;if(typeof X.path!=="string"||X.path.length===0)throw Error(`pickled.yml: docs.sources["${$}"] object form requires a non-empty 'path' field`);if(X.audit!==void 0){if(typeof X.audit!=="object"||X.audit===null)throw Error(`pickled.yml: docs.sources["${$}"].audit must be an object`);let z=X.audit;if(z.traps!==void 0){let q=z.traps;if(typeof q==="boolean");else if(Array.isArray(q)){if(q.length===0)throw Error(`pickled.yml: docs.sources["${$}"].audit.traps cannot be an empty array; use true (scan all) or false (skip all) instead`);for(let G=0;G<q.length;G++)if(typeof q[G]!=="string")throw Error(`pickled.yml: docs.sources["${$}"].audit.traps[${G}] must be a string trap id`)}else throw Error(`pickled.yml: docs.sources["${$}"].audit.traps must be a boolean or an array of trap ids`)}for(let q of Object.keys(z))if(q!=="traps")throw Error(`pickled.yml: docs.sources["${$}"].audit has unknown field "${q}"`)}if(X.type!==void 0){if(X.type!=="file"&&X.type!=="url"&&X.type!=="codebase")throw Error(`pickled.yml: docs.sources["${$}"].type must be "file", "url", or "codebase"`)}if(X.type==="codebase"){if(typeof X.path==="string"&&X.path.split("/").includes(".."))throw Error(`pickled.yml: docs.sources["${$}"].path must not contain ".." segments. Codebase loader stays within the project root.`);if(X.exclude!==void 0){if(!Array.isArray(X.exclude))throw Error(`pickled.yml: docs.sources["${$}"].exclude must be an array of glob patterns`);for(let z=0;z<X.exclude.length;z++)if(typeof X.exclude[z]!=="string")throw Error(`pickled.yml: docs.sources["${$}"].exclude[${z}] must be a string glob pattern`)}if(X.maxBytes!==void 0){if(typeof X.maxBytes!=="number"||!Number.isFinite(X.maxBytes)||X.maxBytes<=0)throw Error(`pickled.yml: docs.sources["${$}"].maxBytes must be a positive number of bytes`)}}else{if(X.exclude!==void 0)throw Error(`pickled.yml: docs.sources["${$}"].exclude only applies to type: codebase sources`);if(X.maxBytes!==void 0)throw Error(`pickled.yml: docs.sources["${$}"].maxBytes only applies to type: codebase sources`)}for(let z of Object.keys(X))if(z!=="path"&&z!=="audit"&&z!=="type"&&z!=="exclude"&&z!=="maxBytes")throw Error(`pickled.yml: docs.sources["${$}"] has unknown field "${z}"`)}var zH=new Set(["g","y"]),qH=new Set(["i","m","s","u","v"]);function GH($,Z){if(Z===void 0)return;if(!Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" has non-array 'traps'`);let X=new Set;for(let z of Z){if(!z.id||typeof z.id!=="string")throw Error(`pickled.yml: scenario "${$}" has a trap missing 'id'`);if(X.has(z.id))throw Error(`pickled.yml: scenario "${$}" has duplicate trap id "${z.id}"`);if(X.add(z.id),!z.reason||typeof z.reason!=="string")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" requires non-empty 'reason'`);if(z.auditSeverity!==void 0&&z.auditSeverity!=="warning"&&z.auditSeverity!=="error")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" auditSeverity must be "warning" or "error"`);let q=typeof z.match==="string",G=typeof z.pattern==="string";if(q===G)throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" must set exactly one of 'match' or 'pattern'`);if(q){if(z.match==="")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has empty 'match'`);if(z.flags!==void 0)throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" sets 'flags' without 'pattern'`)}else{let J=z.pattern;if(typeof J!=="string")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" must set 'pattern'`);if(J==="")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has empty 'pattern'`);if(z.flags!==void 0){if(typeof z.flags!=="string")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has non-string 'flags'`);for(let Q of z.flags){if(zH.has(Q))throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" uses forbidden regex flag "${Q}" (g and y are not allowed)`);if(!qH.has(Q))throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" uses unsupported regex flag "${Q}"`)}}try{new RegExp(J,z.flags??"")}catch(Q){throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has invalid regex pattern: ${Q instanceof Error?Q.message:Q}`)}}}}function C9($,Z){let X=new Set([...Object.keys($.targets??{}),"default"]);if(!X.has(Z)){let z=[...X].sort().join(", ");throw Error(`Unknown target: "${Z}". Available targets: ${z}`)}return{...$,matrix:{...$.matrix,target:[Z]},scenarios:$.scenarios.filter((z)=>!z.target||z.target===Z)}}function E9($){if(typeof $==="string")return{path:$,auditTraps:!0};return{path:$.path,auditTraps:$.audit?.traps??!0}}function K2($){let{config:Z,files:X,pairs:z,findings:q}=$,G=[],J=q.filter((H)=>H.severity==="error").length,Q=q.filter((H)=>H.severity==="warning").length;if(G.push(`# Agent-context audit
|
|
166
|
+
`,Z)+1}return{type:$,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue($){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 Z=T2($),X=H$(Z);return X.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:X,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let Z=T2($),X=H$(Z);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:X,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment($,Z){if(this.type!=="comment")return!1;if(this.indent<=Z)return!1;return $.every((X)=>X.type==="newline"||X.type==="space")}*documentEnd($){if(this.type!=="doc-mode"){if($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd($){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($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}sY.Parser=v8});var l8=M((qU)=>{var u8=_9(),oY=r$(),X1=o$(),tY=N4(),eY=C(),$U=N9(),m8=S9();function d8($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new $U.LineCounter||null,prettyErrors:Z}}function ZU($,Z={}){let{lineCounter:X,prettyErrors:z}=d8(Z),q=new m8.Parser(X?.addNewLine),G=new u8.Composer(Z),J=Array.from(G.compose(q.parse($)));if(z&&X)for(let Q of J)Q.errors.forEach(X1.prettifyError($,X)),Q.warnings.forEach(X1.prettifyError($,X));if(J.length>0)return J;return Object.assign([],{empty:!0},G.streamInfo())}function p8($,Z={}){let{lineCounter:X,prettyErrors:z}=d8(Z),q=new m8.Parser(X?.addNewLine),G=new u8.Composer(Z),J=null;for(let Q of G.compose(q.parse($),!0,$.length))if(!J)J=Q;else if(J.options.logLevel!=="silent"){J.errors.push(new X1.YAMLParseError(Q.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&X)J.errors.forEach(X1.prettifyError($,X)),J.warnings.forEach(X1.prettifyError($,X));return J}function XU($,Z,X){let z=void 0;if(typeof Z==="function")z=Z;else if(X===void 0&&Z&&typeof Z==="object")X=Z;let q=p8($,X);if(!q)return null;if(q.warnings.forEach((G)=>tY.warn(q.options.logLevel,G)),q.errors.length>0)if(q.options.logLevel!=="silent")throw q.errors[0];else q.errors=[];return q.toJS(Object.assign({reviver:z},X))}function zU($,Z,X){let z=null;if(typeof Z==="function"||Array.isArray(Z))z=Z;else if(X===void 0&&Z)X=Z;if(typeof X==="string")X=X.length;if(typeof X==="number"){let q=Math.round(X);X=q<1?void 0:q>8?{indent:8}:{indent:q}}if($===void 0){let{keepUndefined:q}=X??Z??{};if(!q)return}if(eY.isDocument($)&&!z)return $.toString(X);return new oY.Document($,z,X).toString(X)}qU.parse=XU;qU.parseAllDocuments=ZU;qU.parseDocument=p8;qU.stringify=zU});var i8=M((OU)=>{var UU=_9(),HU=r$(),WU=X9(),C9=o$(),VU=k$(),C0=C(),KU=R0(),BU=g(),TU=j0(),LU=N0(),DU=K2(),_U=j9(),MU=N9(),FU=S9(),L2=l8(),c8=x$();OU.Composer=UU.Composer;OU.Document=HU.Document;OU.Schema=WU.Schema;OU.YAMLError=C9.YAMLError;OU.YAMLParseError=C9.YAMLParseError;OU.YAMLWarning=C9.YAMLWarning;OU.Alias=VU.Alias;OU.isAlias=C0.isAlias;OU.isCollection=C0.isCollection;OU.isDocument=C0.isDocument;OU.isMap=C0.isMap;OU.isNode=C0.isNode;OU.isPair=C0.isPair;OU.isScalar=C0.isScalar;OU.isSeq=C0.isSeq;OU.Pair=KU.Pair;OU.Scalar=BU.Scalar;OU.YAMLMap=TU.YAMLMap;OU.YAMLSeq=LU.YAMLSeq;OU.CST=DU;OU.Lexer=_U.Lexer;OU.LineCounter=MU.LineCounter;OU.Parser=FU.Parser;OU.parse=L2.parse;OU.parseAllDocuments=L2.parseAllDocuments;OU.parseDocument=L2.parseDocument;OU.stringify=L2.stringify;OU.visit=c8.visit;OU.visitAsync=c8.visitAsync});var f5=M5(k5(),1),{program:e0,createCommand:SV,createArgument:CV,createOption:EV,CommanderError:bV,InvalidArgumentError:xV,InvalidOptionArgumentError:yV,Command:kV,Argument:fV,Option:D4,Help:hV}=f5.default;var h5={name:"@pickled-dev/cli",version:"0.17.0",description:"Test what agents actually understand about your product",module:"dist/index.js",type:"module",bin:{pickled:"./dist/index.js"},files:["dist"],scripts:{dev:"bun run ./src/index.ts",build:"bun build ./src/index.ts --outdir ./dist --target bun --minify --external @anthropic-ai/claude-agent-sdk",release:"semantic-release"},dependencies:{commander:"^14.0.2",chalk:"^5.6.2","@anthropic-ai/claude-agent-sdk":"^0.3.0"},devDependencies:{"@pickled-dev/config":"workspace:*","@pickled-dev/core":"workspace:*","semantic-release":"^25.0.2","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/exec":"^7.1.0","@semantic-release/git":"^10.0.1","@semantic-release/github":"^12.0.2","semantic-release-ai-notes":"^0.3.0"}};import BV from"path";var Q0={category:"cli",provider:"claude-code",model:"sonnet"},_4=["Read","Glob","Grep","Bash"],M4=["Edit","MultiEdit","Write","NotebookEdit"];var a8=M5(i8(),1);async function W$($){let Z=`${$}/pickled.yml`,X=Bun.file(Z);if(!await X.exists())throw Error(`pickled.yml not found in ${$}`);let z;try{let q=await X.text();z=a8.default.parse(q)}catch(q){throw Error(`Failed to parse pickled.yml: ${q}`)}return oU(z),z}function oU($){if(!$.tool?.name)throw Error("pickled.yml: 'tool.name' is required");if(!Array.isArray($.scenarios)||$.scenarios.length===0)throw Error("pickled.yml: 'scenarios' must be a non-empty array");if($.docs?.sources)for(let[X,z]of Object.entries($.docs.sources))qH(X,z);if($.toolsets){if(typeof $.toolsets!=="object"||Array.isArray($.toolsets))throw Error("pickled.yml: 'toolsets' must be an object mapping name to configuration");for(let[X,z]of Object.entries($.toolsets))if(typeof z!=="object"||z===null||Array.isArray(z))throw Error(`pickled.yml: toolsets["${X}"] must be an object`)}if($.targets)for(let[X,z]of Object.entries($.targets)){if(z.systemPrompt!==void 0)throw Error(`pickled.yml: target "${X}" sets 'systemPrompt', which bypasses the citation contract. Remove it; custom prompts are not supported in citation mode.`);if(z.provider==="codex-cli"){if(!z.model)throw Error(`pickled.yml: target "${X}" (codex-cli) requires an explicit 'model' field. Codex's default model can change without notice; pin it for reproducible evals.`);if(z.maxTurns!==void 0)throw Error(`pickled.yml: target "${X}" (codex-cli) sets 'maxTurns', but the codex CLI does not support a turn cap. Remove the field.`)}if(z.category==="api"){if(!z.model)throw Error(`pickled.yml: target "${X}" (api/${z.provider}) requires an explicit 'model' field. Pickled does not substitute a default; reproducible evals depend on pinning the model.`);let q=["allowedTools","disallowedTools","mcpServers","permissionMode","maxTurns","maxThinkingTokens","maxBudgetUsd"];for(let G of q)if(z[G]!==void 0)throw Error(`pickled.yml: target "${X}" (api/${z.provider}) sets '${G}', which only applies to CLI/Agent SDK targets. Remove the field; API targets accept only model/temperature/maxTokens/threshold.`);if(z.workspaceContext!==void 0)throw Error(`pickled.yml: target "${X}" (api/${z.provider}) sets 'workspaceContext', which only applies to IDE targets. Remove the field.`)}}let Z=new Set(Object.keys($.docs?.sources??{}));for(let X of $.scenarios){if(!X.name||!X.prompt)throw Error("pickled.yml: every scenario needs 'name' and 'prompt'");if(X.requiredSources!==void 0){if(!Array.isArray(X.requiredSources))throw Error(`pickled.yml: scenario "${X.name}" has non-array 'requiredSources'. Omit the field to skip citation scoring, or set [] for "any cited source counts".`);for(let z of X.requiredSources)if(!Z.has(z))throw Error(`pickled.yml: scenario "${X.name}" references unknown source "${z}". Declared sources: ${[...Z].join(", ")||"(none)"}`)}QH(X.name,X.traps),zH(X.name,X.compareSurfaces,Z),eU(X.name,X.matrix,Z,new Set(Object.keys($.targets??{})),new Set(Object.keys($.toolsets??{none:{}}))),$H(X.name,X.expected),ZH(X.name,X.verifiers,Z),XH(X)}tU($)}function tU($){if(!$.docs?.sources)return;let Z=[];for(let[z,q]of Object.entries($.docs.sources)){if(typeof q==="string")continue;let G=q.audit?.traps;if(Array.isArray(G))Z.push({id:z,list:G})}if(Z.length===0)return;let X=new Map;for(let z of $.scenarios)for(let q of z.traps??[]){let G=X.get(q.id);if(G!==void 0)throw Error(`pickled.yml: trap id "${q.id}" is declared in both scenario "${G}" and scenario "${z.name}". Globally unique trap ids are required when any source uses list-form audit.traps suppression. Rename one of the traps.`);X.set(q.id,z.name)}for(let{id:z,list:q}of Z)for(let G of q)if(!X.has(G)){let J=[...X.keys()].join(", ")||"(none)";throw Error(`pickled.yml: docs.sources["${z}"].audit.traps lists unknown trap id "${G}". Declared trap ids: ${J}`)}}function eU($,Z,X,z,q){if(Z===void 0)return;if(typeof Z!=="object"||Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" matrix must be an object with optional interfaces/sources/toolsets arrays`);let G=(J,Q,Y)=>{let U=Z[J];if(U===void 0)return;if(!Array.isArray(U))throw Error(`pickled.yml: scenario "${$}" matrix.${J} must be an array of ${Y} names`);if(U.length===0)throw Error(`pickled.yml: scenario "${$}" matrix.${J} cannot be empty (omit the field to use defaults)`);for(let W of U){if(typeof W!=="string")throw Error(`pickled.yml: scenario "${$}" matrix.${J} entries must be strings`);if(!Q.has(W))throw Error(`pickled.yml: scenario "${$}" matrix.${J} references unknown ${Y} "${W}". Declared: ${[...Q].join(", ")||"(none)"}`)}};G("interfaces",z,"target"),G("sources",X,"source"),G("toolsets",q,"toolset")}function $H($,Z){if(Z===void 0)return;if(typeof Z!=="object"||Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" expected must be an object with optional includes/excludes arrays`);let X=(z)=>{let q=Z[z];if(q===void 0)return;if(!Array.isArray(q))throw Error(`pickled.yml: scenario "${$}" expected.${z} must be an array of strings`);if(q.length===0)throw Error(`pickled.yml: scenario "${$}" expected.${z} cannot be empty (omit the field instead)`);for(let G=0;G<q.length;G++)if(typeof q[G]!=="string"||q[G].length===0)throw Error(`pickled.yml: scenario "${$}" expected.${z}[${G}] must be a non-empty string`)};X("includes"),X("excludes")}function ZH($,Z,X){if(Z===void 0)return;if(typeof Z!=="object"||Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" verifiers must be an object`);let z=Z.sources;if(z===void 0)return;if(!Array.isArray(z))throw Error(`pickled.yml: scenario "${$}" verifiers.sources must be an array of source IDs`);for(let q of z){if(typeof q!=="string")throw Error(`pickled.yml: scenario "${$}" verifiers.sources entries must be strings`);if(!X.has(q))throw Error(`pickled.yml: scenario "${$}" verifiers.sources references unknown source "${q}"`)}}function XH($){let Z=$.requiredSources!==void 0,X=$.expected!==void 0&&($.expected.includes!==void 0&&$.expected.includes.length>0||$.expected.excludes!==void 0&&$.expected.excludes.length>0),z=$.traps!==void 0&&$.traps.length>0;if(!Z&&!X&&!z)throw Error(`pickled.yml: scenario "${$.name}" must declare at least one of requiredSources, expected.includes/excludes, or traps. A scenario with nothing to check has no verdict.`)}function zH($,Z,X){if(Z===void 0)return;if(!Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" compareSurfaces must be an array of source-id lists`);if(Z.length===0)throw Error(`pickled.yml: scenario "${$}" compareSurfaces cannot be empty (use a non-empty list of surfaces, or remove the field)`);for(let z=0;z<Z.length;z++){let q=Z[z];if(!Array.isArray(q))throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] must be an array of source ids`);if(q.length===0)throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] must be a non-empty list of source ids`);for(let G of q){if(typeof G!=="string")throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] entries must be string source ids`);if(!X.has(G))throw Error(`pickled.yml: scenario "${$}" compareSurfaces[${z}] references unknown source "${G}". Declared sources: ${[...X].join(", ")||"(none)"}`)}}}function qH($,Z){if(typeof Z==="string"){if(Z.length===0)throw Error(`pickled.yml: docs.sources["${$}"] string form must be a non-empty file path or URL`);return}if(!Z||typeof Z!=="object")throw Error(`pickled.yml: docs.sources["${$}"] must be a string (path/URL) or an object with a 'path' field`);let X=Z;if(typeof X.path!=="string"||X.path.length===0)throw Error(`pickled.yml: docs.sources["${$}"] object form requires a non-empty 'path' field`);if(X.audit!==void 0){if(typeof X.audit!=="object"||X.audit===null)throw Error(`pickled.yml: docs.sources["${$}"].audit must be an object`);let z=X.audit;if(z.traps!==void 0){let q=z.traps;if(typeof q==="boolean");else if(Array.isArray(q)){if(q.length===0)throw Error(`pickled.yml: docs.sources["${$}"].audit.traps cannot be an empty array; use true (scan all) or false (skip all) instead`);for(let G=0;G<q.length;G++)if(typeof q[G]!=="string")throw Error(`pickled.yml: docs.sources["${$}"].audit.traps[${G}] must be a string trap id`)}else throw Error(`pickled.yml: docs.sources["${$}"].audit.traps must be a boolean or an array of trap ids`)}for(let q of Object.keys(z))if(q!=="traps")throw Error(`pickled.yml: docs.sources["${$}"].audit has unknown field "${q}"`)}if(X.type!==void 0){if(X.type!=="file"&&X.type!=="url"&&X.type!=="codebase")throw Error(`pickled.yml: docs.sources["${$}"].type must be "file", "url", or "codebase"`)}if(X.type==="codebase"){if(typeof X.path==="string"&&X.path.split("/").includes(".."))throw Error(`pickled.yml: docs.sources["${$}"].path must not contain ".." segments. Codebase loader stays within the project root.`);if(X.exclude!==void 0){if(!Array.isArray(X.exclude))throw Error(`pickled.yml: docs.sources["${$}"].exclude must be an array of glob patterns`);for(let z=0;z<X.exclude.length;z++)if(typeof X.exclude[z]!=="string")throw Error(`pickled.yml: docs.sources["${$}"].exclude[${z}] must be a string glob pattern`)}if(X.maxBytes!==void 0){if(typeof X.maxBytes!=="number"||!Number.isFinite(X.maxBytes)||X.maxBytes<=0)throw Error(`pickled.yml: docs.sources["${$}"].maxBytes must be a positive number of bytes`)}}else{if(X.exclude!==void 0)throw Error(`pickled.yml: docs.sources["${$}"].exclude only applies to type: codebase sources`);if(X.maxBytes!==void 0)throw Error(`pickled.yml: docs.sources["${$}"].maxBytes only applies to type: codebase sources`)}for(let z of Object.keys(X))if(z!=="path"&&z!=="audit"&&z!=="type"&&z!=="exclude"&&z!=="maxBytes")throw Error(`pickled.yml: docs.sources["${$}"] has unknown field "${z}"`)}var GH=new Set(["g","y"]),JH=new Set(["i","m","s","u","v"]);function QH($,Z){if(Z===void 0)return;if(!Array.isArray(Z))throw Error(`pickled.yml: scenario "${$}" has non-array 'traps'`);let X=new Set;for(let z of Z){if(!z.id||typeof z.id!=="string")throw Error(`pickled.yml: scenario "${$}" has a trap missing 'id'`);if(X.has(z.id))throw Error(`pickled.yml: scenario "${$}" has duplicate trap id "${z.id}"`);if(X.add(z.id),!z.reason||typeof z.reason!=="string")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" requires non-empty 'reason'`);if(z.auditSeverity!==void 0&&z.auditSeverity!=="warning"&&z.auditSeverity!=="error")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" auditSeverity must be "warning" or "error"`);let q=typeof z.match==="string",G=typeof z.pattern==="string";if(q===G)throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" must set exactly one of 'match' or 'pattern'`);if(q){if(z.match==="")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has empty 'match'`);if(z.flags!==void 0)throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" sets 'flags' without 'pattern'`)}else{let J=z.pattern;if(typeof J!=="string")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" must set 'pattern'`);if(J==="")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has empty 'pattern'`);if(z.flags!==void 0){if(typeof z.flags!=="string")throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has non-string 'flags'`);for(let Q of z.flags){if(GH.has(Q))throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" uses forbidden regex flag "${Q}" (g and y are not allowed)`);if(!JH.has(Q))throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" uses unsupported regex flag "${Q}"`)}}try{new RegExp(J,z.flags??"")}catch(Q){throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" has invalid regex pattern: ${Q instanceof Error?Q.message:Q}`)}}}}function E9($,Z){let X=new Set([...Object.keys($.targets??{}),"default"]);if(!X.has(Z)){let z=[...X].sort().join(", ");throw Error(`Unknown target: "${Z}". Available targets: ${z}`)}return{...$,matrix:{...$.matrix,target:[Z]},scenarios:$.scenarios.filter((z)=>!z.target||z.target===Z)}}function b9($){if(typeof $==="string")return{path:$,auditTraps:!0};return{path:$.path,auditTraps:$.audit?.traps??!0}}function D2($){let{config:Z,files:X,pairs:z,findings:q}=$,G=[],J=q.filter((H)=>H.severity==="error").length,Q=q.filter((H)=>H.severity==="warning").length;if(G.push(`# Agent-context audit
|
|
167
167
|
`),G.push(`Target: \`${Z.targetRepo}\``),G.push(`Budgets: root \u2264 ${Z.budgets.rootLines} lines, nested warn at ${Z.budgets.nestedWarnLines} lines.`),G.push(`Found ${X.length} agent-doc files. ${J} error(s), ${Q} warning(s).
|
|
168
168
|
`),G.push(`## Inventory
|
|
169
169
|
`),X.length===0)G.push(`No agent-doc files found.
|
|
170
|
-
`);else{G.push("| File | Lines | Kind | Notes |"),G.push("|---|---|---|---|");let H=[...X].sort((V,B)=>B.lineCount-V.lineCount);for(let V of H){let B=!V.relPath.includes("/"),L=
|
|
170
|
+
`);else{G.push("| File | Lines | Kind | Notes |"),G.push("|---|---|---|---|");let H=[...X].sort((V,B)=>B.lineCount-V.lineCount);for(let V of H){let B=!V.relPath.includes("/"),L=n8(V.lineCount,B,Z),K=V.isSymlink?`symlink \u2192 ${V.symlinkTarget?.replace(`${Z.targetRepo}/`,"")??"?"}`:"file";G.push(`| \`${V.relPath}\` | ${V.lineCount} | ${K} | ${L} |`)}G.push("")}if(G.push(`## AGENTS.md / CLAUDE.md pairs
|
|
171
171
|
`),z.length===0)G.push(`No pairs found.
|
|
172
172
|
`);else{G.push("| Directory | A | C | Class | Detail |"),G.push("|---|---|---|---|---|");for(let H of z)G.push(`| \`${H.dir||"(root)"}\` | ${H.agentsExists?"\u2713":"\xB7"} | ${H.claudeExists?"\u2713":"\xB7"} | ${H.classification} | ${H.detail} |`);G.push("")}let Y=X.filter((H)=>!H.isSymlink&&H.brokenPathRefs.length+H.brokenImports.length>0);if(G.push(`## Broken references
|
|
173
173
|
`),Y.length===0)G.push(`None detected.
|
|
@@ -182,31 +182,31 @@ ${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.pus
|
|
|
182
182
|
`),G.push("| Section | Lines |"),G.push("|---|---|");for(let V of H.sections.slice(0,10))G.push(`| ${V.header} | ${V.lines} |`);G.push("")}if(G.push(`## Registered-source trap matches
|
|
183
183
|
`),G.push("Catches stale claims in `docs.sources` against declared traps. Per-source suppression: `audit.traps: false` skips all traps; `audit.traps: [<trap_id>, ...]` skips only the listed traps and keeps scanning the rest.\n"),$.sourceTrapMatches.length===0)G.push(`None.
|
|
184
184
|
`);else{for(let H of $.sourceTrapMatches)G.push(`- **${H.sourceId}** (\`${H.sourcePath}:L${H.line}\`) \u2014 trap \`${H.trapId}\` matched \`${H.matched}\` (${H.severity})`),G.push(` - reason: ${H.trapReason}`),G.push(` - fix: remove the stale claim, retire the trap, set \`audit.traps: ['${H.trapId}']\` to suppress just this one (other traps still apply), or set \`audit.traps: false\` if the source is deliberately stale`);G.push("")}return G.join(`
|
|
185
|
-
`)}function
|
|
186
|
-
`)}function
|
|
187
|
-
`;if(W.push(K
|
|
185
|
+
`)}function _2($){return JSON.stringify($,null,2)}function M2($){let{config:Z,files:X,pairs:z,findings:q}=$,G=[],J=q.filter((H)=>H.severity==="error").length,Q=q.filter((H)=>H.severity==="warning").length;if(G.push("pickled audit"),G.push(`Target: ${Z.targetRepo}`),G.push(`Budgets: root \u2264 ${Z.budgets.rootLines} lines, nested warn at ${Z.budgets.nestedWarnLines} lines.`),G.push(`Found: ${X.length} agent-doc file(s) \xB7 ${J} error(s) \xB7 ${Q} warning(s)`),G.push(""),G.push("Inventory"),X.length===0)G.push(" none");else{let H=[...X].sort((B,L)=>L.lineCount-B.lineCount),V=Math.max(...H.map((B)=>B.relPath.length));for(let B of H){let L=!B.relPath.includes("/"),K=n8(B.lineCount,L,Z),T=B.isSymlink?`symlink \u2192 ${B.symlinkTarget?.replace(`${Z.targetRepo}/`,"")??"?"}`:"file",D=`${B.lineCount}`.padStart(4),_=B.relPath.padEnd(V),O=K?` (${K})`:"";G.push(` ${_} ${D} lines ${T}${O}`)}}if(G.push(""),G.push("AGENTS.md / CLAUDE.md pairs"),z.length===0)G.push(" none");else for(let H of z){let V=H.dir||"(root)";G.push(` ${V}: ${H.classification} \xB7 ${H.detail}`)}G.push("");let Y=X.filter((H)=>!H.isSymlink&&H.brokenPathRefs.length+H.brokenImports.length>0);if(G.push("Broken references"),Y.length===0)G.push(" none");else for(let H of Y){G.push(` ${H.relPath}:`);for(let V of H.brokenPathRefs)G.push(` path: ${V}`);for(let V of H.brokenImports)G.push(` @-import: ${V}`)}G.push("");let U=X.filter((H)=>!H.isSymlink&&H.unresolvedCommands.length>0);if(G.push("Unresolved package-manager commands (advisory)"),U.length===0)G.push(" none");else for(let H of U){G.push(` ${H.relPath}:`);for(let V of H.unresolvedCommands)G.push(` ${V}`)}G.push("");let W=X.filter((H)=>{if(H.isSymlink)return!1;return!H.relPath.includes("/")?H.lineCount>Z.budgets.rootLines:H.lineCount>Z.budgets.nestedWarnLines});if(G.push("Section breakdown for files over budget"),W.length===0)G.push(" all files within budget");else for(let H of W){G.push(` ${H.relPath} (${H.lineCount} lines):`);for(let V of H.sections.slice(0,10))G.push(` ${V.header.padEnd(40)} ${V.lines} lines`)}if(G.push(""),G.push("Registered-source trap matches"),$.sourceTrapMatches.length===0)G.push(" none");else for(let H of $.sourceTrapMatches){let V=H.severity==="error"?"error":"warning";G.push(` [${V}] ${H.sourceId} (${H.sourcePath}:L${H.line}): trap ${H.trapId} matched "${H.matched}"`),G.push(` reason: ${H.trapReason}`),G.push(` fix: remove the stale claim, retire the trap, set audit.traps: ['${H.trapId}'] to suppress just this trap (others still apply), or set audit.traps: false if deliberately stale`)}return G.join(`
|
|
186
|
+
`)}function n8($,Z,X){if(Z&&$>X.budgets.rootLines)return`over root budget (${$} > ${X.budgets.rootLines})`;if(!Z&&$>X.budgets.nestedWarnLines)return`over nested-warn (${$} > ${X.budgets.nestedWarnLines})`;return""}import{existsSync as K$,lstatSync as $Z,readFileSync as P2,readlinkSync as FH,statSync as OH}from"fs";import{dirname as I2,isAbsolute as wH,join as x9,relative as PH,resolve as y9}from"path";var{Glob:e8}=globalThis.Bun;var F2=["node_modules/**","**/node_modules/**",".git/**","**/.git/**","dist/**","**/dist/**","build/**","**/build/**",".next/**","**/.next/**",".turbo/**","**/.turbo/**",".cache/**","**/.cache/**",".runs/**","**/.runs/**","coverage/**","**/coverage/**","**/__fixtures__/**","**/tests/**/fixture/**","**/tests/**/fixtures/**","**/test/**/fixture/**","**/test/**/fixtures/**"],V$={targetRepo:".",budgets:{rootLines:120,nestedWarnLines:200},ignore:F2,intentionalDifferentPairs:[],knownCommands:[]};function O2($){if(!$)return V$;return{targetRepo:$.targetRepo??V$.targetRepo,budgets:{rootLines:$.budgets?.rootLines??V$.budgets.rootLines,nestedWarnLines:$.budgets?.nestedWarnLines??V$.budgets.nestedWarnLines},ignore:$.ignore??F2,intentionalDifferentPairs:$.intentionalDifferentPairs??[],knownCommands:$.knownCommands??[]}}import{existsSync as TH}from"fs";import{join as LH,resolve as DH}from"path";function E0($){let Z=[],X=[];for(let z of $.traps){let q=YH($.response,z);if(q)Z.push(q);else X.push(z.id)}return{fired:Z,avoided:X}}function YH($,Z){if(Z.match!==void 0){let X=$.indexOf(Z.match);if(X===-1)return null;return{id:Z.id,reason:Z.reason,matched:Z.match,snippet:s8($,X,Z.match.length),index:X}}if(Z.pattern!==void 0){let z=new RegExp(Z.pattern,Z.flags??"").exec($);if(!z)return null;return{id:Z.id,reason:Z.reason,matched:z[0],snippet:s8($,z.index,z[0].length),index:z.index}}return null}function s8($,Z,X){let z=Math.max(0,Z-40),q=Math.min($.length,Z+X+40),G=$.slice(z,q).replace(/\s+/g," ").trim();if(z>0)G=`...${G}`;if(q<$.length)G=`${G}...`;return G}import w2 from"path";var{Glob:r8}=globalThis.Bun;var UH=262144,HH=4194304;function WH($){return $.startsWith("http://")||$.startsWith("https://")}async function VH($,Z,X){let z=await fetch(Z);if(!z.ok)throw Error(`Failed to fetch source "${$}" from ${Z}: ${z.status} ${z.statusText}`);let q=await z.text();return{id:$,source:Z,content:q,name:new URL(Z).hostname+new URL(Z).pathname,type:"url",auditTraps:X}}async function KH($,Z,X,z){let q=w2.isAbsolute(Z)?Z:w2.resolve(X,Z),G=Bun.file(q);if(!await G.exists())throw Error(`Source "${$}" not found at ${q}`);let J=await G.text();return{id:$,source:Z,content:J,name:w2.basename(q),type:"file",auditTraps:z}}async function BH($,Z,X,z,q){let G=new r8(Z.path),J=(Z.exclude??[]).map((B)=>new r8(B)),Q=[];for await(let B of G.scan({cwd:X,onlyFiles:!0,followSymlinks:!1})){if(J.some((L)=>L.match(B)))continue;Q.push(B)}Q.sort();let Y=Z.maxBytes??UH,U=Math.max(Y,HH),W=[],H=0;for(let B of Q){let L=w2.resolve(X,B),K=await Bun.file(L).text(),T=`// === ${B} ===
|
|
187
|
+
`;if(W.push(T,K),!K.endsWith(`
|
|
188
188
|
`))W.push(`
|
|
189
|
-
`);if(H+=
|
|
190
|
-
`)X++;return X}var
|
|
191
|
-
`)?W:W+1;return{relPath:Z,absPath:X,isSymlink:G,symlinkTarget:J,realRelPath:Q,lineCount:H,brokenPathRefs:
|
|
192
|
-
`),X=[],z=null;if(Z.forEach((q,G)=>{if(/^##\s+/.test(q)){if(z)X.push({header:z.header,lines:G-z.start});z={header:q.replace(/^##\s+/,"").trim(),start:G}}}),z){let q=z;X.push({header:q.header,lines:Z.length-q.start})}return X.sort((q,G)=>G.lines-q.lines)}function yH($){if($.length===0||$.length>160)return!1;if(!$.includes("/"))return!1;if(/\s/.test($))return!1;if(/^https?:\/\//.test($))return!1;if(/[*?{}[\]<>]/.test($))return!1;if($.startsWith("@"))return!1;if($.startsWith("~/"))return!1;if(/^[a-z]+:\/\//i.test($))return!1;if(/^cdn\./.test($)||/^unpkg\./.test($)||/^npm\./.test($))return!1;if(/^\/[a-z]/.test($)&&/(?:icon|image|img|asset|file|path)/i.test($))return!1;if(/^(cd|pnpm|npm|yarn|bun|node|git|ls|cat|grep|find|sed|awk|mkdir|rm|mv|cp|echo|export|source|sudo|brew|docker|curl|wget)\b/.test($))return!1;return/[a-zA-Z0-9_.-]\/[a-zA-Z0-9_.-]/.test($)}function xH($){return $.replace(/```[\s\S]*?```/g,"")}function kH($,Z){let X=new Map;for(let G of $){let J=G.relPath.split("/").pop()??"";if(J!=="AGENTS.md"&&J!=="CLAUDE.md")continue;let Q=w2(G.relPath),Y=X.get(Q)??{};if(J==="AGENTS.md")Y.agents=G;if(J==="CLAUDE.md")Y.claude=G;X.set(Q,Y)}let z=new Set(Z.intentionalDifferentPairs),q=[];for(let[G,J]of X){let Q=!!J.agents,Y=!!J.claude;if(!Q&&!Y)continue;if(!Q||!Y){q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"single",detail:Q?"only AGENTS.md":"only CLAUDE.md"});continue}let{agents:U,claude:W}=J,H=`${U.relPath}:${W.relPath}`,V=`${W.relPath}:${U.relPath}`;if(z.has(H)||z.has(V)){q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"intentional-different",detail:`allowlisted: ${U.lineCount}L vs ${W.lineCount}L`});continue}if(U.isSymlink&&U.symlinkTarget===W.absPath||W.isSymlink&&W.symlinkTarget===U.absPath){let K=U.isSymlink?"CLAUDE.md":"AGENTS.md";q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"linked",detail:`canonical: ${K}`});continue}let L=F2(U.absPath,"utf8"),T=F2(W.absPath,"utf8");if(L===T)q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`byte-for-byte duplicate (${U.lineCount}L), not symlinked`});else q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`divergent (${U.lineCount}L vs ${W.lineCount}L), not in intentional-different allowlist`})}return q.sort((G,J)=>G.dir.localeCompare(J.dir)),q}function fH($,Z,X){let z=[];for(let q of $){if(q.isSymlink)continue;for(let Q of q.brokenImports)z.push({severity:"error",category:"broken-import",file:q.relPath,message:`broken @-import: ${Q}`});for(let Q of q.brokenPathRefs)z.push({severity:"error",category:"broken-path-ref",file:q.relPath,message:`broken path reference: ${Q}`});for(let Q of q.unresolvedCommands)z.push({severity:"warning",category:"unresolved-command",file:q.relPath,message:`unresolved command: ${Q}`});let G=!q.relPath.includes("/"),J=G?X.budgets.rootLines:X.budgets.nestedWarnLines;if(q.lineCount>J)z.push({severity:"warning",category:"over-budget",file:q.relPath,message:`${q.lineCount} lines exceeds ${G?"root":"nested"} budget of ${J}`})}for(let q of Z)if(q.classification==="unexpected-duplicate"){let G=q.detail.startsWith("divergent")?"error":"warning";z.push({severity:G,category:G==="error"?"divergent-pair":"duplicate-pair",file:q.dir||"(root)",message:`AGENTS.md / CLAUDE.md ${q.detail}`})}return z}function L0($){let Z=$.confidence;if($.error)return{icon:"\u2717",label:"Error",confidence:Z,tone:"error"};if($.traps.fired.length>0)return{icon:"\u2717",label:"Trap fired",confidence:Z,tone:"error"};if($.answerable==="YES")return{icon:"\u2713",label:Z>=90?"Well grounded":"Grounded",confidence:Z,tone:"success"};if($.answerable==="PARTIAL")return{icon:"\u26A0",label:"Partially grounded",confidence:Z,tone:"warning"};return{icon:"\u2717",label:"Ungrounded",confidence:Z,tone:"error"}}function x9($){let Z=hH($);if(Z===null)return[];let X=[],z=/^\s*-\s+\[([^\]]+)\]\s*(.*)$/gm,q=z.exec(Z);while(q!==null)X.push({id:q[1].trim(),note:q[2].trim()||void 0}),q=z.exec(Z);return X}function hH($){let X=/^##\s+Sources\s*$/im.exec($);if(!X)return null;let z=X.index+X[0].length,q=$.slice(z),G=/^##\s+/m.exec(q);return G?q.slice(0,G.index):q}function T$($){let Z=x9($.response),X=new Set(Z.map((V)=>V.id)),z=new Set($.registeredIds),q=new Set($.requiredSources),G=[...X],J=[...q].filter((V)=>!X.has(V)),Q=[...X].filter((V)=>!z.has(V)),Y=[...q],U,W,H;if(G.length===0)U="NO",W=0,H="No citations in response";else if(Q.length===G.length)U="NO",W=0,H=`All cited sources are unknown: ${Q.join(", ")}`;else if(J.length===0&&Q.length===0)U="YES",W=100,H=Y.length>0?`All required sources cited: ${Y.join(", ")}`:`Cited registered sources: ${G.join(", ")}`;else{U="PARTIAL";let V=Y.length>0?Y.length:1,B=Y.length-J.length,L=Y.length>0?B/V*100:60,T=Q.length*15;W=Math.max(0,Math.min(100,Math.round(L-T)));let K=[];if(J.length>0)K.push(`missing: ${J.join(", ")}`);if(Q.length>0)K.push(`unknown: ${Q.join(", ")}`);H=K.join("; ")}return{answerable:U,confidence:W,reason:H,citations:{cited:G,required:Y,missing:J,unknown:Q}}}function P2($){let Z=$.expected,X=(Z?.includes??[]).map((J)=>({value:J,satisfied:$.response.includes(J)})),z=(Z?.excludes??[]).map((J)=>({value:J,satisfied:!$.response.includes(J)})),q=X.filter((J)=>J.satisfied).length+z.filter((J)=>J.satisfied).length,G=X.length+z.length;return{includes:X,excludes:z,satisfied:q,total:G}}var c0="0.40.1";var $Z=!1,i0=void 0,k9=void 0,gH=void 0,vH=void 0,uH=void 0,ZZ=void 0,mH=void 0,I2=void 0,f9=void 0,XZ=void 0,h9=void 0,A2=void 0,zZ=void 0;function qZ($,Z={auto:!1}){if($Z)throw Error(`you must \`import '@anthropic-ai/sdk/shims/${$.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(i0)throw Error(`can't \`import '@anthropic-ai/sdk/shims/${$.kind}'\` after \`import '@anthropic-ai/sdk/shims/${i0}'\``);$Z=Z.auto,i0=$.kind,k9=$.fetch,gH=$.Request,vH=$.Response,uH=$.Headers,ZZ=$.FormData,mH=$.Blob,I2=$.File,f9=$.ReadableStream,XZ=$.getMultipartRequestOptions,h9=$.getDefaultAgent,A2=$.fileFromPath,zZ=$.isFsReadStream}class g9{constructor($){this.body=$}get[Symbol.toStringTag](){return"MultipartBody"}}function GZ({manuallyImported:$}={}){let Z=$?"You may need to use polyfills":"Add one of these imports before your first `import \u2026 from '@anthropic-ai/sdk'`:\n- `import '@anthropic-ai/sdk/shims/node'` (if you're running on Node)\n- `import '@anthropic-ai/sdk/shims/web'` (otherwise)\n",X,z,q,G;try{X=fetch,z=Request,q=Response,G=Headers}catch(J){throw Error(`this environment is missing the following Web Fetch API type: ${J.message}. ${Z}`)}return{kind:"web",fetch:X,Request:z,Response:q,Headers:G,FormData:typeof FormData<"u"?FormData:class{constructor(){throw Error(`file uploads aren't supported in this environment yet as 'FormData' is undefined. ${Z}`)}},Blob:typeof Blob<"u"?Blob:class{constructor(){throw Error(`file uploads aren't supported in this environment yet as 'Blob' is undefined. ${Z}`)}},File:typeof File<"u"?File:class{constructor(){throw Error(`file uploads aren't supported in this environment yet as 'File' is undefined. ${Z}`)}},ReadableStream:typeof ReadableStream<"u"?ReadableStream:class{constructor(){throw Error(`streaming isn't supported in this environment yet as 'ReadableStream' is undefined. ${Z}`)}},getMultipartRequestOptions:async(J,Q)=>({...Q,body:new g9(J)}),getDefaultAgent:(J)=>{return},fileFromPath:()=>{throw Error("The `fileFromPath` function is only supported in Node. See the README for more details: https://www.github.com/anthropics/anthropic-sdk-typescript#file-uploads")},isFsReadStream:(J)=>!1}}import{ReadStream as pH}from"fs";function JZ(){let $=GZ();function Z(X){return X instanceof pH}return{...$,isFsReadStream:Z}}var v9=()=>{if(!i0)qZ(JZ(),{auto:!0})};v9();class A extends Error{}class v extends A{constructor($,Z,X,z){super(`${v.makeMessage($,Z,X)}`);this.status=$,this.headers=z,this.request_id=z?.["request-id"],this.error=Z}static makeMessage($,Z,X){let z=Z?.message?typeof Z.message==="string"?Z.message:JSON.stringify(Z.message):Z?JSON.stringify(Z):X;if($&&z)return`${$} ${z}`;if($)return`${$} status code (no body)`;if(z)return z;return"(no status code or body)"}static generate($,Z,X,z){if(!$||!z)return new a0({message:X,cause:k2(Z)});let q=Z;if($===400)return new j2($,q,X,z);if($===401)return new N2($,q,X,z);if($===403)return new S2($,q,X,z);if($===404)return new C2($,q,X,z);if($===409)return new E2($,q,X,z);if($===422)return new b2($,q,X,z);if($===429)return new y2($,q,X,z);if($>=500)return new x2($,q,X,z);return new v($,q,X,z)}}class m extends v{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}}class a0 extends v{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}}class X1 extends a0{constructor({message:$}={}){super({message:$??"Request timed out."})}}class j2 extends v{}class N2 extends v{}class S2 extends v{}class C2 extends v{}class E2 extends v{}class b2 extends v{}class y2 extends v{}class x2 extends v{}var f2=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},n0=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},r;class b0{constructor(){r.set(this,void 0),this.buffer=new Uint8Array,f2(this,r,null,"f")}decode($){if($==null)return[];let Z=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?new TextEncoder().encode($):$,X=new Uint8Array(this.buffer.length+Z.length);X.set(this.buffer),X.set(Z,this.buffer.length),this.buffer=X;let z=[],q;while((q=cH(this.buffer,n0(this,r,"f")))!=null){if(q.carriage&&n0(this,r,"f")==null){f2(this,r,q.index,"f");continue}if(n0(this,r,"f")!=null&&(q.index!==n0(this,r,"f")+1||q.carriage)){z.push(this.decodeText(this.buffer.slice(0,n0(this,r,"f")-1))),this.buffer=this.buffer.slice(n0(this,r,"f")),f2(this,r,null,"f");continue}let G=n0(this,r,"f")!==null?q.preceding-1:q.preceding,J=this.decodeText(this.buffer.slice(0,G));z.push(J),this.buffer=this.buffer.slice(q.index),f2(this,r,null,"f")}return z}decodeText($){if($==null)return"";if(typeof $==="string")return $;if(typeof Buffer<"u"){if($ instanceof Buffer)return $.toString();if($ instanceof Uint8Array)return Buffer.from($).toString();throw new A(`Unexpected: received non-Uint8Array (${$.constructor.name}) stream chunk in an environment with a global "Buffer" defined, which this library assumes to be Node. Please report this error.`)}if(typeof TextDecoder<"u"){if($ instanceof Uint8Array||$ instanceof ArrayBuffer)return this.textDecoder??(this.textDecoder=new TextDecoder("utf8")),this.textDecoder.decode($);throw new A(`Unexpected: received non-Uint8Array/ArrayBuffer (${$.constructor.name}) in a web platform. Please report this error.`)}throw new A("Unexpected: neither Buffer nor TextDecoder are available as globals. Please report this error.")}flush(){if(!this.buffer.length)return[];return this.decode(`
|
|
193
|
-
`)}}
|
|
194
|
-
`,"\r"]);b0.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function
|
|
195
|
-
`);z.enqueue(J)}catch(q){z.error(q)}},async cancel(){await Z.return?.()}})}}async function*
|
|
196
|
-
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],q}if(this.chunks.push($),$.startsWith(":"))return null;let[Z,X,z]=nH($,":");if(z.startsWith(" "))z=z.substring(1);if(Z==="event")this.event=z;else if(Z==="data")this.data.push(z);return null}}function nH($,Z){let X=$.indexOf(Z);if(X!==-1)return[$.substring(0,X),Z,$.substring(X+Z.length)];return[$,"",""]}var sH=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function",rH=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&q1($),q1=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function";async function UZ($,Z,X){if($=await $,rH($))return $;if(sH($)){let q=await $.blob();Z||(Z=new URL($.url).pathname.split(/[\\/]/).pop()??"unknown_file");let G=q1(q)?[await q.arrayBuffer()]:[q];return new I2(G,Z,X)}let z=await oH($);if(Z||(Z=eH($)??"unknown_file"),!X?.type){let q=z[0]?.type;if(typeof q==="string")X={...X,type:q}}return new I2(z,Z,X)}async function oH($){let Z=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)Z.push($);else if(q1($))Z.push(await $.arrayBuffer());else if($W($))for await(let X of $)Z.push(X);else throw Error(`Unexpected data type: ${typeof $}; constructor: ${$?.constructor?.name}; props: ${tH($)}`);return Z}function tH($){return`[${Object.getOwnPropertyNames($).map((X)=>`"${X}"`).join(", ")}]`}function eH($){return m9($.name)||m9($.filename)||m9($.path)?.split(/[\\/]/).pop()}var m9=($)=>{if(typeof $==="string")return $;if(typeof Buffer<"u"&&$ instanceof Buffer)return String($);return},$W=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function",d9=($)=>$&&typeof $==="object"&&$.body&&$[Symbol.toStringTag]==="MultipartBody";var XW=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},zW=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},h2;v9();async function BZ($){let{response:Z}=$;if($.options.stream){if(B$("response",Z.status,Z.url,Z.headers,Z.body),$.options.__streamClass)return $.options.__streamClass.fromSSEResponse(Z,$.controller);return o.fromSSEResponse(Z,$.controller)}if(Z.status===204)return null;if($.options.__binaryResponse)return Z;let z=Z.headers.get("content-type")?.split(";")[0]?.trim();if(z?.includes("application/json")||z?.endsWith("+json")){let J=await Z.json();return B$("response",Z.status,Z.url,Z.headers,J),KZ(J,Z)}let G=await Z.text();return B$("response",Z.status,Z.url,Z.headers,G),G}function KZ($,Z){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:Z.headers.get("request-id"),enumerable:!1})}class v2 extends Promise{constructor($,Z=BZ){super((X)=>{X(null)});this.responsePromise=$,this.parseResponse=Z}_thenUnwrap($){return new v2(this.responsePromise,async(Z)=>KZ($(await this.parseResponse(Z),Z),Z.response))}asResponse(){return this.responsePromise.then(($)=>$.response)}async withResponse(){let[$,Z]=await Promise.all([this.parse(),this.asResponse()]);return{data:$,response:Z,request_id:Z.headers.get("request-id")}}parse(){if(!this.parsedPromise)this.parsedPromise=this.responsePromise.then(this.parseResponse);return this.parsedPromise}then($,Z){return this.parse().then($,Z)}catch($){return this.parse().catch($)}finally($){return this.parse().finally($)}}class l9{constructor({baseURL:$,maxRetries:Z=2,timeout:X=600000,httpAgent:z,fetch:q}){this.baseURL=$,this.maxRetries=p9("maxRetries",Z),this.timeout=p9("timeout",X),this.httpAgent=z,this.fetch=q??k9}authHeaders($){return{}}defaultHeaders($){return{Accept:"application/json","Content-Type":"application/json","User-Agent":this.getUserAgent(),...QW(),...this.authHeaders($)}}validateHeaders($,Z){}defaultIdempotencyKey(){return`stainless-node-retry-${VW()}`}get($,Z){return this.methodRequest("get",$,Z)}post($,Z){return this.methodRequest("post",$,Z)}patch($,Z){return this.methodRequest("patch",$,Z)}put($,Z){return this.methodRequest("put",$,Z)}delete($,Z){return this.methodRequest("delete",$,Z)}methodRequest($,Z,X){return this.request(Promise.resolve(X).then(async(z)=>{let q=z&&q1(z?.body)?new DataView(await z.body.arrayBuffer()):z?.body instanceof DataView?z.body:z?.body instanceof ArrayBuffer?new DataView(z.body):z&&ArrayBuffer.isView(z?.body)?new DataView(z.body.buffer):z?.body;return{method:$,path:Z,...z,body:q}}))}getAPIList($,Z,X){return this.requestAPIList(Z,{method:"get",path:$,...X})}calculateContentLength($){if(typeof $==="string"){if(typeof Buffer<"u")return Buffer.byteLength($,"utf8").toString();if(typeof TextEncoder<"u")return new TextEncoder().encode($).length.toString()}else if(ArrayBuffer.isView($))return $.byteLength.toString();return null}buildRequest($,{retryCount:Z=0}={}){let X={...$},{method:z,path:q,query:G,headers:J={}}=X,Q=ArrayBuffer.isView(X.body)||X.__binaryRequest&&typeof X.body==="string"?X.body:d9(X.body)?X.body.body:X.body?JSON.stringify(X.body,null,2):null,Y=this.calculateContentLength(Q),U=this.buildURL(q,G);if("timeout"in X)p9("timeout",X.timeout);X.timeout=X.timeout??this.timeout;let W=X.httpAgent??this.httpAgent??h9(U),H=X.timeout+1000;if(typeof W?.options?.timeout==="number"&&H>(W.options.timeout??0))W.options.timeout=H;if(this.idempotencyHeader&&z!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();J[this.idempotencyHeader]=$.idempotencyKey}let V=this.buildHeaders({options:X,headers:J,contentLength:Y,retryCount:Z});return{req:{method:z,...Q&&{body:Q},headers:V,...W&&{agent:W},signal:X.signal??null},url:U,timeout:X.timeout}}buildHeaders({options:$,headers:Z,contentLength:X,retryCount:z}){let q={};if(X)q["content-length"]=X;let G=this.defaultHeaders($);if(TZ(q,G),TZ(q,Z),d9($.body)&&i0!=="node")delete q["content-type"];if(g2(G,"x-stainless-retry-count")===void 0&&g2(Z,"x-stainless-retry-count")===void 0)q["x-stainless-retry-count"]=String(z);if(g2(G,"x-stainless-timeout")===void 0&&g2(Z,"x-stainless-timeout")===void 0&&$.timeout)q["x-stainless-timeout"]=String(Math.trunc($.timeout/1000));return this.validateHeaders(q,Z),q}_calculateNonstreamingTimeout($){if(3600*$/128000>600)throw new A("Streaming is strongly recommended for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-python#streaming-responses for more details");return 600000}async prepareOptions($){}async prepareRequest($,{url:Z,options:X}){}parseHeaders($){return!$?{}:(Symbol.iterator in $)?Object.fromEntries(Array.from($).map((Z)=>[...Z])):{...$}}makeStatusError($,Z,X,z){return v.generate($,Z,X,z)}request($,Z=null){return new v2(this.makeRequest($,Z))}async makeRequest($,Z){let X=await $,z=X.maxRetries??this.maxRetries;if(Z==null)Z=z;await this.prepareOptions(X);let{req:q,url:G,timeout:J}=this.buildRequest(X,{retryCount:z-Z});if(await this.prepareRequest(q,{url:G,options:X}),B$("request",G,X,q.headers),X.signal?.aborted)throw new m;let Q=new AbortController,Y=await this.fetchWithTimeout(G,q,J,Q).catch(k2);if(Y instanceof Error){if(X.signal?.aborted)throw new m;if(Z)return this.retryRequest(X,Z);if(Y.name==="AbortError")throw new X1;throw new a0({cause:Y})}let U=u9(Y.headers);if(!Y.ok){if(Z&&this.shouldRetry(Y)){let T=`retrying, ${Z} attempts remaining`;return B$(`response (error; ${T})`,Y.status,G,U),this.retryRequest(X,Z,U)}let W=await Y.text().catch((T)=>k2(T).message),H=YW(W),V=H?void 0:W;throw B$(`response (error; ${Z?"(error; no more retries left)":"(error; not retryable)"})`,Y.status,G,U,V),this.makeStatusError(Y.status,H,V,U)}return{response:Y,options:X,controller:Q}}requestAPIList($,Z){let X=this.makeRequest(Z,null);return new LZ(this,X,$)}buildURL($,Z){let X=HW($)?new URL($):new URL(this.baseURL+(this.baseURL.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),z=this.defaultQuery();if(!DZ(z))Z={...z,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))X.search=this.stringifyQuery(Z);return X.toString()}stringifyQuery($){return Object.entries($).filter(([Z,X])=>typeof X<"u").map(([Z,X])=>{if(typeof X==="string"||typeof X==="number"||typeof X==="boolean")return`${encodeURIComponent(Z)}=${encodeURIComponent(X)}`;if(X===null)return`${encodeURIComponent(Z)}=`;throw new A(`Cannot stringify type ${typeof X}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`)}).join("&")}async fetchWithTimeout($,Z,X,z){let{signal:q,...G}=Z||{};if(q)q.addEventListener("abort",()=>z.abort());let J=setTimeout(()=>z.abort(),X),Q={signal:z.signal,...G};if(Q.method)Q.method=Q.method.toUpperCase();let Y=60000,U=setTimeout(()=>{if(Q&&Q?.agent?.sockets){for(let W of Object.values(Q?.agent?.sockets).flat())if(W?.setKeepAlive)W.setKeepAlive(!0,Y)}},Y);return this.fetch.call(void 0,$,Q).finally(()=>{clearTimeout(J),clearTimeout(U)})}shouldRetry($){let Z=$.headers.get("x-should-retry");if(Z==="true")return!0;if(Z==="false")return!1;if($.status===408)return!0;if($.status===409)return!0;if($.status===429)return!0;if($.status>=500)return!0;return!1}async retryRequest($,Z,X){let z,q=X?.["retry-after-ms"];if(q){let J=parseFloat(q);if(!Number.isNaN(J))z=J}let G=X?.["retry-after"];if(G&&!z){let J=parseFloat(G);if(!Number.isNaN(J))z=J*1000;else z=Date.parse(G)-Date.now()}if(!(z&&0<=z&&z<60000)){let J=$.maxRetries??this.maxRetries;z=this.calculateDefaultRetryTimeoutMillis(Z,J)}return await WW(z),this.makeRequest($,Z-1)}calculateDefaultRetryTimeoutMillis($,Z){let q=Z-$,G=Math.min(0.5*Math.pow(2,q),8),J=1-Math.random()*0.25;return G*J*1000}getUserAgent(){return`${this.constructor.name}/JS ${c0}`}}class c9{constructor($,Z,X,z){h2.set(this,void 0),XW(this,h2,$,"f"),this.options=z,this.response=Z,this.body=X}hasNextPage(){if(!this.getPaginatedItems().length)return!1;return this.nextPageInfo()!=null}async getNextPage(){let $=this.nextPageInfo();if(!$)throw new A("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");let Z={...this.options};if("params"in $&&typeof Z.query==="object")Z.query={...Z.query,...$.params};else if("url"in $){let X=[...Object.entries(Z.query||{}),...$.url.searchParams.entries()];for(let[z,q]of X)$.url.searchParams.set(z,q);Z.query=void 0,Z.path=$.url.toString()}return await zW(this,h2,"f").requestAPIList(this.constructor,Z)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(h2=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let Z of $.getPaginatedItems())yield Z}}class LZ extends v2{constructor($,Z,X){super(Z,async(z)=>new X($,z.response,await BZ(z),z.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let Z of $)yield Z}}var u9=($)=>{return new Proxy(Object.fromEntries($.entries()),{get(Z,X){let z=X.toString();return Z[z.toLowerCase()]||Z[z]}})},qW={method:!0,path:!0,query:!0,body:!0,headers:!0,maxRetries:!0,stream:!0,timeout:!0,httpAgent:!0,signal:!0,idempotencyKey:!0,__binaryRequest:!0,__binaryResponse:!0,__streamClass:!0},$0=($)=>{return typeof $==="object"&&$!==null&&!DZ($)&&Object.keys($).every((Z)=>_Z(qW,Z))},GW=()=>{if(typeof Deno<"u"&&Deno.build!=null)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":WZ(Deno.build.os),"X-Stainless-Arch":HZ(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version==="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":process.version};if(Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":WZ(process.platform),"X-Stainless-Arch":HZ(process.arch),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":process.version};let $=JW();if($)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${$.browser}`,"X-Stainless-Runtime-Version":$.version};return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function JW(){if(typeof navigator>"u"||!navigator)return null;let $=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:Z,pattern:X}of $){let z=X.exec(navigator.userAgent);if(z){let q=z[1]||0,G=z[2]||0,J=z[3]||0;return{browser:Z,version:`${q}.${G}.${J}`}}}return null}var HZ=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},WZ=($)=>{if($=$.toLowerCase(),$.includes("ios"))return"iOS";if($==="android")return"Android";if($==="darwin")return"MacOS";if($==="win32")return"Windows";if($==="freebsd")return"FreeBSD";if($==="openbsd")return"OpenBSD";if($==="linux")return"Linux";if($)return`Other:${$}`;return"Unknown"},VZ,QW=()=>{return VZ??(VZ=GW())},YW=($)=>{try{return JSON.parse($)}catch(Z){return}},UW=/^[a-z][a-z0-9+.-]*:/i,HW=($)=>{return UW.test($)},WW=($)=>new Promise((Z)=>setTimeout(Z,$)),p9=($,Z)=>{if(typeof Z!=="number"||!Number.isInteger(Z))throw new A(`${$} must be an integer`);if(Z<0)throw new A(`${$} must be a positive integer`);return Z},k2=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null)try{return Error(JSON.stringify($))}catch{}return Error(String($))};var u2=($)=>{if(typeof process<"u")return process.env?.[$]?.trim()??void 0;if(typeof Deno<"u")return Deno.env?.get?.($)?.trim();return};function DZ($){if(!$)return!0;for(let Z in $)return!1;return!0}function _Z($,Z){return Object.prototype.hasOwnProperty.call($,Z)}function TZ($,Z){for(let X in Z){if(!_Z(Z,X))continue;let z=X.toLowerCase();if(!z)continue;let q=Z[X];if(q===null)delete $[z];else if(q!==void 0)$[z]=q}}function B$($,...Z){if(typeof process<"u"&&process?.env?.DEBUG==="true")console.log(`Anthropic:DEBUG:${$}`,...Z)}var VW=()=>{return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,($)=>{let Z=Math.random()*16|0;return($==="x"?Z:Z&3|8).toString(16)})},OZ=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},TW=($)=>{return typeof $?.get==="function"};var g2=($,Z)=>{let X=Z.toLowerCase();if(TW($)){let z=Z[0]?.toUpperCase()+Z.substring(1).replace(/([^\w])(\w)/g,(q,G,J)=>G+J.toUpperCase());for(let q of[Z,X,Z.toUpperCase(),z]){let G=$.get(q);if(G)return G}}for(let[z,q]of Object.entries($))if(z.toLowerCase()===X){if(Array.isArray(q)){if(q.length<=1)return q[0];return console.warn(`Received ${q.length} entries for the ${Z} header, using the first entry.`),q[0]}return q}return};class D0 extends c9{constructor($,Z,X,z){super($,Z,X,z);this.data=X.data||[],this.has_more=X.has_more||!1,this.first_id=X.first_id||null,this.last_id=X.last_id||null}getPaginatedItems(){return this.data??[]}hasNextPage(){if(this.has_more===!1)return!1;return super.hasNextPage()}nextPageParams(){let $=this.nextPageInfo();if(!$)return null;if("params"in $)return $.params;let Z=Object.fromEntries($.url.searchParams);if(!Object.keys(Z).length)return null;return Z}nextPageInfo(){if(this.options.query?.before_id){let Z=this.first_id;if(!Z)return null;return{params:{before_id:Z}}}let $=this.last_id;if(!$)return null;return{params:{after_id:$}}}}class u{constructor($){this._client=$}}class K$ extends u{retrieve($,Z){return this._client.get(`/v1/models/${$}?beta=true`,Z)}list($={},Z){if($0($))return this.list({},$);return this._client.getAPIList("/v1/models?beta=true",G1,{query:$,...Z})}}class G1 extends D0{}K$.BetaModelInfosPage=G1;class L${constructor($,Z){this.iterator=$,this.controller=Z}async*decoder(){let $=new b0;for await(let Z of this.iterator)for(let X of $.decode(Z))yield JSON.parse(X);for(let Z of $.flush())yield JSON.parse(Z)}[Symbol.asyncIterator](){return this.decoder()}static fromResponse($,Z){if(!$.body)throw Z.abort(),new A("Attempted to iterate over a response with no body");return new L$(z1($.body),Z)}}class D$ extends u{create($,Z){let{betas:X,...z}=$;return this._client.post("/v1/messages/batches?beta=true",{body:z,...Z,headers:{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString(),...Z?.headers}})}retrieve($,Z={},X){if($0(Z))return this.retrieve($,{},Z);let{betas:z}=Z;return this._client.get(`/v1/messages/batches/${$}?beta=true`,{...X,headers:{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString(),...X?.headers}})}list($={},Z){if($0($))return this.list({},$);let{betas:X,...z}=$;return this._client.getAPIList("/v1/messages/batches?beta=true",J1,{query:z,...Z,headers:{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString(),...Z?.headers}})}delete($,Z={},X){if($0(Z))return this.delete($,{},Z);let{betas:z}=Z;return this._client.delete(`/v1/messages/batches/${$}?beta=true`,{...X,headers:{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString(),...X?.headers}})}cancel($,Z={},X){if($0(Z))return this.cancel($,{},Z);let{betas:z}=Z;return this._client.post(`/v1/messages/batches/${$}/cancel?beta=true`,{...X,headers:{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString(),...X?.headers}})}async results($,Z={},X){if($0(Z))return this.results($,{},Z);let z=await this.retrieve($);if(!z.results_url)throw new A(`No batch \`results_url\`; Has it finished processing? ${z.processing_status} - ${z.id}`);let{betas:q}=Z;return this._client.get(z.results_url,{...X,headers:{"anthropic-beta":[...q??[],"message-batches-2024-09-24"].toString(),Accept:"application/binary",...X?.headers},stream:!0,__binaryResponse:!0})._thenUnwrap((G,J)=>L$.fromResponse(J.response,J.controller))}}class J1 extends D0{}D$.BetaMessageBatchesPage=J1;var DW=($)=>{let Z=0,X=[];while(Z<$.length){let z=$[Z];if(z==="\\"){Z++;continue}if(z==="{"){X.push({type:"brace",value:"{"}),Z++;continue}if(z==="}"){X.push({type:"brace",value:"}"}),Z++;continue}if(z==="["){X.push({type:"paren",value:"["}),Z++;continue}if(z==="]"){X.push({type:"paren",value:"]"}),Z++;continue}if(z===":"){X.push({type:"separator",value:":"}),Z++;continue}if(z===","){X.push({type:"delimiter",value:","}),Z++;continue}if(z==='"'){let Q="",Y=!1;z=$[++Z];while(z!=='"'){if(Z===$.length){Y=!0;break}if(z==="\\"){if(Z++,Z===$.length){Y=!0;break}Q+=z+$[Z],z=$[++Z]}else Q+=z,z=$[++Z]}if(z=$[++Z],!Y)X.push({type:"string",value:Q});continue}if(z&&/\s/.test(z)){Z++;continue}let G=/[0-9]/;if(z&&G.test(z)||z==="-"||z==="."){let Q="";if(z==="-")Q+=z,z=$[++Z];while(z&&G.test(z)||z===".")Q+=z,z=$[++Z];X.push({type:"number",value:Q});continue}let J=/[a-z]/i;if(z&&J.test(z)){let Q="";while(z&&J.test(z)){if(Z===$.length)break;Q+=z,z=$[++Z]}if(Q=="true"||Q=="false"||Q==="null")X.push({type:"name",value:Q});else{Z++;continue}continue}Z++}return X},_$=($)=>{if($.length===0)return $;let Z=$[$.length-1];switch(Z.type){case"separator":return $=$.slice(0,$.length-1),_$($);break;case"number":let X=Z.value[Z.value.length-1];if(X==="."||X==="-")return $=$.slice(0,$.length-1),_$($);case"string":let z=$[$.length-2];if(z?.type==="delimiter")return $=$.slice(0,$.length-1),_$($);else if(z?.type==="brace"&&z.value==="{")return $=$.slice(0,$.length-1),_$($);break;case"delimiter":return $=$.slice(0,$.length-1),_$($);break}return $},_W=($)=>{let Z=[];if($.map((X)=>{if(X.type==="brace")if(X.value==="{")Z.push("}");else Z.splice(Z.lastIndexOf("}"),1);if(X.type==="paren")if(X.value==="[")Z.push("]");else Z.splice(Z.lastIndexOf("]"),1)}),Z.length>0)Z.reverse().map((X)=>{if(X==="}")$.push({type:"brace",value:"}"});else if(X==="]")$.push({type:"paren",value:"]"})});return $},OW=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},m2=($)=>JSON.parse(OW(_W(_$(DW($)))));var d=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},j=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},Z0,y0,Q1,d2,Y1,U1,p2,H1,_0,W1,l2,c2,O$,i2,a2,i9,MZ,a9,n9,s9,r9,FZ,wZ="__json_buf";class V1{constructor(){Z0.add(this),this.messages=[],this.receivedMessages=[],y0.set(this,void 0),this.controller=new AbortController,Q1.set(this,void 0),d2.set(this,()=>{}),Y1.set(this,()=>{}),U1.set(this,void 0),p2.set(this,()=>{}),H1.set(this,()=>{}),_0.set(this,{}),W1.set(this,!1),l2.set(this,!1),c2.set(this,!1),O$.set(this,!1),i2.set(this,void 0),a2.set(this,void 0),a9.set(this,($)=>{if(d(this,l2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new m;if($ instanceof m)return d(this,c2,!0,"f"),this._emit("abort",$);if($ instanceof A)return this._emit("error",$);if($ instanceof Error){let Z=new A($.message);return Z.cause=$,this._emit("error",Z)}return this._emit("error",new A(String($)))}),d(this,Q1,new Promise(($,Z)=>{d(this,d2,$,"f"),d(this,Y1,Z,"f")}),"f"),d(this,U1,new Promise(($,Z)=>{d(this,p2,$,"f"),d(this,H1,Z,"f")}),"f"),j(this,Q1,"f").catch(()=>{}),j(this,U1,"f").catch(()=>{})}get response(){return j(this,i2,"f")}get request_id(){return j(this,a2,"f")}async withResponse(){let $=await j(this,Q1,"f");if(!$)throw Error("Could not resolve a `Response` object");return{data:this,response:$,request_id:$.headers.get("request-id")}}static fromReadableStream($){let Z=new V1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new V1;for(let q of Z.messages)z._addMessageParam(q);return z._run(()=>z._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),z}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},j(this,a9,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal;if(z){if(z.aborted)this.controller.abort();z.addEventListener("abort",()=>this.controller.abort())}j(this,Z0,"m",n9).call(this);let{response:q,data:G}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let J of G)j(this,Z0,"m",s9).call(this,J);if(G.controller.signal?.aborted)throw new m;j(this,Z0,"m",r9).call(this)}_connected($){if(this.ended)return;d(this,i2,$,"f"),d(this,a2,$?.headers.get("request-id"),"f"),j(this,d2,"f").call(this,$),this._emit("connect")}get ended(){return j(this,W1,"f")}get errored(){return j(this,l2,"f")}get aborted(){return j(this,c2,"f")}abort(){this.controller.abort()}on($,Z){return(j(this,_0,"f")[$]||(j(this,_0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=j(this,_0,"f")[$];if(!X)return this;let z=X.findIndex((q)=>q.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(j(this,_0,"f")[$]||(j(this,_0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(d(this,O$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){d(this,O$,!0,"f"),await j(this,U1,"f")}get currentMessage(){return j(this,y0,"f")}async finalMessage(){return await this.done(),j(this,Z0,"m",i9).call(this)}async finalText(){return await this.done(),j(this,Z0,"m",MZ).call(this)}_emit($,...Z){if(j(this,W1,"f"))return;if($==="end")d(this,W1,!0,"f"),j(this,p2,"f").call(this);let X=j(this,_0,"f")[$];if(X)j(this,_0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!j(this,O$,"f")&&!X?.length)Promise.reject(z);j(this,Y1,"f").call(this,z),j(this,H1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!j(this,O$,"f")&&!X?.length)Promise.reject(z);j(this,Y1,"f").call(this,z),j(this,H1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",j(this,Z0,"m",i9).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}j(this,Z0,"m",n9).call(this),this._connected(null);let z=o.fromReadableStream($,this.controller);for await(let q of z)j(this,Z0,"m",s9).call(this,q);if(z.controller.signal?.aborted)throw new m;j(this,Z0,"m",r9).call(this)}[(y0=new WeakMap,Q1=new WeakMap,d2=new WeakMap,Y1=new WeakMap,U1=new WeakMap,p2=new WeakMap,H1=new WeakMap,_0=new WeakMap,W1=new WeakMap,l2=new WeakMap,c2=new WeakMap,O$=new WeakMap,i2=new WeakMap,a2=new WeakMap,a9=new WeakMap,Z0=new WeakSet,i9=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},MZ=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");let Z=this.receivedMessages.at(-1).content.filter((X)=>X.type==="text").map((X)=>X.text);if(Z.length===0)throw new A("stream ended without producing a content block with type=text");return Z.join(" ")},n9=function(){if(this.ended)return;d(this,y0,void 0,"f")},s9=function(Z){if(this.ended)return;let X=j(this,Z0,"m",FZ).call(this,Z);switch(this._emit("streamEvent",Z,X),Z.type){case"content_block_delta":{let z=X.content.at(-1);switch(Z.delta.type){case"text_delta":{if(z.type==="text")this._emit("text",Z.delta.text,z.text||"");break}case"citations_delta":{if(z.type==="text")this._emit("citation",Z.delta.citation,z.citations??[]);break}case"input_json_delta":{if(z.type==="tool_use"&&z.input)this._emit("inputJson",Z.delta.partial_json,z.input);break}case"thinking_delta":{if(z.type==="thinking")this._emit("thinking",Z.delta.thinking,z.thinking);break}case"signature_delta":{if(z.type==="thinking")this._emit("signature",z.signature);break}default:RZ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(X,!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{d(this,y0,X,"f");break}case"content_block_start":case"message_delta":break}},r9=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=j(this,y0,"f");if(!Z)throw new A("request ended without sending any chunks");return d(this,y0,void 0,"f"),Z},FZ=function(Z){let X=j(this,y0,"f");if(Z.type==="message_start"){if(X)throw new A(`Unexpected event order, got ${Z.type} before receiving "message_stop"`);return Z.message}if(!X)throw new A(`Unexpected event order, got ${Z.type} before "message_start"`);switch(Z.type){case"message_stop":return X;case"message_delta":return X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,X;case"content_block_start":return X.content.push(Z.content_block),X;case"content_block_delta":{let z=X.content.at(Z.index);switch(Z.delta.type){case"text_delta":{if(z?.type==="text")z.text+=Z.delta.text;break}case"citations_delta":{if(z?.type==="text")z.citations??(z.citations=[]),z.citations.push(Z.delta.citation);break}case"input_json_delta":{if(z?.type==="tool_use"){let q=z[wZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,wZ,{value:q,enumerable:!1,writable:!0}),q)z.input=m2(q)}break}case"thinking_delta":{if(z?.type==="thinking")z.thinking+=Z.delta.thinking;break}case"signature_delta":{if(z?.type==="thinking")z.signature=Z.delta.signature;break}default:RZ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let q=Z.shift();if(q)q.resolve(z);else $.push(z)}),this.on("end",()=>{X=!0;for(let z of Z)z.resolve(void 0);Z.length=0}),this.on("abort",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((q,G)=>Z.push({resolve:q,reject:G})).then((q)=>q?{value:q,done:!1}:{value:void 0,done:!0})}return{value:$.shift(),done:!1}},return:async()=>{return this.abort(),{value:void 0,done:!0}}}}toReadableStream(){return new o(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function RZ($){}var PZ={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025"};class s0 extends u{constructor(){super(...arguments);this.batches=new D$(this._client)}create($,Z){let{betas:X,...z}=$;if(z.model in PZ)console.warn(`The model '${z.model}' is deprecated and will reach end-of-life on ${PZ[z.model]}
|
|
197
|
-
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);return this._client.post("/v1/messages?beta=true",{body:z,timeout:this._client._options.timeout??(z.stream?600000:this._client._calculateNonstreamingTimeout(z.max_tokens)),...Z,headers:{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0,...Z?.headers},stream:$.stream??!1})}stream($,Z){return V1.createMessage(this,$,Z)}countTokens($,Z){let{betas:X,...z}=$;return this._client.post("/v1/messages/count_tokens?beta=true",{body:z,...Z,headers:{"anthropic-beta":[...X??[],"token-counting-2024-11-01"].toString(),...Z?.headers}})}}s0.Batches=D$;s0.BetaMessageBatchesPage=J1;class O0 extends u{constructor(){super(...arguments);this.models=new K$(this._client),this.messages=new s0(this._client)}}O0.Models=K$;O0.BetaModelInfosPage=G1;O0.Messages=s0;class M$ extends u{create($,Z){return this._client.post("/v1/complete",{body:$,timeout:this._client._options.timeout??600000,...Z,stream:$.stream??!1})}}class F$ extends u{create($,Z){return this._client.post("/v1/messages/batches",{body:$,...Z})}retrieve($,Z){return this._client.get(`/v1/messages/batches/${$}`,Z)}list($={},Z){if($0($))return this.list({},$);return this._client.getAPIList("/v1/messages/batches",T1,{query:$,...Z})}delete($,Z){return this._client.delete(`/v1/messages/batches/${$}`,Z)}cancel($,Z){return this._client.post(`/v1/messages/batches/${$}/cancel`,Z)}async results($,Z){let X=await this.retrieve($);if(!X.results_url)throw new A(`No batch \`results_url\`; Has it finished processing? ${X.processing_status} - ${X.id}`);return this._client.get(X.results_url,{...Z,headers:{Accept:"application/binary",...Z?.headers},__binaryResponse:!0})._thenUnwrap((z,q)=>L$.fromResponse(q.response,q.controller))}}class T1 extends D0{}F$.MessageBatchesPage=T1;var p=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},N=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},X0,x0,B1,n2,K1,L1,s2,D1,M0,_1,r2,o2,w$,t2,e2,o9,IZ,t9,e9,$5,Z5,AZ,jZ="__json_buf";class O1{constructor(){X0.add(this),this.messages=[],this.receivedMessages=[],x0.set(this,void 0),this.controller=new AbortController,B1.set(this,void 0),n2.set(this,()=>{}),K1.set(this,()=>{}),L1.set(this,void 0),s2.set(this,()=>{}),D1.set(this,()=>{}),M0.set(this,{}),_1.set(this,!1),r2.set(this,!1),o2.set(this,!1),w$.set(this,!1),t2.set(this,void 0),e2.set(this,void 0),t9.set(this,($)=>{if(p(this,r2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new m;if($ instanceof m)return p(this,o2,!0,"f"),this._emit("abort",$);if($ instanceof A)return this._emit("error",$);if($ instanceof Error){let Z=new A($.message);return Z.cause=$,this._emit("error",Z)}return this._emit("error",new A(String($)))}),p(this,B1,new Promise(($,Z)=>{p(this,n2,$,"f"),p(this,K1,Z,"f")}),"f"),p(this,L1,new Promise(($,Z)=>{p(this,s2,$,"f"),p(this,D1,Z,"f")}),"f"),N(this,B1,"f").catch(()=>{}),N(this,L1,"f").catch(()=>{})}get response(){return N(this,t2,"f")}get request_id(){return N(this,e2,"f")}async withResponse(){let $=await N(this,B1,"f");if(!$)throw Error("Could not resolve a `Response` object");return{data:this,response:$,request_id:$.headers.get("request-id")}}static fromReadableStream($){let Z=new O1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new O1;for(let q of Z.messages)z._addMessageParam(q);return z._run(()=>z._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),z}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},N(this,t9,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal;if(z){if(z.aborted)this.controller.abort();z.addEventListener("abort",()=>this.controller.abort())}N(this,X0,"m",e9).call(this);let{response:q,data:G}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let J of G)N(this,X0,"m",$5).call(this,J);if(G.controller.signal?.aborted)throw new m;N(this,X0,"m",Z5).call(this)}_connected($){if(this.ended)return;p(this,t2,$,"f"),p(this,e2,$?.headers.get("request-id"),"f"),N(this,n2,"f").call(this,$),this._emit("connect")}get ended(){return N(this,_1,"f")}get errored(){return N(this,r2,"f")}get aborted(){return N(this,o2,"f")}abort(){this.controller.abort()}on($,Z){return(N(this,M0,"f")[$]||(N(this,M0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=N(this,M0,"f")[$];if(!X)return this;let z=X.findIndex((q)=>q.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(N(this,M0,"f")[$]||(N(this,M0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(p(this,w$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){p(this,w$,!0,"f"),await N(this,L1,"f")}get currentMessage(){return N(this,x0,"f")}async finalMessage(){return await this.done(),N(this,X0,"m",o9).call(this)}async finalText(){return await this.done(),N(this,X0,"m",IZ).call(this)}_emit($,...Z){if(N(this,_1,"f"))return;if($==="end")p(this,_1,!0,"f"),N(this,s2,"f").call(this);let X=N(this,M0,"f")[$];if(X)N(this,M0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!N(this,w$,"f")&&!X?.length)Promise.reject(z);N(this,K1,"f").call(this,z),N(this,D1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!N(this,w$,"f")&&!X?.length)Promise.reject(z);N(this,K1,"f").call(this,z),N(this,D1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",N(this,X0,"m",o9).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}N(this,X0,"m",e9).call(this),this._connected(null);let z=o.fromReadableStream($,this.controller);for await(let q of z)N(this,X0,"m",$5).call(this,q);if(z.controller.signal?.aborted)throw new m;N(this,X0,"m",Z5).call(this)}[(x0=new WeakMap,B1=new WeakMap,n2=new WeakMap,K1=new WeakMap,L1=new WeakMap,s2=new WeakMap,D1=new WeakMap,M0=new WeakMap,_1=new WeakMap,r2=new WeakMap,o2=new WeakMap,w$=new WeakMap,t2=new WeakMap,e2=new WeakMap,t9=new WeakMap,X0=new WeakSet,o9=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},IZ=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");let Z=this.receivedMessages.at(-1).content.filter((X)=>X.type==="text").map((X)=>X.text);if(Z.length===0)throw new A("stream ended without producing a content block with type=text");return Z.join(" ")},e9=function(){if(this.ended)return;p(this,x0,void 0,"f")},$5=function(Z){if(this.ended)return;let X=N(this,X0,"m",AZ).call(this,Z);switch(this._emit("streamEvent",Z,X),Z.type){case"content_block_delta":{let z=X.content.at(-1);switch(Z.delta.type){case"text_delta":{if(z.type==="text")this._emit("text",Z.delta.text,z.text||"");break}case"citations_delta":{if(z.type==="text")this._emit("citation",Z.delta.citation,z.citations??[]);break}case"input_json_delta":{if(z.type==="tool_use"&&z.input)this._emit("inputJson",Z.delta.partial_json,z.input);break}case"thinking_delta":{if(z.type==="thinking")this._emit("thinking",Z.delta.thinking,z.thinking);break}case"signature_delta":{if(z.type==="thinking")this._emit("signature",z.signature);break}default:NZ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(X,!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{p(this,x0,X,"f");break}case"content_block_start":case"message_delta":break}},Z5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=N(this,x0,"f");if(!Z)throw new A("request ended without sending any chunks");return p(this,x0,void 0,"f"),Z},AZ=function(Z){let X=N(this,x0,"f");if(Z.type==="message_start"){if(X)throw new A(`Unexpected event order, got ${Z.type} before receiving "message_stop"`);return Z.message}if(!X)throw new A(`Unexpected event order, got ${Z.type} before "message_start"`);switch(Z.type){case"message_stop":return X;case"message_delta":return X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,X;case"content_block_start":return X.content.push(Z.content_block),X;case"content_block_delta":{let z=X.content.at(Z.index);switch(Z.delta.type){case"text_delta":{if(z?.type==="text")z.text+=Z.delta.text;break}case"citations_delta":{if(z?.type==="text")z.citations??(z.citations=[]),z.citations.push(Z.delta.citation);break}case"input_json_delta":{if(z?.type==="tool_use"){let q=z[jZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,jZ,{value:q,enumerable:!1,writable:!0}),q)z.input=m2(q)}break}case"thinking_delta":{if(z?.type==="thinking")z.thinking+=Z.delta.thinking;break}case"signature_delta":{if(z?.type==="thinking")z.signature=Z.delta.signature;break}default:NZ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let q=Z.shift();if(q)q.resolve(z);else $.push(z)}),this.on("end",()=>{X=!0;for(let z of Z)z.resolve(void 0);Z.length=0}),this.on("abort",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((q,G)=>Z.push({resolve:q,reject:G})).then((q)=>q?{value:q,done:!1}:{value:void 0,done:!0})}return{value:$.shift(),done:!1}},return:async()=>{return this.abort(),{value:void 0,done:!0}}}}toReadableStream(){return new o(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function NZ($){}class k0 extends u{constructor(){super(...arguments);this.batches=new F$(this._client)}create($,Z){if($.model in SZ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${SZ[$.model]}
|
|
198
|
-
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);return this._client.post("/v1/messages",{body:$,timeout:this._client._options.timeout??($.stream?600000:this._client._calculateNonstreamingTimeout($.max_tokens)),...Z,stream:$.stream??!1})}stream($,Z){return O1.createMessage(this,$,Z)}countTokens($,Z){return this._client.post("/v1/messages/count_tokens",{body:$,...Z})}}var
|
|
189
|
+
`);if(H+=T.length+K.length,H>U)throw Error(`Codebase source "${$}" exceeded hard cap of ${U} bytes (matched glob ${Z.path}). Tighten the glob or raise the limit via maxBytes (and accept the request-size risk).`)}if(H>Y)q?.(` warn: codebase source [${$}] is ${H} bytes (soft cap ${Y}); consider tightening the glob`);let V=W.join("");return{id:$,source:Z.path,content:V,name:`${Q.length} file${Q.length===1?"":"s"} in ${Z.path}`,type:"codebase",auditTraps:z,matchedFiles:Q}}async function o8($,Z,X,z){let{path:q,auditTraps:G}=b9(Z);if(typeof Z!=="string"&&Z.type==="codebase")return BH($,Z,X,G,z);if(WH(q))return VH($,q,G);return KH($,q,X,G)}async function z1($,Z,X){let z=Object.entries($);return await Promise.all(z.map(([G,J])=>o8(G,J,Z,X)))}async function t8($){if(!TH(LH($,"pickled.yml")))return{matches:[],findings:[]};let Z=await W$($),X=Z.docs?.sources;if(!X||Object.keys(X).length===0)return{matches:[],findings:[]};let z={};for(let[U,W]of Object.entries(X)){let H=typeof W==="string"?W:W.path;if(H.startsWith("http://")||H.startsWith("https://"))continue;z[U]=W}if(Object.keys(z).length===0)return{matches:[],findings:[]};let q=[],G=new Map;for(let U of Z.scenarios)for(let W of U.traps??[])q.push(W),G.set(W,W.auditSeverity??"warning");if(q.length===0)return{matches:[],findings:[]};let J=await z1(z,$),Q=[],Y=[];for(let U of J){let W=U.auditTraps;if(W===!1)continue;let H=Array.isArray(W)?new Set(W):null,V=U.type==="codebase"&&U.matchedFiles?await _H(U.matchedFiles,$,U.source):[{path:U.source,content:U.content}];for(let B of V)for(let L of q){if(H?.has(L.id))continue;let{fired:K}=E0({response:B.content,traps:[L]}),T=K[0];if(!T)continue;let D=MH(B.content,T.index),_=G.get(L)??"warning";Q.push({sourceId:U.id,sourcePath:B.path,trapId:T.id,trapReason:T.reason,matched:T.matched,snippet:T.snippet,line:D,severity:_}),Y.push({severity:_,category:"trap-source-match",file:B.path,message:`source [${U.id}] matches trap '${T.id}' ("${T.matched}") in ${B.path}. ${T.reason} Fix: remove the stale claim from the source, retire the trap if no longer relevant, set audit.traps: ['${T.id}'] on the source to suppress just this trap (other traps still apply), or set audit.traps: false if the source is deliberately stale or test-only.`})}}return{matches:Q,findings:Y}}async function _H($,Z,X){let z=[];for(let q of $)try{let G=await Bun.file(DH(Z,q)).text();z.push({path:q,content:G})}catch{}return z}function MH($,Z){let X=1,z=Math.min(Z,$.length);for(let q=0;q<z;q++)if($[q]===`
|
|
190
|
+
`)X++;return X}var IH=["AGENTS.md","CLAUDE.md","CLAUDE.local.md","llms.txt","llms-full.txt",".claude/CLAUDE.md",".claude/rules/*.md","**/AGENTS.md","**/CLAUDE.md","**/CLAUDE.local.md","**/llms.txt","**/llms-full.txt","**/.claude/CLAUDE.md","**/.claude/rules/*.md"];async function R2($){let Z=O2($),X=y9(Z.targetRepo);if(!K$(X))throw Error(`targetRepo does not exist: ${X}`);let z=new Set;for(let U of IH){let W=new e8(U);for await(let H of W.scan({cwd:X,dot:!0,onlyFiles:!1,followSymlinks:!1})){if(Z.ignore.some((L)=>new e8(L).match(H)))continue;let V=x9(X,H),B=$Z(V);if(B.isFile()){z.add(H);continue}if(B.isSymbolicLink())try{if(OH(V).isFile())z.add(H)}catch{}}}let q=[];for(let U of[...z].sort())q.push(await RH(X,U,x9(X,U),Z));let G=hH(q,Z),J=gH(q,G,Z),{matches:Q,findings:Y}=await t8(X);return{config:Z,files:q,pairs:G,findings:[...J,...Y],sourceTrapMatches:Q}}async function RH($,Z,X,z){let G=$Z(X).isSymbolicLink(),J=null,Q=Z;if(G){let V=FH(X),B=wH(V)?V:y9(I2(X),V);if(J=B,K$(B))Q=PH($,B)}let Y=G&&J&&K$(J)?J:X,U=P2(Y,"utf8"),W=(U.match(/\n/g)??[]).length,H=U.endsWith(`
|
|
191
|
+
`)?W:W+1;return{relPath:Z,absPath:X,isSymlink:G,symlinkTarget:J,realRelPath:Q,lineCount:H,brokenPathRefs:jH(U,$,Z),brokenImports:SH(U,I2(X)),unresolvedCommands:xH(U,$,z.knownCommands),sections:yH(U)}}function AH($){let Z=$.split("/");if(Z.length<2)return null;if(Z[0]==="packages"||Z[0]==="apps"||Z[0]==="shared")return`${Z[0]}/${Z[1]}`;if(Z[0]==="tests")return Z.slice(0,2).join("/");return null}function jH($,Z,X){let z=fH($),q=I2(X),G=AH(X),J=new Set,Q=/`([^`\n]{2,200})`/g,Y;Y=Q.exec(z);while(Y!==null){let U=Y[1].trim().replace(/[#?].*$/,"");if(kH(U)&&!NH(Z,U,q,G).found)J.add(U);Y=Q.exec(z)}return[...J].sort()}function NH($,Z,X,z){let q=[Z];if(X&&X!==".")q.push(`${X}/${Z}`);if(z)q.push(`${z}/${Z}`);q.push(`packages/${Z}`,`apps/${Z}`,`shared/${Z}`);for(let G of q){let J=G.replace(/\/+/g,"/");if(K$(`${$}/${J}`))return{found:!0,resolvedAs:J}}return{found:!1}}function SH($,Z){let X=new Set,z=/@([\w./@~-]+\.md)/g,q;q=z.exec($);while(q!==null){let G=q[1];if(G.startsWith("~/")){q=z.exec($);continue}let J=G.startsWith("/")?G:y9(Z,G);if(!K$(J))X.add(G);q=z.exec($)}return[...X].sort()}var CH=["bun","pnpm","npm","yarn"],EH=new Set(["install","add","remove","update","i","audit","list","ls","why","outdated","exec","run","create","init","x"]),bH={bun:new Set(["build","test","link","unlink","upgrade"])};function xH($,Z,X){let z=new Set,q=x9(Z,"package.json"),G=new Set;if(K$(q))try{let Q=JSON.parse(P2(q,"utf8"));G=new Set(Object.keys(Q.scripts??{}))}catch{}let J=new Set(X.map((Q)=>Q.trim()));for(let Q of CH){let Y=new RegExp(`\\b${Q}\\s+(?:run\\s+|--filter\\s+\\S+\\s+(?:run\\s+)?)?([a-zA-Z][\\w:.\\-]*)`,"g"),U;U=Y.exec($);while(U!==null){let W=U[1];if(!G.has(W)&&!J.has(`${Q} ${W}`)&&!J.has(`${Q} run ${W}`)&&!EH.has(W)&&!bH[Q]?.has(W))z.add(`${Q} ${W}`);U=Y.exec($)}}return[...z].sort()}function yH($){let Z=$.split(`
|
|
192
|
+
`),X=[],z=null;if(Z.forEach((q,G)=>{if(/^##\s+/.test(q)){if(z)X.push({header:z.header,lines:G-z.start});z={header:q.replace(/^##\s+/,"").trim(),start:G}}}),z){let q=z;X.push({header:q.header,lines:Z.length-q.start})}return X.sort((q,G)=>G.lines-q.lines)}function kH($){if($.length===0||$.length>160)return!1;if(!$.includes("/"))return!1;if(/\s/.test($))return!1;if(/^https?:\/\//.test($))return!1;if(/[*?{}[\]<>]/.test($))return!1;if($.startsWith("@"))return!1;if($.startsWith("~/"))return!1;if(/^[a-z]+:\/\//i.test($))return!1;if(/^cdn\./.test($)||/^unpkg\./.test($)||/^npm\./.test($))return!1;if(/^\/[a-z]/.test($)&&/(?:icon|image|img|asset|file|path)/i.test($))return!1;if(/^(cd|pnpm|npm|yarn|bun|node|git|ls|cat|grep|find|sed|awk|mkdir|rm|mv|cp|echo|export|source|sudo|brew|docker|curl|wget)\b/.test($))return!1;return/[a-zA-Z0-9_.-]\/[a-zA-Z0-9_.-]/.test($)}function fH($){return $.replace(/```[\s\S]*?```/g,"")}function hH($,Z){let X=new Map;for(let G of $){let J=G.relPath.split("/").pop()??"";if(J!=="AGENTS.md"&&J!=="CLAUDE.md")continue;let Q=I2(G.relPath),Y=X.get(Q)??{};if(J==="AGENTS.md")Y.agents=G;if(J==="CLAUDE.md")Y.claude=G;X.set(Q,Y)}let z=new Set(Z.intentionalDifferentPairs),q=[];for(let[G,J]of X){let Q=!!J.agents,Y=!!J.claude;if(!Q&&!Y)continue;if(!Q||!Y){q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"single",detail:Q?"only AGENTS.md":"only CLAUDE.md"});continue}let{agents:U,claude:W}=J,H=`${U.relPath}:${W.relPath}`,V=`${W.relPath}:${U.relPath}`;if(z.has(H)||z.has(V)){q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"intentional-different",detail:`allowlisted: ${U.lineCount}L vs ${W.lineCount}L`});continue}if(U.isSymlink&&U.symlinkTarget===W.absPath||W.isSymlink&&W.symlinkTarget===U.absPath){let T=U.isSymlink?"CLAUDE.md":"AGENTS.md";q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"linked",detail:`canonical: ${T}`});continue}let L=P2(U.absPath,"utf8"),K=P2(W.absPath,"utf8");if(L===K)q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`byte-for-byte duplicate (${U.lineCount}L), not symlinked`});else q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`divergent (${U.lineCount}L vs ${W.lineCount}L), not in intentional-different allowlist`})}return q.sort((G,J)=>G.dir.localeCompare(J.dir)),q}function gH($,Z,X){let z=[];for(let q of $){if(q.isSymlink)continue;for(let Q of q.brokenImports)z.push({severity:"error",category:"broken-import",file:q.relPath,message:`broken @-import: ${Q}`});for(let Q of q.brokenPathRefs)z.push({severity:"error",category:"broken-path-ref",file:q.relPath,message:`broken path reference: ${Q}`});for(let Q of q.unresolvedCommands)z.push({severity:"warning",category:"unresolved-command",file:q.relPath,message:`unresolved command: ${Q}`});let G=!q.relPath.includes("/"),J=G?X.budgets.rootLines:X.budgets.nestedWarnLines;if(q.lineCount>J)z.push({severity:"warning",category:"over-budget",file:q.relPath,message:`${q.lineCount} lines exceeds ${G?"root":"nested"} budget of ${J}`})}for(let q of Z)if(q.classification==="unexpected-duplicate"){let G=q.detail.startsWith("divergent")?"error":"warning";z.push({severity:G,category:G==="error"?"divergent-pair":"duplicate-pair",file:q.dir||"(root)",message:`AGENTS.md / CLAUDE.md ${q.detail}`})}return z}function L0($){let Z=$.confidence;if($.error)return{icon:"\u2717",label:"Error",confidence:Z,tone:"error"};if($.traps.fired.length>0)return{icon:"\u2717",label:"Trap fired",confidence:Z,tone:"error"};if($.answerable==="YES")return{icon:"\u2713",label:Z>=90?"Well grounded":"Grounded",confidence:Z,tone:"success"};if($.answerable==="PARTIAL")return{icon:"\u26A0",label:"Partially grounded",confidence:Z,tone:"warning"};return{icon:"\u2717",label:"Ungrounded",confidence:Z,tone:"error"}}function k9($){let Z=vH($);if(Z===null)return[];let X=[],z=/^\s*-\s+\[([^\]]+)\]\s*(.*)$/gm,q=z.exec(Z);while(q!==null)X.push({id:q[1].trim(),note:q[2].trim()||void 0}),q=z.exec(Z);return X}function vH($){let X=/^##\s+Sources\s*$/im.exec($);if(!X)return null;let z=X.index+X[0].length,q=$.slice(z),G=/^##\s+/m.exec(q);return G?q.slice(0,G.index):q}function B$($){let Z=k9($.response),X=new Set(Z.map((V)=>V.id)),z=new Set($.registeredIds),q=new Set($.requiredSources),G=[...X],J=[...q].filter((V)=>!X.has(V)),Q=[...X].filter((V)=>!z.has(V)),Y=[...q],U,W,H;if(G.length===0)U="NO",W=0,H="No citations in response";else if(Q.length===G.length)U="NO",W=0,H=`All cited sources are unknown: ${Q.join(", ")}`;else if(J.length===0&&Q.length===0)U="YES",W=100,H=Y.length>0?`All required sources cited: ${Y.join(", ")}`:`Cited registered sources: ${G.join(", ")}`;else{U="PARTIAL";let V=Y.length>0?Y.length:1,B=Y.length-J.length,L=Y.length>0?B/V*100:60,K=Q.length*15;W=Math.max(0,Math.min(100,Math.round(L-K)));let T=[];if(J.length>0)T.push(`missing: ${J.join(", ")}`);if(Q.length>0)T.push(`unknown: ${Q.join(", ")}`);H=T.join("; ")}return{answerable:U,confidence:W,reason:H,citations:{cited:G,required:Y,missing:J,unknown:Q}}}function A2($){let Z=$.expected,X=(Z?.includes??[]).map((J)=>({value:J,satisfied:$.response.includes(J)})),z=(Z?.excludes??[]).map((J)=>({value:J,satisfied:!$.response.includes(J)})),q=X.filter((J)=>J.satisfied).length+z.filter((J)=>J.satisfied).length,G=X.length+z.length;return{includes:X,excludes:z,satisfied:q,total:G}}var c0="0.40.1";var ZZ=!1,i0=void 0,f9=void 0,uH=void 0,mH=void 0,dH=void 0,XZ=void 0,pH=void 0,j2=void 0,h9=void 0,zZ=void 0,g9=void 0,N2=void 0,qZ=void 0;function GZ($,Z={auto:!1}){if(ZZ)throw Error(`you must \`import '@anthropic-ai/sdk/shims/${$.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(i0)throw Error(`can't \`import '@anthropic-ai/sdk/shims/${$.kind}'\` after \`import '@anthropic-ai/sdk/shims/${i0}'\``);ZZ=Z.auto,i0=$.kind,f9=$.fetch,uH=$.Request,mH=$.Response,dH=$.Headers,XZ=$.FormData,pH=$.Blob,j2=$.File,h9=$.ReadableStream,zZ=$.getMultipartRequestOptions,g9=$.getDefaultAgent,N2=$.fileFromPath,qZ=$.isFsReadStream}class v9{constructor($){this.body=$}get[Symbol.toStringTag](){return"MultipartBody"}}function JZ({manuallyImported:$}={}){let Z=$?"You may need to use polyfills":"Add one of these imports before your first `import \u2026 from '@anthropic-ai/sdk'`:\n- `import '@anthropic-ai/sdk/shims/node'` (if you're running on Node)\n- `import '@anthropic-ai/sdk/shims/web'` (otherwise)\n",X,z,q,G;try{X=fetch,z=Request,q=Response,G=Headers}catch(J){throw Error(`this environment is missing the following Web Fetch API type: ${J.message}. ${Z}`)}return{kind:"web",fetch:X,Request:z,Response:q,Headers:G,FormData:typeof FormData<"u"?FormData:class{constructor(){throw Error(`file uploads aren't supported in this environment yet as 'FormData' is undefined. ${Z}`)}},Blob:typeof Blob<"u"?Blob:class{constructor(){throw Error(`file uploads aren't supported in this environment yet as 'Blob' is undefined. ${Z}`)}},File:typeof File<"u"?File:class{constructor(){throw Error(`file uploads aren't supported in this environment yet as 'File' is undefined. ${Z}`)}},ReadableStream:typeof ReadableStream<"u"?ReadableStream:class{constructor(){throw Error(`streaming isn't supported in this environment yet as 'ReadableStream' is undefined. ${Z}`)}},getMultipartRequestOptions:async(J,Q)=>({...Q,body:new v9(J)}),getDefaultAgent:(J)=>{return},fileFromPath:()=>{throw Error("The `fileFromPath` function is only supported in Node. See the README for more details: https://www.github.com/anthropics/anthropic-sdk-typescript#file-uploads")},isFsReadStream:(J)=>!1}}import{ReadStream as cH}from"fs";function QZ(){let $=JZ();function Z(X){return X instanceof cH}return{...$,isFsReadStream:Z}}var u9=()=>{if(!i0)GZ(QZ(),{auto:!0})};u9();class A extends Error{}class u extends A{constructor($,Z,X,z){super(`${u.makeMessage($,Z,X)}`);this.status=$,this.headers=z,this.request_id=z?.["request-id"],this.error=Z}static makeMessage($,Z,X){let z=Z?.message?typeof Z.message==="string"?Z.message:JSON.stringify(Z.message):Z?JSON.stringify(Z):X;if($&&z)return`${$} ${z}`;if($)return`${$} status code (no body)`;if(z)return z;return"(no status code or body)"}static generate($,Z,X,z){if(!$||!z)return new a0({message:X,cause:h2(Z)});let q=Z;if($===400)return new S2($,q,X,z);if($===401)return new C2($,q,X,z);if($===403)return new E2($,q,X,z);if($===404)return new b2($,q,X,z);if($===409)return new x2($,q,X,z);if($===422)return new y2($,q,X,z);if($===429)return new k2($,q,X,z);if($>=500)return new f2($,q,X,z);return new u($,q,X,z)}}class d extends u{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}}class a0 extends u{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}}class q1 extends a0{constructor({message:$}={}){super({message:$??"Request timed out."})}}class S2 extends u{}class C2 extends u{}class E2 extends u{}class b2 extends u{}class x2 extends u{}class y2 extends u{}class k2 extends u{}class f2 extends u{}var g2=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},n0=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},s;class b0{constructor(){s.set(this,void 0),this.buffer=new Uint8Array,g2(this,s,null,"f")}decode($){if($==null)return[];let Z=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?new TextEncoder().encode($):$,X=new Uint8Array(this.buffer.length+Z.length);X.set(this.buffer),X.set(Z,this.buffer.length),this.buffer=X;let z=[],q;while((q=aH(this.buffer,n0(this,s,"f")))!=null){if(q.carriage&&n0(this,s,"f")==null){g2(this,s,q.index,"f");continue}if(n0(this,s,"f")!=null&&(q.index!==n0(this,s,"f")+1||q.carriage)){z.push(this.decodeText(this.buffer.slice(0,n0(this,s,"f")-1))),this.buffer=this.buffer.slice(n0(this,s,"f")),g2(this,s,null,"f");continue}let G=n0(this,s,"f")!==null?q.preceding-1:q.preceding,J=this.decodeText(this.buffer.slice(0,G));z.push(J),this.buffer=this.buffer.slice(q.index),g2(this,s,null,"f")}return z}decodeText($){if($==null)return"";if(typeof $==="string")return $;if(typeof Buffer<"u"){if($ instanceof Buffer)return $.toString();if($ instanceof Uint8Array)return Buffer.from($).toString();throw new A(`Unexpected: received non-Uint8Array (${$.constructor.name}) stream chunk in an environment with a global "Buffer" defined, which this library assumes to be Node. Please report this error.`)}if(typeof TextDecoder<"u"){if($ instanceof Uint8Array||$ instanceof ArrayBuffer)return this.textDecoder??(this.textDecoder=new TextDecoder("utf8")),this.textDecoder.decode($);throw new A(`Unexpected: received non-Uint8Array/ArrayBuffer (${$.constructor.name}) in a web platform. Please report this error.`)}throw new A("Unexpected: neither Buffer nor TextDecoder are available as globals. Please report this error.")}flush(){if(!this.buffer.length)return[];return this.decode(`
|
|
193
|
+
`)}}s=new WeakMap;b0.NEWLINE_CHARS=new Set([`
|
|
194
|
+
`,"\r"]);b0.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function aH($,Z){for(let q=Z??0;q<$.length;q++){if($[q]===10)return{preceding:q,index:q+1,carriage:!1};if($[q]===13)return{preceding:q,index:q+1,carriage:!0}}return null}function YZ($){for(let z=0;z<$.length-1;z++){if($[z]===10&&$[z+1]===10)return z+2;if($[z]===13&&$[z+1]===13)return z+2;if($[z]===13&&$[z+1]===10&&z+3<$.length&&$[z+2]===13&&$[z+3]===10)return z+4}return-1}function G1($){if($[Symbol.asyncIterator])return $;let Z=$.getReader();return{async next(){try{let X=await Z.read();if(X?.done)Z.releaseLock();return X}catch(X){throw Z.releaseLock(),X}},async return(){let X=Z.cancel();return Z.releaseLock(),await X,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}class r{constructor($,Z){this.iterator=$,this.controller=Z}static fromSSEResponse($,Z){let X=!1;async function*z(){if(X)throw Error("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");X=!0;let q=!1;try{for await(let G of nH($,Z)){if(G.event==="completion")try{yield JSON.parse(G.data)}catch(J){throw console.error("Could not parse message into JSON:",G.data),console.error("From chunk:",G.raw),J}if(G.event==="message_start"||G.event==="message_delta"||G.event==="message_stop"||G.event==="content_block_start"||G.event==="content_block_delta"||G.event==="content_block_stop")try{yield JSON.parse(G.data)}catch(J){throw console.error("Could not parse message into JSON:",G.data),console.error("From chunk:",G.raw),J}if(G.event==="ping")continue;if(G.event==="error")throw u.generate(void 0,`SSE Error: ${G.data}`,G.data,m9($.headers))}q=!0}catch(G){if(G instanceof Error&&G.name==="AbortError")return;throw G}finally{if(!q)Z.abort()}}return new r(z,Z)}static fromReadableStream($,Z){let X=!1;async function*z(){let G=new b0,J=G1($);for await(let Q of J)for(let Y of G.decode(Q))yield Y;for(let Q of G.flush())yield Q}async function*q(){if(X)throw Error("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");X=!0;let G=!1;try{for await(let J of z()){if(G)continue;if(J)yield JSON.parse(J)}G=!0}catch(J){if(J instanceof Error&&J.name==="AbortError")return;throw J}finally{if(!G)Z.abort()}}return new r(q,Z)}[Symbol.asyncIterator](){return this.iterator()}tee(){let $=[],Z=[],X=this.iterator(),z=(q)=>{return{next:()=>{if(q.length===0){let G=X.next();$.push(G),Z.push(G)}return q.shift()}}};return[new r(()=>z($),this.controller),new r(()=>z(Z),this.controller)]}toReadableStream(){let $=this,Z,X=new TextEncoder;return new h9({async start(){Z=$[Symbol.asyncIterator]()},async pull(z){try{let{value:q,done:G}=await Z.next();if(G)return z.close();let J=X.encode(JSON.stringify(q)+`
|
|
195
|
+
`);z.enqueue(J)}catch(q){z.error(q)}},async cancel(){await Z.return?.()}})}}async function*nH($,Z){if(!$.body)throw Z.abort(),new A("Attempted to iterate over a response with no body");let X=new UZ,z=new b0,q=G1($.body);for await(let G of sH(q))for(let J of z.decode(G)){let Q=X.decode(J);if(Q)yield Q}for(let G of z.flush()){let J=X.decode(G);if(J)yield J}}async function*sH($){let Z=new Uint8Array;for await(let X of $){if(X==null)continue;let z=X instanceof ArrayBuffer?new Uint8Array(X):typeof X==="string"?new TextEncoder().encode(X):X,q=new Uint8Array(Z.length+z.length);q.set(Z),q.set(z,Z.length),Z=q;let G;while((G=YZ(Z))!==-1)yield Z.slice(0,G),Z=Z.slice(G)}if(Z.length>0)yield Z}class UZ{constructor(){this.event=null,this.data=[],this.chunks=[]}decode($){if($.endsWith("\r"))$=$.substring(0,$.length-1);if(!$){if(!this.event&&!this.data.length)return null;let q={event:this.event,data:this.data.join(`
|
|
196
|
+
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],q}if(this.chunks.push($),$.startsWith(":"))return null;let[Z,X,z]=rH($,":");if(z.startsWith(" "))z=z.substring(1);if(Z==="event")this.event=z;else if(Z==="data")this.data.push(z);return null}}function rH($,Z){let X=$.indexOf(Z);if(X!==-1)return[$.substring(0,X),Z,$.substring(X+Z.length)];return[$,"",""]}var oH=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function",tH=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&J1($),J1=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function";async function HZ($,Z,X){if($=await $,tH($))return $;if(oH($)){let q=await $.blob();Z||(Z=new URL($.url).pathname.split(/[\\/]/).pop()??"unknown_file");let G=J1(q)?[await q.arrayBuffer()]:[q];return new j2(G,Z,X)}let z=await eH($);if(Z||(Z=ZW($)??"unknown_file"),!X?.type){let q=z[0]?.type;if(typeof q==="string")X={...X,type:q}}return new j2(z,Z,X)}async function eH($){let Z=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)Z.push($);else if(J1($))Z.push(await $.arrayBuffer());else if(XW($))for await(let X of $)Z.push(X);else throw Error(`Unexpected data type: ${typeof $}; constructor: ${$?.constructor?.name}; props: ${$W($)}`);return Z}function $W($){return`[${Object.getOwnPropertyNames($).map((X)=>`"${X}"`).join(", ")}]`}function ZW($){return d9($.name)||d9($.filename)||d9($.path)?.split(/[\\/]/).pop()}var d9=($)=>{if(typeof $==="string")return $;if(typeof Buffer<"u"&&$ instanceof Buffer)return String($);return},XW=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function",p9=($)=>$&&typeof $==="object"&&$.body&&$[Symbol.toStringTag]==="MultipartBody";var qW=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},GW=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},v2;u9();async function TZ($){let{response:Z}=$;if($.options.stream){if(T$("response",Z.status,Z.url,Z.headers,Z.body),$.options.__streamClass)return $.options.__streamClass.fromSSEResponse(Z,$.controller);return r.fromSSEResponse(Z,$.controller)}if(Z.status===204)return null;if($.options.__binaryResponse)return Z;let z=Z.headers.get("content-type")?.split(";")[0]?.trim();if(z?.includes("application/json")||z?.endsWith("+json")){let J=await Z.json();return T$("response",Z.status,Z.url,Z.headers,J),LZ(J,Z)}let G=await Z.text();return T$("response",Z.status,Z.url,Z.headers,G),G}function LZ($,Z){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:Z.headers.get("request-id"),enumerable:!1})}class m2 extends Promise{constructor($,Z=TZ){super((X)=>{X(null)});this.responsePromise=$,this.parseResponse=Z}_thenUnwrap($){return new m2(this.responsePromise,async(Z)=>LZ($(await this.parseResponse(Z),Z),Z.response))}asResponse(){return this.responsePromise.then(($)=>$.response)}async withResponse(){let[$,Z]=await Promise.all([this.parse(),this.asResponse()]);return{data:$,response:Z,request_id:Z.headers.get("request-id")}}parse(){if(!this.parsedPromise)this.parsedPromise=this.responsePromise.then(this.parseResponse);return this.parsedPromise}then($,Z){return this.parse().then($,Z)}catch($){return this.parse().catch($)}finally($){return this.parse().finally($)}}class c9{constructor({baseURL:$,maxRetries:Z=2,timeout:X=600000,httpAgent:z,fetch:q}){this.baseURL=$,this.maxRetries=l9("maxRetries",Z),this.timeout=l9("timeout",X),this.httpAgent=z,this.fetch=q??f9}authHeaders($){return{}}defaultHeaders($){return{Accept:"application/json","Content-Type":"application/json","User-Agent":this.getUserAgent(),...UW(),...this.authHeaders($)}}validateHeaders($,Z){}defaultIdempotencyKey(){return`stainless-node-retry-${BW()}`}get($,Z){return this.methodRequest("get",$,Z)}post($,Z){return this.methodRequest("post",$,Z)}patch($,Z){return this.methodRequest("patch",$,Z)}put($,Z){return this.methodRequest("put",$,Z)}delete($,Z){return this.methodRequest("delete",$,Z)}methodRequest($,Z,X){return this.request(Promise.resolve(X).then(async(z)=>{let q=z&&J1(z?.body)?new DataView(await z.body.arrayBuffer()):z?.body instanceof DataView?z.body:z?.body instanceof ArrayBuffer?new DataView(z.body):z&&ArrayBuffer.isView(z?.body)?new DataView(z.body.buffer):z?.body;return{method:$,path:Z,...z,body:q}}))}getAPIList($,Z,X){return this.requestAPIList(Z,{method:"get",path:$,...X})}calculateContentLength($){if(typeof $==="string"){if(typeof Buffer<"u")return Buffer.byteLength($,"utf8").toString();if(typeof TextEncoder<"u")return new TextEncoder().encode($).length.toString()}else if(ArrayBuffer.isView($))return $.byteLength.toString();return null}buildRequest($,{retryCount:Z=0}={}){let X={...$},{method:z,path:q,query:G,headers:J={}}=X,Q=ArrayBuffer.isView(X.body)||X.__binaryRequest&&typeof X.body==="string"?X.body:p9(X.body)?X.body.body:X.body?JSON.stringify(X.body,null,2):null,Y=this.calculateContentLength(Q),U=this.buildURL(q,G);if("timeout"in X)l9("timeout",X.timeout);X.timeout=X.timeout??this.timeout;let W=X.httpAgent??this.httpAgent??g9(U),H=X.timeout+1000;if(typeof W?.options?.timeout==="number"&&H>(W.options.timeout??0))W.options.timeout=H;if(this.idempotencyHeader&&z!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();J[this.idempotencyHeader]=$.idempotencyKey}let V=this.buildHeaders({options:X,headers:J,contentLength:Y,retryCount:Z});return{req:{method:z,...Q&&{body:Q},headers:V,...W&&{agent:W},signal:X.signal??null},url:U,timeout:X.timeout}}buildHeaders({options:$,headers:Z,contentLength:X,retryCount:z}){let q={};if(X)q["content-length"]=X;let G=this.defaultHeaders($);if(BZ(q,G),BZ(q,Z),p9($.body)&&i0!=="node")delete q["content-type"];if(u2(G,"x-stainless-retry-count")===void 0&&u2(Z,"x-stainless-retry-count")===void 0)q["x-stainless-retry-count"]=String(z);if(u2(G,"x-stainless-timeout")===void 0&&u2(Z,"x-stainless-timeout")===void 0&&$.timeout)q["x-stainless-timeout"]=String(Math.trunc($.timeout/1000));return this.validateHeaders(q,Z),q}_calculateNonstreamingTimeout($){if(3600*$/128000>600)throw new A("Streaming is strongly recommended for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-python#streaming-responses for more details");return 600000}async prepareOptions($){}async prepareRequest($,{url:Z,options:X}){}parseHeaders($){return!$?{}:(Symbol.iterator in $)?Object.fromEntries(Array.from($).map((Z)=>[...Z])):{...$}}makeStatusError($,Z,X,z){return u.generate($,Z,X,z)}request($,Z=null){return new m2(this.makeRequest($,Z))}async makeRequest($,Z){let X=await $,z=X.maxRetries??this.maxRetries;if(Z==null)Z=z;await this.prepareOptions(X);let{req:q,url:G,timeout:J}=this.buildRequest(X,{retryCount:z-Z});if(await this.prepareRequest(q,{url:G,options:X}),T$("request",G,X,q.headers),X.signal?.aborted)throw new d;let Q=new AbortController,Y=await this.fetchWithTimeout(G,q,J,Q).catch(h2);if(Y instanceof Error){if(X.signal?.aborted)throw new d;if(Z)return this.retryRequest(X,Z);if(Y.name==="AbortError")throw new q1;throw new a0({cause:Y})}let U=m9(Y.headers);if(!Y.ok){if(Z&&this.shouldRetry(Y)){let K=`retrying, ${Z} attempts remaining`;return T$(`response (error; ${K})`,Y.status,G,U),this.retryRequest(X,Z,U)}let W=await Y.text().catch((K)=>h2(K).message),H=HW(W),V=H?void 0:W;throw T$(`response (error; ${Z?"(error; no more retries left)":"(error; not retryable)"})`,Y.status,G,U,V),this.makeStatusError(Y.status,H,V,U)}return{response:Y,options:X,controller:Q}}requestAPIList($,Z){let X=this.makeRequest(Z,null);return new DZ(this,X,$)}buildURL($,Z){let X=VW($)?new URL($):new URL(this.baseURL+(this.baseURL.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),z=this.defaultQuery();if(!_Z(z))Z={...z,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))X.search=this.stringifyQuery(Z);return X.toString()}stringifyQuery($){return Object.entries($).filter(([Z,X])=>typeof X<"u").map(([Z,X])=>{if(typeof X==="string"||typeof X==="number"||typeof X==="boolean")return`${encodeURIComponent(Z)}=${encodeURIComponent(X)}`;if(X===null)return`${encodeURIComponent(Z)}=`;throw new A(`Cannot stringify type ${typeof X}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`)}).join("&")}async fetchWithTimeout($,Z,X,z){let{signal:q,...G}=Z||{};if(q)q.addEventListener("abort",()=>z.abort());let J=setTimeout(()=>z.abort(),X),Q={signal:z.signal,...G};if(Q.method)Q.method=Q.method.toUpperCase();let Y=60000,U=setTimeout(()=>{if(Q&&Q?.agent?.sockets){for(let W of Object.values(Q?.agent?.sockets).flat())if(W?.setKeepAlive)W.setKeepAlive(!0,Y)}},Y);return this.fetch.call(void 0,$,Q).finally(()=>{clearTimeout(J),clearTimeout(U)})}shouldRetry($){let Z=$.headers.get("x-should-retry");if(Z==="true")return!0;if(Z==="false")return!1;if($.status===408)return!0;if($.status===409)return!0;if($.status===429)return!0;if($.status>=500)return!0;return!1}async retryRequest($,Z,X){let z,q=X?.["retry-after-ms"];if(q){let J=parseFloat(q);if(!Number.isNaN(J))z=J}let G=X?.["retry-after"];if(G&&!z){let J=parseFloat(G);if(!Number.isNaN(J))z=J*1000;else z=Date.parse(G)-Date.now()}if(!(z&&0<=z&&z<60000)){let J=$.maxRetries??this.maxRetries;z=this.calculateDefaultRetryTimeoutMillis(Z,J)}return await KW(z),this.makeRequest($,Z-1)}calculateDefaultRetryTimeoutMillis($,Z){let q=Z-$,G=Math.min(0.5*Math.pow(2,q),8),J=1-Math.random()*0.25;return G*J*1000}getUserAgent(){return`${this.constructor.name}/JS ${c0}`}}class i9{constructor($,Z,X,z){v2.set(this,void 0),qW(this,v2,$,"f"),this.options=z,this.response=Z,this.body=X}hasNextPage(){if(!this.getPaginatedItems().length)return!1;return this.nextPageInfo()!=null}async getNextPage(){let $=this.nextPageInfo();if(!$)throw new A("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");let Z={...this.options};if("params"in $&&typeof Z.query==="object")Z.query={...Z.query,...$.params};else if("url"in $){let X=[...Object.entries(Z.query||{}),...$.url.searchParams.entries()];for(let[z,q]of X)$.url.searchParams.set(z,q);Z.query=void 0,Z.path=$.url.toString()}return await GW(this,v2,"f").requestAPIList(this.constructor,Z)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(v2=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let Z of $.getPaginatedItems())yield Z}}class DZ extends m2{constructor($,Z,X){super(Z,async(z)=>new X($,z.response,await TZ(z),z.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let Z of $)yield Z}}var m9=($)=>{return new Proxy(Object.fromEntries($.entries()),{get(Z,X){let z=X.toString();return Z[z.toLowerCase()]||Z[z]}})},JW={method:!0,path:!0,query:!0,body:!0,headers:!0,maxRetries:!0,stream:!0,timeout:!0,httpAgent:!0,signal:!0,idempotencyKey:!0,__binaryRequest:!0,__binaryResponse:!0,__streamClass:!0},e=($)=>{return typeof $==="object"&&$!==null&&!_Z($)&&Object.keys($).every((Z)=>MZ(JW,Z))},QW=()=>{if(typeof Deno<"u"&&Deno.build!=null)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":VZ(Deno.build.os),"X-Stainless-Arch":WZ(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version==="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":process.version};if(Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":VZ(process.platform),"X-Stainless-Arch":WZ(process.arch),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":process.version};let $=YW();if($)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${$.browser}`,"X-Stainless-Runtime-Version":$.version};return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":c0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function YW(){if(typeof navigator>"u"||!navigator)return null;let $=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:Z,pattern:X}of $){let z=X.exec(navigator.userAgent);if(z){let q=z[1]||0,G=z[2]||0,J=z[3]||0;return{browser:Z,version:`${q}.${G}.${J}`}}}return null}var WZ=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},VZ=($)=>{if($=$.toLowerCase(),$.includes("ios"))return"iOS";if($==="android")return"Android";if($==="darwin")return"MacOS";if($==="win32")return"Windows";if($==="freebsd")return"FreeBSD";if($==="openbsd")return"OpenBSD";if($==="linux")return"Linux";if($)return`Other:${$}`;return"Unknown"},KZ,UW=()=>{return KZ??(KZ=QW())},HW=($)=>{try{return JSON.parse($)}catch(Z){return}},WW=/^[a-z][a-z0-9+.-]*:/i,VW=($)=>{return WW.test($)},KW=($)=>new Promise((Z)=>setTimeout(Z,$)),l9=($,Z)=>{if(typeof Z!=="number"||!Number.isInteger(Z))throw new A(`${$} must be an integer`);if(Z<0)throw new A(`${$} must be a positive integer`);return Z},h2=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null)try{return Error(JSON.stringify($))}catch{}return Error(String($))};var d2=($)=>{if(typeof process<"u")return process.env?.[$]?.trim()??void 0;if(typeof Deno<"u")return Deno.env?.get?.($)?.trim();return};function _Z($){if(!$)return!0;for(let Z in $)return!1;return!0}function MZ($,Z){return Object.prototype.hasOwnProperty.call($,Z)}function BZ($,Z){for(let X in Z){if(!MZ(Z,X))continue;let z=X.toLowerCase();if(!z)continue;let q=Z[X];if(q===null)delete $[z];else if(q!==void 0)$[z]=q}}function T$($,...Z){if(typeof process<"u"&&process?.env?.DEBUG==="true")console.log(`Anthropic:DEBUG:${$}`,...Z)}var BW=()=>{return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,($)=>{let Z=Math.random()*16|0;return($==="x"?Z:Z&3|8).toString(16)})},FZ=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},TW=($)=>{return typeof $?.get==="function"};var u2=($,Z)=>{let X=Z.toLowerCase();if(TW($)){let z=Z[0]?.toUpperCase()+Z.substring(1).replace(/([^\w])(\w)/g,(q,G,J)=>G+J.toUpperCase());for(let q of[Z,X,Z.toUpperCase(),z]){let G=$.get(q);if(G)return G}}for(let[z,q]of Object.entries($))if(z.toLowerCase()===X){if(Array.isArray(q)){if(q.length<=1)return q[0];return console.warn(`Received ${q.length} entries for the ${Z} header, using the first entry.`),q[0]}return q}return};class D0 extends i9{constructor($,Z,X,z){super($,Z,X,z);this.data=X.data||[],this.has_more=X.has_more||!1,this.first_id=X.first_id||null,this.last_id=X.last_id||null}getPaginatedItems(){return this.data??[]}hasNextPage(){if(this.has_more===!1)return!1;return super.hasNextPage()}nextPageParams(){let $=this.nextPageInfo();if(!$)return null;if("params"in $)return $.params;let Z=Object.fromEntries($.url.searchParams);if(!Object.keys(Z).length)return null;return Z}nextPageInfo(){if(this.options.query?.before_id){let Z=this.first_id;if(!Z)return null;return{params:{before_id:Z}}}let $=this.last_id;if(!$)return null;return{params:{after_id:$}}}}class m{constructor($){this._client=$}}class L$ extends m{retrieve($,Z){return this._client.get(`/v1/models/${$}?beta=true`,Z)}list($={},Z){if(e($))return this.list({},$);return this._client.getAPIList("/v1/models?beta=true",Q1,{query:$,...Z})}}class Q1 extends D0{}L$.BetaModelInfosPage=Q1;class D${constructor($,Z){this.iterator=$,this.controller=Z}async*decoder(){let $=new b0;for await(let Z of this.iterator)for(let X of $.decode(Z))yield JSON.parse(X);for(let Z of $.flush())yield JSON.parse(Z)}[Symbol.asyncIterator](){return this.decoder()}static fromResponse($,Z){if(!$.body)throw Z.abort(),new A("Attempted to iterate over a response with no body");return new D$(G1($.body),Z)}}class _$ extends m{create($,Z){let{betas:X,...z}=$;return this._client.post("/v1/messages/batches?beta=true",{body:z,...Z,headers:{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString(),...Z?.headers}})}retrieve($,Z={},X){if(e(Z))return this.retrieve($,{},Z);let{betas:z}=Z;return this._client.get(`/v1/messages/batches/${$}?beta=true`,{...X,headers:{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString(),...X?.headers}})}list($={},Z){if(e($))return this.list({},$);let{betas:X,...z}=$;return this._client.getAPIList("/v1/messages/batches?beta=true",Y1,{query:z,...Z,headers:{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString(),...Z?.headers}})}delete($,Z={},X){if(e(Z))return this.delete($,{},Z);let{betas:z}=Z;return this._client.delete(`/v1/messages/batches/${$}?beta=true`,{...X,headers:{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString(),...X?.headers}})}cancel($,Z={},X){if(e(Z))return this.cancel($,{},Z);let{betas:z}=Z;return this._client.post(`/v1/messages/batches/${$}/cancel?beta=true`,{...X,headers:{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString(),...X?.headers}})}async results($,Z={},X){if(e(Z))return this.results($,{},Z);let z=await this.retrieve($);if(!z.results_url)throw new A(`No batch \`results_url\`; Has it finished processing? ${z.processing_status} - ${z.id}`);let{betas:q}=Z;return this._client.get(z.results_url,{...X,headers:{"anthropic-beta":[...q??[],"message-batches-2024-09-24"].toString(),Accept:"application/binary",...X?.headers},stream:!0,__binaryResponse:!0})._thenUnwrap((G,J)=>D$.fromResponse(J.response,J.controller))}}class Y1 extends D0{}_$.BetaMessageBatchesPage=Y1;var MW=($)=>{let Z=0,X=[];while(Z<$.length){let z=$[Z];if(z==="\\"){Z++;continue}if(z==="{"){X.push({type:"brace",value:"{"}),Z++;continue}if(z==="}"){X.push({type:"brace",value:"}"}),Z++;continue}if(z==="["){X.push({type:"paren",value:"["}),Z++;continue}if(z==="]"){X.push({type:"paren",value:"]"}),Z++;continue}if(z===":"){X.push({type:"separator",value:":"}),Z++;continue}if(z===","){X.push({type:"delimiter",value:","}),Z++;continue}if(z==='"'){let Q="",Y=!1;z=$[++Z];while(z!=='"'){if(Z===$.length){Y=!0;break}if(z==="\\"){if(Z++,Z===$.length){Y=!0;break}Q+=z+$[Z],z=$[++Z]}else Q+=z,z=$[++Z]}if(z=$[++Z],!Y)X.push({type:"string",value:Q});continue}if(z&&/\s/.test(z)){Z++;continue}let G=/[0-9]/;if(z&&G.test(z)||z==="-"||z==="."){let Q="";if(z==="-")Q+=z,z=$[++Z];while(z&&G.test(z)||z===".")Q+=z,z=$[++Z];X.push({type:"number",value:Q});continue}let J=/[a-z]/i;if(z&&J.test(z)){let Q="";while(z&&J.test(z)){if(Z===$.length)break;Q+=z,z=$[++Z]}if(Q=="true"||Q=="false"||Q==="null")X.push({type:"name",value:Q});else{Z++;continue}continue}Z++}return X},M$=($)=>{if($.length===0)return $;let Z=$[$.length-1];switch(Z.type){case"separator":return $=$.slice(0,$.length-1),M$($);break;case"number":let X=Z.value[Z.value.length-1];if(X==="."||X==="-")return $=$.slice(0,$.length-1),M$($);case"string":let z=$[$.length-2];if(z?.type==="delimiter")return $=$.slice(0,$.length-1),M$($);else if(z?.type==="brace"&&z.value==="{")return $=$.slice(0,$.length-1),M$($);break;case"delimiter":return $=$.slice(0,$.length-1),M$($);break}return $},FW=($)=>{let Z=[];if($.map((X)=>{if(X.type==="brace")if(X.value==="{")Z.push("}");else Z.splice(Z.lastIndexOf("}"),1);if(X.type==="paren")if(X.value==="[")Z.push("]");else Z.splice(Z.lastIndexOf("]"),1)}),Z.length>0)Z.reverse().map((X)=>{if(X==="}")$.push({type:"brace",value:"}"});else if(X==="]")$.push({type:"paren",value:"]"})});return $},OW=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},p2=($)=>JSON.parse(OW(FW(M$(MW($)))));var p=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},j=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},$0,x0,U1,l2,H1,W1,c2,V1,_0,K1,i2,a2,F$,n2,s2,a9,OZ,n9,s9,r9,o9,wZ,PZ="__json_buf";class B1{constructor(){$0.add(this),this.messages=[],this.receivedMessages=[],x0.set(this,void 0),this.controller=new AbortController,U1.set(this,void 0),l2.set(this,()=>{}),H1.set(this,()=>{}),W1.set(this,void 0),c2.set(this,()=>{}),V1.set(this,()=>{}),_0.set(this,{}),K1.set(this,!1),i2.set(this,!1),a2.set(this,!1),F$.set(this,!1),n2.set(this,void 0),s2.set(this,void 0),n9.set(this,($)=>{if(p(this,i2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new d;if($ instanceof d)return p(this,a2,!0,"f"),this._emit("abort",$);if($ instanceof A)return this._emit("error",$);if($ instanceof Error){let Z=new A($.message);return Z.cause=$,this._emit("error",Z)}return this._emit("error",new A(String($)))}),p(this,U1,new Promise(($,Z)=>{p(this,l2,$,"f"),p(this,H1,Z,"f")}),"f"),p(this,W1,new Promise(($,Z)=>{p(this,c2,$,"f"),p(this,V1,Z,"f")}),"f"),j(this,U1,"f").catch(()=>{}),j(this,W1,"f").catch(()=>{})}get response(){return j(this,n2,"f")}get request_id(){return j(this,s2,"f")}async withResponse(){let $=await j(this,U1,"f");if(!$)throw Error("Could not resolve a `Response` object");return{data:this,response:$,request_id:$.headers.get("request-id")}}static fromReadableStream($){let Z=new B1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new B1;for(let q of Z.messages)z._addMessageParam(q);return z._run(()=>z._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),z}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},j(this,n9,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal;if(z){if(z.aborted)this.controller.abort();z.addEventListener("abort",()=>this.controller.abort())}j(this,$0,"m",s9).call(this);let{response:q,data:G}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let J of G)j(this,$0,"m",r9).call(this,J);if(G.controller.signal?.aborted)throw new d;j(this,$0,"m",o9).call(this)}_connected($){if(this.ended)return;p(this,n2,$,"f"),p(this,s2,$?.headers.get("request-id"),"f"),j(this,l2,"f").call(this,$),this._emit("connect")}get ended(){return j(this,K1,"f")}get errored(){return j(this,i2,"f")}get aborted(){return j(this,a2,"f")}abort(){this.controller.abort()}on($,Z){return(j(this,_0,"f")[$]||(j(this,_0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=j(this,_0,"f")[$];if(!X)return this;let z=X.findIndex((q)=>q.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(j(this,_0,"f")[$]||(j(this,_0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(p(this,F$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){p(this,F$,!0,"f"),await j(this,W1,"f")}get currentMessage(){return j(this,x0,"f")}async finalMessage(){return await this.done(),j(this,$0,"m",a9).call(this)}async finalText(){return await this.done(),j(this,$0,"m",OZ).call(this)}_emit($,...Z){if(j(this,K1,"f"))return;if($==="end")p(this,K1,!0,"f"),j(this,c2,"f").call(this);let X=j(this,_0,"f")[$];if(X)j(this,_0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!j(this,F$,"f")&&!X?.length)Promise.reject(z);j(this,H1,"f").call(this,z),j(this,V1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!j(this,F$,"f")&&!X?.length)Promise.reject(z);j(this,H1,"f").call(this,z),j(this,V1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",j(this,$0,"m",a9).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}j(this,$0,"m",s9).call(this),this._connected(null);let z=r.fromReadableStream($,this.controller);for await(let q of z)j(this,$0,"m",r9).call(this,q);if(z.controller.signal?.aborted)throw new d;j(this,$0,"m",o9).call(this)}[(x0=new WeakMap,U1=new WeakMap,l2=new WeakMap,H1=new WeakMap,W1=new WeakMap,c2=new WeakMap,V1=new WeakMap,_0=new WeakMap,K1=new WeakMap,i2=new WeakMap,a2=new WeakMap,F$=new WeakMap,n2=new WeakMap,s2=new WeakMap,n9=new WeakMap,$0=new WeakSet,a9=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},OZ=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");let Z=this.receivedMessages.at(-1).content.filter((X)=>X.type==="text").map((X)=>X.text);if(Z.length===0)throw new A("stream ended without producing a content block with type=text");return Z.join(" ")},s9=function(){if(this.ended)return;p(this,x0,void 0,"f")},r9=function(Z){if(this.ended)return;let X=j(this,$0,"m",wZ).call(this,Z);switch(this._emit("streamEvent",Z,X),Z.type){case"content_block_delta":{let z=X.content.at(-1);switch(Z.delta.type){case"text_delta":{if(z.type==="text")this._emit("text",Z.delta.text,z.text||"");break}case"citations_delta":{if(z.type==="text")this._emit("citation",Z.delta.citation,z.citations??[]);break}case"input_json_delta":{if(z.type==="tool_use"&&z.input)this._emit("inputJson",Z.delta.partial_json,z.input);break}case"thinking_delta":{if(z.type==="thinking")this._emit("thinking",Z.delta.thinking,z.thinking);break}case"signature_delta":{if(z.type==="thinking")this._emit("signature",z.signature);break}default:IZ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(X,!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{p(this,x0,X,"f");break}case"content_block_start":case"message_delta":break}},o9=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=j(this,x0,"f");if(!Z)throw new A("request ended without sending any chunks");return p(this,x0,void 0,"f"),Z},wZ=function(Z){let X=j(this,x0,"f");if(Z.type==="message_start"){if(X)throw new A(`Unexpected event order, got ${Z.type} before receiving "message_stop"`);return Z.message}if(!X)throw new A(`Unexpected event order, got ${Z.type} before "message_start"`);switch(Z.type){case"message_stop":return X;case"message_delta":return X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,X;case"content_block_start":return X.content.push(Z.content_block),X;case"content_block_delta":{let z=X.content.at(Z.index);switch(Z.delta.type){case"text_delta":{if(z?.type==="text")z.text+=Z.delta.text;break}case"citations_delta":{if(z?.type==="text")z.citations??(z.citations=[]),z.citations.push(Z.delta.citation);break}case"input_json_delta":{if(z?.type==="tool_use"){let q=z[PZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,PZ,{value:q,enumerable:!1,writable:!0}),q)z.input=p2(q)}break}case"thinking_delta":{if(z?.type==="thinking")z.thinking+=Z.delta.thinking;break}case"signature_delta":{if(z?.type==="thinking")z.signature=Z.delta.signature;break}default:IZ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let q=Z.shift();if(q)q.resolve(z);else $.push(z)}),this.on("end",()=>{X=!0;for(let z of Z)z.resolve(void 0);Z.length=0}),this.on("abort",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((q,G)=>Z.push({resolve:q,reject:G})).then((q)=>q?{value:q,done:!1}:{value:void 0,done:!0})}return{value:$.shift(),done:!1}},return:async()=>{return this.abort(),{value:void 0,done:!0}}}}toReadableStream(){return new r(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function IZ($){}var RZ={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025"};class s0 extends m{constructor(){super(...arguments);this.batches=new _$(this._client)}create($,Z){let{betas:X,...z}=$;if(z.model in RZ)console.warn(`The model '${z.model}' is deprecated and will reach end-of-life on ${RZ[z.model]}
|
|
197
|
+
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);return this._client.post("/v1/messages?beta=true",{body:z,timeout:this._client._options.timeout??(z.stream?600000:this._client._calculateNonstreamingTimeout(z.max_tokens)),...Z,headers:{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0,...Z?.headers},stream:$.stream??!1})}stream($,Z){return B1.createMessage(this,$,Z)}countTokens($,Z){let{betas:X,...z}=$;return this._client.post("/v1/messages/count_tokens?beta=true",{body:z,...Z,headers:{"anthropic-beta":[...X??[],"token-counting-2024-11-01"].toString(),...Z?.headers}})}}s0.Batches=_$;s0.BetaMessageBatchesPage=Y1;class M0 extends m{constructor(){super(...arguments);this.models=new L$(this._client),this.messages=new s0(this._client)}}M0.Models=L$;M0.BetaModelInfosPage=Q1;M0.Messages=s0;class O$ extends m{create($,Z){return this._client.post("/v1/complete",{body:$,timeout:this._client._options.timeout??600000,...Z,stream:$.stream??!1})}}class w$ extends m{create($,Z){return this._client.post("/v1/messages/batches",{body:$,...Z})}retrieve($,Z){return this._client.get(`/v1/messages/batches/${$}`,Z)}list($={},Z){if(e($))return this.list({},$);return this._client.getAPIList("/v1/messages/batches",T1,{query:$,...Z})}delete($,Z){return this._client.delete(`/v1/messages/batches/${$}`,Z)}cancel($,Z){return this._client.post(`/v1/messages/batches/${$}/cancel`,Z)}async results($,Z){let X=await this.retrieve($);if(!X.results_url)throw new A(`No batch \`results_url\`; Has it finished processing? ${X.processing_status} - ${X.id}`);return this._client.get(X.results_url,{...Z,headers:{Accept:"application/binary",...Z?.headers},__binaryResponse:!0})._thenUnwrap((z,q)=>D$.fromResponse(q.response,q.controller))}}class T1 extends D0{}w$.MessageBatchesPage=T1;var l=function($,Z,X,z,q){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!q:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?q.call($,X):q?q.value=X:Z.set($,X),X},N=function($,Z,X,z){if(X==="a"&&!z)throw TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?$!==Z||!z:!Z.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return X==="m"?z:X==="a"?z.call($):z?z.value:Z.get($)},Z0,y0,L1,r2,D1,_1,o2,M1,F0,F1,t2,e2,P$,$4,Z4,t9,AZ,e9,$5,Z5,X5,jZ,NZ="__json_buf";class O1{constructor(){Z0.add(this),this.messages=[],this.receivedMessages=[],y0.set(this,void 0),this.controller=new AbortController,L1.set(this,void 0),r2.set(this,()=>{}),D1.set(this,()=>{}),_1.set(this,void 0),o2.set(this,()=>{}),M1.set(this,()=>{}),F0.set(this,{}),F1.set(this,!1),t2.set(this,!1),e2.set(this,!1),P$.set(this,!1),$4.set(this,void 0),Z4.set(this,void 0),e9.set(this,($)=>{if(l(this,t2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new d;if($ instanceof d)return l(this,e2,!0,"f"),this._emit("abort",$);if($ instanceof A)return this._emit("error",$);if($ instanceof Error){let Z=new A($.message);return Z.cause=$,this._emit("error",Z)}return this._emit("error",new A(String($)))}),l(this,L1,new Promise(($,Z)=>{l(this,r2,$,"f"),l(this,D1,Z,"f")}),"f"),l(this,_1,new Promise(($,Z)=>{l(this,o2,$,"f"),l(this,M1,Z,"f")}),"f"),N(this,L1,"f").catch(()=>{}),N(this,_1,"f").catch(()=>{})}get response(){return N(this,$4,"f")}get request_id(){return N(this,Z4,"f")}async withResponse(){let $=await N(this,L1,"f");if(!$)throw Error("Could not resolve a `Response` object");return{data:this,response:$,request_id:$.headers.get("request-id")}}static fromReadableStream($){let Z=new O1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new O1;for(let q of Z.messages)z._addMessageParam(q);return z._run(()=>z._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),z}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},N(this,e9,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal;if(z){if(z.aborted)this.controller.abort();z.addEventListener("abort",()=>this.controller.abort())}N(this,Z0,"m",$5).call(this);let{response:q,data:G}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let J of G)N(this,Z0,"m",Z5).call(this,J);if(G.controller.signal?.aborted)throw new d;N(this,Z0,"m",X5).call(this)}_connected($){if(this.ended)return;l(this,$4,$,"f"),l(this,Z4,$?.headers.get("request-id"),"f"),N(this,r2,"f").call(this,$),this._emit("connect")}get ended(){return N(this,F1,"f")}get errored(){return N(this,t2,"f")}get aborted(){return N(this,e2,"f")}abort(){this.controller.abort()}on($,Z){return(N(this,F0,"f")[$]||(N(this,F0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=N(this,F0,"f")[$];if(!X)return this;let z=X.findIndex((q)=>q.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(N(this,F0,"f")[$]||(N(this,F0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(l(this,P$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){l(this,P$,!0,"f"),await N(this,_1,"f")}get currentMessage(){return N(this,y0,"f")}async finalMessage(){return await this.done(),N(this,Z0,"m",t9).call(this)}async finalText(){return await this.done(),N(this,Z0,"m",AZ).call(this)}_emit($,...Z){if(N(this,F1,"f"))return;if($==="end")l(this,F1,!0,"f"),N(this,o2,"f").call(this);let X=N(this,F0,"f")[$];if(X)N(this,F0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!N(this,P$,"f")&&!X?.length)Promise.reject(z);N(this,D1,"f").call(this,z),N(this,M1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!N(this,P$,"f")&&!X?.length)Promise.reject(z);N(this,D1,"f").call(this,z),N(this,M1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",N(this,Z0,"m",t9).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}N(this,Z0,"m",$5).call(this),this._connected(null);let z=r.fromReadableStream($,this.controller);for await(let q of z)N(this,Z0,"m",Z5).call(this,q);if(z.controller.signal?.aborted)throw new d;N(this,Z0,"m",X5).call(this)}[(y0=new WeakMap,L1=new WeakMap,r2=new WeakMap,D1=new WeakMap,_1=new WeakMap,o2=new WeakMap,M1=new WeakMap,F0=new WeakMap,F1=new WeakMap,t2=new WeakMap,e2=new WeakMap,P$=new WeakMap,$4=new WeakMap,Z4=new WeakMap,e9=new WeakMap,Z0=new WeakSet,t9=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},AZ=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");let Z=this.receivedMessages.at(-1).content.filter((X)=>X.type==="text").map((X)=>X.text);if(Z.length===0)throw new A("stream ended without producing a content block with type=text");return Z.join(" ")},$5=function(){if(this.ended)return;l(this,y0,void 0,"f")},Z5=function(Z){if(this.ended)return;let X=N(this,Z0,"m",jZ).call(this,Z);switch(this._emit("streamEvent",Z,X),Z.type){case"content_block_delta":{let z=X.content.at(-1);switch(Z.delta.type){case"text_delta":{if(z.type==="text")this._emit("text",Z.delta.text,z.text||"");break}case"citations_delta":{if(z.type==="text")this._emit("citation",Z.delta.citation,z.citations??[]);break}case"input_json_delta":{if(z.type==="tool_use"&&z.input)this._emit("inputJson",Z.delta.partial_json,z.input);break}case"thinking_delta":{if(z.type==="thinking")this._emit("thinking",Z.delta.thinking,z.thinking);break}case"signature_delta":{if(z.type==="thinking")this._emit("signature",z.signature);break}default:SZ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(X,!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{l(this,y0,X,"f");break}case"content_block_start":case"message_delta":break}},X5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=N(this,y0,"f");if(!Z)throw new A("request ended without sending any chunks");return l(this,y0,void 0,"f"),Z},jZ=function(Z){let X=N(this,y0,"f");if(Z.type==="message_start"){if(X)throw new A(`Unexpected event order, got ${Z.type} before receiving "message_stop"`);return Z.message}if(!X)throw new A(`Unexpected event order, got ${Z.type} before "message_start"`);switch(Z.type){case"message_stop":return X;case"message_delta":return X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,X;case"content_block_start":return X.content.push(Z.content_block),X;case"content_block_delta":{let z=X.content.at(Z.index);switch(Z.delta.type){case"text_delta":{if(z?.type==="text")z.text+=Z.delta.text;break}case"citations_delta":{if(z?.type==="text")z.citations??(z.citations=[]),z.citations.push(Z.delta.citation);break}case"input_json_delta":{if(z?.type==="tool_use"){let q=z[NZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,NZ,{value:q,enumerable:!1,writable:!0}),q)z.input=p2(q)}break}case"thinking_delta":{if(z?.type==="thinking")z.thinking+=Z.delta.thinking;break}case"signature_delta":{if(z?.type==="thinking")z.signature=Z.delta.signature;break}default:SZ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let q=Z.shift();if(q)q.resolve(z);else $.push(z)}),this.on("end",()=>{X=!0;for(let z of Z)z.resolve(void 0);Z.length=0}),this.on("abort",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let q of Z)q.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((q,G)=>Z.push({resolve:q,reject:G})).then((q)=>q?{value:q,done:!1}:{value:void 0,done:!0})}return{value:$.shift(),done:!1}},return:async()=>{return this.abort(),{value:void 0,done:!0}}}}toReadableStream(){return new r(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function SZ($){}class k0 extends m{constructor(){super(...arguments);this.batches=new w$(this._client)}create($,Z){if($.model in CZ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${CZ[$.model]}
|
|
198
|
+
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);return this._client.post("/v1/messages",{body:$,timeout:this._client._options.timeout??($.stream?600000:this._client._calculateNonstreamingTimeout($.max_tokens)),...Z,stream:$.stream??!1})}stream($,Z){return O1.createMessage(this,$,Z)}countTokens($,Z){return this._client.post("/v1/messages/count_tokens",{body:$,...Z})}}var CZ={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025"};k0.Batches=w$;k0.MessageBatchesPage=T1;class r0 extends m{retrieve($,Z){return this._client.get(`/v1/models/${$}`,Z)}list($={},Z){if(e($))return this.list({},$);return this._client.getAPIList("/v1/models",I$,{query:$,...Z})}}class I$ extends D0{}r0.ModelInfosPage=I$;var EZ;class x extends c9{constructor({baseURL:$=d2("ANTHROPIC_BASE_URL"),apiKey:Z=d2("ANTHROPIC_API_KEY")??null,authToken:X=d2("ANTHROPIC_AUTH_TOKEN")??null,...z}={}){let q={apiKey:Z,authToken:X,...z,baseURL:$||"https://api.anthropic.com"};if(!q.dangerouslyAllowBrowser&&FZ())throw new A(`It looks like you're running in a browser-like environment.
|
|
199
199
|
|
|
200
200
|
This is disabled by default, as it risks exposing your secret API credentials to attackers.
|
|
201
201
|
If you understand the risks and have appropriate mitigations in place,
|
|
202
202
|
you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
|
|
203
203
|
|
|
204
204
|
new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
|
|
205
|
-
`);super({baseURL:q.baseURL,timeout:q.timeout??600000,httpAgent:q.httpAgent,maxRetries:q.maxRetries,fetch:q.fetch});this.completions=new
|
|
205
|
+
`);super({baseURL:q.baseURL,timeout:q.timeout??600000,httpAgent:q.httpAgent,maxRetries:q.maxRetries,fetch:q.fetch});this.completions=new O$(this),this.messages=new k0(this),this.models=new r0(this),this.beta=new M0(this),this._options=q,this.apiKey=Z,this.authToken=X}defaultQuery(){return this._options.defaultQuery}defaultHeaders($){return{...super.defaultHeaders($),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01",...this._options.defaultHeaders}}validateHeaders($,Z){if(this.apiKey&&$["x-api-key"])return;if(Z["x-api-key"]===null)return;if(this.authToken&&$.authorization)return;if(Z.authorization===null)return;throw Error('Could not resolve authentication method. Expected either apiKey or authToken to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}authHeaders($){return{...this.apiKeyAuth($),...this.bearerAuth($)}}apiKeyAuth($){if(this.apiKey==null)return{};return{"X-Api-Key":this.apiKey}}bearerAuth($){if(this.authToken==null)return{};return{Authorization:`Bearer ${this.authToken}`}}}EZ=x;x.Anthropic=EZ;x.HUMAN_PROMPT=`
|
|
206
206
|
|
|
207
|
-
Human:`;
|
|
207
|
+
Human:`;x.AI_PROMPT=`
|
|
208
208
|
|
|
209
|
-
Assistant:`;
|
|
209
|
+
Assistant:`;x.DEFAULT_TIMEOUT=600000;x.AnthropicError=A;x.APIError=u;x.APIConnectionError=a0;x.APIConnectionTimeoutError=q1;x.APIUserAbortError=d;x.NotFoundError=b2;x.ConflictError=x2;x.RateLimitError=k2;x.BadRequestError=S2;x.AuthenticationError=C2;x.InternalServerError=f2;x.PermissionDeniedError=E2;x.UnprocessableEntityError=y2;x.toFile=HZ;x.fileFromPath=N2;x.Completions=O$;x.Messages=k0;x.Models=r0;x.ModelInfosPage=I$;x.Beta=M0;var bZ=x;function R$($,Z,X){let z=Z.length>0?Z.map((J)=>`- ${J.id}: ${J.name} (${J.source})`).join(`
|
|
210
210
|
`):"(no sources provided)",q=Z.map((J)=>`<source id="${J.id}">
|
|
211
211
|
${J.content.trimEnd()}
|
|
212
212
|
</source>`).join(`
|
|
@@ -231,21 +231,28 @@ End your response with a "## Sources" section that lists every source you actual
|
|
|
231
231
|
Rules:
|
|
232
232
|
- Only cite IDs that appear in the inventory above. Do not invent IDs.
|
|
233
233
|
- If you cannot answer from the provided sources, say so explicitly and write an empty "## Sources" section (just the heading, no bullets).
|
|
234
|
-
- The "## Sources" heading must be the last heading in your response.`}class
|
|
234
|
+
- The "## Sources" heading must be the last heading in your response.`}class z5{category="api";provider="anthropic";name;config;clientFactory;constructor($,Z,X){this.name=$,this.config=Z,this.clientFactory=X??(()=>new bZ)}async run($,Z){let{tool:X,docs:z,requiredSources:q}=Z;if(!this.config.model)throw Error(`API target "${this.name}" missing 'model'. API targets must declare an explicit model.`);let G=R$(X,z,q),Q=await this.clientFactory().messages.create({model:this.config.model,max_tokens:this.config.maxTokens??4096,temperature:this.config.temperature??0,system:G,messages:[{role:"user",content:$}]}),Y=RW(Q.content);return{response:Y,allResponses:Y?[{type:"final",text:Y}]:[],toolsUsed:[],sources:[],metadata:{model:this.config.model,category:this.category,provider:this.provider,target:this.name}}}}function RW($){if(!Array.isArray($))return"";let Z=[];for(let X of $)if(X.type==="text"&&typeof X.text==="string")Z.push(X.text);return Z.join("")}import{query as AW}from"@anthropic-ai/claude-agent-sdk";function xZ($,Z){let X=Z&&Z.length>0?`
|
|
235
|
+
The canonical source for this question is: ${Z}
|
|
236
|
+
Use it as the primary reference; consult related authoritative sources if needed.`:`
|
|
237
|
+
Research the answer using authoritative sources you can reach with your tools.`;return`You are answering a question about the tool "${$.name}": ${$.description}.
|
|
238
|
+
|
|
239
|
+
Use the tools available to you (e.g., WebSearch, WebFetch) to research the answer. Be specific and accurate; do not invent facts.${X}
|
|
240
|
+
|
|
241
|
+
If you cannot find the answer with the available tools, say so explicitly rather than guessing.`}class q5{category="cli";provider="claude-code";name;config;constructor($,Z){this.name=$,this.config=Z}async run($,Z){let{tool:X,cwd:z,context:q,docs:G,requiredSources:J,discovery:Q}=Z,Y=[],U=[],W=Q?xZ(X,Q.sourceHint):R$(X,G,J),H={cwd:z,model:this.config.model??"sonnet",systemPrompt:W,allowedTools:q?.allowedTools??this.config.allowedTools??_4,disallowedTools:q?.disallowedTools??this.config.disallowedTools??M4,permissionMode:this.config.permissionMode??"acceptEdits",maxTurns:this.config.maxTurns??10,maxThinkingTokens:this.config.maxThinkingTokens,maxBudgetUsd:this.config.maxBudgetUsd,mcpServers:q?.mcpServers??this.config.mcpServers,settingSources:[]},V=[],B="",L="";for await(let K of AW({prompt:$,options:H})){if(K.type==="assistant"){let T=K.message?.content;if(Array.isArray(T)){let D="";for(let _ of T){if(_.type==="text")D+=_.text;if(_.type==="tool_use"){let O=_;if(!Y.includes(O.name))Y.push(O.name)}}if(D){let _=V.length===0?"initial":"intermediate";V.push({type:_,text:D}),B=D}}}if(K.type==="result"){let T=K;if(T.result)L=T.result}}if(V.length>0)V[V.length-1].type="final";return{response:L||B,allResponses:V,toolsUsed:Y,sources:U,metadata:{model:this.config.model??"sonnet",category:this.category,provider:this.provider,target:this.name}}}}import{randomUUID as jW}from"crypto";import{rm as NW}from"fs/promises";import{tmpdir as SW}from"os";import{join as CW}from"path";var EW="codex";class G5{category="cli";provider="codex-cli";name;config;spawnFn;readFileFn;binary;constructor($,Z,X={}){this.name=$,this.config=Z,this.spawnFn=X.spawn??kW,this.readFileFn=X.readFile??fW,this.binary=X.binary??EW}async run($,Z){let{tool:X,cwd:z,docs:q,requiredSources:G}=Z,J=this.config.model;if(!J)throw Error(`CodexCliTarget "${this.name}" requires an explicit model. Validation should have caught this at config load.`);let Y=`${R$(X,q,G)}
|
|
235
242
|
|
|
236
243
|
---
|
|
237
244
|
|
|
238
|
-
${$}`,U=
|
|
239
|
-
`)){let q=z.trim();if(!q)continue;let G;try{G=JSON.parse(q)}catch{continue}let J=EW(G);if(J){let Y=Z.length===0?"initial":"intermediate";Z.push({type:Y,text:J})}let Q=bW(G);if(Q&&!X.includes(Q))X.push(Q)}return{allResponses:Z,toolsUsed:X}}function EW($){if(!$||typeof $!=="object")return null;let Z=$;if(typeof Z.message==="string")return Z.message;if(typeof Z.content==="string")return Z.content;if(typeof Z.type==="string"&&(Z.type==="assistant_message"||Z.type==="agent_message")&&typeof Z.text==="string")return Z.text;if(Z.type==="message"&&typeof Z.text==="string")return Z.text;return null}function bW($){if(!$||typeof $!=="object")return null;let Z=$;if(typeof Z.tool==="string")return Z.tool;if(typeof Z.type==="string"&&(Z.type==="tool_call"||Z.type==="function_call")&&typeof Z.name==="string")return Z.name;return null}var yW=async($,Z,X)=>{let z=Bun.spawn([$,...Z],{cwd:X.cwd,stdin:"pipe",stdout:"pipe",stderr:"pipe"});z.stdin.write(X.stdin),await z.stdin.end();let[q,G,J]=await Promise.all([new Response(z.stdout).text(),new Response(z.stderr).text(),z.exited]);return{exitCode:J,stdout:q,stderr:G}},xW=async($)=>{let Z=Bun.file($);if(!await Z.exists())throw Error(`Last-message file not found: ${$}`);return Z.text()};function $4($,Z){let X=Z??Q0;switch(X.category){case"cli":return kW($,X);case"api":return fW($,X);case"ide":throw Error("IDE targets not yet implemented. Coming soon!");default:throw Error(`Unknown target category: ${X.category}`)}}function kW($,Z){switch(Z.provider){case"claude-code":return new z5($,Z);case"codex-cli":return new q5($,Z);case"gemini-cli":throw Error("Gemini CLI target not yet implemented. Coming soon!");case"amazon-q":throw Error("Amazon Q target not yet implemented. Coming soon!");default:throw Error(`Unknown CLI provider: ${Z.provider}`)}}function fW($,Z){switch(Z.provider){case"anthropic":return new X5($,Z);case"openai":throw Error("OpenAI API target not yet implemented. Coming soon!");case"google":throw Error("Google API target not yet implemented. Coming soon!");default:throw Error(`Unknown API provider: ${Z.provider}`)}}var I$="default";function Z4($,Z){if(!$||$===I$)return{name:I$,config:Q0};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Target "${$}" not found, using default`),{name:I$,config:Q0}}function G5($,Z){if(!$||$===I$)return{name:I$,config:{}};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Context "${$}" not found, using default`),{name:I$,config:{}}}var J5="__matrix__";function hW($){let Z=[],X=$.matrix?.target??["default"],z=$.matrix?.context??["default"];for(let q of $.scenarios){let G=q.context?[q.context]:z;if(q.matrix){for(let Q of G)Z.push({scenario:q,targetName:J5,contextName:Q});continue}let J=q.target?[q.target]:X;for(let Q of J)for(let Y of G)Z.push({scenario:q,targetName:Q,contextName:Y})}return Z}async function Q5($,Z,X={}){let{onProgress:z}=X,q=[];if(Z.scenarios.length===0)throw Error("No scenarios defined in config");let G=Z.docs?.sources??{},J=[];if(Object.keys(G).length>0){z?.("Loading sources..."),J=await Z1(G,$.path);for(let W of J)z?.(` [${W.id}] ${W.name}`);z?.("")}let Q=J.map((W)=>W.id),Y=hW(Z);if(X.scenarioFilter&&X.scenarioFilter.length>0){let W=new Set(X.scenarioFilter);if(Y=Y.filter((H)=>W.has(H.scenario.name)),Y.length===0)throw Error(`No scenarios matched filter: ${[...W].join(", ")}. Declared scenarios: ${Z.scenarios.map((H)=>H.name).join(", ")}`)}let U="";for(let{scenario:W,targetName:H,contextName:V}of Y){let B=gW(H,V);if(W.name!==U){if(U)z?.("");z?.(`"${W.name}"`),U=W.name}try{let L=await vW(W,H,V,$,Z,J,Q,X);q.push(L);let T=B?B.padEnd(18):"";if(L.cells){z?.(` ${T} (matrix mode)`);for(let K of L.cells){let D=L0(K),F=` [${[K.cell.interface,K.cell.source??"-",K.cell.toolset].join(" \xB7 ")}]`.padEnd(40);z?.(`${F} ${D.icon} ${D.label} (${D.confidence}%)`)}}else if(L.surfaces){z?.(` ${T} (compare-surfaces mode)`);for(let K of L.surfaces){let D=L0(K),_=` [${K.active.join(",")}]`.padEnd(22);z?.(`${_} ${D.icon} ${D.label} (${D.confidence}%)`)}}else{let K=L0({answerable:L.answerable??"NO",confidence:L.confidence??0,traps:L.traps??{fired:[],avoided:[]},error:L.error});z?.(` ${T} ${K.icon} ${K.label} (${K.confidence}%)`)}}catch(L){let T=H==="default"?Q0:Z.targets?.[H]??Q0,K=W.requiredSources??[],D={scenario:W,answerable:"NO",confidence:0,response:"",reason:"Error during run",citations:{cited:[],required:K,missing:K,unknown:[]},traps:{fired:[],avoided:(W.traps??[]).map((F)=>F.id)},error:L instanceof Error?L.message:String(L),target:{target:H===J5?"matrix":H,category:T.category,provider:T.provider,model:T.model??"unknown"},context:{name:V}};q.push(D);let _=B?B.padEnd(18):"";z?.(` ${_} \u2717 Error`)}}return z?.(""),uW($,J,q)}function gW($,Z){if($==="default"&&Z==="default")return"";if(Z==="default")return`[${$}]`;return`[${$}/${Z}]`}async function vW($,Z,X,z,q,G,J,Q){if($.matrix&&Z===J5)return mW($,X,z,q,G,Q);let{config:Y}=Z4(Z,q.targets),{config:U}=G5(X,q.contexts),W=Q.targetFactory?Q.targetFactory(Z,Y):$4(Z,Y);if($.compareSurfaces&&$.compareSurfaces.length>0){let w=[],I;for(let P of $.compareSurfaces){let S=new Set(P),M=G.filter((n)=>S.has(n.id)),a=($.requiredSources??[]).filter((n)=>S.has(n)),l=await W.run($.prompt,{tool:z,cwd:z.path,context:U,docs:M,requiredSources:a,onProgress:Q.onProgress}),x=T$({response:l.response,requiredSources:a,registeredIds:P}),H0=E0({response:l.response,traps:$.traps??[]}),N$=H0.fired.length>0,F0=N$?"NO":x.answerable,S$=N$?0:x.confidence,J4=N$?`Trap fired: ${H0.fired.map((n)=>`"${n.id}" (${n.reason})`).join("; ")}`:x.reason;w.push({active:P,answerable:F0,confidence:S$,response:l.response,reason:J4,citations:x.citations,traps:H0,allResponses:l.allResponses}),I=l.metadata??I}return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,surfaces:w,target:I,context:{name:X}}}let H=$.requiredSources??[],V=await W.run($.prompt,{tool:z,cwd:z.path,context:U,docs:G,requiredSources:H,onProgress:Q.onProgress}),B=E0({response:V.response,traps:$.traps??[]}),L=B.fired.length>0,T=$.requiredSources!==void 0?T$({response:V.response,requiredSources:H,registeredIds:J}):null,K=$.expected!==void 0?P2({response:V.response,expected:$.expected}):null,D,_,F;if(L)D="NO",_=0,F=`Trap fired: ${B.fired.map((w)=>`"${w.id}" (${w.reason})`).join("; ")}`;else{let w=[],I=[];if(T)w.push({answerable:T.answerable,confidence:T.confidence}),I.push(T.reason);if(K){let P=K.total===0?100:Math.round(K.satisfied/K.total*100),S=P===100?"YES":P===0?"NO":"PARTIAL";w.push({answerable:S,confidence:P})}if(w.length===0)D="YES",_=100,F="No traps fired; no other contract declared";else{let P={YES:0,PARTIAL:1,NO:2};D=w.reduce((M,E)=>P[E.answerable]>P[M.answerable]?E:M).answerable,_=Math.round(w.reduce((M,E)=>M+E.confidence,0)/w.length),F=I.filter((M)=>M.length>0).join(" | ")}}return{scenario:$,answerable:D,confidence:_,response:V.response,reason:F,citations:T?T.citations:{cited:[],required:H,missing:[],unknown:[]},traps:B,target:V.metadata,context:{name:X},toolsUsed:V.toolsUsed,sources:V.sources,allResponses:V.allResponses}}function uW($,Z,X){let z=[];for(let Q of X){if(Q.surfaces){for(let Y of Q.surfaces)z.push({answerable:Y.answerable,confidence:Y.confidence});continue}if(Q.cells){for(let Y of Q.cells)z.push({answerable:Y.answerable,confidence:Y.confidence});continue}if(Q.answerable!==null&&Q.confidence!==null)z.push({answerable:Q.answerable,confidence:Q.confidence})}let q=z.length,G=z.filter((Q)=>Q.answerable==="YES"||Q.answerable==="PARTIAL").length,J=q>0?Math.round(z.reduce((Q,Y)=>{if(Y.answerable==="YES")return Q+Y.confidence;if(Y.answerable==="PARTIAL")return Q+Y.confidence*0.5;return Q},0)/q):0;return{tool:{name:$.name,description:$.description,path:$.path},docs:Z,scenarios:X,summary:{total:q,answered:G,unanswered:q-G,score:J}}}async function mW($,Z,X,z,q,G){let{config:J}=G5(Z,z.contexts),Q=$.matrix??{},Y=$.target??"default",U=Q.interfaces??[Y],W=Q.sources??[null],H=Q.toolsets??["none"],V=G.cellFilter??{},B=[],L;for(let K of U){if(V.interface&&V.interface!==K)continue;for(let D of W){if(V.source!==void 0&&V.source!==(D??""))continue;for(let _ of H){if(V.toolset&&V.toolset!==_)continue;let F=_==="none"?null:z.toolsets?.[_]??null,w=_!=="none"&&(F?.webSearch===!0||F?.webFetch===!0),{config:I}=Z4(K,z.targets);if(_!=="none"){if(!w)throw Error(`Toolset "${_}" is declared but not yet implemented. v0.16.x supports "none" and Claude-Code web toolsets (webSearch/webFetch). Other adapters (Context7 MCP, Firecrawl, native API search) land in follow-up commits.`);if(I.provider!=="claude-code")throw Error(`Toolset "${_}" (web) is implemented only on the claude-code interface. Interface "${K}" uses provider "${I.provider}"; rerun with a Claude Code interface or use toolset "none".`)}let P=[];if(F?.webSearch)P.push("WebSearch");if(F?.webFetch)P.push("WebFetch");let S=_==="none"?I:{...I,allowedTools:P,disallowedTools:[],mcpServers:F?.mcpServers},M=G.targetFactory?G.targetFactory(K,S):$4(K,S),E=_==="none",a=E?D===null?q:q.filter((c)=>c.id===D):[],l=E?D===null?q.map((c)=>c.id):[D]:[],x=$.requiredSources??[],H0=E?x.filter((c)=>l.includes(c)):[],N$=pW($.prompt,D,q,E),F0=await M.run(N$,{tool:X,cwd:X.path,context:J,docs:a,requiredSources:H0,onProgress:G.onProgress}),S$=E0({response:F0.response,traps:$.traps??[]}),J4=S$.fired.length>0,n=$.requiredSources!==void 0&&E?T$({response:F0.response,requiredSources:H0,registeredIds:l}):null,s=$.expected!==void 0?P2({response:F0.response,expected:$.expected}):null,w1,R1,P1;if(J4)w1="NO",R1=0,P1=`Trap fired: ${S$.fired.map((c)=>`"${c.id}" (${c.reason})`).join("; ")}`;else{let c=[],Q4=[];if(n)c.push({answerable:n.answerable,confidence:n.confidence}),Q4.push(n.reason);if(s){let o0=s.total===0?100:Math.round(s.satisfied/s.total*100),L5=o0===100?"YES":o0===0?"NO":"PARTIAL";c.push({answerable:L5,confidence:o0});let W0=s.includes.filter((h0)=>!h0.satisfied).map((h0)=>`"${h0.value}"`),f0=s.excludes.filter((h0)=>!h0.satisfied).map((h0)=>`"${h0.value}"`),I1=[];if(W0.length>0)I1.push(`missing includes: ${W0.join(", ")}`);if(f0.length>0)I1.push(`hit excludes: ${f0.join(", ")}`);Q4.push(I1.length>0?I1.join("; "):`expected checks satisfied (${s.satisfied}/${s.total})`)}if(c.length===0)w1="YES",R1=100,P1="No traps fired; no other contract declared";else{let o0={YES:0,PARTIAL:1,NO:2};w1=c.reduce((W0,f0)=>o0[f0.answerable]>o0[W0.answerable]?f0:W0).answerable,R1=Math.round(c.reduce((W0,f0)=>W0+f0.confidence,0)/c.length),P1=Q4.filter((W0)=>W0.length>0).join(" | ")}}B.push({cell:{interface:K,source:D,toolset:_},answerable:w1,confidence:R1,response:F0.response,reason:P1,citations:n?n.citations:null,traps:S$,expected:s?{includes:s.includes,excludes:s.excludes,satisfied:s.satisfied,total:s.total}:void 0,allResponses:F0.allResponses}),L=F0.metadata??L}}}let T=dW($,q);return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,cells:B,verifierSamples:T,target:L,context:{name:Z}}}function dW($,Z){let X=$.verifiers?.sources;if(!X||X.length===0)return;let z=new Map(Z.map((G)=>[G.id,G])),q=[];for(let G of X){let J=z.get(G);if(!J)continue;q.push({id:J.id,name:J.name,content:J.content})}return q.length>0?q:void 0}function pW($,Z,X,z){if(z)return $;if(Z===null)return $;let q=X.find((J)=>J.id===Z);if(!q)return $;let G=q.type==="url"?`The canonical source for this question is the documentation at ${q.source}. Use your available tools to research it.`:`The canonical source for this question is "${q.name}" (registered locally as ${q.id}). Use your available tools to research from authoritative sources.`;return`${$}
|
|
245
|
+
${$}`,U=CW(SW(),`pickled-codex-${jW()}.txt`),W=["--ask-for-approval","never","exec","--json","--sandbox","read-only","--ignore-user-config","--ignore-rules","--ephemeral","--skip-git-repo-check","--cd",z,"--model",J,"--output-last-message",U,"-"];try{let H=await this.spawnFn(this.binary,W,{cwd:z,stdin:Y}),{allResponses:V,toolsUsed:B}=bW(H.stdout);if(H.exitCode!==0)throw Error(`codex exec failed (exit ${H.exitCode}): ${H.stderr.trim()||"no stderr output"}`);let L="";try{L=(await this.readFileFn(U)).trim()}catch{L=V.length>0?V[V.length-1].text:""}if(V.length>0)V[V.length-1].type="final";return{response:L,allResponses:V,toolsUsed:B,sources:[],metadata:{model:J,category:this.category,provider:this.provider,target:this.name}}}finally{await NW(U,{force:!0})}}}function bW($){let Z=[],X=[];for(let z of $.split(`
|
|
246
|
+
`)){let q=z.trim();if(!q)continue;let G;try{G=JSON.parse(q)}catch{continue}let J=xW(G);if(J){let Y=Z.length===0?"initial":"intermediate";Z.push({type:Y,text:J})}let Q=yW(G);if(Q&&!X.includes(Q))X.push(Q)}return{allResponses:Z,toolsUsed:X}}function xW($){if(!$||typeof $!=="object")return null;let Z=$;if(typeof Z.message==="string")return Z.message;if(typeof Z.content==="string")return Z.content;if(typeof Z.type==="string"&&(Z.type==="assistant_message"||Z.type==="agent_message")&&typeof Z.text==="string")return Z.text;if(Z.type==="message"&&typeof Z.text==="string")return Z.text;return null}function yW($){if(!$||typeof $!=="object")return null;let Z=$;if(typeof Z.tool==="string")return Z.tool;if(typeof Z.type==="string"&&(Z.type==="tool_call"||Z.type==="function_call")&&typeof Z.name==="string")return Z.name;return null}var kW=async($,Z,X)=>{let z=Bun.spawn([$,...Z],{cwd:X.cwd,stdin:"pipe",stdout:"pipe",stderr:"pipe"});z.stdin.write(X.stdin),await z.stdin.end();let[q,G,J]=await Promise.all([new Response(z.stdout).text(),new Response(z.stderr).text(),z.exited]);return{exitCode:J,stdout:q,stderr:G}},fW=async($)=>{let Z=Bun.file($);if(!await Z.exists())throw Error(`Last-message file not found: ${$}`);return Z.text()};function X4($,Z){let X=Z??Q0;switch(X.category){case"cli":return hW($,X);case"api":return gW($,X);case"ide":throw Error("IDE targets not yet implemented. Coming soon!");default:throw Error(`Unknown target category: ${X.category}`)}}function hW($,Z){switch(Z.provider){case"claude-code":return new q5($,Z);case"codex-cli":return new G5($,Z);case"gemini-cli":throw Error("Gemini CLI target not yet implemented. Coming soon!");case"amazon-q":throw Error("Amazon Q target not yet implemented. Coming soon!");default:throw Error(`Unknown CLI provider: ${Z.provider}`)}}function gW($,Z){switch(Z.provider){case"anthropic":return new z5($,Z);case"openai":throw Error("OpenAI API target not yet implemented. Coming soon!");case"google":throw Error("Google API target not yet implemented. Coming soon!");default:throw Error(`Unknown API provider: ${Z.provider}`)}}var A$="default";function z4($,Z){if(!$||$===A$)return{name:A$,config:Q0};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Target "${$}" not found, using default`),{name:A$,config:Q0}}function J5($,Z){if(!$||$===A$)return{name:A$,config:{}};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Context "${$}" not found, using default`),{name:A$,config:{}}}var Q5="__matrix__";function vW($){let Z=[],X=$.matrix?.target??["default"],z=$.matrix?.context??["default"];for(let q of $.scenarios){let G=q.context?[q.context]:z;if(q.matrix){for(let Q of G)Z.push({scenario:q,targetName:Q5,contextName:Q});continue}let J=q.target?[q.target]:X;for(let Q of J)for(let Y of G)Z.push({scenario:q,targetName:Q,contextName:Y})}return Z}async function Y5($,Z,X={}){let{onProgress:z}=X,q=[];if(Z.scenarios.length===0)throw Error("No scenarios defined in config");let G=Z.docs?.sources??{},J=[];if(Object.keys(G).length>0){z?.("Loading sources..."),J=await z1(G,$.path);for(let W of J)z?.(` [${W.id}] ${W.name}`);z?.("")}let Q=J.map((W)=>W.id),Y=vW(Z);if(X.scenarioFilter&&X.scenarioFilter.length>0){let W=new Set(X.scenarioFilter);if(Y=Y.filter((H)=>W.has(H.scenario.name)),Y.length===0)throw Error(`No scenarios matched filter: ${[...W].join(", ")}. Declared scenarios: ${Z.scenarios.map((H)=>H.name).join(", ")}`)}let U="";for(let{scenario:W,targetName:H,contextName:V}of Y){let B=uW(H,V);if(W.name!==U){if(U)z?.("");z?.(`"${W.name}"`),U=W.name}try{let L=await mW(W,H,V,$,Z,J,Q,X);q.push(L);let K=B?B.padEnd(18):"";if(L.cells){z?.(` ${K} (matrix mode)`);for(let T of L.cells){let D=L0(T),O=` [${[T.cell.interface,T.cell.source??"-",T.cell.toolset].join(" \xB7 ")}]`.padEnd(40);z?.(`${O} ${D.icon} ${D.label} (${D.confidence}%)`)}}else if(L.surfaces){z?.(` ${K} (compare-surfaces mode)`);for(let T of L.surfaces){let D=L0(T),_=` [${T.active.join(",")}]`.padEnd(22);z?.(`${_} ${D.icon} ${D.label} (${D.confidence}%)`)}}else{let T=L0({answerable:L.answerable??"NO",confidence:L.confidence??0,traps:L.traps??{fired:[],avoided:[]},error:L.error});z?.(` ${K} ${T.icon} ${T.label} (${T.confidence}%)`)}}catch(L){let K=H==="default"?Q0:Z.targets?.[H]??Q0,T=W.requiredSources??[],D={scenario:W,answerable:"NO",confidence:0,response:"",reason:"Error during run",citations:{cited:[],required:T,missing:T,unknown:[]},traps:{fired:[],avoided:(W.traps??[]).map((O)=>O.id)},error:L instanceof Error?L.message:String(L),target:{target:H===Q5?"matrix":H,category:K.category,provider:K.provider,model:K.model??"unknown"},context:{name:V}};q.push(D);let _=B?B.padEnd(18):"";z?.(` ${_} \u2717 Error`)}}return z?.(""),dW($,J,q)}function uW($,Z){if($==="default"&&Z==="default")return"";if(Z==="default")return`[${$}]`;return`[${$}/${Z}]`}async function mW($,Z,X,z,q,G,J,Q){if($.matrix&&Z===Q5)return pW($,X,z,q,G,Q);let{config:Y}=z4(Z,q.targets),{config:U}=J5(X,q.contexts),W=Q.targetFactory?Q.targetFactory(Z,Y):X4(Z,Y);if($.compareSurfaces&&$.compareSurfaces.length>0){let P=[],R;for(let I of $.compareSurfaces){let S=new Set(I),F=G.filter((O0)=>S.has(O0.id)),a=($.requiredSources??[]).filter((O0)=>S.has(O0)),c=await W.run($.prompt,{tool:z,cwd:z.path,context:U,docs:F,requiredSources:a,onProgress:Q.onProgress}),y=B$({response:c.response,requiredSources:a,registeredIds:I}),H0=E0({response:c.response,traps:$.traps??[]}),S$=H0.fired.length>0,Y4=S$?"NO":y.answerable,J0=S$?0:y.confidence,C$=S$?`Trap fired: ${H0.fired.map((O0)=>`"${O0.id}" (${O0.reason})`).join("; ")}`:y.reason;P.push({active:I,answerable:Y4,confidence:J0,response:c.response,reason:C$,citations:y.citations,traps:H0,allResponses:c.allResponses}),R=c.metadata??R}return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,surfaces:P,target:R,context:{name:X}}}let H=$.requiredSources??[],V=await W.run($.prompt,{tool:z,cwd:z.path,context:U,docs:G,requiredSources:H,onProgress:Q.onProgress}),B=E0({response:V.response,traps:$.traps??[]}),L=B.fired.length>0,K=$.requiredSources!==void 0?B$({response:V.response,requiredSources:H,registeredIds:J}):null,T=$.expected!==void 0?A2({response:V.response,expected:$.expected}):null,D,_,O;if(L)D="NO",_=0,O=`Trap fired: ${B.fired.map((P)=>`"${P.id}" (${P.reason})`).join("; ")}`;else{let P=[],R=[];if(K)P.push({answerable:K.answerable,confidence:K.confidence}),R.push(K.reason);if(T){let I=T.total===0?100:Math.round(T.satisfied/T.total*100),S=I===100?"YES":I===0?"NO":"PARTIAL";P.push({answerable:S,confidence:I})}if(P.length===0)D="YES",_=100,O="No traps fired; no other contract declared";else{let I={YES:0,PARTIAL:1,NO:2};D=P.reduce((F,E)=>I[E.answerable]>I[F.answerable]?E:F).answerable,_=Math.round(P.reduce((F,E)=>F+E.confidence,0)/P.length),O=R.filter((F)=>F.length>0).join(" | ")}}return{scenario:$,answerable:D,confidence:_,response:V.response,reason:O,citations:K?K.citations:{cited:[],required:H,missing:[],unknown:[]},traps:B,target:V.metadata,context:{name:X},toolsUsed:V.toolsUsed,sources:V.sources,allResponses:V.allResponses}}function dW($,Z,X){let z=[];for(let Q of X){if(Q.surfaces){for(let Y of Q.surfaces)z.push({answerable:Y.answerable,confidence:Y.confidence});continue}if(Q.cells){for(let Y of Q.cells)z.push({answerable:Y.answerable,confidence:Y.confidence});continue}if(Q.answerable!==null&&Q.confidence!==null)z.push({answerable:Q.answerable,confidence:Q.confidence})}let q=z.length,G=z.filter((Q)=>Q.answerable==="YES"||Q.answerable==="PARTIAL").length,J=q>0?Math.round(z.reduce((Q,Y)=>{if(Y.answerable==="YES")return Q+Y.confidence;if(Y.answerable==="PARTIAL")return Q+Y.confidence*0.5;return Q},0)/q):0;return{tool:{name:$.name,description:$.description,path:$.path},docs:Z,scenarios:X,summary:{total:q,answered:G,unanswered:q-G,score:J}}}async function pW($,Z,X,z,q,G){let{config:J}=J5(Z,z.contexts),Q=$.matrix??{},Y=$.target??"default",U=Q.interfaces??[Y],W=Q.sources??[null],H=Q.toolsets??["none"],V=G.cellFilter??{},B=[],L;for(let T of U){if(V.interface&&V.interface!==T)continue;for(let D of W){if(V.source!==void 0&&V.source!==(D??""))continue;for(let _ of H){if(V.toolset&&V.toolset!==_)continue;let O=_==="none"?null:z.toolsets?.[_]??null,P=_!=="none"&&(O?.webSearch===!0||O?.webFetch===!0),{config:R}=z4(T,z.targets);if(_!=="none"){if(!P)throw Error(`Toolset "${_}" is declared but not yet implemented. v0.16.x supports "none" and Claude-Code web toolsets (webSearch/webFetch). Other adapters (Context7 MCP, Firecrawl, native API search) land in follow-up commits.`);if(R.provider!=="claude-code")throw Error(`Toolset "${_}" (web) is implemented only on the claude-code interface. Interface "${T}" uses provider "${R.provider}"; rerun with a Claude Code interface or use toolset "none".`)}let I=[];if(O?.webSearch)I.push("WebSearch");if(O?.webFetch)I.push("WebFetch");let S=_==="none"?R:{...R,allowedTools:I,disallowedTools:[],mcpServers:O?.mcpServers,maxTurns:Math.max(R.maxTurns??0,15)},F=G.targetFactory?G.targetFactory(T,S):X4(T,S),E=_==="none",a=E?D===null?q:q.filter((h)=>h.id===D):[],c=E?D===null?q.map((h)=>h.id):[D]:[],y=$.requiredSources??[],H0=E?y.filter((h)=>c.includes(h)):[],S$=cW($.prompt,D,q,E),Y4=E?void 0:{sourceHint:iW(D,q)},J0;try{J0=await F.run(S$,{tool:X,cwd:X.path,context:J,docs:a,requiredSources:H0,discovery:Y4,onProgress:G.onProgress})}catch(h){B.push({cell:{interface:T,source:D,toolset:_},answerable:"NO",confidence:0,response:"",reason:`Error in cell: ${h instanceof Error?h.message:String(h)}`,citations:null,traps:{fired:[],avoided:($.traps??[]).map((E$)=>E$.id)},error:h instanceof Error?h.message:String(h)});continue}let C$=E0({response:J0.response,traps:$.traps??[]}),O0=C$.fired.length>0,o0=$.requiredSources!==void 0&&E?B$({response:J0.response,requiredSources:H0,registeredIds:c}):null,n=$.expected!==void 0?A2({response:J0.response,expected:$.expected}):null,I1,R1,A1;if(O0)I1="NO",R1=0,A1=`Trap fired: ${C$.fired.map((h)=>`"${h.id}" (${h.reason})`).join("; ")}`;else{let h=[],E$=[];if(o0)h.push({answerable:o0.answerable,confidence:o0.confidence}),E$.push(o0.reason);if(n){let t0=n.total===0?100:Math.round(n.satisfied/n.total*100),D5=t0===100?"YES":t0===0?"NO":"PARTIAL";h.push({answerable:D5,confidence:t0});let W0=n.includes.filter((h0)=>!h0.satisfied).map((h0)=>`"${h0.value}"`),f0=n.excludes.filter((h0)=>!h0.satisfied).map((h0)=>`"${h0.value}"`),j1=[];if(W0.length>0)j1.push(`missing includes: ${W0.join(", ")}`);if(f0.length>0)j1.push(`hit excludes: ${f0.join(", ")}`);E$.push(j1.length>0?j1.join("; "):`expected checks satisfied (${n.satisfied}/${n.total})`)}if(h.length===0)I1="YES",R1=100,A1="No traps fired; no other contract declared";else{let t0={YES:0,PARTIAL:1,NO:2};I1=h.reduce((W0,f0)=>t0[f0.answerable]>t0[W0.answerable]?f0:W0).answerable,R1=Math.round(h.reduce((W0,f0)=>W0+f0.confidence,0)/h.length),A1=E$.filter((W0)=>W0.length>0).join(" | ")}}B.push({cell:{interface:T,source:D,toolset:_},answerable:I1,confidence:R1,response:J0.response,reason:A1,citations:o0?o0.citations:null,traps:C$,expected:n?{includes:n.includes,excludes:n.excludes,satisfied:n.satisfied,total:n.total}:void 0,toolsUsed:J0.toolsUsed,allResponses:J0.allResponses}),L=J0.metadata??L}}}let K=lW($,q);return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,cells:B,verifierSamples:K,target:L,context:{name:Z}}}function lW($,Z){let X=$.verifiers?.sources;if(!X||X.length===0)return;let z=new Map(Z.map((G)=>[G.id,G])),q=[];for(let G of X){let J=z.get(G);if(!J)continue;q.push({id:J.id,name:J.name,content:J.content})}return q.length>0?q:void 0}function cW($,Z,X,z){if(z)return $;if(Z===null)return $;let q=X.find((J)=>J.id===Z);if(!q)return $;let G=q.type==="url"?`The canonical source for this question is the documentation at ${q.source}. Use your available tools to research it.`:`The canonical source for this question is "${q.name}" (registered locally as ${q.id}). Use your available tools to research from authoritative sources.`;return`${$}
|
|
240
247
|
|
|
241
|
-
${G}`}var
|
|
248
|
+
${G}`}function iW($,Z){if($===null)return null;let X=Z.find((z)=>z.id===$);if(!X)return null;if(X.type==="url")return X.source;return X.name}var yZ=($=0)=>(Z)=>`\x1B[${Z+$}m`,kZ=($=0)=>(Z)=>`\x1B[${38+$};5;${Z}m`,fZ=($=0)=>(Z,X,z)=>`\x1B[${38+$};2;${Z};${X};${z}m`,k={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},iL=Object.keys(k.modifier),aW=Object.keys(k.color),nW=Object.keys(k.bgColor),aL=[...aW,...nW];function sW(){let $=new Map;for(let[Z,X]of Object.entries(k)){for(let[z,q]of Object.entries(X))k[z]={open:`\x1B[${q[0]}m`,close:`\x1B[${q[1]}m`},X[z]=k[z],$.set(q[0],q[1]);Object.defineProperty(k,Z,{value:X,enumerable:!1})}return Object.defineProperty(k,"codes",{value:$,enumerable:!1}),k.color.close="\x1B[39m",k.bgColor.close="\x1B[49m",k.color.ansi=yZ(),k.color.ansi256=kZ(),k.color.ansi16m=fZ(),k.bgColor.ansi=yZ(10),k.bgColor.ansi256=kZ(10),k.bgColor.ansi16m=fZ(10),Object.defineProperties(k,{rgbToAnsi256:{value(Z,X,z){if(Z===X&&X===z){if(Z<8)return 16;if(Z>248)return 231;return Math.round((Z-8)/247*24)+232}return 16+36*Math.round(Z/255*5)+6*Math.round(X/255*5)+Math.round(z/255*5)},enumerable:!1},hexToRgb:{value(Z){let X=/[a-f\d]{6}|[a-f\d]{3}/i.exec(Z.toString(16));if(!X)return[0,0,0];let[z]=X;if(z.length===3)z=[...z].map((G)=>G+G).join("");let q=Number.parseInt(z,16);return[q>>16&255,q>>8&255,q&255]},enumerable:!1},hexToAnsi256:{value:(Z)=>k.rgbToAnsi256(...k.hexToRgb(Z)),enumerable:!1},ansi256ToAnsi:{value(Z){if(Z<8)return 30+Z;if(Z<16)return 90+(Z-8);let X,z,q;if(Z>=232)X=((Z-232)*10+8)/255,z=X,q=X;else{Z-=16;let Q=Z%36;X=Math.floor(Z/36)/5,z=Math.floor(Q/6)/5,q=Q%6/5}let G=Math.max(X,z,q)*2;if(G===0)return 30;let J=30+(Math.round(q)<<2|Math.round(z)<<1|Math.round(X));if(G===2)J+=60;return J},enumerable:!1},rgbToAnsi:{value:(Z,X,z)=>k.ansi256ToAnsi(k.rgbToAnsi256(Z,X,z)),enumerable:!1},hexToAnsi:{value:(Z)=>k.ansi256ToAnsi(k.hexToAnsi256(Z)),enumerable:!1}}),k}var rW=sW(),G0=rW;import U5 from"process";import oW from"os";import hZ from"tty";function X0($,Z=globalThis.Deno?globalThis.Deno.args:U5.argv){let X=$.startsWith("-")?"":$.length===1?"-":"--",z=Z.indexOf(X+$),q=Z.indexOf("--");return z!==-1&&(q===-1||z<q)}var{env:f}=U5,q4;if(X0("no-color")||X0("no-colors")||X0("color=false")||X0("color=never"))q4=0;else if(X0("color")||X0("colors")||X0("color=true")||X0("color=always"))q4=1;function tW(){if("FORCE_COLOR"in f){if(f.FORCE_COLOR==="true")return 1;if(f.FORCE_COLOR==="false")return 0;return f.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(f.FORCE_COLOR,10),3)}}function eW($){if($===0)return!1;return{level:$,hasBasic:!0,has256:$>=2,has16m:$>=3}}function $V($,{streamIsTTY:Z,sniffFlags:X=!0}={}){let z=tW();if(z!==void 0)q4=z;let q=X?q4:z;if(q===0)return 0;if(X){if(X0("color=16m")||X0("color=full")||X0("color=truecolor"))return 3;if(X0("color=256"))return 2}if("TF_BUILD"in f&&"AGENT_NAME"in f)return 1;if($&&!Z&&q===void 0)return 0;let G=q||0;if(f.TERM==="dumb")return G;if(U5.platform==="win32"){let J=oW.release().split(".");if(Number(J[0])>=10&&Number(J[2])>=10586)return Number(J[2])>=14931?3:2;return 1}if("CI"in f){if(["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some((J)=>(J in f)))return 3;if(["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some((J)=>(J in f))||f.CI_NAME==="codeship")return 1;return G}if("TEAMCITY_VERSION"in f)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(f.TEAMCITY_VERSION)?1:0;if(f.COLORTERM==="truecolor")return 3;if(f.TERM==="xterm-kitty")return 3;if(f.TERM==="xterm-ghostty")return 3;if(f.TERM==="wezterm")return 3;if("TERM_PROGRAM"in f){let J=Number.parseInt((f.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(f.TERM_PROGRAM){case"iTerm.app":return J>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(f.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(f.TERM))return 1;if("COLORTERM"in f)return 1;return G}function gZ($,Z={}){let X=$V($,{streamIsTTY:$&&$.isTTY,...Z});return eW(X)}var ZV={stdout:gZ({isTTY:hZ.isatty(1)}),stderr:gZ({isTTY:hZ.isatty(2)})},vZ=ZV;function uZ($,Z,X){let z=$.indexOf(Z);if(z===-1)return $;let q=Z.length,G=0,J="";do J+=$.slice(G,z)+Z+X,G=z+q,z=$.indexOf(Z,G);while(z!==-1);return J+=$.slice(G),J}function mZ($,Z,X,z){let q=0,G="";do{let J=$[z-1]==="\r";G+=$.slice(q,J?z-1:z)+Z+(J?`\r
|
|
242
249
|
`:`
|
|
243
250
|
`)+X,q=z+1,z=$.indexOf(`
|
|
244
|
-
`,q)}while(z!==-1);return G+=$.slice(q),G}var{stdout:
|
|
245
|
-
`);if(G!==-1)Z=
|
|
246
|
-
`)}function
|
|
247
|
-
`);let Q=G.findings.filter((H)=>H.severity==="error").length,Y=G.findings.filter((H)=>H.severity==="warning").length;if(z!=="json"&&!X)if(console.log(),Q===0&&Y===0)console.log(
|
|
248
|
-
`);else
|
|
251
|
+
`,q)}while(z!==-1);return G+=$.slice(q),G}var{stdout:dZ,stderr:pZ}=vZ,H5=Symbol("GENERATOR"),j$=Symbol("STYLER"),w1=Symbol("IS_EMPTY"),lZ=["ansi","ansi","ansi256","ansi16m"],N$=Object.create(null),XV=($,Z={})=>{if(Z.level&&!(Number.isInteger(Z.level)&&Z.level>=0&&Z.level<=3))throw Error("The `level` option should be an integer from 0 to 3");let X=dZ?dZ.level:0;$.level=Z.level===void 0?X:Z.level};var zV=($)=>{let Z=(...X)=>X.join(" ");return XV(Z,$),Object.setPrototypeOf(Z,P1.prototype),Z};function P1($){return zV($)}Object.setPrototypeOf(P1.prototype,Function.prototype);for(let[$,Z]of Object.entries(G0))N$[$]={get(){let X=G4(this,V5(Z.open,Z.close,this[j$]),this[w1]);return Object.defineProperty(this,$,{value:X}),X}};N$.visible={get(){let $=G4(this,this[j$],!0);return Object.defineProperty(this,"visible",{value:$}),$}};var W5=($,Z,X,...z)=>{if($==="rgb"){if(Z==="ansi16m")return G0[X].ansi16m(...z);if(Z==="ansi256")return G0[X].ansi256(G0.rgbToAnsi256(...z));return G0[X].ansi(G0.rgbToAnsi(...z))}if($==="hex")return W5("rgb",Z,X,...G0.hexToRgb(...z));return G0[X][$](...z)},qV=["rgb","hex","ansi256"];for(let $ of qV){N$[$]={get(){let{level:X}=this;return function(...z){let q=V5(W5($,lZ[X],"color",...z),G0.color.close,this[j$]);return G4(this,q,this[w1])}}};let Z="bg"+$[0].toUpperCase()+$.slice(1);N$[Z]={get(){let{level:X}=this;return function(...z){let q=V5(W5($,lZ[X],"bgColor",...z),G0.bgColor.close,this[j$]);return G4(this,q,this[w1])}}}}var GV=Object.defineProperties(()=>{},{...N$,level:{enumerable:!0,get(){return this[H5].level},set($){this[H5].level=$}}}),V5=($,Z,X)=>{let z,q;if(X===void 0)z=$,q=Z;else z=X.openAll+$,q=Z+X.closeAll;return{open:$,close:Z,openAll:z,closeAll:q,parent:X}},G4=($,Z,X)=>{let z=(...q)=>JV(z,q.length===1?""+q[0]:q.join(" "));return Object.setPrototypeOf(z,GV),z[H5]=$,z[j$]=Z,z[w1]=X,z},JV=($,Z)=>{if($.level<=0||!Z)return $[w1]?"":Z;let X=$[j$];if(X===void 0)return Z;let{openAll:z,closeAll:q}=X;if(Z.includes("\x1B"))while(X!==void 0)Z=uZ(Z,X.close,X.open),X=X.parent;let G=Z.indexOf(`
|
|
252
|
+
`);if(G!==-1)Z=mZ(Z,q,z,G);return z+Z+q};Object.defineProperties(P1.prototype,N$);var QV=P1(),zD=P1({level:pZ?pZ.level:0});var w=QV;var cZ="\u2500".repeat(55);function K5($){if($==="success")return w.green;if($==="warning")return w.yellow;return w.red}function YV($){if($>=70)return w.green;if($>=50)return w.yellow;return w.red}function B5($){if($.label==="Error")return $.label;return`${$.label} (${$.confidence}%)`}function UV($){let Z=L0({answerable:$.answerable??"NO",confidence:$.confidence??0,traps:$.traps??{fired:[],avoided:[]},error:$.error}),X=K5(Z.tone);return{icon:X(Z.icon),status:B5(Z),color:X}}function HV($){let Z=$.target?.target??"default",X=$.context?.name??"default";if(Z==="default"&&X==="default")return"";if(X==="default")return w.dim(`[${Z}]`);return w.dim(`[${Z}/${X}]`)}function WV($){let Z=$.map((X)=>X.scenario.name);return new Set(Z).size!==Z.length}function J4($){return $.map((Z)=>`[${Z}]`).join(", ")}function T5($,Z){let X=[];if($.error)return X.push(w.dim(`${Z}error: ${$.error}`)),X;if($.traps.fired.length>0)for(let z of $.traps.fired)X.push(w.red(`${Z}trap: ${z.id}`)),X.push(w.dim(`${Z}reason: ${z.reason}`)),X.push(w.dim(`${Z}match: "${z.matched}"`));else if($.reason&&$.answerable!=="YES")X.push(w.dim(`${Z}reason: ${$.reason}`));if($.citations.cited.length>0)X.push(w.dim(`${Z}cited: ${J4($.citations.cited)}`));if($.citations.missing.length>0)X.push(w.dim(`${Z}missing: ${J4($.citations.missing)}`));if($.citations.unknown.length>0)X.push(w.dim(`${Z}unknown: ${J4($.citations.unknown)}`));return X}function iZ($,Z){if(!$.traps||!$.citations)return[];return T5({error:$.error,traps:$.traps,reason:$.reason??"",answerable:$.answerable??"NO",citations:$.citations},Z)}function aZ($){let{icon:Z,status:X,color:z}=UV($),q=HV($),G=`${Z} ${X}`;return q?`${q} ${z(G)}`:z(G)}function nZ($,Z){if(!$.cells)return[];let X=[];X.push(`${Z}${w.dim("Matrix cells (interface \xB7 source \xB7 toolset)")}`);for(let z of $.cells){let q=L0(z),G=K5(q.tone),J=`[${z.cell.interface} \xB7 ${z.cell.source??"-"} \xB7 ${z.cell.toolset}]`,Q=w.dim(J),Y=`${G(q.icon)} ${G(B5(q))}`;if(X.push(`${Z}${Q} ${Y}`),X.push(...T5({traps:z.traps,reason:z.reason,answerable:z.answerable,citations:z.citations??{cited:[],required:[],missing:[],unknown:[]}},`${Z} `)),z.expected){let U=z.expected.includes.filter((H)=>!H.satisfied).map((H)=>`"${H.value}"`),W=z.expected.excludes.filter((H)=>!H.satisfied).map((H)=>`"${H.value}"`);if(U.length>0)X.push(w.dim(`${Z} expected.includes missing: ${U.join(", ")}`));if(W.length>0)X.push(w.dim(`${Z} expected.excludes hit: ${W.join(", ")}`))}if(z.toolsUsed&&z.toolsUsed.length>0)X.push(w.dim(`${Z} tools: ${z.toolsUsed.join(", ")}`))}if($.verifierSamples&&$.verifierSamples.length>0){X.push(`${Z}${w.dim("Verifier samples (human review; never LLM-judged)")}`);for(let z of $.verifierSamples){let q=z.content.slice(0,200).replace(/\s+/g," ").trim(),G=z.content.length>200?"...":"";X.push(w.dim(`${Z} [${z.id}] ${z.name}`)),X.push(w.dim(`${Z} ${q}${G}`))}}return X}function sZ($,Z){if(!$.surfaces)return[];let X=[];X.push(`${Z}${w.dim("Citations scoped to active surface (compare mode)")}`);for(let z of $.surfaces){let q=L0(z),G=K5(q.tone),J=w.dim(`[${z.active.join(",")}]`),Q=`${G(q.icon)} ${G(B5(q))}`;X.push(`${Z}${J} ${Q}`),X.push(...T5({traps:z.traps,reason:z.reason,answerable:z.answerable,citations:z.citations},`${Z} `))}return X}function VV($){let Z=0,X=0,z=0;for(let q of $){if(q.surfaces){for(let G of q.surfaces)Z+=G.traps.fired.length,X+=G.citations.missing.length,z+=G.citations.unknown.length;continue}if(q.traps)Z+=q.traps.fired.length;if(q.citations)X+=q.citations.missing.length,z+=q.citations.unknown.length}if(Z>0&&X+z>0)return"Review fired traps and citation gaps.";if(Z>0)return"Review fired traps before trusting this surface.";if(X+z>0)return"Review missing and unknown citations.";return"Citations hold. No declared traps fired."}function KV($,Z){let X=$.summary.score,q=`Overall: ${YV(X)(`${X}`)} / 100`;if(Z===void 0||Z<=0)return q;let J=X>=Z?w.green("run passes"):w.red("run fails");return`${q} \xB7 threshold ${Z} \xB7 ${J}`}function rZ($,Z={}){let{tool:X,scenarios:z,summary:q}=$,G=z,J=[];if(J.push(w.bold("pickled check")),J.push(cZ),J.push(`Tool: ${w.cyan(X.name)}`),$.docs.length>0)J.push(`Sources: ${w.dim(J4($.docs.map((Q)=>Q.id)))}`);else J.push(`Sources: ${w.dim("none registered")}`);if(J.push(`Scenarios: ${w.dim(String(q.total))}`),J.push(""),WV(G)){let Q=new Map;for(let Y of G){let U=Y.scenario.name;if(!Q.has(U))Q.set(U,[]);Q.get(U)?.push(Y)}for(let[Y,U]of Q){J.push(`Scenario: ${Y}`);for(let W of U)if(W.cells)J.push(...nZ(W," "));else if(W.surfaces)J.push(...sZ(W," "));else J.push(` ${aZ(W)}`),J.push(...iZ(W," "));J.push("")}}else for(let Q of G){if(J.push(`Scenario: ${Q.scenario.name}`),Q.cells)J.push(...nZ(Q," "));else if(Q.surfaces)J.push(...sZ(Q," "));else J.push(` ${aZ(Q)}`),J.push(...iZ(Q," "));J.push("")}return J.push(cZ),J.push(KV($,Z.threshold)),J.push(w.dim(VV(z))),J.join(`
|
|
253
|
+
`)}function L5($,Z={}){console.log(rZ($,Z)),console.log()}function Q4($,Z={}){if(Z.verbose)return JSON.stringify($,null,2);let X={...$,docs:$.docs.map((z)=>({...z,content:""})),scenarios:$.scenarios.map((z)=>{let{allResponses:q,verifierSamples:G,cells:J,surfaces:Q,...Y}=z;return{...Y,verifierSamples:G?.map((U)=>({...U,content:""})),cells:J?.map((U)=>{let{allResponses:W,...H}=U;return H}),surfaces:Q?.map((U)=>{let{allResponses:W,...H}=U;return H})}})};return JSON.stringify(X,null,2)}function TV($){if($.format&&$.format!=="terminal")return $.format;if($.json)return"json";return $.format??"terminal"}async function oZ($,Z){let{output:X}=Z,z=TV(Z),q=BV.resolve($),G;try{G=await R2({targetRepo:q})}catch(H){console.error(w.red(H instanceof Error?H.message:H)),process.exit(1)}let J;if(z==="json")J=_2(G);else if(z==="markdown")J=D2(G);else J=M2(G);if(X)await Bun.write(X,J);else await LV(`${J}
|
|
254
|
+
`);let Q=G.findings.filter((H)=>H.severity==="error").length,Y=G.findings.filter((H)=>H.severity==="warning").length;if(z!=="json"&&!X)if(console.log(),Q===0&&Y===0)console.log(w.green("Audit clean. No issues found."));else{let H=Q>0?w.red:w.yellow;console.log(H(`Audit found ${Q} error(s), ${Y} warning(s).`))}if((Z.failOn??"error")==="warning"?Q+Y>0:Q>0)process.exit(1)}function LV($){return new Promise((Z,X)=>{process.stdout.write($,(z)=>{if(z)X(z);else Z()})})}import DV from"path";async function tZ($,Z){let{json:X,output:z,verbose:q}=Z,G=(K)=>!X&&console.log(K),J=DV.resolve($),Q;try{Q=await W$(J)}catch(K){console.error(w.red(K instanceof Error?K.message:K)),console.error(),console.error(w.dim("Run `pickled init` to create a config file")),process.exit(1)}if(Z.target){let K=Q.scenarios.length;try{Q=E9(Q,Z.target)}catch(D){console.error(w.red(D instanceof Error?D.message:String(D))),process.exit(1)}let T=K-Q.scenarios.length;if(T>0&&!X)G(w.dim(`Skipping ${T} scenario(s) with explicit target != "${Z.target}"`))}let Y={name:Q.tool.name,description:Q.tool.description,path:J};if(q){G(w.bold("pickled check")),G(""),G(w.dim(` Tool: ${Y.name}`)),G(w.dim(` Scenarios: ${Q.scenarios.length}`));for(let K of Q.scenarios)G(w.dim(` - ${K.name}`))}let U=Z.interface??Z.target,W=U||Z.source||Z.toolset?{interface:U,source:Z.source,toolset:Z.toolset}:void 0,H=Z.scenario?[Z.scenario]:void 0,V=await Y5(Y,Q,{onProgress:q?(K)=>{if(!X)G(w.dim(` ${K}`))}:void 0,cellFilter:W,scenarioFilter:H}),B=Z.threshold?parseInt(Z.threshold,10):Q.threshold??0,L=B>0&&V.summary.score<B;if(z)await Bun.write(z,Q4(V,{verbose:q}));else if(X)await _V(`${Q4(V,{verbose:q})}
|
|
255
|
+
`);else L5(V,{threshold:B});if(L){if(X||z)console.error(w.red(`Overall: ${V.summary.score} / 100 \xB7 threshold ${B} \xB7 run fails`)),console.error(w.dim("Review failed scenarios before trusting this surface."));process.exit(1)}}function _V($){return new Promise((Z,X)=>{process.stdout.write($,(z)=>{if(z)X(z);else Z()})})}import MV from"path";var FV=`# pickled.yml - Agent legibility check for your product
|
|
249
256
|
|
|
250
257
|
tool:
|
|
251
258
|
name: "your-product"
|
|
@@ -267,4 +274,4 @@ scenarios:
|
|
|
267
274
|
|
|
268
275
|
# Optional: fail CI if score falls below threshold
|
|
269
276
|
# threshold: 80
|
|
270
|
-
`;async function
|
|
277
|
+
`;async function eZ($){let X=`${MV.resolve($)}/pickled.yml`;if(await Bun.file(X).exists())console.error(w.red("pickled.yml already exists")),process.exit(1);await Bun.write(X,FV),console.log(w.green("Created pickled.yml")),console.log(),console.log(w.dim("Next steps:")),console.log(w.dim(" 1. Edit pickled.yml: list your sources and scenarios")),console.log(w.dim(" 2. Run: pickled check")),console.log()}e0.name("pickled").description("Test what agents actually understand about your product").version(h5.version);e0.command("init").description("Create a pickled.yml config file").argument("[path]","Path to your project (default: current directory)",".").action(eZ);e0.command("audit").description("Static scan of agent-context files (CLAUDE.md, AGENTS.md, llms.txt). No LLM calls.").argument("[path]","Path to your project (default: current directory)",".").addOption(new D4("--format <name>","Output format").choices(["terminal","markdown","json"]).default("terminal")).option("--json","Shorthand for --format json").option("-o, --output <file>","Save report to file").addOption(new D4("--fail-on <level>","Exit non-zero on this severity or higher").choices(["error","warning"]).default("error")).action(oZ);e0.command("check").description("Run agent scenarios against registered sources").argument("[path]","Path to your project (default: current directory)",".").option("--json","Output as JSON").option("-o, --output <file>","Save report to file").option("-v, --verbose","Show detailed progress").option("-t, --threshold <percent>","Minimum score % to pass (overrides config)").option("--target <name>","Restrict to the named target. Overrides matrix.target for non-matrix scenarios; for matrix scenarios, also filters cells by interface unless --interface is explicitly set.").option("--scenario <name>","Run only the named scenario (for CI matrix one-job-per-cell usage)").option("--interface <name>","Matrix cell filter: run only cells with this interface. Takes precedence over --target for matrix cells.").option("--source <name>","Matrix cell filter: run only cells with this source id").option("--toolset <name>","Matrix cell filter: run only cells with this toolset name").action(tZ);await e0.parseAsync();
|