@pickled-dev/cli 0.16.1 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -2
- package/dist/index.js +114 -112
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,101 +1,101 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
2
|
// @bun
|
|
3
|
-
var
|
|
4
|
-
`)}displayWidth($){return
|
|
3
|
+
var tZ=Object.create;var{getPrototypeOf:eZ,defineProperty:D5,getOwnPropertyNames:$X}=Object;var ZX=Object.prototype.hasOwnProperty;function XX($){return this[$]}var zX,qX,_5=($,Z,X)=>{var z=$!=null&&typeof $==="object";if(z){var q=Z?zX??=new WeakMap:qX??=new WeakMap,G=q.get($);if(G)return G}X=$!=null?tZ(eZ($)):{};let J=Z||!$||!$.__esModule?D5(X,"default",{value:$,enumerable:!0}):X;for(let Q of $X($))if(!ZX.call(J,Q))D5(J,Q,{get:XX.bind($,Q),enumerable:!0});if(z)q.set($,J);return J};var O=($,Z)=>()=>(Z||$((Z={exports:{}}).exports,Z),Z.exports);var V0=import.meta.require;var C$=O((GX)=>{class Y4 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 O5 extends Y4{constructor($){super(1,"commander.invalidArgument",$);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}GX.CommanderError=Y4;GX.InvalidArgumentError=O5});var A1=O((HX)=>{var{InvalidArgumentError:YX}=C$();class M5{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 YX(`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 UX($){let Z=$.name()+($.variadic===!0?"...":"");return $.required?"<"+Z+">":"["+Z+"]"}HX.Argument=M5;HX.humanReadableArgName=UX});var U4=O((BX)=>{var{humanReadableArgName:TX}=A1();class F5{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 w5($).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 w5($){let Z=/\x1b\[\d*(;\d*)*m/g;return $.replace(Z,"")}BX.Help=F5;BX.stripColor=w5});var H4=O((OX)=>{var{InvalidArgumentError:DX}=C$();class P5{constructor($,Z){this.flags=$,this.description=Z||"",this.required=$.includes("<"),this.optional=$.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test($),this.mandatory=!1;let X=_X($);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 DX(`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 R5(this.name().replace(/^no-/,""));return R5(this.name())}helpGroup($){return this.helpGroupHeading=$,this}is($){return this.short===$||this.long===$}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class I5{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 R5($){return $.split("-").reduce((Z,X)=>{return Z+X[0].toUpperCase()+X.slice(1)})}function _X($){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}}
|
|
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=P5;OX.DualOptions=I5});var A5=O((PX)=>{function wX($,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=wX($,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""}PX.suggestSimilar=RX});var C5=O((bX)=>{var AX=V0("events").EventEmitter,W4=V0("child_process"),T0=V0("path"),j1=V0("fs"),b=V0("process"),{Argument:jX,humanReadableArgName:NX}=A1(),{CommanderError:V4}=C$(),{Help:SX,stripColor:CX}=U4(),{Option:j5,DualOptions:EX}=H4(),{suggestSimilar:N5}=A5();class B4 extends AX{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:()=>T4()??(b.stdout.isTTY&&b.stdout.hasColors?.()),getErrHasColors:()=>T4()??(b.stderr.isTTY&&b.stderr.hasColors?.()),stripColor:(Z)=>CX(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 B4($)}createHelp(){return Object.assign(new SX,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 jX($,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 V4($,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 j5($,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 j5)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(j1.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=T0.resolve(U,W);if(j1.existsSync(H))return H;if(z.includes(T0.extname(W)))return;let V=z.find((B)=>j1.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=j1.realpathSync(this._scriptPath)}catch{U=this._scriptPath}J=T0.resolve(T0.dirname(U),J)}if(J){let U=q(J,G);if(!U&&!$._executableFile&&this._scriptPath){let W=T0.basename(this._scriptPath,T0.extname(this._scriptPath));if(W!==this._name)U=q(J,`${W}-${$._name}`)}G=U||G}X=z.includes(T0.extname(G));let Q;if(b.platform!=="win32")if(X)Z.unshift(G),Z=S5(b.execArgv).concat(Z),Q=W4.spawn(b.argv[0],Z,{stdio:"inherit"});else Q=W4.spawn(G,Z,{stdio:"inherit"});else this._checkForMissingExecutable(G,J,$._name),Z.unshift(G),Z=S5(b.execArgv).concat(Z),Q=W4.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 V4(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 V4(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
|
|
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 EX(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=N5($,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=N5($,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 NX(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=T0.basename($,T0.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 S5($){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 T4(){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}bX.Command=B4;bX.useColor=T4});var x5=O((hX)=>{var{Argument:E5}=A1(),{Command:K4}=C5(),{CommanderError:kX,InvalidArgumentError:b5}=C$(),{Help:fX}=U4(),{Option:y5}=H4();hX.program=new K4;hX.createCommand=($)=>new K4($);hX.createOption=($,Z)=>new y5($,Z);hX.createArgument=($,Z)=>new E5($,Z);hX.Command=K4;hX.Option=y5;hX.Argument=E5;hX.Help=fX;hX.CommanderError=kX;hX.InvalidArgumentError=b5;hX.InvalidOptionArgumentError=b5});var C=O((zz)=>{var O4=Symbol.for("yaml.alias"),h5=Symbol.for("yaml.document"),N1=Symbol.for("yaml.map"),g5=Symbol.for("yaml.pair"),M4=Symbol.for("yaml.scalar"),S1=Symbol.for("yaml.seq"),B0=Symbol.for("yaml.node.type"),rX=($)=>!!$&&typeof $==="object"&&$[B0]===O4,oX=($)=>!!$&&typeof $==="object"&&$[B0]===h5,tX=($)=>!!$&&typeof $==="object"&&$[B0]===N1,eX=($)=>!!$&&typeof $==="object"&&$[B0]===g5,v5=($)=>!!$&&typeof $==="object"&&$[B0]===M4,$z=($)=>!!$&&typeof $==="object"&&$[B0]===S1;function u5($){if($&&typeof $==="object")switch($[B0]){case N1:case S1:return!0}return!1}function Zz($){if($&&typeof $==="object")switch($[B0]){case O4:case N1:case M4:case S1:return!0}return!1}var Xz=($)=>(v5($)||u5($))&&!!$.anchor;zz.ALIAS=O4;zz.DOC=h5;zz.MAP=N1;zz.NODE_TYPE=B0;zz.PAIR=g5;zz.SCALAR=M4;zz.SEQ=S1;zz.hasAnchor=Xz;zz.isAlias=rX;zz.isCollection=u5;zz.isDocument=oX;zz.isMap=tX;zz.isNode=Zz;zz.isPair=eX;zz.isScalar=v5;zz.isSeq=$z});var E$=O((Mz)=>{var g=C(),i=Symbol("break visit"),m5=Symbol("skip children"),Y0=Symbol("remove node");function C1($,Z){let X=d5(Z);if(g.isDocument($)){if(e0(null,$.contents,X,Object.freeze([$]))===Y0)$.contents=null}else e0(null,$,X,Object.freeze([]))}C1.BREAK=i;C1.SKIP=m5;C1.REMOVE=Y0;function e0($,Z,X,z){let q=p5($,Z,X,z);if(g.isNode(q)||g.isPair(q))return l5($,z,q),e0($,q,X,z);if(typeof q!=="symbol"){if(g.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let G=0;G<Z.items.length;++G){let J=e0(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(g.isPair(Z)){z=Object.freeze(z.concat(Z));let G=e0("key",Z.key,X,z);if(G===i)return i;else if(G===Y0)Z.key=null;let J=e0("value",Z.value,X,z);if(J===i)return i;else if(J===Y0)Z.value=null}}return q}async function E1($,Z){let X=d5(Z);if(g.isDocument($)){if(await $$(null,$.contents,X,Object.freeze([$]))===Y0)$.contents=null}else await $$(null,$,X,Object.freeze([]))}E1.BREAK=i;E1.SKIP=m5;E1.REMOVE=Y0;async function $$($,Z,X,z){let q=await p5($,Z,X,z);if(g.isNode(q)||g.isPair(q))return l5($,z,q),$$($,q,X,z);if(typeof q!=="symbol"){if(g.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let G=0;G<Z.items.length;++G){let J=await $$(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(g.isPair(Z)){z=Object.freeze(z.concat(Z));let G=await $$("key",Z.key,X,z);if(G===i)return i;else if(G===Y0)Z.key=null;let J=await $$("value",Z.value,X,z);if(J===i)return i;else if(J===Y0)Z.value=null}}return q}function d5($){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 p5($,Z,X,z){if(typeof X==="function")return X($,Z,z);if(g.isMap(Z))return X.Map?.($,Z,z);if(g.isSeq(Z))return X.Seq?.($,Z,z);if(g.isPair(Z))return X.Pair?.($,Z,z);if(g.isScalar(Z))return X.Scalar?.($,Z,z);if(g.isAlias(Z))return X.Alias?.($,Z,z);return}function l5($,Z,X){let z=Z[Z.length-1];if(g.isCollection(z))z.items[$]=X;else if(g.isPair(z))if($==="key")z.key=X;else z.value=X;else if(g.isDocument(z))z.contents=X;else{let q=g.isAlias(z)?"alias":"scalar";throw Error(`Cannot replace node with ${q} parent`)}}Mz.visit=C1;Mz.visitAsync=E1});var F4=O((Az)=>{var c5=C(),Rz=E$(),Pz={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Iz=($)=>$.replace(/[!,[\]{}]/g,(Z)=>Pz[Z]);class t{constructor($,Z){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},t.defaultYaml,$),this.tags=Object.assign({},t.defaultTags,Z)}clone(){let $=new t(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new t(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:t.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},t.defaultTags);break}return $}add($,Z){if(this.atNextDocument)this.yaml={explicit:t.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},t.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+Iz($.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&&c5.isNode($.contents)){let q={};Rz.visit($.contents,(G,J)=>{if(c5.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
|
+
`)}}t.defaultYaml={explicit:!1,version:"1.2"};t.defaultTags={"!!":"tag:yaml.org,2002:"};Az.Directives=t});var b1=O((Ez)=>{var i5=C(),Nz=E$();function Sz($){if(/[\x00-\x19\s,[\]{}]/.test($)){let X=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(X)}return!0}function a5($){let Z=new Set;return Nz.visit($,{Value(X,z){if(z.anchor)Z.add(z.anchor)}}),Z}function n5($,Z){for(let X=1;;++X){let z=`${$}${X}`;if(!Z.has(z))return z}}function Cz($,Z){let X=[],z=new Map,q=null;return{onAnchor:(G)=>{X.push(G),q??(q=a5($));let J=n5(Z,q);return q.add(J),J},setAnchors:()=>{for(let G of X){let J=z.get(G);if(typeof J==="object"&&J.anchor&&(i5.isScalar(J.node)||i5.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}}Ez.anchorIsValid=Sz;Ez.anchorNames=a5;Ez.createNodeAnchors=Cz;Ez.findNewAnchor=n5});var w4=O((fz)=>{function b$($,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=b$($,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=b$($,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=b$($,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=b$($,z,q,G);if(J===void 0)delete z[q];else if(J!==G)z[q]=J}return $.call(Z,X,z)}fz.applyReviver=b$});var w0=O((vz)=>{var gz=C();function s5($,Z,X){if(Array.isArray($))return $.map((z,q)=>s5(z,String(q),X));if($&&typeof $.toJSON==="function"){if(!X||!gz.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 $}vz.toJS=s5});var y1=O((pz)=>{var mz=w4(),r5=C(),dz=w0();class o5{constructor($){Object.defineProperty(this,r5.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(!r5.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=dz.toJS(this,"",G);if(typeof z==="function")for(let{count:Q,res:Y}of G.anchors.values())z(Y,Q);return typeof q==="function"?mz.applyReviver(q,{"":J},"",J):J}}pz.NodeBase=o5});var y$=O((sz)=>{var cz=b1(),iz=E$(),Z$=C(),az=y1(),nz=w0();class t5 extends az.NodeBase{constructor($){super(Z$.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=[],iz.visit($,{Node:(q,G)=>{if(Z$.isAlias(G)||Z$.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)nz.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=x1(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(cz.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 x1($,Z,X){if(Z$.isAlias(Z)){let z=Z.resolve($),q=X&&z&&X.get(z);return q?q.count*q.aliasCount:0}else if(Z$.isCollection(Z)){let z=0;for(let q of Z.items){let G=x1($,q,X);if(G>z)z=G}return z}else if(Z$.isPair(Z)){let z=x1($,Z.key,X),q=x1($,Z.value,X);return Math.max(z,q)}return 1}sz.Alias=t5});var h=O((Z3)=>{var oz=C(),tz=y1(),ez=w0(),$3=($)=>!$||typeof $!=="function"&&typeof $!=="object";class g0 extends tz.NodeBase{constructor($){super(oz.SCALAR);this.value=$}toJSON($,Z){return Z?.keep?this.value:ez.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";Z3.Scalar=g0;Z3.isScalarValue=$3});var x$=O((Y3)=>{var q3=y$(),v0=C(),e5=h(),G3="tag:yaml.org,2002:";function J3($,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 Q3($,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 q3.Alias(Y.anchor);else Y={anchor:null,node:null},Q.set($,Y);if(Z?.startsWith("!!"))Z=G3+Z.slice(2);let U=J3($,Z,J.tags);if(!U){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let H=new e5.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 e5.Scalar($);if(Z)W.tag=Z;else if(!U.default)W.tag=U.tag;if(Y)Y.node=W;return W}Y3.createNode=Q3});var k1=O((V3)=>{var H3=x$(),U0=C(),W3=y1();function R4($,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 H3.createNode(z,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var $6=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class Z6 extends W3.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($6($))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,R4(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,R4(this.schema,z,Z));else throw Error(`Expected YAML collection at ${X}. Remaining path: ${z}`)}}}V3.Collection=Z6;V3.collectionFromPath=R4;V3.isEmptyPath=$6});var k$=O((_3)=>{var L3=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function P4($,Z){if(/^\n+$/.test($))return $.substring(1);return Z?$.replace(/^(?! *$)/gm,Z):$}var D3=($,Z,X)=>$.endsWith(`
|
|
30
|
+
`)?P4(X,Z):X.includes(`
|
|
31
31
|
`)?`
|
|
32
|
-
`+
|
|
33
|
-
`){if(X==="block")T=
|
|
32
|
+
`+P4(X,Z):($.endsWith(" ")?"":" ")+X;_3.indentComment=P4;_3.lineComment=D3;_3.stringifyComment=L3});var z6=O((R3)=>{function w3($,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,T=-1,K=-1,D=-1;if(X==="block"){if(T=X6($,T,Z.length),T!==-1)H=T+Y}for(let F;F=$[T+=1];){if(X==="quoted"&&F==="\\"){switch(K=T,$[T+1]){case"x":T+=3;break;case"u":T+=5;break;case"U":T+=9;break;default:T+=1}D=T}if(F===`
|
|
33
|
+
`){if(X==="block")T=X6($,T,Z.length);H=T+Z.length+Y,V=void 0}else{if(F===" "&&B&&B!==" "&&B!==`
|
|
34
34
|
`&&B!=="\t"){let w=$[T+1];if(w&&w!==" "&&w!==`
|
|
35
|
-
`&&w!=="\t")V=T}if(T>=H)if(V)U.push(V),H=V+Y,V=void 0;else if(X==="quoted"){while(B===" "||B==="\t")B=
|
|
36
|
-
${Z}${$.slice(0,I)}`;else{if(X==="quoted"&&W[w])
|
|
37
|
-
${Z}${$.slice(w+1,I)}`}}return
|
|
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
|
|
35
|
+
`&&w!=="\t")V=T}if(T>=H)if(V)U.push(V),H=V+Y,V=void 0;else if(X==="quoted"){while(B===" "||B==="\t")B=F,F=$[T+=1],L=!0;let w=T>D+1?T-2:K-1;if(W[w])return $;U.push(w),W[w]=!0,H=w+Y,V=void 0}else L=!0}B=F}if(L&&Q)Q();if(U.length===0)return $;if(J)J();let _=$.slice(0,U[0]);for(let F=0;F<U.length;++F){let w=U[F],I=U[F+1]||$.length;if(w===0)_=`
|
|
36
|
+
${Z}${$.slice(0,I)}`;else{if(X==="quoted"&&W[w])_+=`${$[w]}\\`;_+=`
|
|
37
|
+
${Z}${$.slice(w+1,I)}`}}return _}function X6($,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}R3.FOLD_BLOCK="block";R3.FOLD_FLOW="flow";R3.FOLD_QUOTED="quoted";R3.foldFlowLines=w3});var h$=O((E3)=>{var q0=h(),R0=z6(),h1=($,Z)=>({indentAtStart:Z?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),g1=($)=>/^(%|---|\.\.\.)/m.test($);function N3($,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 f$($,Z){let X=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return X;let{implicitKey:z}=Z,q=Z.options.doubleQuotedMinMultiLineLength,G=Z.indent||(g1($)?" ":""),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:R0.foldFlowLines(J,G,R0.FOLD_QUOTED,h1(Z,!1))}function I4($,Z){if(Z.options.singleQuote===!1||Z.implicitKey&&$.includes(`
|
|
43
|
+
`)||/[ \t]\n|\n[ \t]/.test($))return f$($,Z);let X=Z.indent||(g1($)?" ":""),z="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
44
|
+
${X}`)+"'";return Z.implicitKey?z:R0.foldFlowLines(z,X,R0.FOLD_FLOW,h1(Z,!1))}function X$($,Z){let{singleQuote:X}=Z.options,z;if(X===!1)z=f$;else{let q=$.includes('"'),G=$.includes("'");if(q&&!G)z=I4;else if(G&&!q)z=f$;else z=X?I4:f$}return z($,Z)}var A4;try{A4=new RegExp(`(^|(?<!
|
|
45
45
|
))
|
|
46
46
|
+(?!
|
|
47
|
-
|$)`,"g")}catch{
|
|
47
|
+
|$)`,"g")}catch{A4=/\n+(?!\n|$)/g}function f1({comment:$,type:Z,value:X},z,q,G){let{blockQuote:J,commentString:Q,lineWidth:Y}=z.options;if(!J||/\n[\t ]+$/.test(X))return X$(X,z);let U=z.indent||(z.forceBlockIndent||g1(X)?" ":""),W=J==="literal"?!0:J==="folded"||Z===q0.Scalar.BLOCK_FOLDED?!1:Z===q0.Scalar.BLOCK_LITERAL?!0:!N3(X,Y,U.length);if(!X)return W?`|
|
|
48
48
|
`:`>
|
|
49
49
|
`;let H,V;for(V=X.length;V>0;--V){let I=X[V-1];if(I!==`
|
|
50
50
|
`&&I!=="\t"&&I!==" ")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=K;else break}let
|
|
54
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`),
|
|
55
|
-
${U}${
|
|
56
|
-
${U}${
|
|
57
|
-
`)||W&&/[[\]{},]/.test(G))return
|
|
58
|
-
`)?
|
|
59
|
-
`))return
|
|
60
|
-
${Y}`);if(J){let V=(T)=>T.default&&T.tag!=="tag:yaml.org,2002:str"&&T.test?.test(H),{compat:B,tags:L}=Z.doc.schema;if(L.some(V)||B?.some(V))return
|
|
61
|
-
${Z.indent}${Q}`}
|
|
62
|
-
${Q}:`}else if(K=`${K}:`,V)K+=
|
|
63
|
-
`:"",
|
|
64
|
-
${
|
|
65
|
-
`&&
|
|
52
|
+
`)B=B.slice(0,-1);B=B.replace(A4,`$&${U}`)}let T=!1,K,D=-1;for(K=0;K<X.length;++K){let I=X[K];if(I===" ")T=!0;else if(I===`
|
|
53
|
+
`)D=K;else break}let _=X.substring(0,D<K?D+1:K);if(_)X=X.substring(_.length),_=_.replace(/\n+/g,`$&${U}`);let w=(T?U?"2":"1":"")+H;if($){if(w+=" "+Q($.replace(/ ?[\r\n]+/g," ")),q)q()}if(!W){let I=X.replace(/\n+/g,`
|
|
54
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`),P=!1,S=h1(z,!0);if(J!=="folded"&&Z!==q0.Scalar.BLOCK_FOLDED)S.onOverflow=()=>{P=!0};let M=R0.foldFlowLines(`${_}${I}${B}`,U,R0.FOLD_BLOCK,S);if(!P)return`>${w}
|
|
55
|
+
${U}${M}`}return X=X.replace(/\n+/g,`$&${U}`),`|${w}
|
|
56
|
+
${U}${_}${X}${B}`}function S3($,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 X$(G,Z);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(G))return Q||W||!G.includes(`
|
|
58
|
+
`)?X$(G,Z):f1($,Z,X,z);if(!Q&&!W&&q!==q0.Scalar.PLAIN&&G.includes(`
|
|
59
|
+
`))return f1($,Z,X,z);if(g1(G)){if(Y==="")return Z.forceBlockIndent=!0,f1($,Z,X,z);else if(Q&&Y===U)return X$(G,Z)}let H=G.replace(/\n+/g,`$&
|
|
60
|
+
${Y}`);if(J){let V=(T)=>T.default&&T.tag!=="tag:yaml.org,2002:str"&&T.test?.test(H),{compat:B,tags:L}=Z.doc.schema;if(L.some(V)||B?.some(V))return X$(G,Z)}return Q?H:R0.foldFlowLines(H,Y,R0.FOLD_FLOW,h1(Z,!1))}function C3($,Z,X,z){let{implicitKey:q,inFlow:G}=Z,J=typeof $.value==="string"?$:Object.assign({},$,{value:String($.value)}),{type:Q}=$;if(Q!==q0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(J.value))Q=q0.Scalar.QUOTE_DOUBLE}let Y=(W)=>{switch(W){case q0.Scalar.BLOCK_FOLDED:case q0.Scalar.BLOCK_LITERAL:return q||G?X$(J.value,Z):f1(J,Z,X,z);case q0.Scalar.QUOTE_DOUBLE:return f$(J.value,Z);case q0.Scalar.QUOTE_SINGLE:return I4(J.value,Z);case q0.Scalar.PLAIN:return S3(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}E3.stringifyString=C3});var g$=O((u3)=>{var y3=b1(),P0=C(),x3=k$(),k3=h$();function f3($,Z){let X=Object.assign({blockQuote:!0,commentString:x3.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 h3($,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(P0.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 g3($,Z,{anchors:X,doc:z}){if(!z.directives)return"";let q=[],G=(P0.isScalar($)||P0.isCollection($))&&$.anchor;if(G&&y3.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 v3($,Z,X,z){if(P0.isPair($))return $.toString(Z,X,z);if(P0.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=P0.isNode($)?$:Z.doc.createNode($,{onTagObj:(Y)=>q=Y});q??(q=h3(Z.doc.schema.tags,G));let J=g3(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):P0.isScalar(G)?k3.stringifyString(G,Z,X,z):G.toString(Z,X,z);if(!J)return Q;return P0.isScalar(G)||Q[0]==="{"||Q[0]==="["?`${J} ${Q}`:`${J}
|
|
61
|
+
${Z.indent}${Q}`}u3.createStringifyContext=f3;u3.stringify=v3});var J6=O((l3)=>{var K0=C(),q6=h(),G6=g$(),v$=k$();function p3({key:$,value:Z},X,z,q){let{allNullValues:G,doc:J,indent:Q,indentStep:Y,options:{commentString:U,indentSeq:W,simpleKeys:H}}=X,V=K0.isNode($)&&$.comment||null;if(H){if(V)throw Error("With simple keys, key nodes cannot have comments");if(K0.isCollection($)||!K0.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let B=!H&&(!$||V&&Z==null&&!X.inFlow||K0.isCollection($)||(K0.isScalar($)?$.type===q6.Scalar.BLOCK_FOLDED||$.type===q6.Scalar.BLOCK_LITERAL:typeof $==="object"));X=Object.assign({},X,{allNullValues:!1,implicitKey:!B&&(H||!G),indent:Q+Y});let L=!1,T=!1,K=G6.stringify($,X,()=>L=!0,()=>T=!0);if(!B&&!X.inFlow&&K.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 K===""?"?":B?`? ${K}`:K}}else if(G&&!H||Z==null&&B){if(K=`? ${K}`,V&&!L)K+=v$.lineComment(K,X.indent,U(V));else if(T&&q)q();return K}if(L)V=null;if(B){if(V)K+=v$.lineComment(K,X.indent,U(V));K=`? ${K}
|
|
62
|
+
${Q}:`}else if(K=`${K}:`,V)K+=v$.lineComment(K,X.indent,U(V));let D,_,F;if(K0.isNode(Z))D=!!Z.spaceBefore,_=Z.commentBefore,F=Z.comment;else if(D=!1,_=null,F=null,Z&&typeof Z==="object")Z=J.createNode(Z);if(X.implicitKey=!1,!B&&!V&&K0.isScalar(Z))X.indentAtStart=K.length+1;if(T=!1,!W&&Y.length>=2&&!X.inFlow&&!B&&K0.isSeq(Z)&&!Z.flow&&!Z.tag&&!Z.anchor)X.indent=X.indent.substring(2);let w=!1,I=G6.stringify(Z,X,()=>w=!0,()=>T=!0),P=" ";if(V||D||_){if(P=D?`
|
|
63
|
+
`:"",_){let S=U(_);P+=`
|
|
64
|
+
${v$.indentComment(S,X.indent)}`}if(I===""&&!X.inFlow){if(P===`
|
|
65
|
+
`&&F)P=`
|
|
66
66
|
|
|
67
|
-
`}else
|
|
68
|
-
${X.indent}`}else if(!B&&
|
|
69
|
-
`),E=
|
|
67
|
+
`}else P+=`
|
|
68
|
+
${X.indent}`}else if(!B&&K0.isCollection(Z)){let S=I[0],M=I.indexOf(`
|
|
69
|
+
`),E=M!==-1,a=X.inFlow??Z.flow??Z.items.length===0;if(E||!a){let l=!1;if(E&&(S==="&"||S==="!")){let x=I.indexOf(" ");if(S==="&"&&x!==-1&&x<M&&I[x+1]==="!")x=I.indexOf(" ",x+1);if(x===-1||M<x)l=!0}if(!l)P=`
|
|
70
70
|
${X.indent}`}}else if(I===""||I[0]===`
|
|
71
|
-
`)
|
|
71
|
+
`)P="";if(K+=P+I,X.inFlow){if(w&&z)z()}else if(F&&!w)K+=v$.lineComment(K,X.indent,U(F));else if(T&&q)q();return K}l3.stringifyPair=p3});var j4=O((n3)=>{var Q6=V0("process");function i3($,...Z){if($==="debug")console.log(...Z)}function a3($,Z){if($==="debug"||$==="warn")if(typeof Q6.emitWarning==="function")Q6.emitWarning(Z);else console.warn(Z)}n3.debug=i3;n3.warn=a3});var m1=O((t3)=>{var u$=C(),Y6=h(),v1="<<",u1={identify:($)=>$===v1||typeof $==="symbol"&&$.description===v1,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new Y6.Scalar(Symbol(v1)),{addToJSMap:U6}),stringify:()=>v1},o3=($,Z)=>(u1.identify(Z)||u$.isScalar(Z)&&(!Z.type||Z.type===Y6.Scalar.PLAIN)&&u1.identify(Z.value))&&$?.doc.schema.tags.some((X)=>X.tag===u1.tag&&X.default);function U6($,Z,X){if(X=$&&u$.isAlias(X)?X.resolve($.doc):X,u$.isSeq(X))for(let z of X.items)N4($,Z,z);else if(Array.isArray(X))for(let z of X)N4($,Z,z);else N4($,Z,X)}function N4($,Z,X){let z=$&&u$.isAlias(X)?X.resolve($.doc):X;if(!u$.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}t3.addMergeToJSMap=U6;t3.isMergeKey=o3;t3.merge=u1});var C4=O((J7)=>{var X7=j4(),H6=m1(),z7=g$(),W6=C(),S4=w0();function q7($,Z,{key:X,value:z}){if(W6.isNode(X)&&X.addToJSMap)X.addToJSMap($,Z,z);else if(H6.isMergeKey($,X))H6.addMergeToJSMap($,Z,z);else{let q=S4.toJS(X,"",$);if(Z instanceof Map)Z.set(q,S4.toJS(z,q,$));else if(Z instanceof Set)Z.add(q);else{let G=G7(X,q,$),J=S4.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 G7($,Z,X){if(Z===null)return"";if(typeof Z!=="object")return String(Z);if(W6.isNode($)&&X?.doc){let z=z7.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)+'..."';X7.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)}J7.addPairToJSMap=q7});var I0=O((W7)=>{var V6=x$(),Y7=J6(),U7=C4(),d1=C();function H7($,Z,X){let z=V6.createNode($,void 0,X),q=V6.createNode(Z,void 0,X);return new p1(z,q)}class p1{constructor($,Z=null){Object.defineProperty(this,d1.NODE_TYPE,{value:d1.PAIR}),this.key=$,this.value=Z}clone($){let{key:Z,value:X}=this;if(d1.isNode(Z))Z=Z.clone($);if(d1.isNode(X))X=X.clone($);return new p1(Z,X)}toJSON($,Z){let X=Z?.mapAsMap?new Map:{};return U7.addPairToJSMap(Z,X,this)}toString($,Z,X){return $?.doc?Y7.stringifyPair(this,$,Z,X):JSON.stringify(this)}}W7.Pair=p1;W7.createPair=H7});var E4=O((D7)=>{var u0=C(),T6=g$(),l1=k$();function B7($,Z,X){return(Z.inFlow??$.flow?L7:K7)($,Z,X)}function K7({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 T=Z[L],K=null;if(u0.isNode(T)){if(!H&&T.spaceBefore)V.push("");if(c1(X,V,T.commentBefore,H),T.comment)K=T.comment}else if(u0.isPair(T)){let _=u0.isNode(T.key)?T.key:null;if(_){if(!H&&_.spaceBefore)V.push("");c1(X,V,_.commentBefore,H)}}H=!1;let D=T6.stringify(T,W,()=>K=null,()=>H=!0);if(K)D+=l1.lineComment(D,G,U(K));if(H&&K)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 T=V[L];B+=T?`
|
|
72
72
|
${Y}${T}`:`
|
|
73
73
|
`}}if($){if(B+=`
|
|
74
|
-
`+
|
|
74
|
+
`+l1.indentComment(U($),Y),Q)Q()}else if(H&&J)J();return B}function L7({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 T=$[L],K=null;if(u0.isNode(T)){if(T.spaceBefore)H.push("");if(c1(Z,H,T.commentBefore,!1),T.comment)K=T.comment}else if(u0.isPair(T)){let _=u0.isNode(T.key)?T.key:null;if(_){if(_.spaceBefore)H.push("");if(c1(Z,H,_.commentBefore,!1),_.comment)U=!0}let F=u0.isNode(T.value)?T.value:null;if(F){if(F.comment)K=F.comment;if(F.commentBefore)U=!0}else if(T.value==null&&_?.comment)K=_.comment}if(K)U=!0;let D=T6.stringify(T,Y,()=>K=null);if(L<$.length-1)D+=",";if(K)D+=l1.lineComment(D,z,Q(K));if(!U&&(H.length>W||D.includes(`
|
|
75
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,K)=>T+K.length+2,2);U=Z.options.lineWidth>0&&L>Z.options.lineWidth}if(U){let L=V;for(let T of H)L+=T?`
|
|
76
76
|
${G}${q}${T}`:`
|
|
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 c1({indent:$,options:{commentString:Z}},X,z,q){if(z&&q)z=z.replace(/^\n+/,"");if(z){let G=l1.indentComment(Z(z),$);X.push(G.trimStart())}}D7.stringifyCollection=B7});var j0=O((R7)=>{var O7=E4(),M7=C4(),F7=k1(),A0=C(),i1=I0(),w7=h();function m$($,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 B6 extends F7.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(i1.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 i1.Pair($,$?.value);else X=new i1.Pair($.key,$.value);let z=m$(this.items,X.key),q=this.schema?.sortMapEntries;if(z){if(!Z)throw Error(`Key ${X.key} already set`);if(A0.isScalar(z.value)&&w7.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=m$(this.items,$);if(!Z)return!1;return this.items.splice(this.items.indexOf(Z),1).length>0}get($,Z){let z=m$(this.items,$)?.value;return(!Z&&A0.isScalar(z)?z.value:z)??void 0}has($){return!!m$(this.items,$)}set($,Z){this.add(new i1.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)M7.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 O7.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:X,onComment:Z})}}R7.YAMLMap=B6;R7.findPair=m$});var z$=O((N7)=>{var A7=C(),K6=j0(),j7={collection:"map",default:!0,nodeClass:K6.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,Z){if(!A7.isMap($))Z("Expected a mapping for this tag");return $},createNode:($,Z,X)=>K6.YAMLMap.from($,Z,X)};N7.map=j7});var N0=O((k7)=>{var C7=x$(),E7=E4(),b7=k1(),n1=C(),y7=h(),x7=w0();class L6 extends b7.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(n1.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let Z=a1($);if(typeof Z!=="number")return!1;return this.items.splice(Z,1).length>0}get($,Z){let X=a1($);if(typeof X!=="number")return;let z=this.items[X];return!Z&&n1.isScalar(z)?z.value:z}has($){let Z=a1($);return typeof Z==="number"&&Z<this.items.length}set($,Z){let X=a1($);if(typeof X!=="number")throw Error(`Expected a valid index, not ${$}.`);let z=this.items[X];if(n1.isScalar(z)&&y7.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(x7.toJS(q,String(z++),Z));return X}toString($,Z,X){if(!$)return JSON.stringify(this);return E7.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(C7.createNode(J,void 0,X))}}return q}}function a1($){let Z=n1.isScalar($)?$.value:$;if(Z&&typeof Z==="string")Z=Number(Z);return typeof Z==="number"&&Number.isInteger(Z)&&Z>=0?Z:null}k7.YAMLSeq=L6});var q$=O((v7)=>{var h7=C(),D6=N0(),g7={collection:"seq",default:!0,nodeClass:D6.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,Z){if(!h7.isSeq($))Z("Expected a sequence for this tag");return $},createNode:($,Z,X)=>D6.YAMLSeq.from($,Z,X)};v7.seq=g7});var d$=O((p7)=>{var m7=h$(),d7={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,Z,X,z){return Z=Object.assign({actualString:!0},Z),m7.stringifyString($,Z,X,z)}};p7.string=d7});var s1=O((c7)=>{var _6=h(),O6={identify:($)=>$==null,createNode:()=>new _6.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new _6.Scalar(null),stringify:({source:$},Z)=>typeof $==="string"&&O6.test.test($)?$:Z.options.nullStr};c7.nullTag=O6});var b4=O((n7)=>{var a7=h(),M6={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new a7.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:Z},X){if($&&M6.test.test($)){let z=$[0]==="t"||$[0]==="T";if(Z===z)return $}return Z?X.options.trueStr:X.options.falseStr}};n7.boolTag=M6});var G$=O((o7)=>{function r7({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}o7.stringifyNumber=r7});var x4=O((zq)=>{var e7=h(),y4=G$(),$q={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($)}},Xq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let Z=new e7.Scalar(parseFloat($)),X=$.indexOf(".");if(X!==-1&&$[$.length-1]==="0")Z.minFractionDigits=$.length-X-1;return Z},stringify:y4.stringifyNumber};zq.float=Xq;zq.floatExp=Zq;zq.floatNaN=$q});var f4=O((Hq)=>{var F6=G$(),r1=($)=>typeof $==="bigint"||Number.isInteger($),k4=($,Z,X,{intAsBigInt:z})=>z?BigInt($):parseInt($.substring(Z),X);function w6($,Z,X){let{value:z}=$;if(r1(z)&&z>=0)return X+z.toString(Z);return F6.stringifyNumber($)}var Qq={identify:($)=>r1($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,Z,X)=>k4($,2,8,X),stringify:($)=>w6($,8,"0o")},Yq={identify:r1,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,Z,X)=>k4($,0,10,X),stringify:F6.stringifyNumber},Uq={identify:($)=>r1($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,Z,X)=>k4($,2,16,X),stringify:($)=>w6($,16,"0x")};Hq.int=Yq;Hq.intHex=Uq;Hq.intOct=Qq});var R6=O((Mq)=>{var Bq=z$(),Kq=s1(),Lq=q$(),Dq=d$(),_q=b4(),h4=x4(),g4=f4(),Oq=[Bq.map,Lq.seq,Dq.string,Kq.nullTag,_q.boolTag,g4.intOct,g4.int,g4.intHex,h4.floatNaN,h4.floatExp,h4.float];Mq.schema=Oq});var I6=O((Nq)=>{var wq=h(),Rq=z$(),Pq=q$();function P6($){return typeof $==="bigint"||Number.isInteger($)}var o1=({value:$})=>JSON.stringify($),Iq=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:o1},{identify:($)=>$==null,createNode:()=>new wq.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:o1},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:o1},{identify:P6,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,Z,{intAsBigInt:X})=>X?BigInt($):parseInt($,10),stringify:({value:$})=>P6($)?$.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:o1}],Aq={default:!0,tag:"",test:/^/,resolve($,Z){return Z(`Unresolved plain scalar ${JSON.stringify($)}`),$}},jq=[Rq.map,Pq.seq].concat(Iq,Aq);Nq.schema=jq});var u4=O((bq)=>{var p$=V0("buffer"),v4=h(),Cq=h$(),Eq={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,Z){if(typeof p$.Buffer==="function")return p$.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 p$.Buffer==="function")Q=J instanceof p$.Buffer?J.toString("base64"):p$.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=v4.Scalar.BLOCK_LITERAL),Z!==v4.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===v4.Scalar.BLOCK_LITERAL?`
|
|
79
|
+
`:" ")}return Cq.stringifyString({comment:$,type:Z,value:Q},z,q,G)}};bq.binary=Eq});var e1=O((hq)=>{var t1=C(),m4=I0(),xq=h(),kq=N0();function A6($,Z){if(t1.isSeq($))for(let X=0;X<$.items.length;++X){let z=$.items[X];if(t1.isPair(z))continue;else if(t1.isMap(z)){if(z.items.length>1)Z("Each pair must have its own sequence indicator");let q=z.items[0]||new m4.Pair(new xq.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]=n1.isPair(z)?z:new k4.Pair(z)}else Z("Expected a sequence for this tag");return $}function M6($,Z,X){let{replacer:z}=X,q=new Sq.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(k4.createPair(Q,Y,X))}return q}var Cq={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:F6,createNode:M6};Eq.createPairs=M6;Eq.pairs=Cq;Eq.resolvePairs=F6});var h4=_((hq)=>{var w6=S(),f4=M0(),p$=A0(),kq=N0(),P6=s1();class u0 extends kq.YAMLSeq{constructor(){super();this.add=p$.YAMLMap.prototype.add.bind(this),this.delete=p$.YAMLMap.prototype.delete.bind(this),this.get=p$.YAMLMap.prototype.get.bind(this),this.has=p$.YAMLMap.prototype.has.bind(this),this.set=p$.YAMLMap.prototype.set.bind(this),this.tag=u0.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(w6.isPair(z))q=f4.toJS(z.key,"",Z),G=f4.toJS(z.value,q,Z);else q=f4.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=P6.createPairs($,Z,X),q=new this;return q.items=z.items,q}}u0.tag="tag:yaml.org,2002:omap";var fq={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:u0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=P6.resolvePairs($,Z),z=[];for(let{key:q}of X.items)if(w6.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 u0,X)},createNode:($,Z,X)=>u0.from($,Z,X)};hq.YAMLOMap=u0;hq.omap=fq});var j6=_((uq)=>{var R6=g();function I6({value:$,source:Z},X){if(Z&&($?A6:N6).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var A6={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new R6.Scalar(!0),stringify:I6},N6={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new R6.Scalar(!1),stringify:I6};uq.falseTag=N6;uq.trueTag=A6});var S6=_((aq)=>{var pq=g(),g4=J$(),lq={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:g4.stringifyNumber},cq={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():g4.stringifyNumber($)}},iq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new pq.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:g4.stringifyNumber};aq.float=iq;aq.floatExp=cq;aq.floatNaN=lq});var E6=_((ZG)=>{var C6=J$(),l$=($)=>typeof $==="bigint"||Number.isInteger($);function r1($,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 v4($,Z,X){let{value:z}=$;if(l$(z)){let q=z.toString(Z);return z<0?"-"+X+q.substr(1):X+q}return C6.stringifyNumber($)}var oq={identify:l$,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>r1($,2,2,X),stringify:($)=>v4($,2,"0b")},tq={identify:l$,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>r1($,1,8,X),stringify:($)=>v4($,8,"0")},eq={identify:l$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>r1($,0,10,X),stringify:C6.stringifyNumber},$G={identify:l$,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>r1($,2,16,X),stringify:($)=>v4($,16,"0x")};ZG.int=eq;ZG.intBin=oq;ZG.intHex=$G;ZG.intOct=tq});var u4=_((QG)=>{var e1=S(),o1=R0(),t1=A0();class m0 extends t1.YAMLMap{constructor($){super($);this.tag=m0.tag}add($){let Z;if(e1.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new o1.Pair($.key,null);else Z=new o1.Pair($,null);if(!t1.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=t1.findPair(this.items,$);return!Z&&e1.isPair(X)?e1.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=t1.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new o1.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(o1.createPair(G,null,X))}return q}}m0.tag="tag:yaml.org,2002:set";var JG={collection:"map",identify:($)=>$ instanceof Set,nodeClass:m0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>m0.from($,Z,X),resolve($,Z){if(e1.isMap($))if($.hasAllNullValues(!0))return Object.assign(new m0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};QG.YAMLSet=m0;QG.set=JG});var d4=_((TG)=>{var HG=J$();function m4($,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 b6($){let{value:Z}=$,X=(J)=>J;if(typeof Z==="bigint")X=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return HG.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 WG={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})=>m4($,X),stringify:b6},VG={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:($)=>m4($,!1),stringify:b6},y6={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(y6.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=m4(W,!1);if(Math.abs(H)<30)H*=60;U-=60000*H}return new Date(U)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};TG.floatTime=VG;TG.intTime=WG;TG.timestamp=y6});var k6=_((NG)=>{var DG=q$(),_G=c1(),OG=G$(),FG=m$(),MG=x4(),x6=j6(),p4=S6(),$2=E6(),wG=h1(),PG=h4(),RG=s1(),IG=u4(),l4=d4(),AG=[DG.map,OG.seq,FG.string,_G.nullTag,x6.trueTag,x6.falseTag,$2.intBin,$2.intOct,$2.int,$2.intHex,p4.floatNaN,p4.floatExp,p4.float,MG.binary,wG.merge,PG.omap,RG.pairs,IG.set,l4.intTime,l4.floatTime,l4.timestamp];NG.schema=AG});var c6=_((fG)=>{var v6=q$(),SG=c1(),u6=G$(),CG=m$(),EG=A4(),c4=j4(),i4=C4(),bG=D6(),yG=O6(),m6=x4(),c$=h1(),d6=h4(),p6=s1(),f6=k6(),l6=u4(),Z2=d4(),h6=new Map([["core",bG.schema],["failsafe",[v6.map,u6.seq,CG.string]],["json",yG.schema],["yaml11",f6.schema],["yaml-1.1",f6.schema]]),g6={binary:m6.binary,bool:EG.boolTag,float:c4.float,floatExp:c4.floatExp,floatNaN:c4.floatNaN,floatTime:Z2.floatTime,int:i4.int,intHex:i4.intHex,intOct:i4.intOct,intTime:Z2.intTime,map:v6.map,merge:c$.merge,null:SG.nullTag,omap:d6.omap,pairs:p6.pairs,seq:u6.seq,set:l6.set,timestamp:Z2.timestamp},xG={"tag:yaml.org,2002:binary":m6.binary,"tag:yaml.org,2002:merge":c$.merge,"tag:yaml.org,2002:omap":d6.omap,"tag:yaml.org,2002:pairs":p6.pairs,"tag:yaml.org,2002:set":l6.set,"tag:yaml.org,2002:timestamp":Z2.timestamp};function kG($,Z,X){let z=h6.get(Z);if(z&&!$)return X&&!z.includes(c$.merge)?z.concat(c$.merge):z.slice();let q=z;if(!q)if(Array.isArray($))q=[];else{let G=Array.from(h6.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(c$.merge);return q.reduce((G,J)=>{let Q=typeof J==="string"?g6[J]:J;if(!Q){let Y=JSON.stringify(J),U=Object.keys(g6).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},[])}fG.coreKnownTags=xG;fG.getTags=kG});var s4=_((pG)=>{var a4=S(),vG=q$(),uG=G$(),mG=m$(),X2=c6(),dG=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class n4{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:q,sortMapEntries:G,toStringDefaults:J}){this.compat=Array.isArray($)?X2.getTags($,"compat"):$?X2.getTags(null,$):null,this.name=typeof q==="string"&&q||"core",this.knownTags=z?X2.coreKnownTags:{},this.tags=X2.getTags(Z,this.name,X),this.toStringOptions=J??null,Object.defineProperty(this,a4.MAP,{value:vG.map}),Object.defineProperty(this,a4.SCALAR,{value:mG.string}),Object.defineProperty(this,a4.SEQ,{value:uG.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?dG:null}clone(){let $=Object.create(n4.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}pG.Schema=n4});var i6=_((aG)=>{var cG=S(),r4=h$(),i$=x$();function iG($,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=r4.createStringifyContext($,Z),{commentString:G}=q.options;if($.commentBefore){if(X.length!==1)X.unshift("");let Y=G($.commentBefore);X.unshift(i$.indentComment(Y,""))}let J=!1,Q=null;if($.contents){if(cG.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=G($.contents.commentBefore);X.push(i$.indentComment(W,""))}q.forceBlockIndent=!!$.comment,Q=$.contents.comment}let Y=Q?void 0:()=>J=!0,U=r4.stringify($.contents,q,()=>Q=null,Y);if(Q)U+=i$.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(r4.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]=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(a$.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(a$.indentComment(G(Y),""))}}return X.join(`
|
|
83
83
|
`)+`
|
|
84
|
-
`}
|
|
84
|
+
`}eG.stringifyDocument=tG});var n$=O((YJ)=>{var ZJ=y$(),J$=k1(),e=C(),XJ=I0(),zJ=w0(),qJ=Z9(),GJ=t6(),z9=b1(),JJ=w4(),QJ=x$(),q9=F4();class G9{constructor($,Z,X){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,e.NODE_TYPE,{value:e.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 q9.Directives({version:G});this.setSchema(G,X),this.contents=$===void 0?null:this.createNode($,z,X)}clone(){let $=Object.create(G9.prototype,{[e.NODE_TYPE]:{value:e.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=e.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(Q$(this.contents))this.contents.add($)}addIn($,Z){if(Q$(this.contents))this.contents.addIn($,Z)}createAlias($,Z){if(!$.anchor){let X=z9.anchorNames(this);$.anchor=!Z||X.has(Z)?z9.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 T=(D)=>typeof D==="number"||D instanceof String||D instanceof Number,K=Z.filter(T).map(String);if(K.length>0)Z=Z.concat(K);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}=z9.createNodeAnchors(this,G||"a"),B={aliasDuplicateObjects:q??!0,keepUndefined:Q??!1,onAnchor:W,onTagObj:Y,replacer:z,schema:this.schema,sourceObjects:V},L=QJ.createNode($,U,B);if(J&&e.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 XJ.Pair(z,q)}delete($){return Q$(this.contents)?this.contents.delete($):!1}deleteIn($){if(J$.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return Q$(this.contents)?this.contents.deleteIn($):!1}get($,Z){return e.isCollection(this.contents)?this.contents.get($,Z):void 0}getIn($,Z){if(J$.isEmptyPath($))return!Z&&e.isScalar(this.contents)?this.contents.value:this.contents;return e.isCollection(this.contents)?this.contents.getIn($,Z):void 0}has($){return e.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(J$.isEmptyPath($))return this.contents!==void 0;return e.isCollection(this.contents)?this.contents.hasIn($):!1}set($,Z){if(this.contents==null)this.contents=J$.collectionFromPath(this.schema,[$],Z);else if(Q$(this.contents))this.contents.set($,Z)}setIn($,Z){if(J$.isEmptyPath($))this.contents=Z;else if(this.contents==null)this.contents=J$.collectionFromPath(this.schema,Array.from($),Z);else if(Q$(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 q9.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 q9.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 qJ.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=zJ.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"?JJ.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 GJ.stringifyDocument(this,$)}}function Q$($){if(e.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}YJ.Document=G9});var s$=O((WJ)=>{class Q2 extends Error{constructor($,Z,X,z){super();this.name=$,this.code=X,this.message=z,this.pos=Z}}class e6 extends Q2{constructor($,Z,X){super("YAMLParseError",$,Z,X)}}class $8 extends Q2{constructor($,Z,X){super("YAMLWarning",$,Z,X)}}var HJ=($,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
|
-
`+T.comment;else Q.comment=T.comment;continue}if(T.newlineAfterProp||
|
|
92
|
-
`+
|
|
93
|
-
`+
|
|
94
|
-
`+
|
|
95
|
-
`+E.comment;else
|
|
96
|
-
`+K.comment;else U.comment=K.comment;U.range=[z.offset,T,K.offset]}else U.range=[z.offset,T,T];return U}
|
|
89
|
+
`}};WJ.YAMLError=Q2;WJ.YAMLParseError=e6;WJ.YAMLWarning=$8;WJ.prettifyError=HJ});var r$=O((DJ)=>{function LJ($,{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,T=null,K=null,D=null,_=null,F=null,w=null,I=null;for(let M of $){if(L){if(M.type!=="space"&&M.type!=="newline"&&M.type!=="comma")G(M.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");L=!1}if(T){if(U&&M.type!=="comment"&&M.type!=="newline")G(T,"TAB_AS_INDENT","Tabs are not allowed as indentation");T=null}switch(M.type){case"space":if(!Z&&(X!=="doc-start"||z?.type!=="flow-collection")&&M.source.includes("\t"))T=M;W=!0;break;case"comment":{if(!W)G(M,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let E=M.source.substring(1)||" ";if(!H)H=E;else H+=V+E;V="",U=!1;break}case"newline":if(U){if(H)H+=M.source;else if(!w||X!=="seq-item-ind")Y=!0}else V+=M.source;if(U=!0,B=!0,K||D)_=M;W=!0;break;case"anchor":if(K)G(M,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(M.source.endsWith(":"))G(M.offset+M.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);K=M,I??(I=M.offset),U=!1,W=!1,L=!0;break;case"tag":{if(D)G(M,"MULTIPLE_TAGS","A node can have at most one tag");D=M,I??(I=M.offset),U=!1,W=!1,L=!0;break}case X:if(K||D)G(M,"BAD_PROP_ORDER",`Anchors and tags must be after the ${M.source} indicator`);if(w)G(M,"UNEXPECTED_TOKEN",`Unexpected ${M.source} in ${Z??"collection"}`);w=M,U=X==="seq-item-ind"||X==="explicit-key-ind",W=!1;break;case"comma":if(Z){if(F)G(M,"UNEXPECTED_TOKEN",`Unexpected , in ${Z}`);F=M,U=!1,W=!1;break}default:G(M,"UNEXPECTED_TOKEN",`Unexpected ${M.type} token`),U=!1,W=!1}}let P=$[$.length-1],S=P?P.offset+P.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(T&&(U&&T.indent<=J||z?.type==="block-map"||z?.type==="block-seq"))G(T,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:F,found:w,spaceBefore:Y,comment:H,hasNewline:B,anchor:K,tag:D,newlineAfterProp:_,end:S,start:I??S}}DJ.resolveProps=LJ});var Y2=O((OJ)=>{function J9($){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(J9(Z.key)||J9(Z.value))return!0}return!1;default:return!0}}OJ.containsNewline=J9});var Q9=O((RJ)=>{var FJ=Y2();function wJ($,Z,X){if(Z?.type==="flow-collection"){let z=Z.end[0];if(z.indent===$&&(z.source==="]"||z.source==="}")&&FJ.containsNewline(Z))X(z,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}RJ.flowIndentCheck=wJ});var Y9=O((AJ)=>{var Z8=C();function IJ($,Z,X){let{uniqueKeys:z}=$.options;if(z===!1)return!1;let q=typeof z==="function"?z:(G,J)=>G===J||Z8.isScalar(G)&&Z8.isScalar(J)&&G.value===J.value;return Z.some((G)=>q(G.key,X))}AJ.mapIncludes=IJ});var J8=O((bJ)=>{var X8=I0(),NJ=j0(),z8=r$(),SJ=Y2(),q8=Q9(),CJ=Y9(),G8="All mapping items must start at the same column";function EJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let Q=new(G?.nodeClass??NJ.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,T=z8.resolveProps(H,{indicator:"explicit-key-ind",next:V??B?.[0],offset:Y,onError:q,parentIndent:z.indent,startOnNewline:!0}),K=!T.found;if(K){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",G8)}if(!T.anchor&&!T.tag&&!B){if(U=T.end,T.comment)if(Q.comment)Q.comment+=`
|
|
91
|
+
`+T.comment;else Q.comment=T.comment;continue}if(T.newlineAfterProp||SJ.containsNewline(V))q(V??H[H.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(T.found?.indent!==z.indent)q(Y,"BAD_INDENT",G8);X.atKey=!0;let D=T.end,_=V?$(X,V,T,q):Z(X,D,H,null,T,q);if(X.schema.compat)q8.flowIndentCheck(z.indent,V,q);if(X.atKey=!1,CJ.mapIncludes(X,Q.items,_))q(D,"DUPLICATE_KEY","Map keys must be unique");let F=z8.resolveProps(B??[],{indicator:"map-value-ind",next:L,offset:_.range[2],onError:q,parentIndent:z.indent,startOnNewline:!V||V.type==="block-scalar"});if(Y=F.end,F.found){if(K){if(L?.type==="block-map"&&!F.hasNewline)q(Y,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(X.options.strict&&T.start<F.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 w=L?$(X,L,F,q):Z(X,Y,B,null,F,q);if(X.schema.compat)q8.flowIndentCheck(z.indent,L,q);Y=w.range[2];let I=new X8.Pair(_,w);if(X.options.keepSourceTokens)I.srcToken=W;Q.items.push(I)}else{if(K)q(_.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(F.comment)if(_.comment)_.comment+=`
|
|
92
|
+
`+F.comment;else _.comment=F.comment;let w=new X8.Pair(_);if(X.options.keepSourceTokens)w.srcToken=W;Q.items.push(w)}}if(U&&U<Y)q(U,"IMPOSSIBLE","Map comment with trailing content");return Q.range=[z.offset,Y,U??Y],Q}bJ.resolveBlockMap=EJ});var Q8=O((gJ)=>{var xJ=N0(),kJ=r$(),fJ=Q9();function hJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let Q=new(G?.nodeClass??xJ.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=kJ.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)fJ.flowIndentCheck(z.indent,H,q);Y=B.range[2],Q.items.push(B)}return Q.range=[z.offset,Y,U??Y],Q}gJ.resolveBlockSeq=hJ});var Y$=O((mJ)=>{function uJ($,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}}mJ.resolveEnd=uJ});var H8=O((rJ)=>{var pJ=C(),lJ=I0(),Y8=j0(),cJ=N0(),iJ=Y$(),U8=r$(),aJ=Y2(),nJ=Y9(),U9="Block collections are not allowed within flow collections",H9=($)=>$&&($.type==="block-map"||$.type==="block-seq");function sJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let J=z.start.source==="{",Q=J?"flow map":"flow sequence",U=new(G?.nodeClass??(J?Y8.YAMLMap:cJ.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 K=0;K<z.items.length;++K){let D=z.items[K],{start:_,key:F,sep:w,value:I}=D,P=U8.resolveProps(_,{flow:Q,indicator:"explicit-key-ind",next:F??w?.[0],offset:H,onError:q,parentIndent:z.indent,startOnNewline:!1});if(!P.found){if(!P.anchor&&!P.tag&&!w&&!I){if(K===0&&P.comma)q(P.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Q}`);else if(K<z.items.length-1)q(P.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${Q}`);if(P.comment)if(U.comment)U.comment+=`
|
|
93
|
+
`+P.comment;else U.comment=P.comment;H=P.end;continue}if(!J&&X.options.strict&&aJ.containsNewline(F))q(F,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(K===0){if(P.comma)q(P.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Q}`)}else{if(!P.comma)q(P.start,"MISSING_CHAR",`Missing , between ${Q} items`);if(P.comment){let S="";$:for(let M of _)switch(M.type){case"comma":case"space":break;case"comment":S=M.source.substring(1);break $;default:break $}if(S){let M=U.items[U.items.length-1];if(pJ.isPair(M))M=M.value??M.key;if(M.comment)M.comment+=`
|
|
94
|
+
`+S;else M.comment=S;P.comment=P.comment.substring(S.length+1)}}}if(!J&&!w&&!P.found){let S=I?$(X,I,P,q):Z(X,P.end,w,null,P,q);if(U.items.push(S),H=S.range[2],H9(I))q(S.range,"BLOCK_IN_FLOW",U9)}else{X.atKey=!0;let S=P.end,M=F?$(X,F,P,q):Z(X,S,_,null,P,q);if(H9(F))q(M.range,"BLOCK_IN_FLOW",U9);X.atKey=!1;let E=U8.resolveProps(w??[],{flow:Q,indicator:"map-value-ind",next:I,offset:M.range[2],onError:q,parentIndent:z.indent,startOnNewline:!1});if(E.found){if(!J&&!P.found&&X.options.strict){if(w)for(let x of w){if(x===E.found)break;if(x.type==="newline"){q(x,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(P.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(I)if("source"in I&&I.source?.[0]===":")q(I,"MISSING_CHAR",`Missing space after : in ${Q}`);else q(E.start,"MISSING_CHAR",`Missing , or : between ${Q} items`);let a=I?$(X,I,E,q):E.found?Z(X,E.end,w,null,E,q):null;if(a){if(H9(I))q(a.range,"BLOCK_IN_FLOW",U9)}else if(E.comment)if(M.comment)M.comment+=`
|
|
95
|
+
`+E.comment;else M.comment=E.comment;let l=new lJ.Pair(M,a);if(X.options.keepSourceTokens)l.srcToken=D;if(J){let x=U;if(nJ.mapIncludes(X,x.items,M))q(S,"DUPLICATE_KEY","Map keys must be unique");x.items.push(l)}else{let x=new Y8.YAMLMap(X.schema);x.flow=!0,x.items.push(l);let H0=(a??M).range;x.range=[M.range[0],H0[1],H0[2]],U.items.push(x)}H=a?a.range[2]:E.end}}let V=J?"}":"]",[B,...L]=z.end,T=H;if(B?.source===V)T=B.offset+B.source.length;else{let K=Q[0].toUpperCase()+Q.substring(1),D=W?`${K} must end with a ${V}`:`${K} 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 K=iJ.resolveEnd(L,T,X.options.strict,q);if(K.comment)if(U.comment)U.comment+=`
|
|
96
|
+
`+K.comment;else U.comment=K.comment;U.range=[z.offset,T,K.offset]}else U.range=[z.offset,T,T];return U}rJ.resolveFlowCollection=sJ});var W8=O((JQ)=>{var tJ=C(),eJ=h(),$Q=j0(),ZQ=N0(),XQ=J8(),zQ=Q8(),qQ=H8();function W9($,Z,X,z,q,G){let J=X.type==="block-map"?XQ.resolveBlockMap($,Z,X,z,G):X.type==="block-seq"?zQ.resolveBlockSeq($,Z,X,z,G):qQ.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 GQ($,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===$Q.YAMLMap.tagName&&Q==="map"||J===ZQ.YAMLSeq.tagName&&Q==="seq")return W9($,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 W9($,Z,X,q,J)}}let U=W9($,Z,X,q,J,Y),W=Y.resolve?.(U,(V)=>q(G,"TAG_RESOLVE_FAILED",V),Z.options)??U,H=tJ.isNode(W)?W:new eJ.Scalar(W);if(H.range=U.range,H.tag=J,Y?.format)H.format=Y.format;return H}JQ.composeCollection=GQ});var T9=O((WQ)=>{var V9=h();function YQ($,Z,X){let z=Z.offset,q=UQ(Z,$.options.strict,X);if(!q)return{value:"",type:null,comment:"",range:[z,z,z]};let G=q.mode===">"?V9.Scalar.BLOCK_FOLDED:V9.Scalar.BLOCK_LITERAL,J=Z.source?HQ(Z.source):[],Q=J.length;for(let T=J.length-1;T>=0;--T){let K=J[T][1];if(K===""||K==="\r")Q=T;else break}if(Q===0){let T=q.chomp==="+"&&J.length>0?`
|
|
97
97
|
`.repeat(Math.max(1,J.length-1)):"",K=z+q.length;if(Z.source)K+=Z.source.length;return{value:T,type:G,comment:q.comment,range:[z,K,K]}}let Y=Z.indent+q.indent,U=Z.offset+q.length,W=0;for(let T=0;T<Q;++T){let[K,D]=J[T];if(D===""||D==="\r"){if(q.indent===0&&K.length>Y)Y=K.length}else{if(K.length<Y)X(U+K.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(q.indent===0)Y=K.length;if(W=T,Y===0&&!$.atRoot)X(U,"BAD_INDENT","Block scalar values in collections must be indented");break}U+=K.length+D.length+1}for(let T=J.length-1;T>=Q;--T)if(J[T][0].length>Y)Q=T+1;let H="",V="",B=!1;for(let T=0;T<W;++T)H+=J[T][0].slice(Y)+`
|
|
98
|
-
`;for(let T=W;T<Q;++T){let[K,D]=J[T];U+=K.length+D.length+1;let
|
|
98
|
+
`;for(let T=W;T<Q;++T){let[K,D]=J[T];U+=K.length+D.length+1;let _=D[D.length-1]==="\r";if(_)D=D.slice(0,-1);if(D&&K.length<Y){let w=`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",w),K=""}if(G===V9.Scalar.BLOCK_LITERAL)H+=V+K.slice(Y)+D,V=`
|
|
99
99
|
`;else if(K.length>Y||D[0]==="\t"){if(V===" ")V=`
|
|
100
100
|
`;else if(!B&&V===`
|
|
101
101
|
`)V=`
|
|
@@ -108,66 +108,66 @@ ${U}
|
|
|
108
108
|
`+J[T][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 UQ({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 T=B.source;if(T&&typeof T==="string")H+=T.length}}}return{mode:G,indent:J,chomp:Q,comment:W,length:H}}function HQ($){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}WQ.resolveBlockScalar=YQ});var K9=O((FQ)=>{var B9=h(),TQ=Y$();function BQ($,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=B9.Scalar.PLAIN,Y=KQ(G,U);break;case"single-quoted-scalar":Q=B9.Scalar.QUOTE_SINGLE,Y=LQ(G,U);break;case"double-quoted-scalar":Q=B9.Scalar.QUOTE_DOUBLE,Y=DQ(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 KQ($,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 V8($)}function LQ($,Z){if($[$.length-1]!=="'"||$.length===1)Z($.length,"MISSING_CHAR","Missing closing 'quote");return V8($.slice(1,-1)).replace(/''/g,"'")}function V8($){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 DQ($,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}=_Q($,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+=MQ($,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 _Q($,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
|
-
`;Z+=1,z=$[Z+1]}if(!X)X=" ";return{fold:X,offset:Z}}var
|
|
126
|
-
`,r:"\r",t:"\t",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function
|
|
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 MQ($,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)}FQ.resolveFlowScalar=BQ});var B8=O((NQ)=>{var p0=C(),T8=h(),RQ=T9(),PQ=K9();function IQ($,Z,X,z){let{value:q,type:G,comment:J,range:Q}=Z.type==="block-scalar"?RQ.resolveBlockScalar($,Z,z):PQ.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=AQ($.schema,q,Y,X,z);else if(Z.type==="scalar")U=jQ($,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 T8.Scalar(H)}catch(H){let V=H instanceof Error?H.message:String(H);z(X??Z,"TAG_RESOLVE_FAILED",V),W=new T8.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 AQ($,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 jQ({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}NQ.composeScalar=IQ});var K8=O((EQ)=>{function CQ($,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 $}EQ.emptyScalarPosition=CQ});var _8=O((uQ)=>{var yQ=y$(),xQ=C(),kQ=W8(),L8=B8(),fQ=Y$(),hQ=K8(),gQ={composeNode:D8,composeEmptyNode:L9};function D8($,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=vQ($,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=L8.composeScalar($,Z,Y,z),Q)U.anchor=Q.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(U=kQ.composeCollection(gQ,$,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=L9($,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&&(!xQ.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 L9($,Z,X,z,{spaceBefore:q,comment:G,anchor:J,tag:Q,end:Y},U){let W={type:"scalar",offset:hQ.emptyScalarPosition(Z,X,z),indent:-1,source:""},H=L8.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 vQ({options:$},{offset:Z,source:X,end:z},q){let G=new yQ.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=fQ.resolveEnd(z,J,$.strict,q);if(G.range=[Z,J,Q.offset],Q.comment)G.comment=Q.comment;return G}uQ.composeEmptyNode=L9;uQ.composeNode=D8});var M8=O((aQ)=>{var pQ=n$(),O8=_8(),lQ=Y$(),cQ=r$();function iQ($,Z,{offset:X,start:z,value:q,end:G},J){let Q=Object.assign({_directives:Z},$),Y=new pQ.Document(void 0,Q),U={atKey:!1,atRoot:!0,directives:Y.directives,options:Y.options,schema:Y.schema},W=cQ.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?O8.composeNode(U,q,W,J):O8.composeEmptyNode(U,W.end,z,null,W,J);let H=Y.contents.range[2],V=lQ.resolveEnd(G,H,!1,J);if(V.comment)Y.comment=V.comment;return Y.range=[X,H,V.offset],Y}aQ.composeDoc=iQ});var D9=O(($Y)=>{var sQ=V0("process"),rQ=F4(),oQ=n$(),o$=s$(),F8=C(),tQ=M8(),eQ=Y$();function t$($){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 w8($){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 R8{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(Z,X,z,q)=>{let G=t$(Z);if(q)this.warnings.push(new o$.YAMLWarning(G,X,z));else this.errors.push(new o$.YAMLParseError(G,X,z))},this.directives=new rQ.Directives({version:$.version||"1.2"}),this.options=$}decorate($,Z){let{comment:X,afterEmptyLine:z}=w8(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(F8.isCollection(q)&&!q.flow&&q.items.length>0){let G=q.items[0];if(F8.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:w8(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(sQ.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(Z,X,z)=>{let q=t$($);q[0]+=Z,this.onError(q,"BAD_DIRECTIVE",X,z)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let Z=tQ.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 o$.YAMLParseError(t$($),"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 o$.YAMLParseError(t$($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let Z=eQ.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 o$.YAMLParseError(t$($),"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 oQ.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}}}$Y.Composer=R8});var A8=O((UY)=>{var XY=T9(),zY=K9(),qY=s$(),P8=h$();function GY($,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 qY.YAMLParseError([Q,Q+1],G,J)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return zY.resolveFlowScalar($,Z,z);case"block-scalar":return XY.resolveBlockScalar({options:{strict:Z}},$,z)}}return null}function JY($,Z){let{implicitKey:X=!1,indent:z,inFlow:q=!1,offset:G=-1,type:J="PLAIN"}=Z,Q=P8.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(!I8(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 QY($,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=P8.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">":YY($,Y);break;case'"':_9($,Y,"double-quoted-scalar");break;case"'":_9($,Y,"single-quoted-scalar");break;default:_9($,Y,"scalar")}}function YY($,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(!I8(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 I8($,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 _9($,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})}}}UY.createScalarToken=JY;UY.resolveAsScalar=GY;UY.setScalarValue=QY});var j8=O((BY)=>{var TY=($)=>("type"in $)?H2($):U2($);function H2($){switch($.type){case"block-scalar":{let Z="";for(let X of $.props)Z+=H2(X);return Z+$.source}case"block-map":case"block-seq":{let Z="";for(let X of $.items)Z+=U2(X);return Z}case"flow-collection":{let Z=$.start.source;for(let X of $.items)Z+=U2(X);for(let X of $.end)Z+=X.source;return Z}case"document":{let Z=U2($);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 U2({start:$,key:Z,sep:X,value:z}){let q="";for(let G of $)q+=G.source;if(Z)q+=H2(Z);if(X)for(let G of X)q+=G.source;if(z)q+=H2(z);return q}BY.stringify=TY});var C8=O((DY)=>{var O9=Symbol("break visit"),LY=Symbol("skip children"),N8=Symbol("remove item");function l0($,Z){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};S8(Object.freeze([]),$,Z)}l0.BREAK=O9;l0.SKIP=LY;l0.REMOVE=N8;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 S8($,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=S8(Object.freeze($.concat([[q,J]])),G.items[J],X);if(typeof Q==="number")J=Q-1;else if(Q===O9)return O9;else if(Q===N8)G.items.splice(J,1),J-=1}if(typeof z==="function"&&q==="key")z=z(Z,$)}}return typeof z==="function"?z(Z,$):z}DY.visit=l0});var W2=O((IY)=>{var M9=A8(),OY=j8(),MY=C8(),F9="\uFEFF",w9="\x02",R9="\x18",P9="\x1F",FY=($)=>!!$&&("items"in $),wY=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function RY($){switch($){case F9:return"<BOM>";case w9:return"<DOC>";case R9:return"<FLOW_END>";case P9:return"<SCALAR>";default:return JSON.stringify($)}}function PY($){switch($){case F9:return"byte-order-mark";case w9:return"doc-mode";case R9:return"flow-error-end";case P9: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}IY.createScalarToken=M9.createScalarToken;IY.resolveAsScalar=M9.resolveAsScalar;IY.setScalarValue=M9.setScalarValue;IY.stringify=OY.stringify;IY.visit=MY.visit;IY.BOM=F9;IY.DOCUMENT=w9;IY.FLOW_END=R9;IY.SCALAR=P9;IY.isCollection=FY;IY.isScalar=wY;IY.prettyToken=RY;IY.tokenType=PY});var A9=O((mY)=>{var e$=W2();function G0($){switch($){case void 0:case" ":case`
|
|
144
|
+
`:case"\r":case"\t":return!0;default:return!1}}var E8=new Set("0123456789ABCDEFabcdef"),vY=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),V2=new Set(",[]{}"),uY=new Set(` ,[]{}
|
|
145
|
+
\r `),I9=($)=>!$||uY.has($);class b8{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==="...")&&G0(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]===e$.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 e$.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==="...")&&G0(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&&!G0(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(($==="-"||$==="?"||$===":")&&G0(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(I9),"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("..."))&&G0(z[3])){if(!(X===this.indentNext-1&&this.flowLevel===1&&(z[0]==="]"||z[0]==="}")))return this.flowLevel=0,yield e$.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(I9),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let G=this.charAt(1);if(this.flowKey||G0(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)=>G0(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 e$.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(G0(q)||$&&V2.has(q))break;Z=X}else if(G0(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==="#"||$&&V2.has(q))break;if(z===`
|
|
160
|
+
`){let G=this.continueScalar(X+1);if(G===-1)break;X=Math.max(X,G-2)}}else{if($&&V2.has(z))break;Z=X}if(!z&&!this.atEnd)return this.setNext("plain-scalar");return yield e$.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(I9))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,Z=this.charAt(1);if(G0(Z)||$&&V2.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(!G0(Z)&&Z!==">")Z=this.buffer[++$];return yield*this.pushToIndex(Z===">"?$+1:$,!1)}else{let $=this.pos+1,Z=this.buffer[$];while(Z)if(vY.has(Z))Z=this.buffer[++$];else if(Z==="%"&&E8.has(this.buffer[$+1])&&E8.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)}}mY.Lexer=b8});var j9=O((pY)=>{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}}}}pY.LineCounter=y8});var N9=O((aY)=>{var cY=V0("process"),x8=W2(),iY=A9();function S0($,Z){for(let X=0;X<$.length;++X)if($[X].type===Z)return!0;return!1}function k8($){for(let Z=0;Z<$.length;++Z)switch($[Z].type){case"space":case"comment":case"newline":break;default:return Z}return-1}function h8($){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 U$($){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 f8($){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,h8(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 g8{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 iY.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=$,cY.env.LOG_TOKENS)console.log("|",x8.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let Z=x8.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")f8(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&&k8(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(k8($.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=U$(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(
|
|
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=U$(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(h8(Z.key)&&!S0(Z.sep,"newline")){let G=U$(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=U$(z);f8($);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=U2($),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=U2($),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()}}}mY.Parser=b8});var h8=_((rY)=>{var y8=W9(),pY=a$(),e$=n$(),lY=M4(),cY=S(),iY=M9(),x8=w9();function k8($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new iY.LineCounter||null,prettyErrors:Z}}function aY($,Z={}){let{lineCounter:X,prettyErrors:z}=k8(Z),q=new x8.Parser(X?.addNewLine),G=new y8.Composer(Z),J=Array.from(G.compose(q.parse($)));if(z&&X)for(let Q of J)Q.errors.forEach(e$.prettifyError($,X)),Q.warnings.forEach(e$.prettifyError($,X));if(J.length>0)return J;return Object.assign([],{empty:!0},G.streamInfo())}function f8($,Z={}){let{lineCounter:X,prettyErrors:z}=k8(Z),q=new x8.Parser(X?.addNewLine),G=new y8.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 e$.YAMLParseError(Q.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&X)J.errors.forEach(e$.prettifyError($,X)),J.warnings.forEach(e$.prettifyError($,X));return J}function nY($,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=f8($,X);if(!q)return null;if(q.warnings.forEach((G)=>lY.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 sY($,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(cY.isDocument($)&&!z)return $.toString(X);return new pY.Document($,z,X).toString(X)}rY.parse=nY;rY.parseAllDocuments=aY;rY.parseDocument=f8;rY.stringify=sY});var v8=_((TU)=>{var ZU=W9(),XU=a$(),zU=s4(),P9=n$(),qU=b$(),S0=S(),GU=R0(),JU=g(),QU=A0(),YU=N0(),UU=Q2(),HU=F9(),WU=M9(),VU=w9(),H2=h8(),g8=C$();TU.Composer=ZU.Composer;TU.Document=XU.Document;TU.Schema=zU.Schema;TU.YAMLError=P9.YAMLError;TU.YAMLParseError=P9.YAMLParseError;TU.YAMLWarning=P9.YAMLWarning;TU.Alias=qU.Alias;TU.isAlias=S0.isAlias;TU.isCollection=S0.isCollection;TU.isDocument=S0.isDocument;TU.isMap=S0.isMap;TU.isNode=S0.isNode;TU.isPair=S0.isPair;TU.isScalar=S0.isScalar;TU.isSeq=S0.isSeq;TU.Pair=GU.Pair;TU.Scalar=JU.Scalar;TU.YAMLMap=QU.YAMLMap;TU.YAMLSeq=YU.YAMLSeq;TU.CST=UU;TU.Lexer=HU.Lexer;TU.LineCounter=WU.LineCounter;TU.Parser=VU.Parser;TU.parse=H2.parse;TU.parseAllDocuments=H2.parseAllDocuments;TU.parseDocument=H2.parseDocument;TU.stringify=H2.stringify;TU.visit=g8.visit;TU.visitAsync=g8.visitAsync});var S5=V5(j5(),1),{program:e0,createCommand:OV,createArgument:FV,createOption:MV,CommanderError:wV,InvalidArgumentError:PV,InvalidOptionArgumentError:RV,Command:IV,Argument:AV,Option:H4,Help:NV}=S5.default;var C5={name:"@pickled-dev/cli",version:"0.16.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 qV from"path";var Q0={category:"cli",provider:"claude-code",model:"sonnet"},W4=["Read","Glob","Grep","Bash"],V4=["Edit","MultiEdit","Write","NotebookEdit"];var u8=V5(v8(),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=u8.default.parse(q)}catch(q){throw Error(`Failed to parse pickled.yml: ${q}`)}return pU(z),z}function pU($){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))rU(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)"}`)}eU(X.name,X.traps),sU(X.name,X.compareSurfaces,Z),cU(X.name,X.matrix,Z,new Set(Object.keys($.targets??{})),new Set(Object.keys($.toolsets??{none:{}}))),iU(X.name,X.expected),aU(X.name,X.verifiers,Z),nU(X)}lU($)}function lU($){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 cU($,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 iU($,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 aU($,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 nU($){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 sU($,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 rU($,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 oU=new Set(["g","y"]),tU=new Set(["i","m","s","u","v"]);function eU($,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(oU.has(Q))throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" uses forbidden regex flag "${Q}" (g and y are not allowed)`);if(!tU.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 R9($,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 I9($){if(typeof $==="string")return{path:$,auditTraps:!0};return{path:$.path,auditTraps:$.audit?.traps??!0}}function W2($){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=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
|
|
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=a8(V.lineCount,B,Z),T=V.isSymlink?`symlink \u2192 ${V.symlinkTarget?.replace(`${Z.targetRepo}/`,"")??"?"}`:"file";G.push(`| \`${V.relPath}\` | ${V.lineCount} | ${T} | ${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
|
|
185
|
+
`)}function L2($){return JSON.stringify($,null,2)}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("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("/"),T=a8(B.lineCount,L,Z),K=B.isSymlink?`symlink \u2192 ${B.symlinkTarget?.replace(`${Z.targetRepo}/`,"")??"?"}`:"file",D=`${B.lineCount}`.padStart(4),_=B.relPath.padEnd(V),F=T?` (${T})`:"";G.push(` ${_} ${D} lines ${K}${F}`)}}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 a8($,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 V$,lstatSync as e8,readFileSync as F2,readlinkSync as _H,statSync as OH}from"fs";import{dirname as w2,isAbsolute as MH,join as b9,relative as FH,resolve as y9}from"path";var{Glob:t8}=globalThis.Bun;var _2=["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/**"],W$={targetRepo:".",budgets:{rootLines:120,nestedWarnLines:200},ignore:_2,intentionalDifferentPairs:[],knownCommands:[]};function O2($){if(!$)return W$;return{targetRepo:$.targetRepo??W$.targetRepo,budgets:{rootLines:$.budgets?.rootLines??W$.budgets.rootLines,nestedWarnLines:$.budgets?.nestedWarnLines??W$.budgets.nestedWarnLines},ignore:$.ignore??_2,intentionalDifferentPairs:$.intentionalDifferentPairs??[],knownCommands:$.knownCommands??[]}}import{existsSync as TH}from"fs";import{join as BH,resolve as KH}from"path";function E0($){let Z=[],X=[];for(let z of $.traps){let q=JH($.response,z);if(q)Z.push(q);else X.push(z.id)}return{fired:Z,avoided:X}}function JH($,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:n8($,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:n8($,z.index,z[0].length),index:z.index}}return null}function n8($,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 M2 from"path";var{Glob:s8}=globalThis.Bun;var QH=262144,YH=4194304;function UH($){return $.startsWith("http://")||$.startsWith("https://")}async function HH($,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 WH($,Z,X,z){let q=M2.isAbsolute(Z)?Z:M2.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:M2.basename(q),type:"file",auditTraps:z}}async function VH($,Z,X,z,q){let G=new s8(Z.path),J=(Z.exclude??[]).map((B)=>new s8(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??QH,U=Math.max(Y,YH),W=[],H=0;for(let B of Q){let L=M2.resolve(X,B),T=await Bun.file(L).text(),K=`// === ${B} ===
|
|
187
187
|
`;if(W.push(K,T),!T.endsWith(`
|
|
188
188
|
`))W.push(`
|
|
189
|
-
`);if(H+=K.length+T.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
|
|
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 NH($){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 jH($){return $.replace(/```[\s\S]*?```/g,"")}function SH($,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=_2(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=D2(U.absPath,"utf8"),T=D2(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 CH($,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 K0($){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 j9($){let Z=EH($);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 EH($){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=j9($.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 F2($){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 l0="0.40.1";var n8=!1,c0=void 0,S9=void 0,bH=void 0,yH=void 0,xH=void 0,s8=void 0,kH=void 0,M2=void 0,C9=void 0,r8=void 0,E9=void 0,w2=void 0,o8=void 0;function t8($,Z={auto:!1}){if(n8)throw Error(`you must \`import '@anthropic-ai/sdk/shims/${$.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(c0)throw Error(`can't \`import '@anthropic-ai/sdk/shims/${$.kind}'\` after \`import '@anthropic-ai/sdk/shims/${c0}'\``);n8=Z.auto,c0=$.kind,S9=$.fetch,bH=$.Request,yH=$.Response,xH=$.Headers,s8=$.FormData,kH=$.Blob,M2=$.File,C9=$.ReadableStream,r8=$.getMultipartRequestOptions,E9=$.getDefaultAgent,w2=$.fileFromPath,o8=$.isFsReadStream}class b9{constructor($){this.body=$}get[Symbol.toStringTag](){return"MultipartBody"}}function e8({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 b9(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 hH}from"fs";function $Z(){let $=e8();function Z(X){return X instanceof hH}return{...$,isFsReadStream:Z}}var y9=()=>{if(!c0)t8($Z(),{auto:!0})};y9();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 i0({message:X,cause:E2(Z)});let q=Z;if($===400)return new P2($,q,X,z);if($===401)return new R2($,q,X,z);if($===403)return new I2($,q,X,z);if($===404)return new A2($,q,X,z);if($===409)return new N2($,q,X,z);if($===422)return new j2($,q,X,z);if($===429)return new S2($,q,X,z);if($>=500)return new C2($,q,X,z);return new u($,q,X,z)}}class p extends u{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}}class i0 extends u{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}}class Z1 extends i0{constructor({message:$}={}){super({message:$??"Request timed out."})}}class P2 extends u{}class R2 extends u{}class I2 extends u{}class A2 extends u{}class N2 extends u{}class j2 extends u{}class S2 extends u{}class C2 extends u{}var b2=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},a0=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 E0{constructor(){s.set(this,void 0),this.buffer=new Uint8Array,b2(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=vH(this.buffer,a0(this,s,"f")))!=null){if(q.carriage&&a0(this,s,"f")==null){b2(this,s,q.index,"f");continue}if(a0(this,s,"f")!=null&&(q.index!==a0(this,s,"f")+1||q.carriage)){z.push(this.decodeText(this.buffer.slice(0,a0(this,s,"f")-1))),this.buffer=this.buffer.slice(a0(this,s,"f")),b2(this,s,null,"f");continue}let G=a0(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),b2(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
|
-
`)}}
|
|
194
|
-
`,"\r"]);
|
|
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]=dH($,":");if(z.startsWith(" "))z=z.substring(1);if(Z==="event")this.event=z;else if(Z==="data")this.data.push(z);return null}}function dH($,Z){let X=$.indexOf(Z);if(X!==-1)return[$.substring(0,X),Z,$.substring(X+Z.length)];return[$,"",""]}var pH=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function",lH=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&z1($),z1=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function";async function zZ($,Z,X){if($=await $,lH($))return $;if(pH($)){let q=await $.blob();Z||(Z=new URL($.url).pathname.split(/[\\/]/).pop()??"unknown_file");let G=z1(q)?[await q.arrayBuffer()]:[q];return new M2(G,Z,X)}let z=await cH($);if(Z||(Z=aH($)??"unknown_file"),!X?.type){let q=z[0]?.type;if(typeof q==="string")X={...X,type:q}}return new M2(z,Z,X)}async function cH($){let Z=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)Z.push($);else if(z1($))Z.push(await $.arrayBuffer());else if(nH($))for await(let X of $)Z.push(X);else throw Error(`Unexpected data type: ${typeof $}; constructor: ${$?.constructor?.name}; props: ${iH($)}`);return Z}function iH($){return`[${Object.getOwnPropertyNames($).map((X)=>`"${X}"`).join(", ")}]`}function aH($){return k9($.name)||k9($.filename)||k9($.path)?.split(/[\\/]/).pop()}var k9=($)=>{if(typeof $==="string")return $;if(typeof Buffer<"u"&&$ instanceof Buffer)return String($);return},nH=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function",f9=($)=>$&&typeof $==="object"&&$.body&&$[Symbol.toStringTag]==="MultipartBody";var rH=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},oH=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($)},y2;y9();async function YZ($){let{response:Z}=$;if($.options.stream){if(K$("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 K$("response",Z.status,Z.url,Z.headers,J),UZ(J,Z)}let G=await Z.text();return K$("response",Z.status,Z.url,Z.headers,G),G}function UZ($,Z){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:Z.headers.get("request-id"),enumerable:!1})}class k2 extends Promise{constructor($,Z=YZ){super((X)=>{X(null)});this.responsePromise=$,this.parseResponse=Z}_thenUnwrap($){return new k2(this.responsePromise,async(Z)=>UZ($(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 g9{constructor({baseURL:$,maxRetries:Z=2,timeout:X=600000,httpAgent:z,fetch:q}){this.baseURL=$,this.maxRetries=h9("maxRetries",Z),this.timeout=h9("timeout",X),this.httpAgent=z,this.fetch=q??S9}authHeaders($){return{}}defaultHeaders($){return{Accept:"application/json","Content-Type":"application/json","User-Agent":this.getUserAgent(),...ZW(),...this.authHeaders($)}}validateHeaders($,Z){}defaultIdempotencyKey(){return`stainless-node-retry-${JW()}`}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&&z1(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:f9(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)h9("timeout",X.timeout);X.timeout=X.timeout??this.timeout;let W=X.httpAgent??this.httpAgent??E9(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(QZ(q,G),QZ(q,Z),f9($.body)&&c0!=="node")delete q["content-type"];if(x2(G,"x-stainless-retry-count")===void 0&&x2(Z,"x-stainless-retry-count")===void 0)q["x-stainless-retry-count"]=String(z);if(x2(G,"x-stainless-timeout")===void 0&&x2(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 k2(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}),K$("request",G,X,q.headers),X.signal?.aborted)throw new p;let Q=new AbortController,Y=await this.fetchWithTimeout(G,q,J,Q).catch(E2);if(Y instanceof Error){if(X.signal?.aborted)throw new p;if(Z)return this.retryRequest(X,Z);if(Y.name==="AbortError")throw new Z1;throw new i0({cause:Y})}let U=x9(Y.headers);if(!Y.ok){if(Z&&this.shouldRetry(Y)){let T=`retrying, ${Z} attempts remaining`;return K$(`response (error; ${T})`,Y.status,G,U),this.retryRequest(X,Z,U)}let W=await Y.text().catch((T)=>E2(T).message),H=XW(W),V=H?void 0:W;throw K$(`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 HZ(this,X,$)}buildURL($,Z){let X=qW($)?new URL($):new URL(this.baseURL+(this.baseURL.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),z=this.defaultQuery();if(!WZ(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 GW(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 ${l0}`}}class v9{constructor($,Z,X,z){y2.set(this,void 0),rH(this,y2,$,"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 oH(this,y2,"f").requestAPIList(this.constructor,Z)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(y2=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let Z of $.getPaginatedItems())yield Z}}class HZ extends k2{constructor($,Z,X){super(Z,async(z)=>new X($,z.response,await YZ(z),z.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let Z of $)yield Z}}var x9=($)=>{return new Proxy(Object.fromEntries($.entries()),{get(Z,X){let z=X.toString();return Z[z.toLowerCase()]||Z[z]}})},tH={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&&!WZ($)&&Object.keys($).every((Z)=>VZ(tH,Z))},eH=()=>{if(typeof Deno<"u"&&Deno.build!=null)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":l0,"X-Stainless-OS":GZ(Deno.build.os),"X-Stainless-Arch":qZ(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":l0,"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":l0,"X-Stainless-OS":GZ(process.platform),"X-Stainless-Arch":qZ(process.arch),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":process.version};let $=$W();if($)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":l0,"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":l0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function $W(){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 qZ=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},GZ=($)=>{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"},JZ,ZW=()=>{return JZ??(JZ=eH())},XW=($)=>{try{return JSON.parse($)}catch(Z){return}},zW=/^[a-z][a-z0-9+.-]*:/i,qW=($)=>{return zW.test($)},GW=($)=>new Promise((Z)=>setTimeout(Z,$)),h9=($,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},E2=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null)try{return Error(JSON.stringify($))}catch{}return Error(String($))};var f2=($)=>{if(typeof process<"u")return process.env?.[$]?.trim()??void 0;if(typeof Deno<"u")return Deno.env?.get?.($)?.trim();return};function WZ($){if(!$)return!0;for(let Z in $)return!1;return!0}function VZ($,Z){return Object.prototype.hasOwnProperty.call($,Z)}function QZ($,Z){for(let X in Z){if(!VZ(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 K$($,...Z){if(typeof process<"u"&&process?.env?.DEBUG==="true")console.log(`Anthropic:DEBUG:${$}`,...Z)}var JW=()=>{return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,($)=>{let Z=Math.random()*16|0;return($==="x"?Z:Z&3|8).toString(16)})},TZ=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},QW=($)=>{return typeof $?.get==="function"};var x2=($,Z)=>{let X=Z.toLowerCase();if(QW($)){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 L0 extends v9{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 d{constructor($){this._client=$}}class L$ extends d{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 L0{}L$.BetaModelInfosPage=q1;class D${constructor($,Z){this.iterator=$,this.controller=Z}async*decoder(){let $=new E0;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$(X1($.body),Z)}}class _$ extends d{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",G1,{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 G1 extends L0{}_$.BetaMessageBatchesPage=G1;var WW=($)=>{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},O$=($)=>{if($.length===0)return $;let Z=$[$.length-1];switch(Z.type){case"separator":return $=$.slice(0,$.length-1),O$($);break;case"number":let X=Z.value[Z.value.length-1];if(X==="."||X==="-")return $=$.slice(0,$.length-1),O$($);case"string":let z=$[$.length-2];if(z?.type==="delimiter")return $=$.slice(0,$.length-1),O$($);else if(z?.type==="brace"&&z.value==="{")return $=$.slice(0,$.length-1),O$($);break;case"delimiter":return $=$.slice(0,$.length-1),O$($);break}return $},VW=($)=>{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 $},TW=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},h2=($)=>JSON.parse(TW(VW(O$(WW($)))));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($)},$0,b0,J1,g2,Q1,Y1,v2,U1,D0,H1,u2,m2,F$,d2,p2,u9,BZ,m9,d9,p9,l9,KZ,LZ="__json_buf";class W1{constructor(){$0.add(this),this.messages=[],this.receivedMessages=[],b0.set(this,void 0),this.controller=new AbortController,J1.set(this,void 0),g2.set(this,()=>{}),Q1.set(this,()=>{}),Y1.set(this,void 0),v2.set(this,()=>{}),U1.set(this,()=>{}),D0.set(this,{}),H1.set(this,!1),u2.set(this,!1),m2.set(this,!1),F$.set(this,!1),d2.set(this,void 0),p2.set(this,void 0),m9.set(this,($)=>{if(l(this,u2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new p;if($ instanceof p)return l(this,m2,!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,J1,new Promise(($,Z)=>{l(this,g2,$,"f"),l(this,Q1,Z,"f")}),"f"),l(this,Y1,new Promise(($,Z)=>{l(this,v2,$,"f"),l(this,U1,Z,"f")}),"f"),N(this,J1,"f").catch(()=>{}),N(this,Y1,"f").catch(()=>{})}get response(){return N(this,d2,"f")}get request_id(){return N(this,p2,"f")}async withResponse(){let $=await N(this,J1,"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 W1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new W1;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,m9,"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,$0,"m",d9).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,$0,"m",p9).call(this,J);if(G.controller.signal?.aborted)throw new p;N(this,$0,"m",l9).call(this)}_connected($){if(this.ended)return;l(this,d2,$,"f"),l(this,p2,$?.headers.get("request-id"),"f"),N(this,g2,"f").call(this,$),this._emit("connect")}get ended(){return N(this,H1,"f")}get errored(){return N(this,u2,"f")}get aborted(){return N(this,m2,"f")}abort(){this.controller.abort()}on($,Z){return(N(this,D0,"f")[$]||(N(this,D0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=N(this,D0,"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,D0,"f")[$]||(N(this,D0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(l(this,F$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){l(this,F$,!0,"f"),await N(this,Y1,"f")}get currentMessage(){return N(this,b0,"f")}async finalMessage(){return await this.done(),N(this,$0,"m",u9).call(this)}async finalText(){return await this.done(),N(this,$0,"m",BZ).call(this)}_emit($,...Z){if(N(this,H1,"f"))return;if($==="end")l(this,H1,!0,"f"),N(this,v2,"f").call(this);let X=N(this,D0,"f")[$];if(X)N(this,D0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!N(this,F$,"f")&&!X?.length)Promise.reject(z);N(this,Q1,"f").call(this,z),N(this,U1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!N(this,F$,"f")&&!X?.length)Promise.reject(z);N(this,Q1,"f").call(this,z),N(this,U1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",N(this,$0,"m",u9).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,$0,"m",d9).call(this),this._connected(null);let z=r.fromReadableStream($,this.controller);for await(let q of z)N(this,$0,"m",p9).call(this,q);if(z.controller.signal?.aborted)throw new p;N(this,$0,"m",l9).call(this)}[(b0=new WeakMap,J1=new WeakMap,g2=new WeakMap,Q1=new WeakMap,Y1=new WeakMap,v2=new WeakMap,U1=new WeakMap,D0=new WeakMap,H1=new WeakMap,u2=new WeakMap,m2=new WeakMap,F$=new WeakMap,d2=new WeakMap,p2=new WeakMap,m9=new WeakMap,$0=new WeakSet,u9=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},BZ=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(" ")},d9=function(){if(this.ended)return;l(this,b0,void 0,"f")},p9=function(Z){if(this.ended)return;let X=N(this,$0,"m",KZ).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:DZ(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,b0,X,"f");break}case"content_block_start":case"message_delta":break}},l9=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=N(this,b0,"f");if(!Z)throw new A("request ended without sending any chunks");return l(this,b0,void 0,"f"),Z},KZ=function(Z){let X=N(this,b0,"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[LZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,LZ,{value:q,enumerable:!1,writable:!0}),q)z.input=h2(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:DZ(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 DZ($){}var _Z={"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 n0 extends d{constructor(){super(...arguments);this.batches=new _$(this._client)}create($,Z){let{betas:X,...z}=$;if(z.model in _Z)console.warn(`The model '${z.model}' is deprecated and will reach end-of-life on ${_Z[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 W1.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}})}}n0.Batches=_$;n0.BetaMessageBatchesPage=G1;class _0 extends d{constructor(){super(...arguments);this.models=new L$(this._client),this.messages=new n0(this._client)}}_0.Models=L$;_0.BetaModelInfosPage=q1;_0.Messages=n0;class M$ extends d{create($,Z){return this._client.post("/v1/complete",{body:$,timeout:this._client._options.timeout??600000,...Z,stream:$.stream??!1})}}class w$ extends d{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",V1,{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 V1 extends L0{}w$.MessageBatchesPage=V1;var c=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,T1,l2,B1,K1,c2,L1,O0,D1,i2,a2,P$,n2,s2,c9,OZ,i9,a9,n9,s9,FZ,MZ="__json_buf";class _1{constructor(){Z0.add(this),this.messages=[],this.receivedMessages=[],y0.set(this,void 0),this.controller=new AbortController,T1.set(this,void 0),l2.set(this,()=>{}),B1.set(this,()=>{}),K1.set(this,void 0),c2.set(this,()=>{}),L1.set(this,()=>{}),O0.set(this,{}),D1.set(this,!1),i2.set(this,!1),a2.set(this,!1),P$.set(this,!1),n2.set(this,void 0),s2.set(this,void 0),i9.set(this,($)=>{if(c(this,i2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new p;if($ instanceof p)return c(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($)))}),c(this,T1,new Promise(($,Z)=>{c(this,l2,$,"f"),c(this,B1,Z,"f")}),"f"),c(this,K1,new Promise(($,Z)=>{c(this,c2,$,"f"),c(this,L1,Z,"f")}),"f"),j(this,T1,"f").catch(()=>{}),j(this,K1,"f").catch(()=>{})}get response(){return j(this,n2,"f")}get request_id(){return j(this,s2,"f")}async withResponse(){let $=await j(this,T1,"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 _1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new _1;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,i9,"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",a9).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",n9).call(this,J);if(G.controller.signal?.aborted)throw new p;j(this,Z0,"m",s9).call(this)}_connected($){if(this.ended)return;c(this,n2,$,"f"),c(this,s2,$?.headers.get("request-id"),"f"),j(this,l2,"f").call(this,$),this._emit("connect")}get ended(){return j(this,D1,"f")}get errored(){return j(this,i2,"f")}get aborted(){return j(this,a2,"f")}abort(){this.controller.abort()}on($,Z){return(j(this,O0,"f")[$]||(j(this,O0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=j(this,O0,"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,O0,"f")[$]||(j(this,O0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(c(this,P$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){c(this,P$,!0,"f"),await j(this,K1,"f")}get currentMessage(){return j(this,y0,"f")}async finalMessage(){return await this.done(),j(this,Z0,"m",c9).call(this)}async finalText(){return await this.done(),j(this,Z0,"m",OZ).call(this)}_emit($,...Z){if(j(this,D1,"f"))return;if($==="end")c(this,D1,!0,"f"),j(this,c2,"f").call(this);let X=j(this,O0,"f")[$];if(X)j(this,O0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!j(this,P$,"f")&&!X?.length)Promise.reject(z);j(this,B1,"f").call(this,z),j(this,L1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!j(this,P$,"f")&&!X?.length)Promise.reject(z);j(this,B1,"f").call(this,z),j(this,L1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",j(this,Z0,"m",c9).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",a9).call(this),this._connected(null);let z=r.fromReadableStream($,this.controller);for await(let q of z)j(this,Z0,"m",n9).call(this,q);if(z.controller.signal?.aborted)throw new p;j(this,Z0,"m",s9).call(this)}[(y0=new WeakMap,T1=new WeakMap,l2=new WeakMap,B1=new WeakMap,K1=new WeakMap,c2=new WeakMap,L1=new WeakMap,O0=new WeakMap,D1=new WeakMap,i2=new WeakMap,a2=new WeakMap,P$=new WeakMap,n2=new WeakMap,s2=new WeakMap,i9=new WeakMap,Z0=new WeakSet,c9=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(" ")},a9=function(){if(this.ended)return;c(this,y0,void 0,"f")},n9=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:wZ(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":{c(this,y0,X,"f");break}case"content_block_start":case"message_delta":break}},s9=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 c(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[MZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,MZ,{value:q,enumerable:!1,writable:!0}),q)z.input=h2(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:wZ(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 wZ($){}class x0 extends d{constructor(){super(...arguments);this.batches=new w$(this._client)}create($,Z){if($.model in PZ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${PZ[$.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
|
|
189
|
+
`);if(H+=K.length+T.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 r8($,Z,X,z){let{path:q,auditTraps:G}=E9(Z);if(typeof Z!=="string"&&Z.type==="codebase")return VH($,Z,X,G,z);if(UH(q))return HH($,q,G);return WH($,q,X,G)}async function Z1($,Z,X){let z=Object.entries($);return await Promise.all(z.map(([G,J])=>r8(G,J,Z,X)))}async function o8($){if(!TH(BH($,"pickled.yml")))return{matches:[],findings:[]};let Z=await H$($),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 LH(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:T}=E0({response:B.content,traps:[L]}),K=T[0];if(!K)continue;let D=DH(B.content,K.index),_=G.get(L)??"warning";Q.push({sourceId:U.id,sourcePath:B.path,trapId:K.id,trapReason:K.reason,matched:K.matched,snippet:K.snippet,line:D,severity:_}),Y.push({severity:_,category:"trap-source-match",file:B.path,message:`source [${U.id}] matches trap '${K.id}' ("${K.matched}") in ${B.path}. ${K.reason} Fix: remove the stale claim from the source, retire the trap if no longer relevant, set audit.traps: ['${K.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 LH($,Z,X){let z=[];for(let q of $)try{let G=await Bun.file(KH(Z,q)).text();z.push({path:q,content:G})}catch{}return z}function DH($,Z){let X=1,z=Math.min(Z,$.length);for(let q=0;q<z;q++)if($[q]===`
|
|
190
|
+
`)X++;return X}var wH=["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(!V$(X))throw Error(`targetRepo does not exist: ${X}`);let z=new Set;for(let U of wH){let W=new t8(U);for await(let H of W.scan({cwd:X,dot:!0,onlyFiles:!1,followSymlinks:!1})){if(Z.ignore.some((L)=>new t8(L).match(H)))continue;let V=b9(X,H),B=e8(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,b9(X,U),Z));let G=kH(q,Z),J=fH(q,G,Z),{matches:Q,findings:Y}=await o8(X);return{config:Z,files:q,pairs:G,findings:[...J,...Y],sourceTrapMatches:Q}}async function RH($,Z,X,z){let G=e8(X).isSymbolicLink(),J=null,Q=Z;if(G){let V=_H(X),B=MH(V)?V:y9(w2(X),V);if(J=B,V$(B))Q=FH($,B)}let Y=G&&J&&V$(J)?J:X,U=F2(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:IH(U,$,Z),brokenImports:jH(U,w2(X)),unresolvedCommands:EH(U,$,z.knownCommands),sections:bH(U)}}function PH($){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 IH($,Z,X){let z=xH($),q=w2(X),G=PH(X),J=new Set,Q=/`([^`\n]{2,200})`/g,Y;Y=Q.exec(z);while(Y!==null){let U=Y[1].trim().replace(/[#?].*$/,"");if(yH(U)&&!AH(Z,U,q,G).found)J.add(U);Y=Q.exec(z)}return[...J].sort()}function AH($,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(V$(`${$}/${J}`))return{found:!0,resolvedAs:J}}return{found:!1}}function jH($,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(!V$(J))X.add(G);q=z.exec($)}return[...X].sort()}var NH=["bun","pnpm","npm","yarn"],SH=new Set(["install","add","remove","update","i","audit","list","ls","why","outdated","exec","run","create","init","x"]),CH={bun:new Set(["build","test","link","unlink","upgrade"])};function EH($,Z,X){let z=new Set,q=b9(Z,"package.json"),G=new Set;if(V$(q))try{let Q=JSON.parse(F2(q,"utf8"));G=new Set(Object.keys(Q.scripts??{}))}catch{}let J=new Set(X.map((Q)=>Q.trim()));for(let Q of NH){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}`)&&!SH.has(W)&&!CH[Q]?.has(W))z.add(`${Q} ${W}`);U=Y.exec($)}}return[...z].sort()}function bH($){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 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
|
+
`)}}r=new WeakMap;b0.NEWLINE_CHARS=new Set([`
|
|
194
|
+
`,"\r"]);b0.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function cH($,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 QZ($){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 z1($){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 o{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 iH($,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 v.generate(void 0,`SSE Error: ${G.data}`,G.data,u9($.headers))}q=!0}catch(G){if(G instanceof Error&&G.name==="AbortError")return;throw G}finally{if(!q)Z.abort()}}return new o(z,Z)}static fromReadableStream($,Z){let X=!1;async function*z(){let G=new b0,J=z1($);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 o(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 o(()=>z($),this.controller),new o(()=>z(Z),this.controller)]}toReadableStream(){let $=this,Z,X=new TextEncoder;return new f9({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*iH($,Z){if(!$.body)throw Z.abort(),new A("Attempted to iterate over a response with no body");let X=new YZ,z=new b0,q=z1($.body);for await(let G of aH(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*aH($){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=QZ(Z))!==-1)yield Z.slice(0,G),Z=Z.slice(G)}if(Z.length>0)yield Z}class YZ{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]=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 SZ={"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=F$;k0.MessageBatchesPage=T1;class r0 extends u{retrieve($,Z){return this._client.get(`/v1/models/${$}`,Z)}list($={},Z){if($0($))return this.list({},$);return this._client.getAPIList("/v1/models",R$,{query:$,...Z})}}class R$ extends D0{}r0.ModelInfosPage=R$;var CZ;class y extends l9{constructor({baseURL:$=u2("ANTHROPIC_BASE_URL"),apiKey:Z=u2("ANTHROPIC_API_KEY")??null,authToken:X=u2("ANTHROPIC_AUTH_TOKEN")??null,...z}={}){let q={apiKey:Z,authToken:X,...z,baseURL:$||"https://api.anthropic.com"};if(!q.dangerouslyAllowBrowser&&OZ())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 M$(this),this.messages=new
|
|
205
|
+
`);super({baseURL:q.baseURL,timeout:q.timeout??600000,httpAgent:q.httpAgent,maxRetries:q.maxRetries,fetch:q.fetch});this.completions=new M$(this),this.messages=new k0(this),this.models=new r0(this),this.beta=new O0(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}`}}}CZ=y;y.Anthropic=CZ;y.HUMAN_PROMPT=`
|
|
206
206
|
|
|
207
|
-
Human:`;
|
|
207
|
+
Human:`;y.AI_PROMPT=`
|
|
208
208
|
|
|
209
|
-
Assistant:`;
|
|
209
|
+
Assistant:`;y.DEFAULT_TIMEOUT=600000;y.AnthropicError=A;y.APIError=v;y.APIConnectionError=a0;y.APIConnectionTimeoutError=X1;y.APIUserAbortError=m;y.NotFoundError=C2;y.ConflictError=E2;y.RateLimitError=y2;y.BadRequestError=j2;y.AuthenticationError=N2;y.InternalServerError=x2;y.PermissionDeniedError=S2;y.UnprocessableEntityError=b2;y.toFile=UZ;y.fileFromPath=A2;y.Completions=M$;y.Messages=k0;y.Models=r0;y.ModelInfosPage=R$;y.Beta=O0;var EZ=y;function P$($,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,19 +231,21 @@ 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 X5{category="api";provider="anthropic";name;config;clientFactory;constructor($,Z,X){this.name=$,this.config=Z,this.clientFactory=X??(()=>new EZ)}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=P$(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 PW}from"@anthropic-ai/claude-agent-sdk";class z5{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}=Z,Q=[],Y=[],U=P$(X,G,J),W={cwd:z,model:this.config.model??"sonnet",systemPrompt:U,allowedTools:q?.allowedTools??this.config.allowedTools??D4,disallowedTools:q?.disallowedTools??this.config.disallowedTools??_4,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:[]},H=[],V="",B="";for await(let L of PW({prompt:$,options:W})){if(L.type==="assistant"){let T=L.message?.content;if(Array.isArray(T)){let K="";for(let D of T){if(D.type==="text")K+=D.text;if(D.type==="tool_use"){let _=D;if(!Q.includes(_.name))Q.push(_.name)}}if(K){let D=H.length===0?"initial":"intermediate";H.push({type:D,text:K}),V=K}}}if(L.type==="result"){let T=L;if(T.result)B=T.result}}if(H.length>0)H[H.length-1].type="final";return{response:B||V,allResponses:H,toolsUsed:Q,sources:Y,metadata:{model:this.config.model??"sonnet",category:this.category,provider:this.provider,target:this.name}}}}import{randomUUID as IW}from"crypto";import{rm as AW}from"fs/promises";import{tmpdir as jW}from"os";import{join as NW}from"path";var SW="codex";class q5{category="cli";provider="codex-cli";name;config;spawnFn;readFileFn;binary;constructor($,Z,X={}){this.name=$,this.config=Z,this.spawnFn=X.spawn??yW,this.readFileFn=X.readFile??xW,this.binary=X.binary??SW}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=`${P$(X,q,G)}
|
|
235
235
|
|
|
236
236
|
---
|
|
237
237
|
|
|
238
|
-
${$}`,U=
|
|
239
|
-
`)){let q=z.trim();if(!q)continue;let G;try{G=JSON.parse(q)}catch{continue}let J=IW(G);if(J){let Y=Z.length===0?"initial":"intermediate";Z.push({type:Y,text:J})}let Q=AW(G);if(Q&&!X.includes(Q))X.push(Q)}return{allResponses:Z,toolsUsed:X}}function IW($){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 AW($){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 NW=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}},jW=async($)=>{let Z=Bun.file($);if(!await Z.exists())throw Error(`Last-message file not found: ${$}`);return Z.text()};function r2($,Z){let X=Z??Q0;switch(X.category){case"cli":return SW($,X);case"api":return CW($,X);case"ide":throw Error("IDE targets not yet implemented. Coming soon!");default:throw Error(`Unknown target category: ${X.category}`)}}function SW($,Z){switch(Z.provider){case"claude-code":return new o9($,Z);case"codex-cli":return new t9($,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 CW($,Z){switch(Z.provider){case"anthropic":return new r9($,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 o2($,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 e9($,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 $5="__matrix__";function EW($){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:$5,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 Z5($,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 $1(G,$.path);for(let W of J)z?.(` [${W.id}] ${W.name}`);z?.("")}let Q=J.map((W)=>W.id),Y=EW(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=bW(H,V);if(W.name!==U){if(U)z?.("");z?.(`"${W.name}"`),U=W.name}try{let L=await yW(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=K0(K),M=` [${[K.cell.interface,K.cell.source??"-",K.cell.toolset].join(" \xB7 ")}]`.padEnd(40);z?.(`${M} ${D.icon} ${D.label} (${D.confidence}%)`)}}else if(L.surfaces){z?.(` ${T} (compare-surfaces mode)`);for(let K of L.surfaces){let D=K0(K),O=` [${K.active.join(",")}]`.padEnd(22);z?.(`${O} ${D.icon} ${D.label} (${D.confidence}%)`)}}else{let K=K0({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((M)=>M.id)},error:L instanceof Error?L.message:String(L),target:{target:H===$5?"matrix":H,category:T.category,provider:T.provider,model:T.model??"unknown"},context:{name:V}};q.push(D);let O=B?B.padEnd(18):"";z?.(` ${O} \u2717 Error`)}}return z?.(""),xW($,J,q)}function bW($,Z){if($==="default"&&Z==="default")return"";if(Z==="default")return`[${$}]`;return`[${$}/${Z}]`}async function yW($,Z,X,z,q,G,J,Q){if($.matrix&&Z===$5)return kW($,X,z,q,G,Q);let{config:Y}=o2(Z,q.targets),{config:U}=e9(X,q.contexts),W=Q.targetFactory?Q.targetFactory(Z,Y):r2(Z,Y);if($.compareSurfaces&&$.compareSurfaces.length>0){let w=[],I;for(let R of $.compareSurfaces){let C=new Set(R),F=G.filter((J0)=>C.has(J0.id)),i=($.requiredSources??[]).filter((J0)=>C.has(J0)),a=await W.run($.prompt,{tool:z,cwd:z.path,context:U,docs:F,requiredSources:i,onProgress:Q.onProgress}),b=B$({response:a.response,requiredSources:i,registeredIds:R}),h=C0({response:a.response,traps:$.traps??[]}),F0=h.fired.length>0,r0=F0?"NO":b.answerable,o0=F0?0:b.confidence,m=F0?`Trap fired: ${h.fired.map((J0)=>`"${J0.id}" (${J0.reason})`).join("; ")}`:b.reason;w.push({active:R,answerable:r0,confidence:o0,response:a.response,reason:m,citations:b.citations,traps:h,allResponses:a.allResponses}),I=a.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=C0({response:V.response,traps:$.traps??[]}),L=B.fired.length>0,T=$.requiredSources!==void 0?B$({response:V.response,requiredSources:H,registeredIds:J}):null,K=$.expected!==void 0?F2({response:V.response,expected:$.expected}):null,D,O,M;if(L)D="NO",O=0,M=`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 R=K.total===0?100:Math.round(K.satisfied/K.total*100),C=R===100?"YES":R===0?"NO":"PARTIAL";w.push({answerable:C,confidence:R})}if(w.length===0)D="YES",O=100,M="No traps fired; no other contract declared";else{let R={YES:0,PARTIAL:1,NO:2};D=w.reduce((F,E)=>R[E.answerable]>R[F.answerable]?E:F).answerable,O=Math.round(w.reduce((F,E)=>F+E.confidence,0)/w.length),M=I.filter((F)=>F.length>0).join(" | ")}}return{scenario:$,answerable:D,confidence:O,response:V.response,reason:M,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 xW($,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 kW($,Z,X,z,q,G){let{config:J}=e9(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 O of H){if(V.toolset&&V.toolset!==O)continue;if(O!=="none")throw Error(`Toolset "${O}" is declared but not yet implemented in this CLI version. v0.16.0 supports only "none" (the deterministic baseline cell). Tool-enabled adapters (WebSearch+WebFetch, Context7 MCP, Firecrawl, native API search) land in follow-up commits.`);let{config:M}=o2(K,z.targets),w=G.targetFactory?G.targetFactory(K,M):r2(K,M),I=D===null?q:q.filter((m)=>m.id===D),R=D===null?q.map((m)=>m.id):[D],F=($.requiredSources??[]).filter((m)=>R.includes(m)),E=await w.run($.prompt,{tool:X,cwd:X.path,context:J,docs:I,requiredSources:F,onProgress:G.onProgress}),i=C0({response:E.response,traps:$.traps??[]}),a=i.fired.length>0,b=$.requiredSources!==void 0?B$({response:E.response,requiredSources:F,registeredIds:R}):null,h=$.expected!==void 0?F2({response:E.response,expected:$.expected}):null,F0,r0,o0;if(a)F0="NO",r0=0,o0=`Trap fired: ${i.fired.map((m)=>`"${m.id}" (${m.reason})`).join("; ")}`;else{let m=[],J0=[];if(b)m.push({answerable:b.answerable,confidence:b.confidence}),J0.push(b.reason);if(h){let t0=h.total===0?100:Math.round(h.satisfied/h.total*100),H5=t0===100?"YES":t0===0?"NO":"PARTIAL";m.push({answerable:H5,confidence:t0});let H0=h.includes.filter((f0)=>!f0.satisfied).map((f0)=>`"${f0.value}"`),k0=h.excludes.filter((f0)=>!f0.satisfied).map((f0)=>`"${f0.value}"`),M1=[];if(H0.length>0)M1.push(`missing includes: ${H0.join(", ")}`);if(k0.length>0)M1.push(`hit excludes: ${k0.join(", ")}`);J0.push(M1.length>0?M1.join("; "):`expected checks satisfied (${h.satisfied}/${h.total})`)}if(m.length===0)F0="YES",r0=100,o0="No traps fired; no other contract declared";else{let t0={YES:0,PARTIAL:1,NO:2};F0=m.reduce((H0,k0)=>t0[k0.answerable]>t0[H0.answerable]?k0:H0).answerable,r0=Math.round(m.reduce((H0,k0)=>H0+k0.confidence,0)/m.length),o0=J0.filter((H0)=>H0.length>0).join(" | ")}}B.push({cell:{interface:K,source:D,toolset:O},answerable:F0,confidence:r0,response:E.response,reason:o0,citations:b?b.citations:null,traps:i,expected:h?{includes:h.includes,excludes:h.excludes,satisfied:h.satisfied,total:h.total}:void 0,allResponses:E.allResponses}),L=E.metadata??L}}}let T=fW($,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 fW($,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}var AZ=($=0)=>(Z)=>`\x1B[${Z+$}m`,NZ=($=0)=>(Z)=>`\x1B[${38+$};5;${Z}m`,jZ=($=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]}},xL=Object.keys(k.modifier),hW=Object.keys(k.color),gW=Object.keys(k.bgColor),kL=[...hW,...gW];function vW(){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=AZ(),k.color.ansi256=NZ(),k.color.ansi16m=jZ(),k.bgColor.ansi=AZ(10),k.bgColor.ansi256=NZ(10),k.bgColor.ansi16m=jZ(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 uW=vW(),G0=uW;import X5 from"process";import mW from"os";import SZ from"tty";function X0($,Z=globalThis.Deno?globalThis.Deno.args:X5.argv){let X=$.startsWith("-")?"":$.length===1?"-":"--",z=Z.indexOf(X+$),q=Z.indexOf("--");return z!==-1&&(q===-1||z<q)}var{env:f}=X5,t2;if(X0("no-color")||X0("no-colors")||X0("color=false")||X0("color=never"))t2=0;else if(X0("color")||X0("colors")||X0("color=true")||X0("color=always"))t2=1;function dW(){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 pW($){if($===0)return!1;return{level:$,hasBasic:!0,has256:$>=2,has16m:$>=3}}function lW($,{streamIsTTY:Z,sniffFlags:X=!0}={}){let z=dW();if(z!==void 0)t2=z;let q=X?t2: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(X5.platform==="win32"){let J=mW.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 CZ($,Z={}){let X=lW($,{streamIsTTY:$&&$.isTTY,...Z});return pW(X)}var cW={stdout:CZ({isTTY:SZ.isatty(1)}),stderr:CZ({isTTY:SZ.isatty(2)})},EZ=cW;function bZ($,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 yZ($,Z,X,z){let q=0,G="";do{let J=$[z-1]==="\r";G+=$.slice(q,J?z-1:z)+Z+(J?`\r
|
|
238
|
+
${$}`,U=NW(jW(),`pickled-codex-${IW()}.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}=CW(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 AW(U,{force:!0})}}}function CW($){let Z=[],X=[];for(let z of $.split(`
|
|
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`${$}
|
|
240
|
+
|
|
241
|
+
${G}`}var bZ=($=0)=>(Z)=>`\x1B[${Z+$}m`,yZ=($=0)=>(Z)=>`\x1B[${38+$};5;${Z}m`,xZ=($=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]}},mL=Object.keys(k.modifier),lW=Object.keys(k.color),cW=Object.keys(k.bgColor),dL=[...lW,...cW];function iW(){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=bZ(),k.color.ansi256=yZ(),k.color.ansi16m=xZ(),k.bgColor.ansi=bZ(10),k.bgColor.ansi256=yZ(10),k.bgColor.ansi16m=xZ(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 aW=iW(),J0=aW;import Y5 from"process";import nW from"os";import kZ from"tty";function z0($,Z=globalThis.Deno?globalThis.Deno.args:Y5.argv){let X=$.startsWith("-")?"":$.length===1?"-":"--",z=Z.indexOf(X+$),q=Z.indexOf("--");return z!==-1&&(q===-1||z<q)}var{env:f}=Y5,X4;if(z0("no-color")||z0("no-colors")||z0("color=false")||z0("color=never"))X4=0;else if(z0("color")||z0("colors")||z0("color=true")||z0("color=always"))X4=1;function sW(){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 rW($){if($===0)return!1;return{level:$,hasBasic:!0,has256:$>=2,has16m:$>=3}}function oW($,{streamIsTTY:Z,sniffFlags:X=!0}={}){let z=sW();if(z!==void 0)X4=z;let q=X?X4:z;if(q===0)return 0;if(X){if(z0("color=16m")||z0("color=full")||z0("color=truecolor"))return 3;if(z0("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(Y5.platform==="win32"){let J=nW.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 fZ($,Z={}){let X=oW($,{streamIsTTY:$&&$.isTTY,...Z});return rW(X)}var tW={stdout:fZ({isTTY:kZ.isatty(1)}),stderr:fZ({isTTY:kZ.isatty(2)})},hZ=tW;function gZ($,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 vZ($,Z,X,z){let q=0,G="";do{let J=$[z-1]==="\r";G+=$.slice(q,J?z-1:z)+Z+(J?`\r
|
|
240
242
|
`:`
|
|
241
243
|
`)+X,q=z+1,z=$.indexOf(`
|
|
242
|
-
`,q)}while(z!==-1);return G+=$.slice(q),G}var{stdout:
|
|
243
|
-
`);if(G!==-1)Z=
|
|
244
|
-
`)}function
|
|
245
|
-
`);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(
|
|
246
|
-
`);else
|
|
244
|
+
`,q)}while(z!==-1);return G+=$.slice(q),G}var{stdout:uZ,stderr:mZ}=hZ,U5=Symbol("GENERATOR"),A$=Symbol("STYLER"),M1=Symbol("IS_EMPTY"),dZ=["ansi","ansi","ansi256","ansi16m"],j$=Object.create(null),eW=($,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=uZ?uZ.level:0;$.level=Z.level===void 0?X:Z.level};var $V=($)=>{let Z=(...X)=>X.join(" ");return eW(Z,$),Object.setPrototypeOf(Z,F1.prototype),Z};function F1($){return $V($)}Object.setPrototypeOf(F1.prototype,Function.prototype);for(let[$,Z]of Object.entries(J0))j$[$]={get(){let X=z4(this,W5(Z.open,Z.close,this[A$]),this[M1]);return Object.defineProperty(this,$,{value:X}),X}};j$.visible={get(){let $=z4(this,this[A$],!0);return Object.defineProperty(this,"visible",{value:$}),$}};var H5=($,Z,X,...z)=>{if($==="rgb"){if(Z==="ansi16m")return J0[X].ansi16m(...z);if(Z==="ansi256")return J0[X].ansi256(J0.rgbToAnsi256(...z));return J0[X].ansi(J0.rgbToAnsi(...z))}if($==="hex")return H5("rgb",Z,X,...J0.hexToRgb(...z));return J0[X][$](...z)},ZV=["rgb","hex","ansi256"];for(let $ of ZV){j$[$]={get(){let{level:X}=this;return function(...z){let q=W5(H5($,dZ[X],"color",...z),J0.color.close,this[A$]);return z4(this,q,this[M1])}}};let Z="bg"+$[0].toUpperCase()+$.slice(1);j$[Z]={get(){let{level:X}=this;return function(...z){let q=W5(H5($,dZ[X],"bgColor",...z),J0.bgColor.close,this[A$]);return z4(this,q,this[M1])}}}}var XV=Object.defineProperties(()=>{},{...j$,level:{enumerable:!0,get(){return this[U5].level},set($){this[U5].level=$}}}),W5=($,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}},z4=($,Z,X)=>{let z=(...q)=>zV(z,q.length===1?""+q[0]:q.join(" "));return Object.setPrototypeOf(z,XV),z[U5]=$,z[A$]=Z,z[M1]=X,z},zV=($,Z)=>{if($.level<=0||!Z)return $[M1]?"":Z;let X=$[A$];if(X===void 0)return Z;let{openAll:z,closeAll:q}=X;if(Z.includes("\x1B"))while(X!==void 0)Z=gZ(Z,X.close,X.open),X=X.parent;let G=Z.indexOf(`
|
|
245
|
+
`);if(G!==-1)Z=vZ(Z,q,z,G);return z+Z+q};Object.defineProperties(F1.prototype,j$);var qV=F1(),tL=F1({level:mZ?mZ.level:0});var R=qV;var pZ="\u2500".repeat(55);function V5($){if($==="success")return R.green;if($==="warning")return R.yellow;return R.red}function GV($){if($>=70)return R.green;if($>=50)return R.yellow;return R.red}function T5($){if($.label==="Error")return $.label;return`${$.label} (${$.confidence}%)`}function JV($){let Z=L0({answerable:$.answerable??"NO",confidence:$.confidence??0,traps:$.traps??{fired:[],avoided:[]},error:$.error}),X=V5(Z.tone);return{icon:X(Z.icon),status:T5(Z),color:X}}function QV($){let Z=$.target?.target??"default",X=$.context?.name??"default";if(Z==="default"&&X==="default")return"";if(X==="default")return R.dim(`[${Z}]`);return R.dim(`[${Z}/${X}]`)}function YV($){let Z=$.map((X)=>X.scenario.name);return new Set(Z).size!==Z.length}function q4($){return $.map((Z)=>`[${Z}]`).join(", ")}function B5($,Z){let X=[];if($.error)return X.push(R.dim(`${Z}error: ${$.error}`)),X;if($.traps.fired.length>0)for(let z of $.traps.fired)X.push(R.red(`${Z}trap: ${z.id}`)),X.push(R.dim(`${Z}reason: ${z.reason}`)),X.push(R.dim(`${Z}match: "${z.matched}"`));else if($.reason&&$.answerable!=="YES")X.push(R.dim(`${Z}reason: ${$.reason}`));if($.citations.cited.length>0)X.push(R.dim(`${Z}cited: ${q4($.citations.cited)}`));if($.citations.missing.length>0)X.push(R.dim(`${Z}missing: ${q4($.citations.missing)}`));if($.citations.unknown.length>0)X.push(R.dim(`${Z}unknown: ${q4($.citations.unknown)}`));return X}function lZ($,Z){if(!$.traps||!$.citations)return[];return B5({error:$.error,traps:$.traps,reason:$.reason??"",answerable:$.answerable??"NO",citations:$.citations},Z)}function cZ($){let{icon:Z,status:X,color:z}=JV($),q=QV($),G=`${Z} ${X}`;return q?`${q} ${z(G)}`:z(G)}function iZ($,Z){if(!$.cells)return[];let X=[];X.push(`${Z}${R.dim("Matrix cells (interface \xB7 source \xB7 toolset)")}`);for(let z of $.cells){let q=L0(z),G=V5(q.tone),J=`[${z.cell.interface} \xB7 ${z.cell.source??"-"} \xB7 ${z.cell.toolset}]`,Q=R.dim(J),Y=`${G(q.icon)} ${G(T5(q))}`;if(X.push(`${Z}${Q} ${Y}`),X.push(...B5({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(R.dim(`${Z} expected.includes missing: ${U.join(", ")}`));if(W.length>0)X.push(R.dim(`${Z} expected.excludes hit: ${W.join(", ")}`))}}if($.verifierSamples&&$.verifierSamples.length>0){X.push(`${Z}${R.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(R.dim(`${Z} [${z.id}] ${z.name}`)),X.push(R.dim(`${Z} ${q}${G}`))}}return X}function aZ($,Z){if(!$.surfaces)return[];let X=[];X.push(`${Z}${R.dim("Citations scoped to active surface (compare mode)")}`);for(let z of $.surfaces){let q=L0(z),G=V5(q.tone),J=R.dim(`[${z.active.join(",")}]`),Q=`${G(q.icon)} ${G(T5(q))}`;X.push(`${Z}${J} ${Q}`),X.push(...B5({traps:z.traps,reason:z.reason,answerable:z.answerable,citations:z.citations},`${Z} `))}return X}function UV($){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 HV($,Z){let X=$.summary.score,q=`Overall: ${GV(X)(`${X}`)} / 100`;if(Z===void 0||Z<=0)return q;let J=X>=Z?R.green("run passes"):R.red("run fails");return`${q} \xB7 threshold ${Z} \xB7 ${J}`}function nZ($,Z={}){let{tool:X,scenarios:z,summary:q}=$,G=z,J=[];if(J.push(R.bold("pickled check")),J.push(pZ),J.push(`Tool: ${R.cyan(X.name)}`),$.docs.length>0)J.push(`Sources: ${R.dim(q4($.docs.map((Q)=>Q.id)))}`);else J.push(`Sources: ${R.dim("none registered")}`);if(J.push(`Scenarios: ${R.dim(String(q.total))}`),J.push(""),YV(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(...iZ(W," "));else if(W.surfaces)J.push(...aZ(W," "));else J.push(` ${cZ(W)}`),J.push(...lZ(W," "));J.push("")}}else for(let Q of G){if(J.push(`Scenario: ${Q.scenario.name}`),Q.cells)J.push(...iZ(Q," "));else if(Q.surfaces)J.push(...aZ(Q," "));else J.push(` ${cZ(Q)}`),J.push(...lZ(Q," "));J.push("")}return J.push(pZ),J.push(HV($,Z.threshold)),J.push(R.dim(UV(z))),J.join(`
|
|
246
|
+
`)}function K5($,Z={}){console.log(nZ($,Z)),console.log()}function G4($,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 VV($){if($.format&&$.format!=="terminal")return $.format;if($.json)return"json";return $.format??"terminal"}async function sZ($,Z){let{output:X}=Z,z=VV(Z),q=WV.resolve($),G;try{G=await R2({targetRepo:q})}catch(H){console.error(R.red(H instanceof Error?H.message:H)),process.exit(1)}let J;if(z==="json")J=L2(G);else if(z==="markdown")J=K2(G);else J=D2(G);if(X)await Bun.write(X,J);else await TV(`${J}
|
|
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(R.green("Audit clean. No issues found."));else{let H=Q>0?R.red:R.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 TV($){return new Promise((Z,X)=>{process.stdout.write($,(z)=>{if(z)X(z);else Z()})})}import BV from"path";async function rZ($,Z){let{json:X,output:z,verbose:q}=Z,G=(T)=>!X&&console.log(T),J=BV.resolve($),Q;try{Q=await H$(J)}catch(T){console.error(R.red(T instanceof Error?T.message:T)),console.error(),console.error(R.dim("Run `pickled init` to create a config file")),process.exit(1)}if(Z.target){let T=Q.scenarios.length;try{Q=C9(Q,Z.target)}catch(D){console.error(R.red(D instanceof Error?D.message:String(D))),process.exit(1)}let K=T-Q.scenarios.length;if(K>0&&!X)G(R.dim(`Skipping ${K} scenario(s) with explicit target != "${Z.target}"`))}let Y={name:Q.tool.name,description:Q.tool.description,path:J};if(q){G(R.bold("pickled check")),G(""),G(R.dim(` Tool: ${Y.name}`)),G(R.dim(` Scenarios: ${Q.scenarios.length}`));for(let T of Q.scenarios)G(R.dim(` - ${T.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 Q5(Y,Q,{onProgress:q?(T)=>{if(!X)G(R.dim(` ${T}`))}: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,G4(V,{verbose:q}));else if(X)await KV(`${G4(V,{verbose:q})}
|
|
248
|
+
`);else K5(V,{threshold:B});if(L){if(X||z)console.error(R.red(`Overall: ${V.summary.score} / 100 \xB7 threshold ${B} \xB7 run fails`)),console.error(R.dim("Review failed scenarios before trusting this surface."));process.exit(1)}}function KV($){return new Promise((Z,X)=>{process.stdout.write($,(z)=>{if(z)X(z);else Z()})})}import LV from"path";var DV=`# pickled.yml - Agent legibility check for your product
|
|
247
249
|
|
|
248
250
|
tool:
|
|
249
251
|
name: "your-product"
|
|
@@ -265,4 +267,4 @@ scenarios:
|
|
|
265
267
|
|
|
266
268
|
# Optional: fail CI if score falls below threshold
|
|
267
269
|
# threshold: 80
|
|
268
|
-
`;async function
|
|
270
|
+
`;async function oZ($){let X=`${LV.resolve($)}/pickled.yml`;if(await Bun.file(X).exists())console.error(R.red("pickled.yml already exists")),process.exit(1);await Bun.write(X,DV),console.log(R.green("Created pickled.yml")),console.log(),console.log(R.dim("Next steps:")),console.log(R.dim(" 1. Edit pickled.yml: list your sources and scenarios")),console.log(R.dim(" 2. Run: pickled check")),console.log()}t0.name("pickled").description("Test what agents actually understand about your product").version(f5.version);t0.command("init").description("Create a pickled.yml config file").argument("[path]","Path to your project (default: current directory)",".").action(oZ);t0.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 L4("--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 L4("--fail-on <level>","Exit non-zero on this severity or higher").choices(["error","warning"]).default("error")).action(sZ);t0.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(rZ);await t0.parseAsync();
|