@pickled-dev/cli 0.19.0 → 0.20.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 +41 -236
- package/dist/index.js +105 -105
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,106 +1,106 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
2
|
// @bun
|
|
3
|
-
var
|
|
3
|
+
var UX=Object.create;var{getPrototypeOf:WX,defineProperty:w5,getOwnPropertyNames:VX}=Object;var KX=Object.prototype.hasOwnProperty;function BX($){return this[$]}var LX,TX,P5=($,Z,X)=>{var z=$!=null&&typeof $==="object";if(z){var q=Z?LX??=new WeakMap:TX??=new WeakMap,G=q.get($);if(G)return G}X=$!=null?UX(WX($)):{};let J=Z||!$||!$.__esModule?w5(X,"default",{value:$,enumerable:!0}):X;for(let Q of VX($))if(!KX.call(J,Q))w5(J,Q,{get:BX.bind($,Q),enumerable:!0});if(z)q.set($,J);return J};var F=($,Z)=>()=>(Z||$((Z={exports:{}}).exports,Z),Z.exports);var L0=import.meta.require;var f$=F((DX)=>{class K4 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 I5 extends K4{constructor($){super(1,"commander.invalidArgument",$);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}DX.CommanderError=K4;DX.InvalidArgumentError=I5});var C1=F((wX)=>{var{InvalidArgumentError:MX}=f$();class R5{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 MX(`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 OX($){let Z=$.name()+($.variadic===!0?"...":"");return $.required?"<"+Z+">":"["+Z+"]"}wX.Argument=R5;wX.humanReadableArgName=OX});var B4=F((AX)=>{var{humanReadableArgName:RX}=C1();class A5{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)=>RX(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,U){return Z.formatItem(W,X,U,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,U)=>{let V=W.map((B)=>{return q(Z.styleOptionTerm(Z.optionTerm(B)),Z.styleOptionDescription(Z.optionDescription(B)))});G=G.concat(this.formatItemList(U,V,Z))}),Z.showGlobalOptions){let W=Z.visibleGlobalOptions($).map((U)=>{return q(Z.styleOptionTerm(Z.optionTerm(U)),Z.styleOptionDescription(Z.optionDescription(U)))});G=G.concat(this.formatItemList("Global Options:",W,Z))}return this.groupItems($.commands,Z.visibleCommands($),(W)=>W.helpGroup()||"Commands:").forEach((W,U)=>{let V=W.map((B)=>{return q(Z.styleSubcommandTerm(Z.subcommandTerm(B)),Z.styleSubcommandDescription(Z.subcommandDescription(B)))});G=G.concat(this.formatItemList(U,V,Z))}),G.join(`
|
|
4
4
|
`)}displayWidth($){return j5($).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,H=(this.helpWidth??80)-Z-Q-2,W;if(H<this.minWidthToWrap||z.preformatted(X))W=X;else W=z.boxWrap(X,H).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((H)=>{let W=this.displayWidth(H);if(Y+W<=Z){Q.push(H),Y+=W;return}q.push(Q.join(""));let U=H.trimStart();Q=[U],Y=this.displayWidth(U)}),q.push(Q.join(""))}),q.join(`
|
|
7
|
-
`)}}function j5($){let Z=/\x1b\[\d*(;\d*)*m/g;return $.replace(Z,"")}
|
|
7
|
+
`)}}function j5($){let Z=/\x1b\[\d*(;\d*)*m/g;return $.replace(Z,"")}AX.Help=A5;AX.stripColor=j5});var L4=F((EX)=>{var{InvalidArgumentError:SX}=f$();class S5{constructor($,Z){this.flags=$,this.description=Z||"",this.required=$.includes("<"),this.optional=$.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test($),this.mandatory=!1;let X=CX($);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 SX(`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 N5(this.name().replace(/^no-/,""));return N5(this.name())}helpGroup($){return this.helpGroupHeading=$,this}is($){return this.short===$||this.long===$}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class C5{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 N5($){return $.split("-").reduce((Z,X)=>{return Z+X[0].toUpperCase()+X.slice(1)})}function CX($){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}}EX.Option=S5;EX.DualOptions=C5});var E5=F((fX)=>{function xX($,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 kX($,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=xX($,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
|
|
15
|
+
(Did you mean ${z[0]}?)`;return""}fX.suggestSimilar=kX});var k5=F((lX)=>{var gX=L0("events").EventEmitter,T4=L0("child_process"),T0=L0("path"),E1=L0("fs"),b=L0("process"),{Argument:vX,humanReadableArgName:uX}=C1(),{CommanderError:D4}=f$(),{Help:mX,stripColor:dX}=B4(),{Option:b5,DualOptions:pX}=L4(),{suggestSimilar:y5}=E5();class F4 extends gX{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:()=>_4()??(b.stdout.isTTY&&b.stdout.hasColors?.()),getErrHasColors:()=>_4()??(b.stderr.isTTY&&b.stderr.hasColors?.()),stripColor:(Z)=>dX(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 F4($)}createHelp(){return Object.assign(new mX,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 vX($,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
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 D4($,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 b5($,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
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 b5)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 H=J.exec(Q);return H?H[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(
|
|
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(E1.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(H,W){let U=T0.resolve(H,W);if(
|
|
22
|
+
- ${z}`;throw Error(q)}_executeSubCommand($,Z){Z=Z.slice();let X=!1,z=[".js",".ts",".tsx",".mjs",".cjs"];function q(H,W){let U=T0.resolve(H,W);if(E1.existsSync(U))return U;if(z.includes(T0.extname(W)))return;let V=z.find((B)=>E1.existsSync(`${U}${B}`));if(V)return`${U}${V}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let G=$._executableFile||`${this._name}-${$._name}`,J=this._executableDir||"";if(this._scriptPath){let H;try{H=E1.realpathSync(this._scriptPath)}catch{H=this._scriptPath}J=T0.resolve(T0.dirname(H),J)}if(J){let H=q(J,G);if(!H&&!$._executableFile&&this._scriptPath){let W=T0.basename(this._scriptPath,T0.extname(this._scriptPath));if(W!==this._name)H=q(J,`${W}-${$._name}`)}G=H||G}X=z.includes(T0.extname(G));let Q;if(b.platform!=="win32")if(X)Z.unshift(G),Z=x5(b.execArgv).concat(Z),Q=T4.spawn(b.argv[0],Z,{stdio:"inherit"});else Q=T4.spawn(G,Z,{stdio:"inherit"});else this._checkForMissingExecutable(G,J,$._name),Z.unshift(G),Z=x5(b.execArgv).concat(Z),Q=T4.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",(H)=>{if(H=H??1,!Y)b.exit(H);else Y(new D4(H,"commander.executeSubCommandAsync","(close)"))}),Q.on("error",(H)=>{if(H.code==="ENOENT")this._checkForMissingExecutable(G,J,$._name);else if(H.code==="EACCES")throw Error(`'${G}' not executable`);if(!Y)b.exit(1);else{let W=new D4(1,"commander.executeSubCommandAsync","(error)");W.nestedError=H,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(H){return H.length>1&&H[0]==="-"}let G=(H)=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(H))return!1;return!this._getCommandAndAncestors().some((W)=>W.options.map((U)=>U.short).some((U)=>/^-\d$/.test(U)))},J=null,Q=null,Y=0;while(Y<$.length||Q){let H=Q??$[Y++];if(Q=null,H==="--"){if(z===X)z.push(H);z.push(...$.slice(Y));break}if(J&&(!q(H)||G(H))){this.emit(`option:${J.name()}`,H);continue}if(J=null,q(H)){let W=this._findOption(H);if(W){if(W.required){let U=$[Y++];if(U===void 0)this.optionMissingArgument(W);this.emit(`option:${W.name()}`,U)}else if(W.optional){let U=null;if(Y<$.length&&(!q($[Y])||G($[Y])))U=$[Y++];this.emit(`option:${W.name()}`,U)}else this.emit(`option:${W.name()}`);J=W.variadic?W:null;continue}}if(H.length>2&&H[0]==="-"&&H[1]!=="-"){let W=this._findOption(`-${H[1]}`);if(W){if(W.required||W.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${W.name()}`,H.slice(2));else this.emit(`option:${W.name()}`),Q=`-${H.slice(2)}`;continue}}if(/^--[^=]+=/.test(H)){let W=H.indexOf("="),U=this._findOption(H.slice(0,W));if(U&&(U.required||U.optional)){this.emit(`option:${U.name()}`,H.slice(W+1));continue}}if(z===Z&&q(H)&&!(this.commands.length===0&&G(H)))z=X;if((this._enablePositionalOptions||this._passThroughOptions)&&Z.length===0&&X.length===0){if(this._findCommand(H)){Z.push(H),X.push(...$.slice(Y));break}else if(this._getHelpCommand()&&H===this._getHelpCommand().name()){Z.push(H,...$.slice(Y));break}else if(this._defaultCommandName){X.push(H,...$.slice(Y));break}}if(this._passThroughOptions){z.push(H,...$.slice(Y));break}z.push(H)}return{operands:Z,unknown:X}}opts(){if(this._storeOptionsAsProperties){let $={},Z=this.options.length;for(let X=0;X<Z;X++){let z=this.options[X].attributeName();$[z]=z===this._versionOptionName?this._version:this[z]}return $}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(($,Z)=>Object.assign($,Z.opts()),{})}error($,Z){if(this._outputConfiguration.outputError(`${$}
|
|
23
23
|
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
|
|
24
24
|
`);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
|
|
25
|
-
`),this.outputHelp({error:!0});let X=Z||{},z=X.exitCode||1,q=X.code||"commander.error";this._exit(z,q,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in b.env){let Z=$.attributeName();if(this.getOptionValue(Z)===void 0||["default","config","env"].includes(this.getOptionValueSource(Z)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,b.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new
|
|
26
|
-
`),this._exit(0,"commander.version",$)}),this}description($,Z){if($===void 0&&Z===void 0)return this._description;if(this._description=$,Z)this._argsDescription=Z;return this}summary($){if($===void 0)return this._summary;return this._summary=$,this}alias($){if($===void 0)return this._aliases[0];let Z=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)Z=this.commands[this.commands.length-1];if($===Z._name)throw Error("Command alias can't be the same as its name");let X=this.parent?._findCommand($);if(X){let z=[X.name()].concat(X.aliases()).join("|");throw Error(`cannot add alias '${$}' to command '${this.name()}' as already have command '${z}'`)}return Z._aliases.push($),this}aliases($){if($===void 0)return this._aliases;return $.forEach((Z)=>this.alias(Z)),this}usage($){if($===void 0){if(this._usage)return this._usage;let Z=this.registeredArguments.map((X)=>{return
|
|
25
|
+
`),this.outputHelp({error:!0});let X=Z||{},z=X.exitCode||1,q=X.code||"commander.error";this._exit(z,q,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in b.env){let Z=$.attributeName();if(this.getOptionValue(Z)===void 0||["default","config","env"].includes(this.getOptionValueSource(Z)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,b.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new pX(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()),H=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 H||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=y5($,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=y5($,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 uX(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 x5($){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 _4(){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}
|
|
29
|
-
`)}}Z0.defaultYaml={explicit:!1,version:"1.2"};Z0.defaultTags={"!!":"tag:yaml.org,2002:"};
|
|
28
|
+
`)}),this}_outputHelpIfRequested($){let Z=this._getHelpOption();if(Z&&$.find((z)=>Z.is(z)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function x5($){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 _4(){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}lX.Command=F4;lX.useColor=_4});var v5=F((sX)=>{var{Argument:f5}=C1(),{Command:M4}=k5(),{CommanderError:aX,InvalidArgumentError:h5}=f$(),{Help:nX}=B4(),{Option:g5}=L4();sX.program=new M4;sX.createCommand=($)=>new M4($);sX.createOption=($,Z)=>new g5($,Z);sX.createArgument=($,Z)=>new f5($,Z);sX.Command=M4;sX.Option=g5;sX.Argument=f5;sX.Help=nX;sX.CommanderError=aX;sX.InvalidArgumentError=h5;sX.InvalidOptionArgumentError=h5});var E=F((Lz)=>{var I4=Symbol.for("yaml.alias"),d5=Symbol.for("yaml.document"),b1=Symbol.for("yaml.map"),p5=Symbol.for("yaml.pair"),R4=Symbol.for("yaml.scalar"),y1=Symbol.for("yaml.seq"),D0=Symbol.for("yaml.node.type"),Yz=($)=>!!$&&typeof $==="object"&&$[D0]===I4,Hz=($)=>!!$&&typeof $==="object"&&$[D0]===d5,Uz=($)=>!!$&&typeof $==="object"&&$[D0]===b1,Wz=($)=>!!$&&typeof $==="object"&&$[D0]===p5,l5=($)=>!!$&&typeof $==="object"&&$[D0]===R4,Vz=($)=>!!$&&typeof $==="object"&&$[D0]===y1;function c5($){if($&&typeof $==="object")switch($[D0]){case b1:case y1:return!0}return!1}function Kz($){if($&&typeof $==="object")switch($[D0]){case I4:case b1:case R4:case y1:return!0}return!1}var Bz=($)=>(l5($)||c5($))&&!!$.anchor;Lz.ALIAS=I4;Lz.DOC=d5;Lz.MAP=b1;Lz.NODE_TYPE=D0;Lz.PAIR=p5;Lz.SCALAR=R4;Lz.SEQ=y1;Lz.hasAnchor=Bz;Lz.isAlias=Yz;Lz.isCollection=c5;Lz.isDocument=Hz;Lz.isMap=Uz;Lz.isNode=Kz;Lz.isPair=Wz;Lz.isScalar=l5;Lz.isSeq=Vz});var h$=F((bz)=>{var v=E(),r=Symbol("break visit"),i5=Symbol("skip children"),W0=Symbol("remove node");function x1($,Z){let X=a5(Z);if(v.isDocument($)){if(z$(null,$.contents,X,Object.freeze([$]))===W0)$.contents=null}else z$(null,$,X,Object.freeze([]))}x1.BREAK=r;x1.SKIP=i5;x1.REMOVE=W0;function z$($,Z,X,z){let q=n5($,Z,X,z);if(v.isNode(q)||v.isPair(q))return s5($,z,q),z$($,q,X,z);if(typeof q!=="symbol"){if(v.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let G=0;G<Z.items.length;++G){let J=z$(G,Z.items[G],X,z);if(typeof J==="number")G=J-1;else if(J===r)return r;else if(J===W0)Z.items.splice(G,1),G-=1}}else if(v.isPair(Z)){z=Object.freeze(z.concat(Z));let G=z$("key",Z.key,X,z);if(G===r)return r;else if(G===W0)Z.key=null;let J=z$("value",Z.value,X,z);if(J===r)return r;else if(J===W0)Z.value=null}}return q}async function k1($,Z){let X=a5(Z);if(v.isDocument($)){if(await q$(null,$.contents,X,Object.freeze([$]))===W0)$.contents=null}else await q$(null,$,X,Object.freeze([]))}k1.BREAK=r;k1.SKIP=i5;k1.REMOVE=W0;async function q$($,Z,X,z){let q=await n5($,Z,X,z);if(v.isNode(q)||v.isPair(q))return s5($,z,q),q$($,q,X,z);if(typeof q!=="symbol"){if(v.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let G=0;G<Z.items.length;++G){let J=await q$(G,Z.items[G],X,z);if(typeof J==="number")G=J-1;else if(J===r)return r;else if(J===W0)Z.items.splice(G,1),G-=1}}else if(v.isPair(Z)){z=Object.freeze(z.concat(Z));let G=await q$("key",Z.key,X,z);if(G===r)return r;else if(G===W0)Z.key=null;let J=await q$("value",Z.value,X,z);if(J===r)return r;else if(J===W0)Z.value=null}}return q}function a5($){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 n5($,Z,X,z){if(typeof X==="function")return X($,Z,z);if(v.isMap(Z))return X.Map?.($,Z,z);if(v.isSeq(Z))return X.Seq?.($,Z,z);if(v.isPair(Z))return X.Pair?.($,Z,z);if(v.isScalar(Z))return X.Scalar?.($,Z,z);if(v.isAlias(Z))return X.Alias?.($,Z,z);return}function s5($,Z,X){let z=Z[Z.length-1];if(v.isCollection(z))z.items[$]=X;else if(v.isPair(z))if($==="key")z.key=X;else z.value=X;else if(v.isDocument(z))z.contents=X;else{let q=v.isAlias(z)?"alias":"scalar";throw Error(`Cannot replace node with ${q} parent`)}}bz.visit=x1;bz.visitAsync=k1});var A4=F((gz)=>{var r5=E(),kz=h$(),fz={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},hz=($)=>$.replace(/[!,[\]{}]/g,(Z)=>fz[Z]);class Z0{constructor($,Z){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Z0.defaultYaml,$),this.tags=Object.assign({},Z0.defaultTags,Z)}clone(){let $=new Z0(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new Z0(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Z0.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Z0.defaultTags);break}return $}add($,Z){if(this.atNextDocument)this.yaml={explicit:Z0.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Z0.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+hz($.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&&r5.isNode($.contents)){let q={};kz.visit($.contents,(G,J)=>{if(r5.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
|
+
`)}}Z0.defaultYaml={explicit:!1,version:"1.2"};Z0.defaultTags={"!!":"tag:yaml.org,2002:"};gz.Directives=Z0});var f1=F((pz)=>{var o5=E(),uz=h$();function mz($){if(/[\x00-\x19\s,[\]{}]/.test($)){let X=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(X)}return!0}function t5($){let Z=new Set;return uz.visit($,{Value(X,z){if(z.anchor)Z.add(z.anchor)}}),Z}function e5($,Z){for(let X=1;;++X){let z=`${$}${X}`;if(!Z.has(z))return z}}function dz($,Z){let X=[],z=new Map,q=null;return{onAnchor:(G)=>{X.push(G),q??(q=t5($));let J=e5(Z,q);return q.add(J),J},setAnchors:()=>{for(let G of X){let J=z.get(G);if(typeof J==="object"&&J.anchor&&(o5.isScalar(J.node)||o5.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}}pz.anchorIsValid=mz;pz.anchorNames=t5;pz.createNodeAnchors=dz;pz.findNewAnchor=e5});var j4=F((nz)=>{function g$($,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=g$($,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=g$($,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=g$($,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=g$($,z,q,G);if(J===void 0)delete z[q];else if(J!==G)z[q]=J}return $.call(Z,X,z)}nz.applyReviver=g$});var R0=F((oz)=>{var rz=E();function $6($,Z,X){if(Array.isArray($))return $.map((z,q)=>$6(z,String(q),X));if($&&typeof $.toJSON==="function"){if(!X||!rz.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 $}oz.toJS=$6});var h1=F((Z3)=>{var ez=j4(),Z6=E(),$3=R0();class X6{constructor($){Object.defineProperty(this,Z6.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(!Z6.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=$3.toJS(this,"",G);if(typeof z==="function")for(let{count:Q,res:Y}of G.anchors.values())z(Y,Q);return typeof q==="function"?ez.applyReviver(q,{"":J},"",J):J}}Z3.NodeBase=X6});var v$=F((Q3)=>{var z3=f1(),q3=h$(),G$=E(),G3=h1(),J3=R0();class z6 extends G3.NodeBase{constructor($){super(G$.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=[],q3.visit($,{Node:(q,G)=>{if(G$.isAlias(G)||G$.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)J3.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=g1(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(z3.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 g1($,Z,X){if(G$.isAlias(Z)){let z=Z.resolve($),q=X&&z&&X.get(z);return q?q.count*q.aliasCount:0}else if(G$.isCollection(Z)){let z=0;for(let q of Z.items){let G=g1($,q,X);if(G>z)z=G}return z}else if(G$.isPair(Z)){let z=g1($,Z.key,X),q=g1($,Z.value,X);return Math.max(z,q)}return 1}Q3.Alias=z6});var g=F((K3)=>{var H3=E(),U3=h1(),W3=R0(),V3=($)=>!$||typeof $!=="function"&&typeof $!=="object";class d0 extends U3.NodeBase{constructor($){super(H3.SCALAR);this.value=$}toJSON($,Z){return Z?.keep?this.value:W3.toJS(this.value,$,Z)}toString(){return String(this.value)}}d0.BLOCK_FOLDED="BLOCK_FOLDED";d0.BLOCK_LITERAL="BLOCK_LITERAL";d0.PLAIN="PLAIN";d0.QUOTE_DOUBLE="QUOTE_DOUBLE";d0.QUOTE_SINGLE="QUOTE_SINGLE";K3.Scalar=d0;K3.isScalarValue=V3});var u$=F((M3)=>{var T3=v$(),p0=E(),q6=g(),D3="tag:yaml.org,2002:";function _3($,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 F3($,Z,X){if(p0.isDocument($))$=$.contents;if(p0.isNode($))return $;if(p0.isPair($)){let U=X.schema[p0.MAP].createNode?.(X.schema,null,X);return U.items.push($),U}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 T3.Alias(Y.anchor);else Y={anchor:null,node:null},Q.set($,Y);if(Z?.startsWith("!!"))Z=D3+Z.slice(2);let H=_3($,Z,J.tags);if(!H){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let U=new q6.Scalar($);if(Y)Y.node=U;return U}H=$ instanceof Map?J[p0.MAP]:(Symbol.iterator in Object($))?J[p0.SEQ]:J[p0.MAP]}if(G)G(H),delete X.onTagObj;let W=H?.createNode?H.createNode(X.schema,$,X):typeof H?.nodeClass?.from==="function"?H.nodeClass.from(X.schema,$,X):new q6.Scalar($);if(Z)W.tag=Z;else if(!H.default)W.tag=H.tag;if(Y)Y.node=W;return W}M3.createNode=F3});var v1=F((I3)=>{var w3=u$(),V0=E(),P3=h1();function N4($,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 w3.createNode(z,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var G6=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class J6 extends P3.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)=>V0.isNode(X)||V0.isPair(X)?X.clone($):X),this.range)Z.range=this.range.slice();return Z}addIn($,Z){if(G6($))this.add(Z);else{let[X,...z]=$,q=this.get(X,!0);if(V0.isCollection(q))q.addIn(z,Z);else if(q===void 0&&this.schema)this.set(X,N4(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(V0.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&&V0.isScalar(q)?q.value:q;else return V0.isCollection(q)?q.getIn(z,Z):void 0}hasAllNullValues($){return this.items.every((Z)=>{if(!V0.isPair(Z))return!1;let X=Z.value;return X==null||$&&V0.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 V0.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(V0.isCollection(q))q.setIn(z,Z);else if(q===void 0&&this.schema)this.set(X,N4(this.schema,z,Z));else throw Error(`Expected YAML collection at ${X}. Remaining path: ${z}`)}}}I3.Collection=J6;I3.collectionFromPath=N4;I3.isEmptyPath=G6});var m$=F((C3)=>{var N3=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function S4($,Z){if(/^\n+$/.test($))return $.substring(1);return Z?$.replace(/^(?! *$)/gm,Z):$}var S3=($,Z,X)=>$.endsWith(`
|
|
30
30
|
`)?S4(X,Z):X.includes(`
|
|
31
31
|
`)?`
|
|
32
|
-
`+S4(X,Z):($.endsWith(" ")?"":" ")+X;
|
|
33
|
-
`){if(X==="block")K=
|
|
32
|
+
`+S4(X,Z):($.endsWith(" ")?"":" ")+X;C3.indentComment=S4;C3.lineComment=S3;C3.stringifyComment=N3});var Y6=F((k3)=>{function x3($,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 H=[],W={},U=q-Z.length;if(typeof z==="number")if(z>q-Math.max(2,G))H.push(0);else U=q-z;let V=void 0,B=void 0,T=!1,K=-1,L=-1,D=-1;if(X==="block"){if(K=Q6($,K,Z.length),K!==-1)U=K+Y}for(let O;O=$[K+=1];){if(X==="quoted"&&O==="\\"){switch(L=K,$[K+1]){case"x":K+=3;break;case"u":K+=5;break;case"U":K+=9;break;default:K+=1}D=K}if(O===`
|
|
33
|
+
`){if(X==="block")K=Q6($,K,Z.length);U=K+Z.length+Y,V=void 0}else{if(O===" "&&B&&B!==" "&&B!==`
|
|
34
34
|
`&&B!=="\t"){let w=$[K+1];if(w&&w!==" "&&w!==`
|
|
35
|
-
`&&w!=="\t")V=K}if(K>=U)if(V)H.push(V),U=V+Y,V=void 0;else if(X==="quoted"){while(B===" "||B==="\t")B=O,O=$[K+=1],
|
|
35
|
+
`&&w!=="\t")V=K}if(K>=U)if(V)H.push(V),U=V+Y,V=void 0;else if(X==="quoted"){while(B===" "||B==="\t")B=O,O=$[K+=1],T=!0;let w=K>D+1?K-2:L-1;if(W[w])return $;H.push(w),W[w]=!0,U=w+Y,V=void 0}else T=!0}B=O}if(T&&Q)Q();if(H.length===0)return $;if(J)J();let _=$.slice(0,H[0]);for(let O=0;O<H.length;++O){let w=H[O],R=H[O+1]||$.length;if(w===0)_=`
|
|
36
36
|
${Z}${$.slice(0,R)}`;else{if(X==="quoted"&&W[w])_+=`${$[w]}\\`;_+=`
|
|
37
|
-
${Z}${$.slice(w+1,R)}`}}return _}function
|
|
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 d$($,Z){let X=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return X;let{implicitKey:z}=Z,q=Z.options.doubleQuotedMinMultiLineLength,G=Z.indent||(
|
|
37
|
+
${Z}${$.slice(w+1,R)}`}}return _}function Q6($,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}k3.FOLD_BLOCK="block";k3.FOLD_FLOW="flow";k3.FOLD_QUOTED="quoted";k3.foldFlowLines=x3});var p$=F((p3)=>{var Q0=g(),A0=Y6(),m1=($,Z)=>({indentAtStart:Z?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),d1=($)=>/^(%|---|\.\.\.)/m.test($);function u3($,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 d$($,Z){let X=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return X;let{implicitKey:z}=Z,q=Z.options.doubleQuotedMinMultiLineLength,G=Z.indent||(d1($)?" ":""),J="",Q=0;for(let Y=0,H=X[Y];H;H=X[++Y]){if(H===" "&&X[Y+1]==="\\"&&X[Y+2]==="n")J+=X.slice(Q,Y)+"\\ ",Y+=1,Q=Y,H="\\";if(H==="\\")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:A0.foldFlowLines(J,G,A0.FOLD_QUOTED,
|
|
43
|
-
`)||/[ \t]\n|\n[ \t]/.test($))return d$($,Z);let X=Z.indent||(
|
|
44
|
-
${X}`)+"'";return Z.implicitKey?z:A0.foldFlowLines(z,X,A0.FOLD_FLOW,
|
|
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:A0.foldFlowLines(J,G,A0.FOLD_QUOTED,m1(Z,!1))}function C4($,Z){if(Z.options.singleQuote===!1||Z.implicitKey&&$.includes(`
|
|
43
|
+
`)||/[ \t]\n|\n[ \t]/.test($))return d$($,Z);let X=Z.indent||(d1($)?" ":""),z="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
44
|
+
${X}`)+"'";return Z.implicitKey?z:A0.foldFlowLines(z,X,A0.FOLD_FLOW,m1(Z,!1))}function J$($,Z){let{singleQuote:X}=Z.options,z;if(X===!1)z=d$;else{let q=$.includes('"'),G=$.includes("'");if(q&&!G)z=C4;else if(G&&!q)z=d$;else z=X?C4:d$}return z($,Z)}var E4;try{E4=new RegExp(`(^|(?<!
|
|
45
45
|
))
|
|
46
46
|
+(?!
|
|
47
|
-
|$)`,"g")}catch{E4=/\n+(?!\n|$)/g}function
|
|
47
|
+
|$)`,"g")}catch{E4=/\n+(?!\n|$)/g}function u1({comment:$,type:Z,value:X},z,q,G){let{blockQuote:J,commentString:Q,lineWidth:Y}=z.options;if(!J||/\n[\t ]+$/.test(X))return J$(X,z);let H=z.indent||(z.forceBlockIndent||d1(X)?" ":""),W=J==="literal"?!0:J==="folded"||Z===Q0.Scalar.BLOCK_FOLDED?!1:Z===Q0.Scalar.BLOCK_LITERAL?!0:!u3(X,Y,H.length);if(!X)return W?`|
|
|
48
48
|
`:`>
|
|
49
49
|
`;let U,V;for(V=X.length;V>0;--V){let R=X[V-1];if(R!==`
|
|
50
|
-
`&&R!=="\t"&&R!==" ")break}let B=X.substring(V),
|
|
51
|
-
`);if(
|
|
52
|
-
`)B=B.slice(0,-1);B=B.replace(E4,`$&${H}`)}let K=!1,
|
|
53
|
-
`)D=
|
|
54
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${H}`),I=!1,C=
|
|
50
|
+
`&&R!=="\t"&&R!==" ")break}let B=X.substring(V),T=B.indexOf(`
|
|
51
|
+
`);if(T===-1)U="-";else if(X===B||T!==B.length-1){if(U="+",G)G()}else U="";if(B){if(X=X.slice(0,-B.length),B[B.length-1]===`
|
|
52
|
+
`)B=B.slice(0,-1);B=B.replace(E4,`$&${H}`)}let K=!1,L,D=-1;for(L=0;L<X.length;++L){let R=X[L];if(R===" ")K=!0;else if(R===`
|
|
53
|
+
`)D=L;else break}let _=X.substring(0,D<L?D+1:L);if(_)X=X.substring(_.length),_=_.replace(/\n+/g,`$&${H}`);let w=(K?H?"2":"1":"")+U;if($){if(w+=" "+Q($.replace(/ ?[\r\n]+/g," ")),q)q()}if(!W){let R=X.replace(/\n+/g,`
|
|
54
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${H}`),I=!1,C=m1(z,!0);if(J!=="folded"&&Z!==Q0.Scalar.BLOCK_FOLDED)C.onOverflow=()=>{I=!0};let M=A0.foldFlowLines(`${_}${R}${B}`,H,A0.FOLD_BLOCK,C);if(!I)return`>${w}
|
|
55
55
|
${H}${M}`}return X=X.replace(/\n+/g,`$&${H}`),`|${w}
|
|
56
|
-
${H}${_}${X}${B}`}function
|
|
57
|
-
`)||W&&/[[\]{},]/.test(G))return
|
|
58
|
-
`)?
|
|
59
|
-
`))return
|
|
60
|
-
${Y}`);if(J){let V=(K)=>K.default&&K.tag!=="tag:yaml.org,2002:str"&&K.test?.test(U),{compat:B,tags:
|
|
61
|
-
${Z.indent}${Q}`}
|
|
62
|
-
${Q}:`}else if(
|
|
56
|
+
${H}${_}${X}${B}`}function m3($,Z,X,z){let{type:q,value:G}=$,{actualString:J,implicitKey:Q,indent:Y,indentStep:H,inFlow:W}=Z;if(Q&&G.includes(`
|
|
57
|
+
`)||W&&/[[\]{},]/.test(G))return J$(G,Z);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(G))return Q||W||!G.includes(`
|
|
58
|
+
`)?J$(G,Z):u1($,Z,X,z);if(!Q&&!W&&q!==Q0.Scalar.PLAIN&&G.includes(`
|
|
59
|
+
`))return u1($,Z,X,z);if(d1(G)){if(Y==="")return Z.forceBlockIndent=!0,u1($,Z,X,z);else if(Q&&Y===H)return J$(G,Z)}let U=G.replace(/\n+/g,`$&
|
|
60
|
+
${Y}`);if(J){let V=(K)=>K.default&&K.tag!=="tag:yaml.org,2002:str"&&K.test?.test(U),{compat:B,tags:T}=Z.doc.schema;if(T.some(V)||B?.some(V))return J$(G,Z)}return Q?U:A0.foldFlowLines(U,Y,A0.FOLD_FLOW,m1(Z,!1))}function d3($,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?J$(J.value,Z):u1(J,Z,X,z);case Q0.Scalar.QUOTE_DOUBLE:return d$(J.value,Z);case Q0.Scalar.QUOTE_SINGLE:return C4(J.value,Z);case Q0.Scalar.PLAIN:return m3(J,Z,X,z);default:return null}},H=Y(Q);if(H===null){let{defaultKeyType:W,defaultStringType:U}=Z.options,V=q&&W||U;if(H=Y(V),H===null)throw Error(`Unsupported default string type ${V}`)}return H}p3.stringifyString=d3});var l$=F((t3)=>{var c3=f1(),j0=E(),i3=m$(),a3=p$();function n3($,Z){let X=Object.assign({blockQuote:!0,commentString:i3.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 s3($,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(j0.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 r3($,Z,{anchors:X,doc:z}){if(!z.directives)return"";let q=[],G=(j0.isScalar($)||j0.isCollection($))&&$.anchor;if(G&&c3.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 o3($,Z,X,z){if(j0.isPair($))return $.toString(Z,X,z);if(j0.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=j0.isNode($)?$:Z.doc.createNode($,{onTagObj:(Y)=>q=Y});q??(q=s3(Z.doc.schema.tags,G));let J=r3(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):j0.isScalar(G)?a3.stringifyString(G,Z,X,z):G.toString(Z,X,z);if(!J)return Q;return j0.isScalar(G)||Q[0]==="{"||Q[0]==="["?`${J} ${Q}`:`${J}
|
|
61
|
+
${Z.indent}${Q}`}t3.createStringifyContext=n3;t3.stringify=o3});var W6=F((X7)=>{var _0=E(),H6=g(),U6=l$(),c$=m$();function Z7({key:$,value:Z},X,z,q){let{allNullValues:G,doc:J,indent:Q,indentStep:Y,options:{commentString:H,indentSeq:W,simpleKeys:U}}=X,V=_0.isNode($)&&$.comment||null;if(U){if(V)throw Error("With simple keys, key nodes cannot have comments");if(_0.isCollection($)||!_0.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let B=!U&&(!$||V&&Z==null&&!X.inFlow||_0.isCollection($)||(_0.isScalar($)?$.type===H6.Scalar.BLOCK_FOLDED||$.type===H6.Scalar.BLOCK_LITERAL:typeof $==="object"));X=Object.assign({},X,{allNullValues:!1,implicitKey:!B&&(U||!G),indent:Q+Y});let T=!1,K=!1,L=U6.stringify($,X,()=>T=!0,()=>K=!0);if(!B&&!X.inFlow&&L.length>1024){if(U)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(T&&z)z();return L===""?"?":B?`? ${L}`:L}}else if(G&&!U||Z==null&&B){if(L=`? ${L}`,V&&!T)L+=c$.lineComment(L,X.indent,H(V));else if(K&&q)q();return L}if(T)V=null;if(B){if(V)L+=c$.lineComment(L,X.indent,H(V));L=`? ${L}
|
|
62
|
+
${Q}:`}else if(L=`${L}:`,V)L+=c$.lineComment(L,X.indent,H(V));let D,_,O;if(_0.isNode(Z))D=!!Z.spaceBefore,_=Z.commentBefore,O=Z.comment;else if(D=!1,_=null,O=null,Z&&typeof Z==="object")Z=J.createNode(Z);if(X.implicitKey=!1,!B&&!V&&_0.isScalar(Z))X.indentAtStart=L.length+1;if(K=!1,!W&&Y.length>=2&&!X.inFlow&&!B&&_0.isSeq(Z)&&!Z.flow&&!Z.tag&&!Z.anchor)X.indent=X.indent.substring(2);let w=!1,R=U6.stringify(Z,X,()=>w=!0,()=>K=!0),I=" ";if(V||D||_){if(I=D?`
|
|
63
63
|
`:"",_){let C=H(_);I+=`
|
|
64
64
|
${c$.indentComment(C,X.indent)}`}if(R===""&&!X.inFlow){if(I===`
|
|
65
65
|
`&&O)I=`
|
|
66
66
|
|
|
67
67
|
`}else I+=`
|
|
68
|
-
${X.indent}`}else if(!B&&
|
|
68
|
+
${X.indent}`}else if(!B&&_0.isCollection(Z)){let C=R[0],M=R.indexOf(`
|
|
69
69
|
`),y=M!==-1,p=X.inFlow??Z.flow??Z.items.length===0;if(y||!p){let s=!1;if(y&&(C==="&"||C==="!")){let k=R.indexOf(" ");if(C==="&"&&k!==-1&&k<M&&R[k+1]==="!")k=R.indexOf(" ",k+1);if(k===-1||M<k)s=!0}if(!s)I=`
|
|
70
70
|
${X.indent}`}}else if(R===""||R[0]===`
|
|
71
|
-
`)I="";if(
|
|
71
|
+
`)I="";if(L+=I+R,X.inFlow){if(w&&z)z()}else if(O&&!w)L+=c$.lineComment(L,X.indent,H(O));else if(K&&q)q();return L}X7.stringifyPair=Z7});var b4=F((J7)=>{var V6=L0("process");function q7($,...Z){if($==="debug")console.log(...Z)}function G7($,Z){if($==="debug"||$==="warn")if(typeof V6.emitWarning==="function")V6.emitWarning(Z);else console.warn(Z)}J7.debug=q7;J7.warn=G7});var c1=F((U7)=>{var i$=E(),K6=g(),p1="<<",l1={identify:($)=>$===p1||typeof $==="symbol"&&$.description===p1,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new K6.Scalar(Symbol(p1)),{addToJSMap:B6}),stringify:()=>p1},H7=($,Z)=>(l1.identify(Z)||i$.isScalar(Z)&&(!Z.type||Z.type===K6.Scalar.PLAIN)&&l1.identify(Z.value))&&$?.doc.schema.tags.some((X)=>X.tag===l1.tag&&X.default);function B6($,Z,X){if(X=$&&i$.isAlias(X)?X.resolve($.doc):X,i$.isSeq(X))for(let z of X.items)y4($,Z,z);else if(Array.isArray(X))for(let z of X)y4($,Z,z);else y4($,Z,X)}function y4($,Z,X){let z=$&&i$.isAlias(X)?X.resolve($.doc):X;if(!i$.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}U7.addMergeToJSMap=B6;U7.isMergeKey=H7;U7.merge=l1});var k4=F((_7)=>{var B7=b4(),L6=c1(),L7=l$(),T6=E(),x4=R0();function T7($,Z,{key:X,value:z}){if(T6.isNode(X)&&X.addToJSMap)X.addToJSMap($,Z,z);else if(L6.isMergeKey($,X))L6.addMergeToJSMap($,Z,z);else{let q=x4.toJS(X,"",$);if(Z instanceof Map)Z.set(q,x4.toJS(z,q,$));else if(Z instanceof Set)Z.add(q);else{let G=D7(X,q,$),J=x4.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 D7($,Z,X){if(Z===null)return"";if(typeof Z!=="object")return String(Z);if(T6.isNode($)&&X?.doc){let z=L7.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)+'..."';B7.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)}_7.addPairToJSMap=T7});var N0=F((P7)=>{var D6=u$(),M7=W6(),O7=k4(),i1=E();function w7($,Z,X){let z=D6.createNode($,void 0,X),q=D6.createNode(Z,void 0,X);return new a1(z,q)}class a1{constructor($,Z=null){Object.defineProperty(this,i1.NODE_TYPE,{value:i1.PAIR}),this.key=$,this.value=Z}clone($){let{key:Z,value:X}=this;if(i1.isNode(Z))Z=Z.clone($);if(i1.isNode(X))X=X.clone($);return new a1(Z,X)}toJSON($,Z){let X=Z?.mapAsMap?new Map:{};return O7.addPairToJSMap(Z,X,this)}toString($,Z,X){return $?.doc?M7.stringifyPair(this,$,Z,X):JSON.stringify(this)}}P7.Pair=a1;P7.createPair=w7});var f4=F((S7)=>{var l0=E(),_6=l$(),n1=m$();function A7($,Z,X){return(Z.inFlow??$.flow?N7:j7)($,Z,X)}function j7({comment:$,items:Z},X,{blockItemPrefix:z,flowChars:q,itemIndent:G,onChompKeep:J,onComment:Q}){let{indent:Y,options:{commentString:H}}=X,W=Object.assign({},X,{indent:G,type:null}),U=!1,V=[];for(let T=0;T<Z.length;++T){let K=Z[T],L=null;if(l0.isNode(K)){if(!U&&K.spaceBefore)V.push("");if(s1(X,V,K.commentBefore,U),K.comment)L=K.comment}else if(l0.isPair(K)){let _=l0.isNode(K.key)?K.key:null;if(_){if(!U&&_.spaceBefore)V.push("");s1(X,V,_.commentBefore,U)}}U=!1;let D=_6.stringify(K,W,()=>L=null,()=>U=!0);if(L)D+=n1.lineComment(D,G,H(L));if(U&&L)U=!1;V.push(z+D)}let B;if(V.length===0)B=q.start+q.end;else{B=V[0];for(let T=1;T<V.length;++T){let K=V[T];B+=K?`
|
|
72
72
|
${Y}${K}`:`
|
|
73
73
|
`}}if($){if(B+=`
|
|
74
|
-
`+
|
|
75
|
-
`)))H=!0;U.push(D),W=U.length}let{start:V,end:B}=X;if(U.length===0)return V+B;else{if(!H){let
|
|
74
|
+
`+n1.indentComment(H($),Y),Q)Q()}else if(U&&J)J();return B}function N7({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}),H=!1,W=0,U=[];for(let T=0;T<$.length;++T){let K=$[T],L=null;if(l0.isNode(K)){if(K.spaceBefore)U.push("");if(s1(Z,U,K.commentBefore,!1),K.comment)L=K.comment}else if(l0.isPair(K)){let _=l0.isNode(K.key)?K.key:null;if(_){if(_.spaceBefore)U.push("");if(s1(Z,U,_.commentBefore,!1),_.comment)H=!0}let O=l0.isNode(K.value)?K.value:null;if(O){if(O.comment)L=O.comment;if(O.commentBefore)H=!0}else if(K.value==null&&_?.comment)L=_.comment}if(L)H=!0;let D=_6.stringify(K,Y,()=>L=null);if(T<$.length-1)D+=",";if(L)D+=n1.lineComment(D,z,Q(L));if(!H&&(U.length>W||D.includes(`
|
|
75
|
+
`)))H=!0;U.push(D),W=U.length}let{start:V,end:B}=X;if(U.length===0)return V+B;else{if(!H){let T=U.reduce((K,L)=>K+L.length+2,2);H=Z.options.lineWidth>0&&T>Z.options.lineWidth}if(H){let T=V;for(let K of U)T+=K?`
|
|
76
76
|
${G}${q}${K}`:`
|
|
77
|
-
`;return`${
|
|
78
|
-
${q}${B}`}else return`${V}${J}${U.join(" ")}${J}${B}`}}function
|
|
79
|
-
`:" ")}return
|
|
77
|
+
`;return`${T}
|
|
78
|
+
${q}${B}`}else return`${V}${J}${U.join(" ")}${J}${B}`}}function s1({indent:$,options:{commentString:Z}},X,z,q){if(z&&q)z=z.replace(/^\n+/,"");if(z){let G=n1.indentComment(Z(z),$);X.push(G.trimStart())}}S7.stringifyCollection=A7});var C0=F((k7)=>{var E7=f4(),b7=k4(),y7=v1(),S0=E(),r1=N0(),x7=g();function a$($,Z){let X=S0.isScalar(Z)?Z.value:Z;for(let z of $)if(S0.isPair(z)){if(z.key===Z||z.key===X)return z;if(S0.isScalar(z.key)&&z.key.value===X)return z}return}class F6 extends y7.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor($){super(S0.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(r1.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(S0.isPair($))X=$;else if(!$||typeof $!=="object"||!("key"in $))X=new r1.Pair($,$?.value);else X=new r1.Pair($.key,$.value);let z=a$(this.items,X.key),q=this.schema?.sortMapEntries;if(z){if(!Z)throw Error(`Key ${X.key} already set`);if(S0.isScalar(z.value)&&x7.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=a$(this.items,$);if(!Z)return!1;return this.items.splice(this.items.indexOf(Z),1).length>0}get($,Z){let z=a$(this.items,$)?.value;return(!Z&&S0.isScalar(z)?z.value:z)??void 0}has($){return!!a$(this.items,$)}set($,Z){this.add(new r1.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)b7.addPairToJSMap(Z,z,q);return z}toString($,Z,X){if(!$)return JSON.stringify(this);for(let z of this.items)if(!S0.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 E7.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:X,onComment:Z})}}k7.YAMLMap=F6;k7.findPair=a$});var Q$=F((u7)=>{var g7=E(),M6=C0(),v7={collection:"map",default:!0,nodeClass:M6.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,Z){if(!g7.isMap($))Z("Expected a mapping for this tag");return $},createNode:($,Z,X)=>M6.YAMLMap.from($,Z,X)};u7.map=v7});var E0=F((a7)=>{var d7=u$(),p7=f4(),l7=v1(),t1=E(),c7=g(),i7=R0();class O6 extends l7.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(t1.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let Z=o1($);if(typeof Z!=="number")return!1;return this.items.splice(Z,1).length>0}get($,Z){let X=o1($);if(typeof X!=="number")return;let z=this.items[X];return!Z&&t1.isScalar(z)?z.value:z}has($){let Z=o1($);return typeof Z==="number"&&Z<this.items.length}set($,Z){let X=o1($);if(typeof X!=="number")throw Error(`Expected a valid index, not ${$}.`);let z=this.items[X];if(t1.isScalar(z)&&c7.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(i7.toJS(q,String(z++),Z));return X}toString($,Z,X){if(!$)return JSON.stringify(this);return p7.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(d7.createNode(J,void 0,X))}}return q}}function o1($){let Z=t1.isScalar($)?$.value:$;if(Z&&typeof Z==="string")Z=Number(Z);return typeof Z==="number"&&Number.isInteger(Z)&&Z>=0?Z:null}a7.YAMLSeq=O6});var Y$=F((o7)=>{var s7=E(),w6=E0(),r7={collection:"seq",default:!0,nodeClass:w6.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,Z){if(!s7.isSeq($))Z("Expected a sequence for this tag");return $},createNode:($,Z,X)=>w6.YAMLSeq.from($,Z,X)};o7.seq=r7});var n$=F((Zq)=>{var e7=p$(),$q={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,Z,X,z){return Z=Object.assign({actualString:!0},Z),e7.stringifyString($,Z,X,z)}};Zq.string=$q});var e1=F((zq)=>{var P6=g(),I6={identify:($)=>$==null,createNode:()=>new P6.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new P6.Scalar(null),stringify:({source:$},Z)=>typeof $==="string"&&I6.test.test($)?$:Z.options.nullStr};zq.nullTag=I6});var h4=F((Jq)=>{var Gq=g(),R6={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new Gq.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:Z},X){if($&&R6.test.test($)){let z=$[0]==="t"||$[0]==="T";if(Z===z)return $}return Z?X.options.trueStr:X.options.falseStr}};Jq.boolTag=R6});var H$=F((Hq)=>{function Yq({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}Hq.stringifyNumber=Yq});var v4=F((Lq)=>{var Wq=g(),g4=H$(),Vq={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},Kq={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():g4.stringifyNumber($)}},Bq={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let Z=new Wq.Scalar(parseFloat($)),X=$.indexOf(".");if(X!==-1&&$[$.length-1]==="0")Z.minFractionDigits=$.length-X-1;return Z},stringify:g4.stringifyNumber};Lq.float=Bq;Lq.floatExp=Kq;Lq.floatNaN=Vq});var m4=F((wq)=>{var A6=H$(),$2=($)=>typeof $==="bigint"||Number.isInteger($),u4=($,Z,X,{intAsBigInt:z})=>z?BigInt($):parseInt($.substring(Z),X);function j6($,Z,X){let{value:z}=$;if($2(z)&&z>=0)return X+z.toString(Z);return A6.stringifyNumber($)}var Fq={identify:($)=>$2($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,Z,X)=>u4($,2,8,X),stringify:($)=>j6($,8,"0o")},Mq={identify:$2,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,Z,X)=>u4($,0,10,X),stringify:A6.stringifyNumber},Oq={identify:($)=>$2($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,Z,X)=>u4($,2,16,X),stringify:($)=>j6($,16,"0x")};wq.int=Mq;wq.intHex=Oq;wq.intOct=Fq});var N6=F((bq)=>{var Aq=Q$(),jq=e1(),Nq=Y$(),Sq=n$(),Cq=h4(),d4=v4(),p4=m4(),Eq=[Aq.map,Nq.seq,Sq.string,jq.nullTag,Cq.boolTag,p4.intOct,p4.int,p4.intHex,d4.floatNaN,d4.floatExp,d4.float];bq.schema=Eq});var C6=F((uq)=>{var xq=g(),kq=Q$(),fq=Y$();function S6($){return typeof $==="bigint"||Number.isInteger($)}var Z2=({value:$})=>JSON.stringify($),hq=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:Z2},{identify:($)=>$==null,createNode:()=>new xq.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Z2},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:Z2},{identify:S6,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,Z,{intAsBigInt:X})=>X?BigInt($):parseInt($,10),stringify:({value:$})=>S6($)?$.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:Z2}],gq={default:!0,tag:"",test:/^/,resolve($,Z){return Z(`Unresolved plain scalar ${JSON.stringify($)}`),$}},vq=[kq.map,fq.seq].concat(hq,gq);uq.schema=vq});var c4=F((lq)=>{var s$=L0("buffer"),l4=g(),dq=p$(),pq={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,Z){if(typeof s$.Buffer==="function")return s$.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 s$.Buffer==="function")Q=J instanceof s$.Buffer?J.toString("base64"):s$.Buffer.from(J.buffer).toString("base64");else if(typeof btoa==="function"){let Y="";for(let H=0;H<J.length;++H)Y+=String.fromCharCode(J[H]);Q=btoa(Y)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(Z??(Z=l4.Scalar.BLOCK_LITERAL),Z!==l4.Scalar.QUOTE_DOUBLE){let Y=Math.max(z.options.lineWidth-z.indent.length,z.options.minContentWidth),H=Math.ceil(Q.length/Y),W=Array(H);for(let U=0,V=0;U<H;++U,V+=Y)W[U]=Q.substr(V,Y);Q=W.join(Z===l4.Scalar.BLOCK_LITERAL?`
|
|
79
|
+
`:" ")}return dq.stringifyString({comment:$,type:Z,value:Q},z,q,G)}};lq.binary=pq});var z2=F((sq)=>{var X2=E(),i4=N0(),iq=g(),aq=E0();function E6($,Z){if(X2.isSeq($))for(let X=0;X<$.items.length;++X){let z=$.items[X];if(X2.isPair(z))continue;else if(X2.isMap(z)){if(z.items.length>1)Z("Each pair must have its own sequence indicator");let q=z.items[0]||new i4.Pair(new iq.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]=z2.isPair(z)?z:new i4.Pair(z)}else Z("Expected a sequence for this tag");return $}function b8($,Z,X){let{replacer:z}=X,q=new cq.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 H=Object.keys(J);if(H.length===1)Q=H[0],Y=J[Q];else throw TypeError(`Expected tuple with one key, not ${H.length} keys`)}else Q=J;q.items.push(i4.createPair(Q,Y,X))}return q}var iq={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:E8,createNode:b8};aq.createPairs=b8;aq.pairs=iq;aq.resolvePairs=E8});var n4=F((eq)=>{var y8=E(),a4=R0(),r$=C0(),oq=E0(),x8=q2();class c0 extends oq.YAMLSeq{constructor(){super();this.add=r$.YAMLMap.prototype.add.bind(this),this.delete=r$.YAMLMap.prototype.delete.bind(this),this.get=r$.YAMLMap.prototype.get.bind(this),this.has=r$.YAMLMap.prototype.has.bind(this),this.set=r$.YAMLMap.prototype.set.bind(this),this.tag=c0.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(y8.isPair(z))q=a4.toJS(z.key,"",Z),G=a4.toJS(z.value,q,Z);else q=a4.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=x8.createPairs($,Z,X),q=new this;return q.items=z.items,q}}c0.tag="tag:yaml.org,2002:omap";var tq={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:c0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=x8.resolvePairs($,Z),z=[];for(let{key:q}of X.items)if(y8.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 c0,X)},createNode:($,Z,X)=>c0.from($,Z,X)};eq.YAMLOMap=c0;eq.omap=tq});var v8=F((XG)=>{var k8=g();function f8({value:$,source:Z},X){if(Z&&($?h8:g8).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var h8={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new k8.Scalar(!0),stringify:f8},g8={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new k8.Scalar(!1),stringify:f8};XG.falseTag=g8;XG.trueTag=h8});var u8=F((HG)=>{var GG=g(),s4=Y$(),JG={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:s4.stringifyNumber},QG={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():s4.stringifyNumber($)}},YG={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new GG.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:s4.stringifyNumber};HG.float=YG;HG.floatExp=QG;HG.floatNaN=JG});var d8=F((DG)=>{var m8=Y$(),o$=($)=>typeof $==="bigint"||Number.isInteger($);function G2($,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 r4($,Z,X){let{value:z}=$;if(o$(z)){let q=z.toString(Z);return z<0?"-"+X+q.substr(1):X+q}return m8.stringifyNumber($)}var KG={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>G2($,2,2,X),stringify:($)=>r4($,2,"0b")},BG={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>G2($,1,8,X),stringify:($)=>r4($,8,"0")},TG={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>G2($,0,10,X),stringify:m8.stringifyNumber},LG={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>G2($,2,16,X),stringify:($)=>r4($,16,"0x")};DG.int=TG;DG.intBin=KG;DG.intHex=LG;DG.intOct=BG});var o4=F((PG)=>{var Y2=E(),J2=N0(),Q2=C0();class i0 extends Q2.YAMLMap{constructor($){super($);this.tag=i0.tag}add($){let Z;if(Y2.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new J2.Pair($.key,null);else Z=new J2.Pair($,null);if(!Q2.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=Q2.findPair(this.items,$);return!Z&&Y2.isPair(X)?Y2.isScalar(X.key)?X.key.value:X.key:X}set($,Z){if(typeof Z!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Z}`);let X=Q2.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new J2.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(J2.createPair(G,null,X))}return q}}i0.tag="tag:yaml.org,2002:set";var wG={collection:"map",identify:($)=>$ instanceof Set,nodeClass:i0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>i0.from($,Z,X),resolve($,Z){if(Y2.isMap($))if($.hasAllNullValues(!0))return Object.assign(new i0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};PG.YAMLSet=i0;PG.set=wG});var e4=F((SG)=>{var AG=Y$();function t4($,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 p8($){let{value:Z}=$,X=(J)=>J;if(typeof Z==="bigint")X=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return AG.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 jG={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})=>t4($,X),stringify:p8},NG={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:($)=>t4($,!1),stringify:p8},l8={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(l8.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,H=Date.UTC(X,z-1,q,G||0,J||0,Q||0,Y),W=Z[8];if(W&&W!=="Z"){let U=t4(W,!1);if(Math.abs(U)<30)U*=60;H-=60000*U}return new Date(H)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};SG.floatTime=NG;SG.intTime=jG;SG.timestamp=l8});var i8=F((pG)=>{var yG=J$(),xG=$2(),kG=Q$(),fG=n$(),hG=c4(),c8=v8(),$9=u8(),H2=d8(),gG=i1(),vG=n4(),uG=q2(),mG=o4(),Z9=e4(),dG=[yG.map,kG.seq,fG.string,xG.nullTag,c8.trueTag,c8.falseTag,H2.intBin,H2.intOct,H2.int,H2.intHex,$9.floatNaN,$9.floatExp,$9.float,hG.binary,gG.merge,vG.omap,uG.pairs,mG.set,Z9.intTime,Z9.floatTime,Z9.timestamp];pG.schema=dG});var X6=F((tG)=>{var r8=J$(),cG=$2(),o8=Q$(),iG=n$(),aG=h4(),X9=v4(),z9=m4(),nG=N8(),sG=C8(),t8=c4(),t$=i1(),e8=n4(),$6=q2(),a8=i8(),Z6=o4(),U2=e4(),n8=new Map([["core",nG.schema],["failsafe",[r8.map,o8.seq,iG.string]],["json",sG.schema],["yaml11",a8.schema],["yaml-1.1",a8.schema]]),s8={binary:t8.binary,bool:aG.boolTag,float:X9.float,floatExp:X9.floatExp,floatNaN:X9.floatNaN,floatTime:U2.floatTime,int:z9.int,intHex:z9.intHex,intOct:z9.intOct,intTime:U2.intTime,map:r8.map,merge:t$.merge,null:cG.nullTag,omap:e8.omap,pairs:$6.pairs,seq:o8.seq,set:Z6.set,timestamp:U2.timestamp},rG={"tag:yaml.org,2002:binary":t8.binary,"tag:yaml.org,2002:merge":t$.merge,"tag:yaml.org,2002:omap":e8.omap,"tag:yaml.org,2002:pairs":$6.pairs,"tag:yaml.org,2002:set":Z6.set,"tag:yaml.org,2002:timestamp":U2.timestamp};function oG($,Z,X){let z=n8.get(Z);if(z&&!$)return X&&!z.includes(t$.merge)?z.concat(t$.merge):z.slice();let q=z;if(!q)if(Array.isArray($))q=[];else{let G=Array.from(n8.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(t$.merge);return q.reduce((G,J)=>{let Q=typeof J==="string"?s8[J]:J;if(!Q){let Y=JSON.stringify(J),H=Object.keys(s8).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${Y}; use one of ${H}`)}if(!G.includes(Q))G.push(Q);return G},[])}tG.coreKnownTags=rG;tG.getTags=oG});var J9=F((GJ)=>{var q9=E(),ZJ=J$(),XJ=Q$(),zJ=n$(),W2=X6(),qJ=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class G9{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:q,sortMapEntries:G,toStringDefaults:J}){this.compat=Array.isArray($)?W2.getTags($,"compat"):$?W2.getTags(null,$):null,this.name=typeof q==="string"&&q||"core",this.knownTags=z?W2.coreKnownTags:{},this.tags=W2.getTags(Z,this.name,X),this.toStringOptions=J??null,Object.defineProperty(this,q9.MAP,{value:ZJ.map}),Object.defineProperty(this,q9.SCALAR,{value:zJ.string}),Object.defineProperty(this,q9.SEQ,{value:XJ.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?qJ:null}clone(){let $=Object.create(G9.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}GJ.Schema=G9});var z6=F((HJ)=>{var QJ=E(),Q9=l$(),e$=m$();function YJ($,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=Q9.createStringifyContext($,Z),{commentString:G}=q.options;if($.commentBefore){if(X.length!==1)X.unshift("");let Y=G($.commentBefore);X.unshift(e$.indentComment(Y,""))}let J=!1,Q=null;if($.contents){if(QJ.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=G($.contents.commentBefore);X.push(e$.indentComment(W,""))}q.forceBlockIndent=!!$.comment,Q=$.contents.comment}let Y=Q?void 0:()=>J=!0,H=Q9.stringify($.contents,q,()=>Q=null,Y);if(Q)H+=e$.lineComment(H,"",G(Q));if((H[0]==="|"||H[0]===">")&&X[X.length-1]==="---")X[X.length-1]=`--- ${H}`;else X.push(H)}else X.push(Q9.stringify($.contents,q));if($.directives?.docEnd)if($.comment){let Y=G($.comment);if(Y.includes(`
|
|
81
|
+
${G.comment}`:z.comment}z=q}$.items[X]=X2.isPair(z)?z:new i4.Pair(z)}else Z("Expected a sequence for this tag");return $}function b6($,Z,X){let{replacer:z}=X,q=new aq.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 H=Object.keys(J);if(H.length===1)Q=H[0],Y=J[Q];else throw TypeError(`Expected tuple with one key, not ${H.length} keys`)}else Q=J;q.items.push(i4.createPair(Q,Y,X))}return q}var nq={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:E6,createNode:b6};sq.createPairs=b6;sq.pairs=nq;sq.resolvePairs=E6});var n4=F((ZG)=>{var y6=E(),a4=R0(),r$=C0(),eq=E0(),x6=z2();class c0 extends eq.YAMLSeq{constructor(){super();this.add=r$.YAMLMap.prototype.add.bind(this),this.delete=r$.YAMLMap.prototype.delete.bind(this),this.get=r$.YAMLMap.prototype.get.bind(this),this.has=r$.YAMLMap.prototype.has.bind(this),this.set=r$.YAMLMap.prototype.set.bind(this),this.tag=c0.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(y6.isPair(z))q=a4.toJS(z.key,"",Z),G=a4.toJS(z.value,q,Z);else q=a4.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=x6.createPairs($,Z,X),q=new this;return q.items=z.items,q}}c0.tag="tag:yaml.org,2002:omap";var $G={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:c0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=x6.resolvePairs($,Z),z=[];for(let{key:q}of X.items)if(y6.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 c0,X)},createNode:($,Z,X)=>c0.from($,Z,X)};ZG.YAMLOMap=c0;ZG.omap=$G});var v6=F((qG)=>{var k6=g();function f6({value:$,source:Z},X){if(Z&&($?h6:g6).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var h6={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new k6.Scalar(!0),stringify:f6},g6={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new k6.Scalar(!1),stringify:f6};qG.falseTag=g6;qG.trueTag=h6});var u6=F((WG)=>{var QG=g(),s4=H$(),YG={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:s4.stringifyNumber},HG={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():s4.stringifyNumber($)}},UG={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new QG.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:s4.stringifyNumber};WG.float=UG;WG.floatExp=HG;WG.floatNaN=YG});var d6=F((FG)=>{var m6=H$(),o$=($)=>typeof $==="bigint"||Number.isInteger($);function q2($,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 r4($,Z,X){let{value:z}=$;if(o$(z)){let q=z.toString(Z);return z<0?"-"+X+q.substr(1):X+q}return m6.stringifyNumber($)}var LG={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>q2($,2,2,X),stringify:($)=>r4($,2,"0b")},TG={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>q2($,1,8,X),stringify:($)=>r4($,8,"0")},DG={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>q2($,0,10,X),stringify:m6.stringifyNumber},_G={identify:o$,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>q2($,2,16,X),stringify:($)=>r4($,16,"0x")};FG.int=DG;FG.intBin=LG;FG.intHex=_G;FG.intOct=TG});var o4=F((RG)=>{var Q2=E(),G2=N0(),J2=C0();class i0 extends J2.YAMLMap{constructor($){super($);this.tag=i0.tag}add($){let Z;if(Q2.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new G2.Pair($.key,null);else Z=new G2.Pair($,null);if(!J2.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=J2.findPair(this.items,$);return!Z&&Q2.isPair(X)?Q2.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=J2.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new G2.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(G2.createPair(G,null,X))}return q}}i0.tag="tag:yaml.org,2002:set";var IG={collection:"map",identify:($)=>$ instanceof Set,nodeClass:i0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>i0.from($,Z,X),resolve($,Z){if(Q2.isMap($))if($.hasAllNullValues(!0))return Object.assign(new i0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};RG.YAMLSet=i0;RG.set=IG});var e4=F((EG)=>{var NG=H$();function t4($,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 p6($){let{value:Z}=$,X=(J)=>J;if(typeof Z==="bigint")X=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return NG.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 SG={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})=>t4($,X),stringify:p6},CG={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:($)=>t4($,!1),stringify:p6},l6={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(l6.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,H=Date.UTC(X,z-1,q,G||0,J||0,Q||0,Y),W=Z[8];if(W&&W!=="Z"){let U=t4(W,!1);if(Math.abs(U)<30)U*=60;H-=60000*U}return new Date(H)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};EG.floatTime=CG;EG.intTime=SG;EG.timestamp=l6});var i6=F((cG)=>{var kG=Q$(),fG=e1(),hG=Y$(),gG=n$(),vG=c4(),c6=v6(),$9=u6(),Y2=d6(),uG=c1(),mG=n4(),dG=z2(),pG=o4(),Z9=e4(),lG=[kG.map,hG.seq,gG.string,fG.nullTag,c6.trueTag,c6.falseTag,Y2.intBin,Y2.intOct,Y2.int,Y2.intHex,$9.floatNaN,$9.floatExp,$9.float,vG.binary,uG.merge,mG.omap,dG.pairs,pG.set,Z9.intTime,Z9.floatTime,Z9.timestamp];cG.schema=lG});var X8=F(($J)=>{var r6=Q$(),aG=e1(),o6=Y$(),nG=n$(),sG=h4(),X9=v4(),z9=m4(),rG=N6(),oG=C6(),t6=c4(),t$=c1(),e6=n4(),$8=z2(),a6=i6(),Z8=o4(),H2=e4(),n6=new Map([["core",rG.schema],["failsafe",[r6.map,o6.seq,nG.string]],["json",oG.schema],["yaml11",a6.schema],["yaml-1.1",a6.schema]]),s6={binary:t6.binary,bool:sG.boolTag,float:X9.float,floatExp:X9.floatExp,floatNaN:X9.floatNaN,floatTime:H2.floatTime,int:z9.int,intHex:z9.intHex,intOct:z9.intOct,intTime:H2.intTime,map:r6.map,merge:t$.merge,null:aG.nullTag,omap:e6.omap,pairs:$8.pairs,seq:o6.seq,set:Z8.set,timestamp:H2.timestamp},tG={"tag:yaml.org,2002:binary":t6.binary,"tag:yaml.org,2002:merge":t$.merge,"tag:yaml.org,2002:omap":e6.omap,"tag:yaml.org,2002:pairs":$8.pairs,"tag:yaml.org,2002:set":Z8.set,"tag:yaml.org,2002:timestamp":H2.timestamp};function eG($,Z,X){let z=n6.get(Z);if(z&&!$)return X&&!z.includes(t$.merge)?z.concat(t$.merge):z.slice();let q=z;if(!q)if(Array.isArray($))q=[];else{let G=Array.from(n6.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(t$.merge);return q.reduce((G,J)=>{let Q=typeof J==="string"?s6[J]:J;if(!Q){let Y=JSON.stringify(J),H=Object.keys(s6).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${Y}; use one of ${H}`)}if(!G.includes(Q))G.push(Q);return G},[])}$J.coreKnownTags=tG;$J.getTags=eG});var J9=F((QJ)=>{var q9=E(),zJ=Q$(),qJ=Y$(),GJ=n$(),U2=X8(),JJ=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class G9{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:q,sortMapEntries:G,toStringDefaults:J}){this.compat=Array.isArray($)?U2.getTags($,"compat"):$?U2.getTags(null,$):null,this.name=typeof q==="string"&&q||"core",this.knownTags=z?U2.coreKnownTags:{},this.tags=U2.getTags(Z,this.name,X),this.toStringOptions=J??null,Object.defineProperty(this,q9.MAP,{value:zJ.map}),Object.defineProperty(this,q9.SCALAR,{value:GJ.string}),Object.defineProperty(this,q9.SEQ,{value:qJ.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?JJ:null}clone(){let $=Object.create(G9.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}QJ.Schema=G9});var z8=F((WJ)=>{var HJ=E(),Q9=l$(),e$=m$();function UJ($,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=Q9.createStringifyContext($,Z),{commentString:G}=q.options;if($.commentBefore){if(X.length!==1)X.unshift("");let Y=G($.commentBefore);X.unshift(e$.indentComment(Y,""))}let J=!1,Q=null;if($.contents){if(HJ.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=G($.contents.commentBefore);X.push(e$.indentComment(W,""))}q.forceBlockIndent=!!$.comment,Q=$.contents.comment}let Y=Q?void 0:()=>J=!0,H=Q9.stringify($.contents,q,()=>Q=null,Y);if(Q)H+=e$.lineComment(H,"",G(Q));if((H[0]==="|"||H[0]===">")&&X[X.length-1]==="---")X[X.length-1]=`--- ${H}`;else X.push(H)}else X.push(Q9.stringify($.contents,q));if($.directives?.docEnd)if($.comment){let Y=G($.comment);if(Y.includes(`
|
|
82
82
|
`))X.push("..."),X.push(e$.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(e$.indentComment(G(Y),""))}}return X.join(`
|
|
83
83
|
`)+`
|
|
84
|
-
`}
|
|
84
|
+
`}WJ.stringifyDocument=UJ});var $1=F((MJ)=>{var KJ=v$(),U$=v1(),X0=E(),BJ=N0(),LJ=R0(),TJ=J9(),DJ=z8(),Y9=f1(),_J=j4(),FJ=u$(),H9=A4();class U9{constructor($,Z,X){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,X0.NODE_TYPE,{value:X0.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 H9.Directives({version:G});this.setSchema(G,X),this.contents=$===void 0?null:this.createNode($,z,X)}clone(){let $=Object.create(U9.prototype,{[X0.NODE_TYPE]:{value:X0.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=X0.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(W$(this.contents))this.contents.add($)}addIn($,Z){if(W$(this.contents))this.contents.addIn($,Z)}createAlias($,Z){if(!$.anchor){let X=Y9.anchorNames(this);$.anchor=!Z||X.has(Z)?Y9.findNewAnchor(Z||"a",X):Z}return new KJ.Alias($.anchor)}createNode($,Z,X){let z=void 0;if(typeof Z==="function")$=Z.call({"":$},"",$),z=Z;else if(Array.isArray(Z)){let K=(D)=>typeof D==="number"||D instanceof String||D instanceof Number,L=Z.filter(K).map(String);if(L.length>0)Z=Z.concat(L);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:H}=X??{},{onAnchor:W,setAnchors:U,sourceObjects:V}=Y9.createNodeAnchors(this,G||"a"),B={aliasDuplicateObjects:q??!0,keepUndefined:Q??!1,onAnchor:W,onTagObj:Y,replacer:z,schema:this.schema,sourceObjects:V},T=FJ.createNode($,H,B);if(J&&X0.isCollection(T))T.flow=!0;return U(),T}createPair($,Z,X={}){let z=this.createNode($,null,X),q=this.createNode(Z,null,X);return new BJ.Pair(z,q)}delete($){return W$(this.contents)?this.contents.delete($):!1}deleteIn($){if(U$.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return W$(this.contents)?this.contents.deleteIn($):!1}get($,Z){return X0.isCollection(this.contents)?this.contents.get($,Z):void 0}getIn($,Z){if(U$.isEmptyPath($))return!Z&&X0.isScalar(this.contents)?this.contents.value:this.contents;return X0.isCollection(this.contents)?this.contents.getIn($,Z):void 0}has($){return X0.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(U$.isEmptyPath($))return this.contents!==void 0;return X0.isCollection(this.contents)?this.contents.hasIn($):!1}set($,Z){if(this.contents==null)this.contents=U$.collectionFromPath(this.schema,[$],Z);else if(W$(this.contents))this.contents.set($,Z)}setIn($,Z){if(U$.isEmptyPath($))this.contents=Z;else if(this.contents==null)this.contents=U$.collectionFromPath(this.schema,Array.from($),Z);else if(W$(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 H9.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 H9.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 TJ.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=LJ.toJS(this.contents,Z??"",J);if(typeof q==="function")for(let{count:Y,res:H}of J.anchors.values())q(H,Y);return typeof G==="function"?_J.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 DJ.stringifyDocument(this,$)}}function W$($){if(X0.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}MJ.Document=U9});var Z1=F((PJ)=>{class W2 extends Error{constructor($,Z,X,z){super();this.name=$,this.code=X,this.message=z,this.pos=Z}}class q8 extends W2{constructor($,Z,X){super("YAMLParseError",$,Z,X)}}class G8 extends W2{constructor($,Z,X){super("YAMLWarning",$,Z,X)}}var wJ=($,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 H=" ".repeat(G)+"^".repeat(Q);X.message+=`:
|
|
86
86
|
|
|
87
87
|
${J}
|
|
88
88
|
${H}
|
|
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(W9(Z.key)||W9(Z.value))return!0}return!1;default:return!0}}
|
|
91
|
-
`+K.comment;else Q.comment=K.comment;continue}if(K.newlineAfterProp||
|
|
92
|
-
`+O.comment;else _.comment=O.comment;let w=new
|
|
93
|
-
`+I.comment;else H.comment=I.comment;U=I.end;continue}if(!J&&X.options.strict&&
|
|
94
|
-
`+C;else M.comment=C;I.comment=I.comment.substring(C.length+1)}}}if(!J&&!w&&!I.found){let C=R?$(X,R,I,q):Z(X,I.end,w,null,I,q);if(H.items.push(C),U=C.range[2],
|
|
95
|
-
`+y.comment;else M.comment=y.comment;let s=new
|
|
96
|
-
`+
|
|
97
|
-
`.repeat(Math.max(1,J.length-1)):"",
|
|
98
|
-
`;for(let K=W;K<Q;++K){let[
|
|
99
|
-
`;else if(
|
|
89
|
+
`}};PJ.YAMLError=W2;PJ.YAMLParseError=q8;PJ.YAMLWarning=G8;PJ.prettifyError=wJ});var X1=F((SJ)=>{function NJ($,{flow:Z,indicator:X,next:z,offset:q,onError:G,parentIndent:J,startOnNewline:Q}){let Y=!1,H=Q,W=Q,U="",V="",B=!1,T=!1,K=null,L=null,D=null,_=null,O=null,w=null,R=null;for(let M of $){if(T){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");T=!1}if(K){if(H&&M.type!=="comment"&&M.type!=="newline")G(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");K=null}switch(M.type){case"space":if(!Z&&(X!=="doc-start"||z?.type!=="flow-collection")&&M.source.includes("\t"))K=M;W=!0;break;case"comment":{if(!W)G(M,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let y=M.source.substring(1)||" ";if(!U)U=y;else U+=V+y;V="",H=!1;break}case"newline":if(H){if(U)U+=M.source;else if(!w||X!=="seq-item-ind")Y=!0}else V+=M.source;if(H=!0,B=!0,L||D)_=M;W=!0;break;case"anchor":if(L)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);L=M,R??(R=M.offset),H=!1,W=!1,T=!0;break;case"tag":{if(D)G(M,"MULTIPLE_TAGS","A node can have at most one tag");D=M,R??(R=M.offset),H=!1,W=!1,T=!0;break}case X:if(L||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,H=X==="seq-item-ind"||X==="explicit-key-ind",W=!1;break;case"comma":if(Z){if(O)G(M,"UNEXPECTED_TOKEN",`Unexpected , in ${Z}`);O=M,H=!1,W=!1;break}default:G(M,"UNEXPECTED_TOKEN",`Unexpected ${M.type} token`),H=!1,W=!1}}let I=$[$.length-1],C=I?I.offset+I.source.length:q;if(T&&z&&z.type!=="space"&&z.type!=="newline"&&z.type!=="comma"&&(z.type!=="scalar"||z.source!==""))G(z.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(K&&(H&&K.indent<=J||z?.type==="block-map"||z?.type==="block-seq"))G(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:O,found:w,spaceBefore:Y,comment:U,hasNewline:B,anchor:L,tag:D,newlineAfterProp:_,end:C,start:R??C}}SJ.resolveProps=NJ});var V2=F((EJ)=>{function W9($){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(W9(Z.key)||W9(Z.value))return!0}return!1;default:return!0}}EJ.containsNewline=W9});var V9=F((kJ)=>{var yJ=V2();function xJ($,Z,X){if(Z?.type==="flow-collection"){let z=Z.end[0];if(z.indent===$&&(z.source==="]"||z.source==="}")&&yJ.containsNewline(Z))X(z,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}kJ.flowIndentCheck=xJ});var K9=F((gJ)=>{var J8=E();function hJ($,Z,X){let{uniqueKeys:z}=$.options;if(z===!1)return!1;let q=typeof z==="function"?z:(G,J)=>G===J||J8.isScalar(G)&&J8.isScalar(J)&&G.value===J.value;return Z.some((G)=>q(G.key,X))}gJ.mapIncludes=hJ});var W8=F((lJ)=>{var Q8=N0(),uJ=C0(),Y8=X1(),mJ=V2(),H8=V9(),dJ=K9(),U8="All mapping items must start at the same column";function pJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let Q=new(G?.nodeClass??uJ.YAMLMap)(X.schema);if(X.atRoot)X.atRoot=!1;let Y=z.offset,H=null;for(let W of z.items){let{start:U,key:V,sep:B,value:T}=W,K=Y8.resolveProps(U,{indicator:"explicit-key-ind",next:V??B?.[0],offset:Y,onError:q,parentIndent:z.indent,startOnNewline:!0}),L=!K.found;if(L){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",U8)}if(!K.anchor&&!K.tag&&!B){if(H=K.end,K.comment)if(Q.comment)Q.comment+=`
|
|
91
|
+
`+K.comment;else Q.comment=K.comment;continue}if(K.newlineAfterProp||mJ.containsNewline(V))q(V??U[U.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(K.found?.indent!==z.indent)q(Y,"BAD_INDENT",U8);X.atKey=!0;let D=K.end,_=V?$(X,V,K,q):Z(X,D,U,null,K,q);if(X.schema.compat)H8.flowIndentCheck(z.indent,V,q);if(X.atKey=!1,dJ.mapIncludes(X,Q.items,_))q(D,"DUPLICATE_KEY","Map keys must be unique");let O=Y8.resolveProps(B??[],{indicator:"map-value-ind",next:T,offset:_.range[2],onError:q,parentIndent:z.indent,startOnNewline:!V||V.type==="block-scalar"});if(Y=O.end,O.found){if(L){if(T?.type==="block-map"&&!O.hasNewline)q(Y,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(X.options.strict&&K.start<O.found.offset-1024)q(_.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let w=T?$(X,T,O,q):Z(X,Y,B,null,O,q);if(X.schema.compat)H8.flowIndentCheck(z.indent,T,q);Y=w.range[2];let R=new Q8.Pair(_,w);if(X.options.keepSourceTokens)R.srcToken=W;Q.items.push(R)}else{if(L)q(_.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(O.comment)if(_.comment)_.comment+=`
|
|
92
|
+
`+O.comment;else _.comment=O.comment;let w=new Q8.Pair(_);if(X.options.keepSourceTokens)w.srcToken=W;Q.items.push(w)}}if(H&&H<Y)q(H,"IMPOSSIBLE","Map comment with trailing content");return Q.range=[z.offset,Y,H??Y],Q}lJ.resolveBlockMap=pJ});var V8=F((rJ)=>{var iJ=E0(),aJ=X1(),nJ=V9();function sJ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let Q=new(G?.nodeClass??iJ.YAMLSeq)(X.schema);if(X.atRoot)X.atRoot=!1;if(X.atKey)X.atKey=!1;let Y=z.offset,H=null;for(let{start:W,value:U}of z.items){let V=aJ.resolveProps(W,{indicator:"seq-item-ind",next:U,offset:Y,onError:q,parentIndent:z.indent,startOnNewline:!0});if(!V.found)if(V.anchor||V.tag||U)if(U?.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(H=V.end,V.comment)Q.comment=V.comment;continue}let B=U?$(X,U,V,q):Z(X,V.end,W,null,V,q);if(X.schema.compat)nJ.flowIndentCheck(z.indent,U,q);Y=B.range[2],Q.items.push(B)}return Q.range=[z.offset,Y,H??Y],Q}rJ.resolveBlockSeq=sJ});var V$=F((eJ)=>{function tJ($,Z,X,z){let q="";if($){let G=!1,J="";for(let Q of $){let{source:Y,type:H}=Q;switch(H){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 ${H} at node end`)}Z+=Y.length}}return{comment:q,offset:Z}}eJ.resolveEnd=tJ});var L8=F((YQ)=>{var ZQ=E(),XQ=N0(),K8=C0(),zQ=E0(),qQ=V$(),B8=X1(),GQ=V2(),JQ=K9(),B9="Block collections are not allowed within flow collections",L9=($)=>$&&($.type==="block-map"||$.type==="block-seq");function QQ({composeNode:$,composeEmptyNode:Z},X,z,q,G){let J=z.start.source==="{",Q=J?"flow map":"flow sequence",H=new(G?.nodeClass??(J?K8.YAMLMap:zQ.YAMLSeq))(X.schema);H.flow=!0;let W=X.atRoot;if(W)X.atRoot=!1;if(X.atKey)X.atKey=!1;let U=z.offset+z.start.source.length;for(let L=0;L<z.items.length;++L){let D=z.items[L],{start:_,key:O,sep:w,value:R}=D,I=B8.resolveProps(_,{flow:Q,indicator:"explicit-key-ind",next:O??w?.[0],offset:U,onError:q,parentIndent:z.indent,startOnNewline:!1});if(!I.found){if(!I.anchor&&!I.tag&&!w&&!R){if(L===0&&I.comma)q(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Q}`);else if(L<z.items.length-1)q(I.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${Q}`);if(I.comment)if(H.comment)H.comment+=`
|
|
93
|
+
`+I.comment;else H.comment=I.comment;U=I.end;continue}if(!J&&X.options.strict&&GQ.containsNewline(O))q(O,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(L===0){if(I.comma)q(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Q}`)}else{if(!I.comma)q(I.start,"MISSING_CHAR",`Missing , between ${Q} items`);if(I.comment){let C="";$:for(let M of _)switch(M.type){case"comma":case"space":break;case"comment":C=M.source.substring(1);break $;default:break $}if(C){let M=H.items[H.items.length-1];if(ZQ.isPair(M))M=M.value??M.key;if(M.comment)M.comment+=`
|
|
94
|
+
`+C;else M.comment=C;I.comment=I.comment.substring(C.length+1)}}}if(!J&&!w&&!I.found){let C=R?$(X,R,I,q):Z(X,I.end,w,null,I,q);if(H.items.push(C),U=C.range[2],L9(R))q(C.range,"BLOCK_IN_FLOW",B9)}else{X.atKey=!0;let C=I.end,M=O?$(X,O,I,q):Z(X,C,_,null,I,q);if(L9(O))q(M.range,"BLOCK_IN_FLOW",B9);X.atKey=!1;let y=B8.resolveProps(w??[],{flow:Q,indicator:"map-value-ind",next:R,offset:M.range[2],onError:q,parentIndent:z.indent,startOnNewline:!1});if(y.found){if(!J&&!I.found&&X.options.strict){if(w)for(let k of w){if(k===y.found)break;if(k.type==="newline"){q(k,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(I.start<y.found.offset-1024)q(y.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(R)if("source"in R&&R.source?.[0]===":")q(R,"MISSING_CHAR",`Missing space after : in ${Q}`);else q(y.start,"MISSING_CHAR",`Missing , or : between ${Q} items`);let p=R?$(X,R,y,q):y.found?Z(X,y.end,w,null,y,q):null;if(p){if(L9(R))q(p.range,"BLOCK_IN_FLOW",B9)}else if(y.comment)if(M.comment)M.comment+=`
|
|
95
|
+
`+y.comment;else M.comment=y.comment;let s=new XQ.Pair(M,p);if(X.options.keepSourceTokens)s.srcToken=D;if(J){let k=H;if(JQ.mapIncludes(X,k.items,M))q(C,"DUPLICATE_KEY","Map keys must be unique");k.items.push(s)}else{let k=new K8.YAMLMap(X.schema);k.flow=!0,k.items.push(s);let o=(p??M).range;k.range=[M.range[0],o[1],o[2]],H.items.push(k)}U=p?p.range[2]:y.end}}let V=J?"}":"]",[B,...T]=z.end,K=U;if(B?.source===V)K=B.offset+B.source.length;else{let L=Q[0].toUpperCase()+Q.substring(1),D=W?`${L} must end with a ${V}`:`${L} in block collection must be sufficiently indented and end with a ${V}`;if(q(U,W?"MISSING_CHAR":"BAD_INDENT",D),B&&B.source.length!==1)T.unshift(B)}if(T.length>0){let L=qQ.resolveEnd(T,K,X.options.strict,q);if(L.comment)if(H.comment)H.comment+=`
|
|
96
|
+
`+L.comment;else H.comment=L.comment;H.range=[z.offset,K,L.offset]}else H.range=[z.offset,K,K];return H}YQ.resolveFlowCollection=QQ});var T8=F((_Q)=>{var UQ=E(),WQ=g(),VQ=C0(),KQ=E0(),BQ=W8(),LQ=V8(),TQ=L8();function T9($,Z,X,z,q,G){let J=X.type==="block-map"?BQ.resolveBlockMap($,Z,X,z,G):X.type==="block-seq"?LQ.resolveBlockSeq($,Z,X,z,G):TQ.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 DQ($,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,T=V&&G?V.offset>G.offset?V:G:V??G;if(T&&(!B||B.offset<T.offset))q(T,"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===VQ.YAMLMap.tagName&&Q==="map"||J===KQ.YAMLSeq.tagName&&Q==="seq")return T9($,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 T9($,Z,X,q,J)}}let H=T9($,Z,X,q,J,Y),W=Y.resolve?.(H,(V)=>q(G,"TAG_RESOLVE_FAILED",V),Z.options)??H,U=UQ.isNode(W)?W:new WQ.Scalar(W);if(U.range=H.range,U.tag=J,Y?.format)U.format=Y.format;return U}_Q.composeCollection=DQ});var _9=F((PQ)=>{var D9=g();function MQ($,Z,X){let z=Z.offset,q=OQ(Z,$.options.strict,X);if(!q)return{value:"",type:null,comment:"",range:[z,z,z]};let G=q.mode===">"?D9.Scalar.BLOCK_FOLDED:D9.Scalar.BLOCK_LITERAL,J=Z.source?wQ(Z.source):[],Q=J.length;for(let K=J.length-1;K>=0;--K){let L=J[K][1];if(L===""||L==="\r")Q=K;else break}if(Q===0){let K=q.chomp==="+"&&J.length>0?`
|
|
97
|
+
`.repeat(Math.max(1,J.length-1)):"",L=z+q.length;if(Z.source)L+=Z.source.length;return{value:K,type:G,comment:q.comment,range:[z,L,L]}}let Y=Z.indent+q.indent,H=Z.offset+q.length,W=0;for(let K=0;K<Q;++K){let[L,D]=J[K];if(D===""||D==="\r"){if(q.indent===0&&L.length>Y)Y=L.length}else{if(L.length<Y)X(H+L.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(q.indent===0)Y=L.length;if(W=K,Y===0&&!$.atRoot)X(H,"BAD_INDENT","Block scalar values in collections must be indented");break}H+=L.length+D.length+1}for(let K=J.length-1;K>=Q;--K)if(J[K][0].length>Y)Q=K+1;let U="",V="",B=!1;for(let K=0;K<W;++K)U+=J[K][0].slice(Y)+`
|
|
98
|
+
`;for(let K=W;K<Q;++K){let[L,D]=J[K];H+=L.length+D.length+1;let _=D[D.length-1]==="\r";if(_)D=D.slice(0,-1);if(D&&L.length<Y){let w=`Block scalar lines must not be less indented than their ${q.indent?"explicit indentation indicator":"first line"}`;X(H-D.length-(_?2:1),"BAD_INDENT",w),L=""}if(G===D9.Scalar.BLOCK_LITERAL)U+=V+L.slice(Y)+D,V=`
|
|
99
|
+
`;else if(L.length>Y||D[0]==="\t"){if(V===" ")V=`
|
|
100
100
|
`;else if(!B&&V===`
|
|
101
101
|
`)V=`
|
|
102
102
|
|
|
103
|
-
`;U+=V+
|
|
103
|
+
`;U+=V+L.slice(Y)+D,V=`
|
|
104
104
|
`,B=!0}else if(D==="")if(V===`
|
|
105
105
|
`)U+=`
|
|
106
106
|
`;else V=`
|
|
@@ -108,41 +108,41 @@ ${H}
|
|
|
108
108
|
`+J[K][0].slice(Y);if(U[U.length-1]!==`
|
|
109
109
|
`)U+=`
|
|
110
110
|
`;break;default:U+=`
|
|
111
|
-
`}let
|
|
111
|
+
`}let T=z+q.length+Z.source.length;return{value:U,type:G,comment:q.comment,range:[z,T,T]}}function OQ({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 T=Number(B);if(!J&&T)J=T;else if(Y===-1)Y=$+V}}if(Y!==-1)z(Y,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${q}`);let H=!1,W="",U=q.length;for(let V=1;V<Z.length;++V){let B=Z[V];switch(B.type){case"space":H=!0;case"newline":U+=B.source.length;break;case"comment":if(X&&!H)z(B,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");U+=B.source.length,W=B.source.substring(1);break;case"error":z(B,"UNEXPECTED_TOKEN",B.message),U+=B.source.length;break;default:{let T=`Unexpected token in block scalar header: ${B.type}`;z(B,"UNEXPECTED_TOKEN",T);let K=B.source;if(K&&typeof K==="string")U+=K.length}}}return{mode:G,indent:J,chomp:Q,comment:W,length:U}}function wQ($){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}PQ.resolveBlockScalar=MQ});var M9=F((yQ)=>{var F9=g(),RQ=V$();function AQ($,Z,X){let{offset:z,type:q,source:G,end:J}=$,Q,Y,H=(V,B,T)=>X(z+V,B,T);switch(q){case"scalar":Q=F9.Scalar.PLAIN,Y=jQ(G,H);break;case"single-quoted-scalar":Q=F9.Scalar.QUOTE_SINGLE,Y=NQ(G,H);break;case"double-quoted-scalar":Q=F9.Scalar.QUOTE_DOUBLE,Y=SQ(G,H);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,U=RQ.resolveEnd(J,W,Z,X);return{value:Y,type:Q,comment:U.comment,range:[z,W,U.offset]}}function jQ($,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 D8($)}function NQ($,Z){if($[$.length-1]!=="'"||$.length===1)Z($.length,"MISSING_CHAR","Missing closing 'quote");return D8($.slice(1,-1)).replace(/''/g,"'")}function D8($){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 SQ($,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}=CQ($,z);X+=G,z=J}else if(q==="\\"){let G=$[++z],J=EQ[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+=bQ($,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 CQ($,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 EQ={"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 bQ($,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)}yQ.resolveFlowScalar=AQ});var F8=F((uQ)=>{var a0=E(),_8=g(),kQ=_9(),fQ=M9();function hQ($,Z,X,z){let{value:q,type:G,comment:J,range:Q}=Z.type==="block-scalar"?kQ.resolveBlockScalar($,Z,z):fQ.resolveFlowScalar(Z,$.options.strict,z),Y=X?$.directives.tagName(X.source,(U)=>z(X,"TAG_RESOLVE_FAILED",U)):null,H;if($.options.stringKeys&&$.atKey)H=$.schema[a0.SCALAR];else if(Y)H=gQ($.schema,q,Y,X,z);else if(Z.type==="scalar")H=vQ($,q,Z,z);else H=$.schema[a0.SCALAR];let W;try{let U=H.resolve(q,(V)=>z(X??Z,"TAG_RESOLVE_FAILED",V),$.options);W=a0.isScalar(U)?U:new _8.Scalar(U)}catch(U){let V=U instanceof Error?U.message:String(U);z(X??Z,"TAG_RESOLVE_FAILED",V),W=new _8.Scalar(q)}if(W.range=Q,W.source=q,G)W.type=G;if(Y)W.tag=Y;if(H.format)W.format=H.format;if(J)W.comment=J;return W}function gQ($,Z,X,z,q){if(X==="!")return $[a0.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"),$[a0.SCALAR]}function vQ({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[a0.SCALAR];if(X.compat){let Q=X.compat.find((Y)=>Y.default&&Y.test?.test(z))??X[a0.SCALAR];if(J.tag!==Q.tag){let Y=Z.tagString(J.tag),H=Z.tagString(Q.tag),W=`Value may be parsed as either ${Y} or ${H}`;G(q,"TAG_RESOLVE_FAILED",W,!0)}}return J}uQ.composeScalar=hQ});var M8=F((pQ)=>{function dQ($,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 $}pQ.emptyScalarPosition=dQ});var P8=F((tQ)=>{var cQ=v$(),iQ=E(),aQ=T8(),O8=F8(),nQ=V$(),sQ=M8(),rQ={composeNode:w8,composeEmptyNode:O9};function w8($,Z,X,z){let q=$.atKey,{spaceBefore:G,comment:J,anchor:Q,tag:Y}=X,H,W=!0;switch(Z.type){case"alias":if(H=oQ($,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(H=O8.composeScalar($,Z,Y,z),Q)H.anchor=Q.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(H=aQ.composeCollection(rQ,$,Z,X,z),Q)H.anchor=Q.source.substring(1);break;default:{let U=Z.type==="error"?Z.message:`Unsupported token (type: ${Z.type})`;z(Z,"UNEXPECTED_TOKEN",U),H=O9($,Z.offset,void 0,null,X,z),W=!1}}if(Q&&H.anchor==="")z(Q,"BAD_ALIAS","Anchor cannot be an empty string");if(q&&$.options.stringKeys&&(!iQ.isScalar(H)||typeof H.value!=="string"||H.tag&&H.tag!=="tag:yaml.org,2002:str"))z(Y??Z,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(G)H.spaceBefore=!0;if(J)if(Z.type==="scalar"&&Z.source==="")H.comment=J;else H.commentBefore=J;if($.options.keepSourceTokens&&W)H.srcToken=Z;return H}function O9($,Z,X,z,{spaceBefore:q,comment:G,anchor:J,tag:Q,end:Y},H){let W={type:"scalar",offset:sQ.emptyScalarPosition(Z,X,z),indent:-1,source:""},U=O8.composeScalar($,W,Q,H);if(J){if(U.anchor=J.source.substring(1),U.anchor==="")H(J,"BAD_ALIAS","Anchor cannot be an empty string")}if(q)U.spaceBefore=!0;if(G)U.comment=G,U.range[2]=Y;return U}function oQ({options:$},{offset:Z,source:X,end:z},q){let G=new cQ.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=nQ.resolveEnd(z,J,$.strict,q);if(G.range=[Z,J,Q.offset],Q.comment)G.comment=Q.comment;return G}tQ.composeEmptyNode=O9;tQ.composeNode=w8});var R8=F((GY)=>{var ZY=$1(),I8=P8(),XY=V$(),zY=X1();function qY($,Z,{offset:X,start:z,value:q,end:G},J){let Q=Object.assign({_directives:Z},$),Y=new ZY.Document(void 0,Q),H={atKey:!1,atRoot:!0,directives:Y.directives,options:Y.options,schema:Y.schema},W=zY.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?I8.composeNode(H,q,W,J):I8.composeEmptyNode(H,W.end,z,null,W,J);let U=Y.contents.range[2],V=XY.resolveEnd(G,U,!1,J);if(V.comment)Y.comment=V.comment;return Y.range=[X,U,V.offset],Y}GY.composeDoc=qY});var w9=F((VY)=>{var QY=L0("process"),YY=A4(),HY=$1(),z1=Z1(),A8=E(),UY=R8(),WY=V$();function q1($){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 j8($){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 N8{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(Z,X,z,q)=>{let G=q1(Z);if(q)this.warnings.push(new z1.YAMLWarning(G,X,z));else this.errors.push(new z1.YAMLParseError(G,X,z))},this.directives=new YY.Directives({version:$.version||"1.2"}),this.options=$}decorate($,Z){let{comment:X,afterEmptyLine:z}=j8(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(A8.isCollection(q)&&!q.flow&&q.items.length>0){let G=q.items[0];if(A8.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 z1.YAMLParseError(q1($),"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
|
|
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:j8(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(QY.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(Z,X,z)=>{let q=q1($);q[0]+=Z,this.onError(q,"BAD_DIRECTIVE",X,z)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let Z=UY.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 z1.YAMLParseError(q1($),"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 z1.YAMLParseError(q1($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let Z=WY.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 z1.YAMLParseError(q1($),"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 HY.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}}}VY.Composer=N8});var E8=F((OY)=>{var BY=_9(),LY=M9(),TY=Z1(),S8=p$();function DY($,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 TY.YAMLParseError([Q,Q+1],G,J)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return LY.resolveFlowScalar($,Z,z);case"block-scalar":return BY.resolveBlockScalar({options:{strict:Z}},$,z)}}return null}function _Y($,Z){let{implicitKey:X=!1,indent:z,inFlow:q=!1,offset:G=-1,type:J="PLAIN"}=Z,Q=S8.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 H=Q.indexOf(`
|
|
135
135
|
`),W=Q.substring(0,H),U=Q.substring(H+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:U}}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(!C8(V,Y))V.push({type:"newline",offset:-1,indent:z,source:`
|
|
137
|
+
`});return{type:"block-scalar",offset:G,indent:z,props:V,source:U}}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 FY($,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 H=$.props[0];if(H.type!=="block-scalar-header")throw Error("Invalid block scalar header");J=H.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:J="PLAIN"}let Y=S8.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">":MY($,Y);break;case'"':P9($,Y,"double-quoted-scalar");break;case"'":P9($,Y,"single-quoted-scalar");break;default:P9($,Y,"scalar")}}function MY($,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(!C8(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 C8($,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 P9($,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})}}}OY.createScalarToken=_Y;OY.resolveAsScalar=DY;OY.setScalarValue=FY});var b8=F((AY)=>{var RY=($)=>("type"in $)?B2($):K2($);function B2($){switch($.type){case"block-scalar":{let Z="";for(let X of $.props)Z+=B2(X);return Z+$.source}case"block-map":case"block-seq":{let Z="";for(let X of $.items)Z+=K2(X);return Z}case"flow-collection":{let Z=$.start.source;for(let X of $.items)Z+=K2(X);for(let X of $.end)Z+=X.source;return Z}case"document":{let Z=K2($);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 K2({start:$,key:Z,sep:X,value:z}){let q="";for(let G of $)q+=G.source;if(Z)q+=B2(Z);if(X)for(let G of X)q+=G.source;if(z)q+=B2(z);return q}AY.stringify=RY});var k8=F((SY)=>{var I9=Symbol("break visit"),NY=Symbol("skip children"),y8=Symbol("remove item");function n0($,Z){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};x8(Object.freeze([]),$,Z)}n0.BREAK=I9;n0.SKIP=NY;n0.REMOVE=y8;n0.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};n0.parentCollection=($,Z)=>{let X=n0.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 x8($,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=x8(Object.freeze($.concat([[q,J]])),G.items[J],X);if(typeof Q==="number")J=Q-1;else if(Q===I9)return I9;else if(Q===y8)G.items.splice(J,1),J-=1}if(typeof z==="function"&&q==="key")z=z(Z,$)}}return typeof z==="function"?z(Z,$):z}SY.visit=n0});var L2=F((hY)=>{var R9=E8(),EY=b8(),bY=k8(),A9="\uFEFF",j9="\x02",N9="\x18",S9="\x1F",yY=($)=>!!$&&("items"in $),xY=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function kY($){switch($){case A9:return"<BOM>";case j9:return"<DOC>";case N9:return"<FLOW_END>";case S9:return"<SCALAR>";default:return JSON.stringify($)}}function fY($){switch($){case A9:return"byte-order-mark";case j9:return"doc-mode";case N9:return"flow-error-end";case S9: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 `),C9=($)=>!$||
|
|
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}hY.createScalarToken=R9.createScalarToken;hY.resolveAsScalar=R9.resolveAsScalar;hY.setScalarValue=R9.setScalarValue;hY.stringify=EY.stringify;hY.visit=bY.visit;hY.BOM=A9;hY.DOCUMENT=j9;hY.FLOW_END=N9;hY.SCALAR=S9;hY.isCollection=yY;hY.isScalar=xY;hY.prettyToken=kY;hY.tokenType=fY});var E9=F((eY)=>{var G1=L2();function Y0($){switch($){case void 0:case" ":case`
|
|
144
|
+
`:case"\r":case"\t":return!0;default:return!1}}var f8=new Set("0123456789ABCDEFabcdef"),oY=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),T2=new Set(",[]{}"),tY=new Set(` ,[]{}
|
|
145
|
+
\r `),C9=($)=>!$||tY.has($);class h8{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===`
|
|
@@ -154,20 +154,20 @@ ${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.pus
|
|
|
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 G1.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(Y0(q)||$&&
|
|
157
|
+
`&&q>=this.pos&&q+1+Z>J)$=q;else break}while(!0);return yield G1.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(Y0(q)||$&&T2.has(q))break;Z=X}else if(Y0(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==="#"||$&&T2.has(q))break;if(z===`
|
|
160
|
+
`){let G=this.continueScalar(X+1);if(G===-1)break;X=Math.max(X,G-2)}}else{if($&&T2.has(z))break;Z=X}if(!z&&!this.atEnd)return this.setNext("plain-scalar");return yield G1.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(C9))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,Z=this.charAt(1);if(Y0(Z)||$&&T2.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(!Y0(Z)&&Z!==">")Z=this.buffer[++$];return yield*this.pushToIndex(Z===">"?$+1:$,!1)}else{let $=this.pos+1,Z=this.buffer[$];while(Z)if(oY.has(Z))Z=this.buffer[++$];else if(Z==="%"&&f8.has(this.buffer[$+1])&&f8.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)}}eY.Lexer=h8});var b9=F((ZH)=>{class g8{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}}}}ZH.LineCounter=g8});var y9=F((GH)=>{var zH=L0("process"),v8=L2(),qH=E9();function b0($,Z){for(let X=0;X<$.length;++X)if($[X].type===Z)return!0;return!1}function u8($){for(let Z=0;Z<$.length;++Z)switch($[Z].type){case"space":case"comment":case"newline":break;default:return Z}return-1}function d8($){switch($?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function D2($){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 K$($){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 m8($){if($.start.type==="flow-seq-start"){for(let Z of $.items)if(Z.sep&&!Z.value&&!b0(Z.start,"explicit-key-ind")&&!b0(Z.sep,"map-value-ind")){if(Z.key)Z.value=Z.key;if(delete Z.key,d8(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 p8{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 qH.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=$,zH.env.LOG_TOKENS)console.log("|",v8.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let Z=v8.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")m8(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&&u8(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(u8($.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=D2(this.peek(2)),X=K$(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(b0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let G=
|
|
164
|
+
`,Z)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,Z.value){let X="end"in Z.value?Z.value.end:void 0;if((Array.isArray(X)?X[X.length-1]:void 0)?.type==="comment")X?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else{if(this.atIndentedComment(Z.start,$.indent)){let z=$.items[$.items.length-2]?.value?.end;if(Array.isArray(z)){Array.prototype.push.apply(z,Z.start),z.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return}if(this.indent>=$.indent){let X=!this.onKeyLine&&this.indent===$.indent,z=X&&(Z.sep||Z.explicitKey)&&this.type!=="seq-item-ind",q=[];if(z&&Z.sep&&!Z.value){let G=[];for(let J=0;J<Z.sep.length;++J){let Q=Z.sep[J];switch(Q.type){case"newline":G.push(J);break;case"space":break;case"comment":if(Q.indent>$.indent)G.length=0;break;default:G.length=0}}if(G.length>=2)q=Z.sep.splice(G[1])}switch(this.type){case"anchor":case"tag":if(z||Z.value)q.push(this.sourceToken),$.items.push({start:q}),this.onKeyLine=!0;else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"explicit-key-ind":if(!Z.sep&&!Z.explicitKey)Z.start.push(this.sourceToken),Z.explicitKey=!0;else if(z||Z.value)q.push(this.sourceToken),$.items.push({start:q,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if(Z.explicitKey)if(!Z.sep)if(b0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let G=K$(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(b0(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(d8(Z.key)&&!b0(Z.sep,"newline")){let G=K$(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(b0(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&&!b0(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||b0(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=D2(X),q=K$(z);m8($);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=_2($),X=V$(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=_2($),X=V$(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()}}}zH.Parser=p6});var n6=F((VH)=>{var l6=w9(),GH=$1(),J1=Z1(),JH=b4(),QH=E(),YH=b9(),c6=y9();function i6($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new YH.LineCounter||null,prettyErrors:Z}}function HH($,Z={}){let{lineCounter:X,prettyErrors:z}=i6(Z),q=new c6.Parser(X?.addNewLine),G=new l6.Composer(Z),J=Array.from(G.compose(q.parse($)));if(z&&X)for(let Q of J)Q.errors.forEach(J1.prettifyError($,X)),Q.warnings.forEach(J1.prettifyError($,X));if(J.length>0)return J;return Object.assign([],{empty:!0},G.streamInfo())}function a6($,Z={}){let{lineCounter:X,prettyErrors:z}=i6(Z),q=new c6.Parser(X?.addNewLine),G=new l6.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 J1.YAMLParseError(Q.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&X)J.errors.forEach(J1.prettifyError($,X)),J.warnings.forEach(J1.prettifyError($,X));return J}function UH($,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=a6($,X);if(!q)return null;if(q.warnings.forEach((G)=>JH.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 WH($,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(QH.isDocument($)&&!z)return $.toString(X);return new GH.Document($,z,X).toString(X)}VH.parse=UH;VH.parseAllDocuments=HH;VH.parseDocument=a6;VH.stringify=WH});var r6=F((SH)=>{var DH=w9(),_H=$1(),FH=J9(),x9=Z1(),MH=v$(),y0=E(),OH=N0(),wH=g(),PH=C0(),IH=E0(),RH=L2(),AH=E9(),jH=b9(),NH=y9(),F2=n6(),s6=h$();SH.Composer=DH.Composer;SH.Document=_H.Document;SH.Schema=FH.Schema;SH.YAMLError=x9.YAMLError;SH.YAMLParseError=x9.YAMLParseError;SH.YAMLWarning=x9.YAMLWarning;SH.Alias=MH.Alias;SH.isAlias=y0.isAlias;SH.isCollection=y0.isCollection;SH.isDocument=y0.isDocument;SH.isMap=y0.isMap;SH.isNode=y0.isNode;SH.isPair=y0.isPair;SH.isScalar=y0.isScalar;SH.isSeq=y0.isSeq;SH.Pair=OH.Pair;SH.Scalar=wH.Scalar;SH.YAMLMap=PH.YAMLMap;SH.YAMLSeq=IH.YAMLSeq;SH.CST=RH;SH.Lexer=AH.Lexer;SH.LineCounter=jH.LineCounter;SH.Parser=NH.Parser;SH.parse=F2.parse;SH.parseAllDocuments=F2.parseAllDocuments;SH.parseDocument=F2.parseDocument;SH.stringify=F2.stringify;SH.visit=s6.visit;SH.visitAsync=s6.visitAsync});var u5=P5(v5(),1),{program:Z$,createCommand:gV,createArgument:vV,createOption:uV,CommanderError:mV,InvalidArgumentError:dV,InvalidOptionArgumentError:pV,Command:lV,Argument:cV,Option:O4,Help:iV}=u5.default;var m5={name:"@pickled-dev/cli",version:"0.18.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/release-notes-generator":"^14.0.3"}};import PV from"path";var U0={category:"cli",provider:"claude-code",model:"sonnet"},w4=["Read","Glob","Grep","Bash"],P4=["Edit","MultiEdit","Write","NotebookEdit"];var o6=P5(r6(),1);async function K$($){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=o6.default.parse(q)}catch(q){throw Error(`Failed to parse pickled.yml: ${q}`)}return z=k9(z),JU(z),z}var GU=/\$\{([A-Z_][A-Z0-9_]*)\}/g;function k9($){if(typeof $==="string")return $.replace(GU,(Z,X)=>process.env[X]??"");if(Array.isArray($))return $.map(k9);if($!==null&&typeof $==="object"){let Z={};for(let[X,z]of Object.entries($))Z[X]=k9(z);return Z}return $}function JU($){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))KU(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)"}`)}LU(X.name,X.traps),VU(X.name,X.compareSurfaces,Z),YU(X.name,X.matrix,Z,new Set(Object.keys($.targets??{})),new Set(Object.keys($.toolsets??{none:{}}))),HU(X.name,X.expected),UU(X.name,X.verifiers,Z),WU(X)}QU($)}function QU($){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 YU($,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 H=Z[J];if(H===void 0)return;if(!Array.isArray(H))throw Error(`pickled.yml: scenario "${$}" matrix.${J} must be an array of ${Y} names`);if(H.length===0)throw Error(`pickled.yml: scenario "${$}" matrix.${J} cannot be empty (omit the field to use defaults)`);for(let W of H){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 HU($,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 UU($,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 WU($){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.`);let q=($.matrix?.toolsets??[]).filter((G)=>G!=="none");if(q.length>0&&!X&&!z)throw Error(`pickled.yml: scenario "${$.name}" declares non-none toolsets [${q.join(", ")}] but has neither expected.includes/excludes nor traps. Non-none cells skip the citation contract because the source is not injected, so requiredSources alone leaves them with no actionable answer contract. Add expected or traps, or restrict matrix.toolsets to ["none"].`)}function VU($,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 KU($,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 BU=new Set(["g","y"]),TU=new Set(["i","m","s","u","v"]);function LU($,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(BU.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 f9($,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 h9($){if(typeof $==="string")return{path:$,auditTraps:!0};return{path:$.path,auditTraps:$.audit?.traps??!0}}function M2($){let{config:Z,files:X,pairs:z,findings:q}=$,G=[],J=q.filter((U)=>U.severity==="error").length,Q=q.filter((U)=>U.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=D2($),X=K$(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=D2($),X=K$(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()}}}GH.Parser=p8});var n8=F((BH)=>{var l8=w9(),QH=$1(),J1=Z1(),YH=b4(),HH=E(),UH=b9(),c8=y9();function i8($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new UH.LineCounter||null,prettyErrors:Z}}function WH($,Z={}){let{lineCounter:X,prettyErrors:z}=i8(Z),q=new c8.Parser(X?.addNewLine),G=new l8.Composer(Z),J=Array.from(G.compose(q.parse($)));if(z&&X)for(let Q of J)Q.errors.forEach(J1.prettifyError($,X)),Q.warnings.forEach(J1.prettifyError($,X));if(J.length>0)return J;return Object.assign([],{empty:!0},G.streamInfo())}function a8($,Z={}){let{lineCounter:X,prettyErrors:z}=i8(Z),q=new c8.Parser(X?.addNewLine),G=new l8.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 J1.YAMLParseError(Q.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&X)J.errors.forEach(J1.prettifyError($,X)),J.warnings.forEach(J1.prettifyError($,X));return J}function VH($,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=a8($,X);if(!q)return null;if(q.warnings.forEach((G)=>YH.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 KH($,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(HH.isDocument($)&&!z)return $.toString(X);return new QH.Document($,z,X).toString(X)}BH.parse=VH;BH.parseAllDocuments=WH;BH.parseDocument=a8;BH.stringify=KH});var r8=F((EH)=>{var FH=w9(),MH=$1(),OH=J9(),x9=Z1(),wH=v$(),y0=E(),PH=N0(),IH=g(),RH=C0(),AH=E0(),jH=L2(),NH=E9(),SH=b9(),CH=y9(),_2=n8(),s8=h$();EH.Composer=FH.Composer;EH.Document=MH.Document;EH.Schema=OH.Schema;EH.YAMLError=x9.YAMLError;EH.YAMLParseError=x9.YAMLParseError;EH.YAMLWarning=x9.YAMLWarning;EH.Alias=wH.Alias;EH.isAlias=y0.isAlias;EH.isCollection=y0.isCollection;EH.isDocument=y0.isDocument;EH.isMap=y0.isMap;EH.isNode=y0.isNode;EH.isPair=y0.isPair;EH.isScalar=y0.isScalar;EH.isSeq=y0.isSeq;EH.Pair=PH.Pair;EH.Scalar=IH.Scalar;EH.YAMLMap=RH.YAMLMap;EH.YAMLSeq=AH.YAMLSeq;EH.CST=jH;EH.Lexer=NH.Lexer;EH.LineCounter=SH.LineCounter;EH.Parser=CH.Parser;EH.parse=_2.parse;EH.parseAllDocuments=_2.parseAllDocuments;EH.parseDocument=_2.parseDocument;EH.stringify=_2.stringify;EH.visit=s8.visit;EH.visitAsync=s8.visitAsync});var u5=P5(v5(),1),{program:X$,createCommand:mV,createArgument:dV,createOption:pV,CommanderError:lV,InvalidArgumentError:cV,InvalidOptionArgumentError:iV,Command:aV,Argument:nV,Option:O4,Help:sV}=u5.default;var m5={name:"@pickled-dev/cli",version:"0.19.1",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/release-notes-generator":"^14.0.3"}};import RV from"path";var U0={category:"cli",provider:"claude-code",model:"sonnet"},w4=["Read","Glob","Grep","Bash"],P4=["Edit","MultiEdit","Write","NotebookEdit"];var o8=P5(r8(),1);async function B$($){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=o8.default.parse(q)}catch(q){throw Error(`Failed to parse pickled.yml: ${q}`)}return z=k9(z),YU(z),z}var QU=/\$\{([A-Z_][A-Z0-9_]*)\}/g;function k9($){if(typeof $==="string")return $.replace(QU,(Z,X)=>process.env[X]??"");if(Array.isArray($))return $.map(k9);if($!==null&&typeof $==="object"){let Z={};for(let[X,z]of Object.entries($))Z[X]=k9(z);return Z}return $}function YU($){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)){if(X==="none")throw Error('pickled.yml: docs.sources cannot use the reserved id "none". That name represents the no-context matrix cell (model prior with toolset:none, or open discovery with toolset:web). Rename this source.');LU(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)"}`)}_U(X.name,X.traps),BU(X.name,X.compareSurfaces,Z),UU(X.name,X.matrix,Z,new Set(Object.keys($.targets??{})),new Set(Object.keys($.toolsets??{none:{}}))),WU(X.name,X.expected),VU(X.name,X.verifiers,Z),KU(X)}HU($)}function HU($){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 UU($,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 H=Z[J];if(H===void 0)return;if(!Array.isArray(H))throw Error(`pickled.yml: scenario "${$}" matrix.${J} must be an array of ${Y} names`);if(H.length===0)throw Error(`pickled.yml: scenario "${$}" matrix.${J} cannot be empty (omit the field to use defaults)`);for(let W of H){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",new Set([...X,"none"]),"source"),G("toolsets",q,"toolset")}function WU($,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 VU($,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 KU($){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.`);let q=($.matrix?.toolsets??[]).filter((G)=>G!=="none");if(q.length>0&&!X&&!z)throw Error(`pickled.yml: scenario "${$.name}" declares non-none toolsets [${q.join(", ")}] but has neither expected.includes/excludes nor traps. Non-none cells skip the citation contract because the source is not injected, so requiredSources alone leaves them with no actionable answer contract. Add expected or traps, or restrict matrix.toolsets to ["none"].`)}function BU($,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 LU($,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 TU=new Set(["g","y"]),DU=new Set(["i","m","s","u","v"]);function _U($,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(TU.has(Q))throw Error(`pickled.yml: scenario "${$}" trap "${z.id}" uses forbidden regex flag "${Q}" (g and y are not allowed)`);if(!DU.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 f9($,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 h9($){if(typeof $==="string")return{path:$,auditTraps:!0};return{path:$.path,auditTraps:$.audit?.traps??!0}}function F2($){let{config:Z,files:X,pairs:z,findings:q}=$,G=[],J=q.filter((U)=>U.severity==="error").length,Q=q.filter((U)=>U.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 U=[...X].sort((V,B)=>B.lineCount-V.lineCount);for(let V of U){let B=!V.relPath.includes("/"),
|
|
170
|
+
`);else{G.push("| File | Lines | Kind | Notes |"),G.push("|---|---|---|---|");let U=[...X].sort((V,B)=>B.lineCount-V.lineCount);for(let V of U){let B=!V.relPath.includes("/"),T=t8(V.lineCount,B,Z),K=V.isSymlink?`symlink \u2192 ${V.symlinkTarget?.replace(`${Z.targetRepo}/`,"")??"?"}`:"file";G.push(`| \`${V.relPath}\` | ${V.lineCount} | ${K} | ${T} |`)}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 U of z)G.push(`| \`${U.dir||"(root)"}\` | ${U.agentsExists?"\u2713":"\xB7"} | ${U.claudeExists?"\u2713":"\xB7"} | ${U.classification} | ${U.detail} |`);G.push("")}let Y=X.filter((U)=>!U.isSymlink&&U.brokenPathRefs.length+U.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 U.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 U of $.sourceTrapMatches)G.push(`- **${U.sourceId}** (\`${U.sourcePath}:L${U.line}\`) \u2014 trap \`${U.trapId}\` matched \`${U.matched}\` (${U.severity})`),G.push(` - reason: ${U.trapReason}`),G.push(` - fix: remove the stale claim, retire the trap, set \`audit.traps: ['${U.trapId}']\` to suppress just this one (other traps still apply), or set \`audit.traps: false\` if the source is deliberately stale`);G.push("")}return G.join(`
|
|
185
|
-
`)}function
|
|
186
|
-
`)}function
|
|
187
|
-
`;if(W.push(
|
|
185
|
+
`)}function M2($){return JSON.stringify($,null,2)}function O2($){let{config:Z,files:X,pairs:z,findings:q}=$,G=[],J=q.filter((U)=>U.severity==="error").length,Q=q.filter((U)=>U.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 U=[...X].sort((B,T)=>T.lineCount-B.lineCount),V=Math.max(...U.map((B)=>B.relPath.length));for(let B of U){let T=!B.relPath.includes("/"),K=t8(B.lineCount,T,Z),L=B.isSymlink?`symlink \u2192 ${B.symlinkTarget?.replace(`${Z.targetRepo}/`,"")??"?"}`:"file",D=`${B.lineCount}`.padStart(4),_=B.relPath.padEnd(V),O=K?` (${K})`:"";G.push(` ${_} ${D} lines ${L}${O}`)}}if(G.push(""),G.push("AGENTS.md / CLAUDE.md pairs"),z.length===0)G.push(" none");else for(let U of z){let V=U.dir||"(root)";G.push(` ${V}: ${U.classification} \xB7 ${U.detail}`)}G.push("");let Y=X.filter((U)=>!U.isSymlink&&U.brokenPathRefs.length+U.brokenImports.length>0);if(G.push("Broken references"),Y.length===0)G.push(" none");else for(let U of Y){G.push(` ${U.relPath}:`);for(let V of U.brokenPathRefs)G.push(` path: ${V}`);for(let V of U.brokenImports)G.push(` @-import: ${V}`)}G.push("");let H=X.filter((U)=>!U.isSymlink&&U.unresolvedCommands.length>0);if(G.push("Unresolved package-manager commands (advisory)"),H.length===0)G.push(" none");else for(let U of H){G.push(` ${U.relPath}:`);for(let V of U.unresolvedCommands)G.push(` ${V}`)}G.push("");let W=X.filter((U)=>{if(U.isSymlink)return!1;return!U.relPath.includes("/")?U.lineCount>Z.budgets.rootLines:U.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 U of W){G.push(` ${U.relPath} (${U.lineCount} lines):`);for(let V of U.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 U of $.sourceTrapMatches){let V=U.severity==="error"?"error":"warning";G.push(` [${V}] ${U.sourceId} (${U.sourcePath}:L${U.line}): trap ${U.trapId} matched "${U.matched}"`),G.push(` reason: ${U.trapReason}`),G.push(` fix: remove the stale claim, retire the trap, set audit.traps: ['${U.trapId}'] to suppress just this trap (others still apply), or set audit.traps: false if deliberately stale`)}return G.join(`
|
|
186
|
+
`)}function t8($,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 T$,lstatSync as qZ,readFileSync as R2,readlinkSync as EU,statSync as bU}from"fs";import{dirname as A2,isAbsolute as yU,join as g9,relative as xU,resolve as v9}from"path";var{Glob:zZ}=globalThis.Bun;var w2=["node_modules/**","**/node_modules/**",".git/**","**/.git/**","dist/**","**/dist/**","build/**","**/build/**",".next/**","**/.next/**",".source/**","**/.source/**","out/**","**/out/**",".turbo/**","**/.turbo/**",".cache/**","**/.cache/**",".runs/**","**/.runs/**","coverage/**","**/coverage/**","**/__fixtures__/**","**/tests/**/fixture/**","**/tests/**/fixtures/**","**/test/**/fixture/**","**/test/**/fixtures/**"],L$={targetRepo:".",budgets:{rootLines:120,nestedWarnLines:200},ignore:w2,intentionalDifferentPairs:[],knownCommands:[]};function P2($){if(!$)return L$;return{targetRepo:$.targetRepo??L$.targetRepo,budgets:{rootLines:$.budgets?.rootLines??L$.budgets.rootLines,nestedWarnLines:$.budgets?.nestedWarnLines??L$.budgets.nestedWarnLines},ignore:$.ignore??w2,intentionalDifferentPairs:$.intentionalDifferentPairs??[],knownCommands:$.knownCommands??[]}}import{existsSync as AU}from"fs";import{join as jU,resolve as NU}from"path";function x0($){let Z=[],X=[];for(let z of $.traps){let q=FU($.response,z);if(q)Z.push(q);else X.push(z.id)}return{fired:Z,avoided:X}}function FU($,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:e8($,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:e8($,z.index,z[0].length),index:z.index}}return null}function e8($,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 I2 from"path";var{Glob:$Z}=globalThis.Bun;var MU=262144,OU=4194304;function wU($){return $.startsWith("http://")||$.startsWith("https://")}async function PU($,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 IU($,Z,X,z){let q=I2.isAbsolute(Z)?Z:I2.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:I2.basename(q),type:"file",auditTraps:z}}async function RU($,Z,X,z,q){let G=new $Z(Z.path),J=(Z.exclude??[]).map((B)=>new $Z(B)),Q=[];for await(let B of G.scan({cwd:X,onlyFiles:!0,followSymlinks:!1})){if(J.some((T)=>T.match(B)))continue;Q.push(B)}Q.sort();let Y=Z.maxBytes??MU,H=Math.max(Y,OU),W=[],U=0;for(let B of Q){let T=I2.resolve(X,B),K=await Bun.file(T).text(),L=`// === ${B} ===
|
|
187
|
+
`;if(W.push(L,K),!K.endsWith(`
|
|
188
188
|
`))W.push(`
|
|
189
|
-
`);if(U+=
|
|
190
|
-
`)X++;return X}var
|
|
191
|
-
`)?W:W+1;return{relPath:Z,absPath:X,isSymlink:G,symlinkTarget:J,realRelPath:Q,lineCount:U,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 lU($){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 cU($){return $.replace(/```[\s\S]*?```/g,"")}function iU($,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=j2(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:H,claude:W}=J,U=`${H.relPath}:${W.relPath}`,V=`${W.relPath}:${H.relPath}`;if(z.has(U)||z.has(V)){q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"intentional-different",detail:`allowlisted: ${H.lineCount}L vs ${W.lineCount}L`});continue}if(H.isSymlink&&H.symlinkTarget===W.absPath||W.isSymlink&&W.symlinkTarget===H.absPath){let T=H.isSymlink?"CLAUDE.md":"AGENTS.md";q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"linked",detail:`canonical: ${T}`});continue}let L=A2(H.absPath,"utf8"),K=A2(W.absPath,"utf8");if(L===K)q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`byte-for-byte duplicate (${H.lineCount}L), not symlinked`});else q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`divergent (${H.lineCount}L vs ${W.lineCount}L), not in intentional-different allowlist`})}return q.sort((G,J)=>G.dir.localeCompare(J.dir)),q}function aU($,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 _0($){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 u9($){let Z=nU($);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 nU($){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 L$($){let Z=u9($.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],H,W,U;if(G.length===0)H="NO",W=0,U="No citations in response";else if(Q.length===G.length)H="NO",W=0,U=`All cited sources are unknown: ${Q.join(", ")}`;else if(J.length===0&&Q.length===0)H="YES",W=100,U=Y.length>0?`All required sources cited: ${Y.join(", ")}`:`Cited registered sources: ${G.join(", ")}`;else{H="PARTIAL";let V=Y.length>0?Y.length:1,B=Y.length-J.length,L=Y.length>0?B/V*100:60,K=Q.length*15;W=Math.max(0,Math.min(100,Math.round(L-K)));let T=[];if(J.length>0)T.push(`missing: ${J.join(", ")}`);if(Q.length>0)T.push(`unknown: ${Q.join(", ")}`);U=T.join("; ")}return{answerable:H,confidence:W,reason:U,citations:{cited:G,required:Y,missing:J,unknown:Q}}}function S2($){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 s0="0.40.1";var GZ=!1,r0=void 0,m9=void 0,sU=void 0,rU=void 0,oU=void 0,JZ=void 0,tU=void 0,C2=void 0,d9=void 0,QZ=void 0,p9=void 0,E2=void 0,YZ=void 0;function HZ($,Z={auto:!1}){if(GZ)throw Error(`you must \`import '@anthropic-ai/sdk/shims/${$.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(r0)throw Error(`can't \`import '@anthropic-ai/sdk/shims/${$.kind}'\` after \`import '@anthropic-ai/sdk/shims/${r0}'\``);GZ=Z.auto,r0=$.kind,m9=$.fetch,sU=$.Request,rU=$.Response,oU=$.Headers,JZ=$.FormData,tU=$.Blob,C2=$.File,d9=$.ReadableStream,QZ=$.getMultipartRequestOptions,p9=$.getDefaultAgent,E2=$.fileFromPath,YZ=$.isFsReadStream}class l9{constructor($){this.body=$}get[Symbol.toStringTag](){return"MultipartBody"}}function UZ({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 l9(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 $W}from"fs";function WZ(){let $=UZ();function Z(X){return X instanceof $W}return{...$,isFsReadStream:Z}}var c9=()=>{if(!r0)HZ(WZ(),{auto:!0})};c9();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 o0({message:X,cause:u2(Z)});let q=Z;if($===400)return new b2($,q,X,z);if($===401)return new y2($,q,X,z);if($===403)return new x2($,q,X,z);if($===404)return new k2($,q,X,z);if($===409)return new f2($,q,X,z);if($===422)return new h2($,q,X,z);if($===429)return new g2($,q,X,z);if($>=500)return new v2($,q,X,z);return new u($,q,X,z)}}class i extends u{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}}class o0 extends u{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}}class Y1 extends o0{constructor({message:$}={}){super({message:$??"Request timed out."})}}class b2 extends u{}class y2 extends u{}class x2 extends u{}class k2 extends u{}class f2 extends u{}class h2 extends u{}class g2 extends u{}class v2 extends u{}var m2=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},t0=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($)},t;class k0{constructor(){t.set(this,void 0),this.buffer=new Uint8Array,m2(this,t,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=XW(this.buffer,t0(this,t,"f")))!=null){if(q.carriage&&t0(this,t,"f")==null){m2(this,t,q.index,"f");continue}if(t0(this,t,"f")!=null&&(q.index!==t0(this,t,"f")+1||q.carriage)){z.push(this.decodeText(this.buffer.slice(0,t0(this,t,"f")-1))),this.buffer=this.buffer.slice(t0(this,t,"f")),m2(this,t,null,"f");continue}let G=t0(this,t,"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),m2(this,t,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(`
|
|
189
|
+
`);if(U+=L.length+K.length,U>H)throw Error(`Codebase source "${$}" exceeded hard cap of ${H} bytes (matched glob ${Z.path}). Tighten the glob or raise the limit via maxBytes (and accept the request-size risk).`)}if(U>Y)q?.(` warn: codebase source [${$}] is ${U} 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 ZZ($,Z,X,z){let{path:q,auditTraps:G}=h9(Z);if(typeof Z!=="string"&&Z.type==="codebase")return RU($,Z,X,G,z);if(wU(q))return PU($,q,G);return IU($,q,X,G)}async function Q1($,Z,X){let z=Object.entries($);return await Promise.all(z.map(([G,J])=>ZZ(G,J,Z,X)))}async function XZ($){if(!AU(jU($,"pickled.yml")))return{matches:[],findings:[]};let Z=await B$($),X=Z.docs?.sources;if(!X||Object.keys(X).length===0)return{matches:[],findings:[]};let z={};for(let[H,W]of Object.entries(X)){let U=typeof W==="string"?W:W.path;if(U.startsWith("http://")||U.startsWith("https://"))continue;z[H]=W}if(Object.keys(z).length===0)return{matches:[],findings:[]};let q=[],G=new Map;for(let H of Z.scenarios)for(let W of H.traps??[])q.push(W),G.set(W,W.auditSeverity??"warning");if(q.length===0)return{matches:[],findings:[]};let J=await Q1(z,$),Q=[],Y=[];for(let H of J){let W=H.auditTraps;if(W===!1)continue;let U=Array.isArray(W)?new Set(W):null,V=H.type==="codebase"&&H.matchedFiles?await SU(H.matchedFiles,$,H.source):[{path:H.source,content:H.content}];for(let B of V)for(let T of q){if(U?.has(T.id))continue;let{fired:K}=x0({response:B.content,traps:[T]}),L=K[0];if(!L)continue;let D=CU(B.content,L.index),_=G.get(T)??"warning";Q.push({sourceId:H.id,sourcePath:B.path,trapId:L.id,trapReason:L.reason,matched:L.matched,snippet:L.snippet,line:D,severity:_}),Y.push({severity:_,category:"trap-source-match",file:B.path,message:`source [${H.id}] matches trap '${L.id}' ("${L.matched}") in ${B.path}. ${L.reason} Fix: remove the stale claim from the source, retire the trap if no longer relevant, set audit.traps: ['${L.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 SU($,Z,X){let z=[];for(let q of $)try{let G=await Bun.file(NU(Z,q)).text();z.push({path:q,content:G})}catch{}return z}function CU($,Z){let X=1,z=Math.min(Z,$.length);for(let q=0;q<z;q++)if($[q]===`
|
|
190
|
+
`)X++;return X}var kU=["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 j2($){let Z=P2($),X=v9(Z.targetRepo);if(!T$(X))throw Error(`targetRepo does not exist: ${X}`);let z=new Set;for(let H of kU){let W=new zZ(H);for await(let U of W.scan({cwd:X,dot:!0,onlyFiles:!1,followSymlinks:!1})){if(Z.ignore.some((T)=>new zZ(T).match(U)))continue;let V=g9(X,U),B=qZ(V);if(B.isFile()){z.add(U);continue}if(B.isSymbolicLink())try{if(bU(V).isFile())z.add(U)}catch{}}}let q=[];for(let H of[...z].sort())q.push(await fU(X,H,g9(X,H),Z));let G=nU(q,Z),J=sU(q,G,Z),{matches:Q,findings:Y}=await XZ(X);return{config:Z,files:q,pairs:G,findings:[...J,...Y],sourceTrapMatches:Q}}async function fU($,Z,X,z){let G=qZ(X).isSymbolicLink(),J=null,Q=Z;if(G){let V=EU(X),B=yU(V)?V:v9(A2(X),V);if(J=B,T$(B))Q=xU($,B)}let Y=G&&J&&T$(J)?J:X,H=R2(Y,"utf8"),W=(H.match(/\n/g)??[]).length,U=H.endsWith(`
|
|
191
|
+
`)?W:W+1;return{relPath:Z,absPath:X,isSymlink:G,symlinkTarget:J,realRelPath:Q,lineCount:U,brokenPathRefs:gU(H,$,Z),brokenImports:uU(H,A2(X)),unresolvedCommands:lU(H,$,z.knownCommands),sections:cU(H)}}function hU($){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 gU($,Z,X){let z=aU($),q=A2(X),G=hU(X),J=new Set,Q=/`([^`\n]{2,200})`/g,Y;Y=Q.exec(z);while(Y!==null){let H=Y[1].trim().replace(/[#?].*$/,"");if(iU(H)&&!vU(Z,H,q,G).found)J.add(H);Y=Q.exec(z)}return[...J].sort()}function vU($,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(T$(`${$}/${J}`))return{found:!0,resolvedAs:J}}return{found:!1}}function uU($,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:v9(Z,G);if(!T$(J))X.add(G);q=z.exec($)}return[...X].sort()}var mU=["bun","pnpm","npm","yarn"],dU=new Set(["install","add","remove","update","i","audit","list","ls","why","outdated","exec","run","create","init","x"]),pU={bun:new Set(["build","test","link","unlink","upgrade"])};function lU($,Z,X){let z=new Set,q=g9(Z,"package.json"),G=new Set;if(T$(q))try{let Q=JSON.parse(R2(q,"utf8"));G=new Set(Object.keys(Q.scripts??{}))}catch{}let J=new Set(X.map((Q)=>Q.trim()));for(let Q of mU){let Y=new RegExp(`\\b${Q}\\s+(?:run\\s+|--filter\\s+\\S+\\s+(?:run\\s+)?)?([a-zA-Z][\\w:.\\-]*)`,"g"),H;H=Y.exec($);while(H!==null){let W=H[1];if(!G.has(W)&&!J.has(`${Q} ${W}`)&&!J.has(`${Q} run ${W}`)&&!dU.has(W)&&!pU[Q]?.has(W))z.add(`${Q} ${W}`);H=Y.exec($)}}return[...z].sort()}function cU($){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 iU($){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 aU($){return $.replace(/```[\s\S]*?```/g,"")}function nU($,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=A2(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:H,claude:W}=J,U=`${H.relPath}:${W.relPath}`,V=`${W.relPath}:${H.relPath}`;if(z.has(U)||z.has(V)){q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"intentional-different",detail:`allowlisted: ${H.lineCount}L vs ${W.lineCount}L`});continue}if(H.isSymlink&&H.symlinkTarget===W.absPath||W.isSymlink&&W.symlinkTarget===H.absPath){let L=H.isSymlink?"CLAUDE.md":"AGENTS.md";q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"linked",detail:`canonical: ${L}`});continue}let T=R2(H.absPath,"utf8"),K=R2(W.absPath,"utf8");if(T===K)q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`byte-for-byte duplicate (${H.lineCount}L), not symlinked`});else q.push({dir:G,agentsExists:Q,claudeExists:Y,classification:"unexpected-duplicate",detail:`divergent (${H.lineCount}L vs ${W.lineCount}L), not in intentional-different allowlist`})}return q.sort((G,J)=>G.dir.localeCompare(J.dir)),q}function sU($,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 F0($){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 u9($){let Z=rU($);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 rU($){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 D$($){let Z=u9($.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],H,W,U;if(G.length===0)H="NO",W=0,U="No citations in response";else if(Q.length===G.length)H="NO",W=0,U=`All cited sources are unknown: ${Q.join(", ")}`;else if(J.length===0&&Q.length===0)H="YES",W=100,U=Y.length>0?`All required sources cited: ${Y.join(", ")}`:`Cited registered sources: ${G.join(", ")}`;else{H="PARTIAL";let V=Y.length>0?Y.length:1,B=Y.length-J.length,T=Y.length>0?B/V*100:60,K=Q.length*15;W=Math.max(0,Math.min(100,Math.round(T-K)));let L=[];if(J.length>0)L.push(`missing: ${J.join(", ")}`);if(Q.length>0)L.push(`unknown: ${Q.join(", ")}`);U=L.join("; ")}return{answerable:H,confidence:W,reason:U,citations:{cited:G,required:Y,missing:J,unknown:Q}}}function N2($){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 s0="0.40.1";var GZ=!1,r0=void 0,m9=void 0,oU=void 0,tU=void 0,eU=void 0,JZ=void 0,$W=void 0,S2=void 0,d9=void 0,QZ=void 0,p9=void 0,C2=void 0,YZ=void 0;function HZ($,Z={auto:!1}){if(GZ)throw Error(`you must \`import '@anthropic-ai/sdk/shims/${$.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(r0)throw Error(`can't \`import '@anthropic-ai/sdk/shims/${$.kind}'\` after \`import '@anthropic-ai/sdk/shims/${r0}'\``);GZ=Z.auto,r0=$.kind,m9=$.fetch,oU=$.Request,tU=$.Response,eU=$.Headers,JZ=$.FormData,$W=$.Blob,S2=$.File,d9=$.ReadableStream,QZ=$.getMultipartRequestOptions,p9=$.getDefaultAgent,C2=$.fileFromPath,YZ=$.isFsReadStream}class l9{constructor($){this.body=$}get[Symbol.toStringTag](){return"MultipartBody"}}function UZ({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 l9(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 XW}from"fs";function WZ(){let $=UZ();function Z(X){return X instanceof XW}return{...$,isFsReadStream:Z}}var c9=()=>{if(!r0)HZ(WZ(),{auto:!0})};c9();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 o0({message:X,cause:v2(Z)});let q=Z;if($===400)return new E2($,q,X,z);if($===401)return new b2($,q,X,z);if($===403)return new y2($,q,X,z);if($===404)return new x2($,q,X,z);if($===409)return new k2($,q,X,z);if($===422)return new f2($,q,X,z);if($===429)return new h2($,q,X,z);if($>=500)return new g2($,q,X,z);return new u($,q,X,z)}}class i extends u{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}}class o0 extends u{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}}class Y1 extends o0{constructor({message:$}={}){super({message:$??"Request timed out."})}}class E2 extends u{}class b2 extends u{}class y2 extends u{}class x2 extends u{}class k2 extends u{}class f2 extends u{}class h2 extends u{}class g2 extends u{}var u2=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},t0=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($)},t;class k0{constructor(){t.set(this,void 0),this.buffer=new Uint8Array,u2(this,t,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=qW(this.buffer,t0(this,t,"f")))!=null){if(q.carriage&&t0(this,t,"f")==null){u2(this,t,q.index,"f");continue}if(t0(this,t,"f")!=null&&(q.index!==t0(this,t,"f")+1||q.carriage)){z.push(this.decodeText(this.buffer.slice(0,t0(this,t,"f")-1))),this.buffer=this.buffer.slice(t0(this,t,"f")),u2(this,t,null,"f");continue}let G=t0(this,t,"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),u2(this,t,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
193
|
`)}}t=new WeakMap;k0.NEWLINE_CHARS=new Set([`
|
|
194
|
-
`,"\r"]);k0.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function
|
|
195
|
-
`);z.enqueue(J)}catch(q){z.error(q)}},async cancel(){await Z.return?.()}})}}async function*
|
|
196
|
-
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],q}if(this.chunks.push($),$.startsWith(":"))return null;let[Z,X,z]=GW($,":");if(z.startsWith(" "))z=z.substring(1);if(Z==="event")this.event=z;else if(Z==="data")this.data.push(z);return null}}function GW($,Z){let X=$.indexOf(Z);if(X!==-1)return[$.substring(0,X),Z,$.substring(X+Z.length)];return[$,"",""]}var JW=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function",QW=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&U1($),U1=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function";async function BZ($,Z,X){if($=await $,QW($))return $;if(JW($)){let q=await $.blob();Z||(Z=new URL($.url).pathname.split(/[\\/]/).pop()??"unknown_file");let G=U1(q)?[await q.arrayBuffer()]:[q];return new C2(G,Z,X)}let z=await YW($);if(Z||(Z=UW($)??"unknown_file"),!X?.type){let q=z[0]?.type;if(typeof q==="string")X={...X,type:q}}return new C2(z,Z,X)}async function YW($){let Z=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)Z.push($);else if(U1($))Z.push(await $.arrayBuffer());else if(WW($))for await(let X of $)Z.push(X);else throw Error(`Unexpected data type: ${typeof $}; constructor: ${$?.constructor?.name}; props: ${HW($)}`);return Z}function HW($){return`[${Object.getOwnPropertyNames($).map((X)=>`"${X}"`).join(", ")}]`}function UW($){return a9($.name)||a9($.filename)||a9($.path)?.split(/[\\/]/).pop()}var a9=($)=>{if(typeof $==="string")return $;if(typeof Buffer<"u"&&$ instanceof Buffer)return String($);return},WW=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function",n9=($)=>$&&typeof $==="object"&&$.body&&$[Symbol.toStringTag]==="MultipartBody";var KW=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},BW=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($)},d2;c9();async function FZ($){let{response:Z}=$;if($.options.stream){if(D$("response",Z.status,Z.url,Z.headers,Z.body),$.options.__streamClass)return $.options.__streamClass.fromSSEResponse(Z,$.controller);return e.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 D$("response",Z.status,Z.url,Z.headers,J),MZ(J,Z)}let G=await Z.text();return D$("response",Z.status,Z.url,Z.headers,G),G}function MZ($,Z){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:Z.headers.get("request-id"),enumerable:!1})}class l2 extends Promise{constructor($,Z=FZ){super((X)=>{X(null)});this.responsePromise=$,this.parseResponse=Z}_thenUnwrap($){return new l2(this.responsePromise,async(Z)=>MZ($(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 r9{constructor({baseURL:$,maxRetries:Z=2,timeout:X=600000,httpAgent:z,fetch:q}){this.baseURL=$,this.maxRetries=s9("maxRetries",Z),this.timeout=s9("timeout",X),this.httpAgent=z,this.fetch=q??m9}authHeaders($){return{}}defaultHeaders($){return{Accept:"application/json","Content-Type":"application/json","User-Agent":this.getUserAgent(),..._W(),...this.authHeaders($)}}validateHeaders($,Z){}defaultIdempotencyKey(){return`stainless-node-retry-${PW()}`}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&&U1(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:n9(X.body)?X.body.body:X.body?JSON.stringify(X.body,null,2):null,Y=this.calculateContentLength(Q),H=this.buildURL(q,G);if("timeout"in X)s9("timeout",X.timeout);X.timeout=X.timeout??this.timeout;let W=X.httpAgent??this.httpAgent??p9(H),U=X.timeout+1000;if(typeof W?.options?.timeout==="number"&&U>(W.options.timeout??0))W.options.timeout=U;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:H,timeout:X.timeout}}buildHeaders({options:$,headers:Z,contentLength:X,retryCount:z}){let q={};if(X)q["content-length"]=X;let G=this.defaultHeaders($);if(_Z(q,G),_Z(q,Z),n9($.body)&&r0!=="node")delete q["content-type"];if(p2(G,"x-stainless-retry-count")===void 0&&p2(Z,"x-stainless-retry-count")===void 0)q["x-stainless-retry-count"]=String(z);if(p2(G,"x-stainless-timeout")===void 0&&p2(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 l2(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}),D$("request",G,X,q.headers),X.signal?.aborted)throw new i;let Q=new AbortController,Y=await this.fetchWithTimeout(G,q,J,Q).catch(u2);if(Y instanceof Error){if(X.signal?.aborted)throw new i;if(Z)return this.retryRequest(X,Z);if(Y.name==="AbortError")throw new Y1;throw new o0({cause:Y})}let H=i9(Y.headers);if(!Y.ok){if(Z&&this.shouldRetry(Y)){let K=`retrying, ${Z} attempts remaining`;return D$(`response (error; ${K})`,Y.status,G,H),this.retryRequest(X,Z,H)}let W=await Y.text().catch((K)=>u2(K).message),U=FW(W),V=U?void 0:W;throw D$(`response (error; ${Z?"(error; no more retries left)":"(error; not retryable)"})`,Y.status,G,H,V),this.makeStatusError(Y.status,U,V,H)}return{response:Y,options:X,controller:Q}}requestAPIList($,Z){let X=this.makeRequest(Z,null);return new OZ(this,X,$)}buildURL($,Z){let X=OW($)?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,H=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(H)})}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 ${s0}`}}class o9{constructor($,Z,X,z){d2.set(this,void 0),KW(this,d2,$,"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 BW(this,d2,"f").requestAPIList(this.constructor,Z)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(d2=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let Z of $.getPaginatedItems())yield Z}}class OZ extends l2{constructor($,Z,X){super(Z,async(z)=>new X($,z.response,await FZ(z),z.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let Z of $)yield Z}}var i9=($)=>{return new Proxy(Object.fromEntries($.entries()),{get(Z,X){let z=X.toString();return Z[z.toLowerCase()]||Z[z]}})},TW={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},z0=($)=>{return typeof $==="object"&&$!==null&&!wZ($)&&Object.keys($).every((Z)=>PZ(TW,Z))},LW=()=>{if(typeof Deno<"u"&&Deno.build!=null)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":s0,"X-Stainless-OS":LZ(Deno.build.os),"X-Stainless-Arch":TZ(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":s0,"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":s0,"X-Stainless-OS":LZ(process.platform),"X-Stainless-Arch":TZ(process.arch),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":process.version};let $=DW();if($)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":s0,"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":s0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function DW(){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 TZ=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},LZ=($)=>{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"},DZ,_W=()=>{return DZ??(DZ=LW())},FW=($)=>{try{return JSON.parse($)}catch(Z){return}},MW=/^[a-z][a-z0-9+.-]*:/i,OW=($)=>{return MW.test($)},wW=($)=>new Promise((Z)=>setTimeout(Z,$)),s9=($,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},u2=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null)try{return Error(JSON.stringify($))}catch{}return Error(String($))};var c2=($)=>{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 PZ($,Z){return Object.prototype.hasOwnProperty.call($,Z)}function _Z($,Z){for(let X in Z){if(!PZ(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 D$($,...Z){if(typeof process<"u"&&process?.env?.DEBUG==="true")console.log(`Anthropic:DEBUG:${$}`,...Z)}var PW=()=>{return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,($)=>{let Z=Math.random()*16|0;return($==="x"?Z:Z&3|8).toString(16)})},IZ=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},IW=($)=>{return typeof $?.get==="function"};var p2=($,Z)=>{let X=Z.toLowerCase();if(IW($)){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 F0 extends o9{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 c{constructor($){this._client=$}}class _$ extends c{retrieve($,Z){return this._client.get(`/v1/models/${$}?beta=true`,Z)}list($={},Z){if(z0($))return this.list({},$);return this._client.getAPIList("/v1/models?beta=true",W1,{query:$,...Z})}}class W1 extends F0{}_$.BetaModelInfosPage=W1;class F${constructor($,Z){this.iterator=$,this.controller=Z}async*decoder(){let $=new k0;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 F$(H1($.body),Z)}}class M$ extends c{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(z0(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(z0($))return this.list({},$);let{betas:X,...z}=$;return this._client.getAPIList("/v1/messages/batches?beta=true",V1,{query:z,...Z,headers:{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString(),...Z?.headers}})}delete($,Z={},X){if(z0(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(z0(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(z0(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)=>F$.fromResponse(J.response,J.controller))}}class V1 extends F0{}M$.BetaMessageBatchesPage=V1;var NW=($)=>{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 $},SW=($)=>{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 $},CW=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},i2=($)=>JSON.parse(CW(SW(O$(NW($)))));var a=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($)},q0,f0,K1,a2,B1,T1,n2,L1,M0,D1,s2,r2,w$,o2,t2,t9,RZ,e9,$5,Z5,X5,AZ,jZ="__json_buf";class _1{constructor(){q0.add(this),this.messages=[],this.receivedMessages=[],f0.set(this,void 0),this.controller=new AbortController,K1.set(this,void 0),a2.set(this,()=>{}),B1.set(this,()=>{}),T1.set(this,void 0),n2.set(this,()=>{}),L1.set(this,()=>{}),M0.set(this,{}),D1.set(this,!1),s2.set(this,!1),r2.set(this,!1),w$.set(this,!1),o2.set(this,void 0),t2.set(this,void 0),e9.set(this,($)=>{if(a(this,s2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new i;if($ instanceof i)return a(this,r2,!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($)))}),a(this,K1,new Promise(($,Z)=>{a(this,a2,$,"f"),a(this,B1,Z,"f")}),"f"),a(this,T1,new Promise(($,Z)=>{a(this,n2,$,"f"),a(this,L1,Z,"f")}),"f"),N(this,K1,"f").catch(()=>{}),N(this,T1,"f").catch(()=>{})}get response(){return N(this,o2,"f")}get request_id(){return N(this,t2,"f")}async withResponse(){let $=await N(this,K1,"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")},N(this,e9,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal;if(z){if(z.aborted)this.controller.abort();z.addEventListener("abort",()=>this.controller.abort())}N(this,q0,"m",$5).call(this);let{response:q,data:G}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let J of G)N(this,q0,"m",Z5).call(this,J);if(G.controller.signal?.aborted)throw new i;N(this,q0,"m",X5).call(this)}_connected($){if(this.ended)return;a(this,o2,$,"f"),a(this,t2,$?.headers.get("request-id"),"f"),N(this,a2,"f").call(this,$),this._emit("connect")}get ended(){return N(this,D1,"f")}get errored(){return N(this,s2,"f")}get aborted(){return N(this,r2,"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(a(this,w$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){a(this,w$,!0,"f"),await N(this,T1,"f")}get currentMessage(){return N(this,f0,"f")}async finalMessage(){return await this.done(),N(this,q0,"m",t9).call(this)}async finalText(){return await this.done(),N(this,q0,"m",RZ).call(this)}_emit($,...Z){if(N(this,D1,"f"))return;if($==="end")a(this,D1,!0,"f"),N(this,n2,"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,B1,"f").call(this,z),N(this,L1,"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,B1,"f").call(this,z),N(this,L1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",N(this,q0,"m",t9).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}N(this,q0,"m",$5).call(this),this._connected(null);let z=e.fromReadableStream($,this.controller);for await(let q of z)N(this,q0,"m",Z5).call(this,q);if(z.controller.signal?.aborted)throw new i;N(this,q0,"m",X5).call(this)}[(f0=new WeakMap,K1=new WeakMap,a2=new WeakMap,B1=new WeakMap,T1=new WeakMap,n2=new WeakMap,L1=new WeakMap,M0=new WeakMap,D1=new WeakMap,s2=new WeakMap,r2=new WeakMap,w$=new WeakMap,o2=new WeakMap,t2=new WeakMap,e9=new WeakMap,q0=new WeakSet,t9=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},RZ=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");let Z=this.receivedMessages.at(-1).content.filter((X)=>X.type==="text").map((X)=>X.text);if(Z.length===0)throw new A("stream ended without producing a content block with type=text");return Z.join(" ")},$5=function(){if(this.ended)return;a(this,f0,void 0,"f")},Z5=function(Z){if(this.ended)return;let X=N(this,q0,"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":{a(this,f0,X,"f");break}case"content_block_start":case"message_delta":break}},X5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=N(this,f0,"f");if(!Z)throw new A("request ended without sending any chunks");return a(this,f0,void 0,"f"),Z},AZ=function(Z){let X=N(this,f0,"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=i2(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 e(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function NZ($){}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"};class e0 extends c{constructor(){super(...arguments);this.batches=new M$(this._client)}create($,Z){let{betas:X,...z}=$;if(z.model in SZ)console.warn(`The model '${z.model}' is deprecated and will reach end-of-life on ${SZ[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 _1.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}})}}e0.Batches=M$;e0.BetaMessageBatchesPage=V1;class O0 extends c{constructor(){super(...arguments);this.models=new _$(this._client),this.messages=new e0(this._client)}}O0.Models=_$;O0.BetaModelInfosPage=W1;O0.Messages=e0;class P$ extends c{create($,Z){return this._client.post("/v1/complete",{body:$,timeout:this._client._options.timeout??600000,...Z,stream:$.stream??!1})}}class I$ extends c{create($,Z){return this._client.post("/v1/messages/batches",{body:$,...Z})}retrieve($,Z){return this._client.get(`/v1/messages/batches/${$}`,Z)}list($={},Z){if(z0($))return this.list({},$);return this._client.getAPIList("/v1/messages/batches",F1,{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)=>F$.fromResponse(q.response,q.controller))}}class F1 extends F0{}I$.MessageBatchesPage=F1;var n=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},S=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($)},G0,h0,M1,e2,O1,w1,$4,P1,w0,I1,Z4,X4,R$,z4,q4,z5,CZ,q5,G5,J5,Q5,EZ,bZ="__json_buf";class R1{constructor(){G0.add(this),this.messages=[],this.receivedMessages=[],h0.set(this,void 0),this.controller=new AbortController,M1.set(this,void 0),e2.set(this,()=>{}),O1.set(this,()=>{}),w1.set(this,void 0),$4.set(this,()=>{}),P1.set(this,()=>{}),w0.set(this,{}),I1.set(this,!1),Z4.set(this,!1),X4.set(this,!1),R$.set(this,!1),z4.set(this,void 0),q4.set(this,void 0),q5.set(this,($)=>{if(n(this,Z4,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new i;if($ instanceof i)return n(this,X4,!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($)))}),n(this,M1,new Promise(($,Z)=>{n(this,e2,$,"f"),n(this,O1,Z,"f")}),"f"),n(this,w1,new Promise(($,Z)=>{n(this,$4,$,"f"),n(this,P1,Z,"f")}),"f"),S(this,M1,"f").catch(()=>{}),S(this,w1,"f").catch(()=>{})}get response(){return S(this,z4,"f")}get request_id(){return S(this,q4,"f")}async withResponse(){let $=await S(this,M1,"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 R1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new R1;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")},S(this,q5,"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())}S(this,G0,"m",G5).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)S(this,G0,"m",J5).call(this,J);if(G.controller.signal?.aborted)throw new i;S(this,G0,"m",Q5).call(this)}_connected($){if(this.ended)return;n(this,z4,$,"f"),n(this,q4,$?.headers.get("request-id"),"f"),S(this,e2,"f").call(this,$),this._emit("connect")}get ended(){return S(this,I1,"f")}get errored(){return S(this,Z4,"f")}get aborted(){return S(this,X4,"f")}abort(){this.controller.abort()}on($,Z){return(S(this,w0,"f")[$]||(S(this,w0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=S(this,w0,"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(S(this,w0,"f")[$]||(S(this,w0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(n(this,R$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){n(this,R$,!0,"f"),await S(this,w1,"f")}get currentMessage(){return S(this,h0,"f")}async finalMessage(){return await this.done(),S(this,G0,"m",z5).call(this)}async finalText(){return await this.done(),S(this,G0,"m",CZ).call(this)}_emit($,...Z){if(S(this,I1,"f"))return;if($==="end")n(this,I1,!0,"f"),S(this,$4,"f").call(this);let X=S(this,w0,"f")[$];if(X)S(this,w0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!S(this,R$,"f")&&!X?.length)Promise.reject(z);S(this,O1,"f").call(this,z),S(this,P1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!S(this,R$,"f")&&!X?.length)Promise.reject(z);S(this,O1,"f").call(this,z),S(this,P1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",S(this,G0,"m",z5).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}S(this,G0,"m",G5).call(this),this._connected(null);let z=e.fromReadableStream($,this.controller);for await(let q of z)S(this,G0,"m",J5).call(this,q);if(z.controller.signal?.aborted)throw new i;S(this,G0,"m",Q5).call(this)}[(h0=new WeakMap,M1=new WeakMap,e2=new WeakMap,O1=new WeakMap,w1=new WeakMap,$4=new WeakMap,P1=new WeakMap,w0=new WeakMap,I1=new WeakMap,Z4=new WeakMap,X4=new WeakMap,R$=new WeakMap,z4=new WeakMap,q4=new WeakMap,q5=new WeakMap,G0=new WeakSet,z5=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},CZ=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(" ")},G5=function(){if(this.ended)return;n(this,h0,void 0,"f")},J5=function(Z){if(this.ended)return;let X=S(this,G0,"m",EZ).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:yZ(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":{n(this,h0,X,"f");break}case"content_block_start":case"message_delta":break}},Q5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=S(this,h0,"f");if(!Z)throw new A("request ended without sending any chunks");return n(this,h0,void 0,"f"),Z},EZ=function(Z){let X=S(this,h0,"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[bZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,bZ,{value:q,enumerable:!1,writable:!0}),q)z.input=i2(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:yZ(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 e(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function yZ($){}class g0 extends c{constructor(){super(...arguments);this.batches=new I$(this._client)}create($,Z){if($.model in xZ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${xZ[$.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 R1.createMessage(this,$,Z)}countTokens($,Z){return this._client.post("/v1/messages/count_tokens",{body:$,...Z})}}var xZ={"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"};g0.Batches=
|
|
194
|
+
`,"\r"]);k0.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function qW($,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 VZ($){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 H1($){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 e{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 GW($,Z)){if(G.event==="completion")try{yield JSON.parse(G.data)}catch(J){throw console.error("Could not parse message into JSON:",G.data),console.error("From chunk:",G.raw),J}if(G.event==="message_start"||G.event==="message_delta"||G.event==="message_stop"||G.event==="content_block_start"||G.event==="content_block_delta"||G.event==="content_block_stop")try{yield JSON.parse(G.data)}catch(J){throw console.error("Could not parse message into JSON:",G.data),console.error("From chunk:",G.raw),J}if(G.event==="ping")continue;if(G.event==="error")throw u.generate(void 0,`SSE Error: ${G.data}`,G.data,i9($.headers))}q=!0}catch(G){if(G instanceof Error&&G.name==="AbortError")return;throw G}finally{if(!q)Z.abort()}}return new e(z,Z)}static fromReadableStream($,Z){let X=!1;async function*z(){let G=new k0,J=H1($);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 e(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 e(()=>z($),this.controller),new e(()=>z(Z),this.controller)]}toReadableStream(){let $=this,Z,X=new TextEncoder;return new d9({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*GW($,Z){if(!$.body)throw Z.abort(),new A("Attempted to iterate over a response with no body");let X=new KZ,z=new k0,q=H1($.body);for await(let G of JW(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*JW($){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=VZ(Z))!==-1)yield Z.slice(0,G),Z=Z.slice(G)}if(Z.length>0)yield Z}class KZ{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]=QW($,":");if(z.startsWith(" "))z=z.substring(1);if(Z==="event")this.event=z;else if(Z==="data")this.data.push(z);return null}}function QW($,Z){let X=$.indexOf(Z);if(X!==-1)return[$.substring(0,X),Z,$.substring(X+Z.length)];return[$,"",""]}var YW=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function",HW=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&U1($),U1=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function";async function BZ($,Z,X){if($=await $,HW($))return $;if(YW($)){let q=await $.blob();Z||(Z=new URL($.url).pathname.split(/[\\/]/).pop()??"unknown_file");let G=U1(q)?[await q.arrayBuffer()]:[q];return new S2(G,Z,X)}let z=await UW($);if(Z||(Z=VW($)??"unknown_file"),!X?.type){let q=z[0]?.type;if(typeof q==="string")X={...X,type:q}}return new S2(z,Z,X)}async function UW($){let Z=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)Z.push($);else if(U1($))Z.push(await $.arrayBuffer());else if(KW($))for await(let X of $)Z.push(X);else throw Error(`Unexpected data type: ${typeof $}; constructor: ${$?.constructor?.name}; props: ${WW($)}`);return Z}function WW($){return`[${Object.getOwnPropertyNames($).map((X)=>`"${X}"`).join(", ")}]`}function VW($){return a9($.name)||a9($.filename)||a9($.path)?.split(/[\\/]/).pop()}var a9=($)=>{if(typeof $==="string")return $;if(typeof Buffer<"u"&&$ instanceof Buffer)return String($);return},KW=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function",n9=($)=>$&&typeof $==="object"&&$.body&&$[Symbol.toStringTag]==="MultipartBody";var LW=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},TW=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($)},m2;c9();async function FZ($){let{response:Z}=$;if($.options.stream){if(_$("response",Z.status,Z.url,Z.headers,Z.body),$.options.__streamClass)return $.options.__streamClass.fromSSEResponse(Z,$.controller);return e.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 _$("response",Z.status,Z.url,Z.headers,J),MZ(J,Z)}let G=await Z.text();return _$("response",Z.status,Z.url,Z.headers,G),G}function MZ($,Z){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:Z.headers.get("request-id"),enumerable:!1})}class p2 extends Promise{constructor($,Z=FZ){super((X)=>{X(null)});this.responsePromise=$,this.parseResponse=Z}_thenUnwrap($){return new p2(this.responsePromise,async(Z)=>MZ($(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 r9{constructor({baseURL:$,maxRetries:Z=2,timeout:X=600000,httpAgent:z,fetch:q}){this.baseURL=$,this.maxRetries=s9("maxRetries",Z),this.timeout=s9("timeout",X),this.httpAgent=z,this.fetch=q??m9}authHeaders($){return{}}defaultHeaders($){return{Accept:"application/json","Content-Type":"application/json","User-Agent":this.getUserAgent(),...MW(),...this.authHeaders($)}}validateHeaders($,Z){}defaultIdempotencyKey(){return`stainless-node-retry-${RW()}`}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&&U1(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:n9(X.body)?X.body.body:X.body?JSON.stringify(X.body,null,2):null,Y=this.calculateContentLength(Q),H=this.buildURL(q,G);if("timeout"in X)s9("timeout",X.timeout);X.timeout=X.timeout??this.timeout;let W=X.httpAgent??this.httpAgent??p9(H),U=X.timeout+1000;if(typeof W?.options?.timeout==="number"&&U>(W.options.timeout??0))W.options.timeout=U;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:H,timeout:X.timeout}}buildHeaders({options:$,headers:Z,contentLength:X,retryCount:z}){let q={};if(X)q["content-length"]=X;let G=this.defaultHeaders($);if(_Z(q,G),_Z(q,Z),n9($.body)&&r0!=="node")delete q["content-type"];if(d2(G,"x-stainless-retry-count")===void 0&&d2(Z,"x-stainless-retry-count")===void 0)q["x-stainless-retry-count"]=String(z);if(d2(G,"x-stainless-timeout")===void 0&&d2(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 p2(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}),_$("request",G,X,q.headers),X.signal?.aborted)throw new i;let Q=new AbortController,Y=await this.fetchWithTimeout(G,q,J,Q).catch(v2);if(Y instanceof Error){if(X.signal?.aborted)throw new i;if(Z)return this.retryRequest(X,Z);if(Y.name==="AbortError")throw new Y1;throw new o0({cause:Y})}let H=i9(Y.headers);if(!Y.ok){if(Z&&this.shouldRetry(Y)){let K=`retrying, ${Z} attempts remaining`;return _$(`response (error; ${K})`,Y.status,G,H),this.retryRequest(X,Z,H)}let W=await Y.text().catch((K)=>v2(K).message),U=OW(W),V=U?void 0:W;throw _$(`response (error; ${Z?"(error; no more retries left)":"(error; not retryable)"})`,Y.status,G,H,V),this.makeStatusError(Y.status,U,V,H)}return{response:Y,options:X,controller:Q}}requestAPIList($,Z){let X=this.makeRequest(Z,null);return new OZ(this,X,$)}buildURL($,Z){let X=PW($)?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,H=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(H)})}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 IW(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 ${s0}`}}class o9{constructor($,Z,X,z){m2.set(this,void 0),LW(this,m2,$,"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 TW(this,m2,"f").requestAPIList(this.constructor,Z)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(m2=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let Z of $.getPaginatedItems())yield Z}}class OZ extends p2{constructor($,Z,X){super(Z,async(z)=>new X($,z.response,await FZ(z),z.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let Z of $)yield Z}}var i9=($)=>{return new Proxy(Object.fromEntries($.entries()),{get(Z,X){let z=X.toString();return Z[z.toLowerCase()]||Z[z]}})},DW={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},z0=($)=>{return typeof $==="object"&&$!==null&&!wZ($)&&Object.keys($).every((Z)=>PZ(DW,Z))},_W=()=>{if(typeof Deno<"u"&&Deno.build!=null)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":s0,"X-Stainless-OS":TZ(Deno.build.os),"X-Stainless-Arch":LZ(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":s0,"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":s0,"X-Stainless-OS":TZ(process.platform),"X-Stainless-Arch":LZ(process.arch),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":process.version};let $=FW();if($)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":s0,"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":s0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function FW(){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 LZ=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},TZ=($)=>{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"},DZ,MW=()=>{return DZ??(DZ=_W())},OW=($)=>{try{return JSON.parse($)}catch(Z){return}},wW=/^[a-z][a-z0-9+.-]*:/i,PW=($)=>{return wW.test($)},IW=($)=>new Promise((Z)=>setTimeout(Z,$)),s9=($,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},v2=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null)try{return Error(JSON.stringify($))}catch{}return Error(String($))};var l2=($)=>{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 PZ($,Z){return Object.prototype.hasOwnProperty.call($,Z)}function _Z($,Z){for(let X in Z){if(!PZ(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 _$($,...Z){if(typeof process<"u"&&process?.env?.DEBUG==="true")console.log(`Anthropic:DEBUG:${$}`,...Z)}var RW=()=>{return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,($)=>{let Z=Math.random()*16|0;return($==="x"?Z:Z&3|8).toString(16)})},IZ=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},AW=($)=>{return typeof $?.get==="function"};var d2=($,Z)=>{let X=Z.toLowerCase();if(AW($)){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 M0 extends o9{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 c{constructor($){this._client=$}}class F$ extends c{retrieve($,Z){return this._client.get(`/v1/models/${$}?beta=true`,Z)}list($={},Z){if(z0($))return this.list({},$);return this._client.getAPIList("/v1/models?beta=true",W1,{query:$,...Z})}}class W1 extends M0{}F$.BetaModelInfosPage=W1;class M${constructor($,Z){this.iterator=$,this.controller=Z}async*decoder(){let $=new k0;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 M$(H1($.body),Z)}}class O$ extends c{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(z0(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(z0($))return this.list({},$);let{betas:X,...z}=$;return this._client.getAPIList("/v1/messages/batches?beta=true",V1,{query:z,...Z,headers:{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString(),...Z?.headers}})}delete($,Z={},X){if(z0(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(z0(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(z0(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)=>M$.fromResponse(J.response,J.controller))}}class V1 extends M0{}O$.BetaMessageBatchesPage=V1;var CW=($)=>{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},w$=($)=>{if($.length===0)return $;let Z=$[$.length-1];switch(Z.type){case"separator":return $=$.slice(0,$.length-1),w$($);break;case"number":let X=Z.value[Z.value.length-1];if(X==="."||X==="-")return $=$.slice(0,$.length-1),w$($);case"string":let z=$[$.length-2];if(z?.type==="delimiter")return $=$.slice(0,$.length-1),w$($);else if(z?.type==="brace"&&z.value==="{")return $=$.slice(0,$.length-1),w$($);break;case"delimiter":return $=$.slice(0,$.length-1),w$($);break}return $},EW=($)=>{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 $},bW=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},c2=($)=>JSON.parse(bW(EW(w$(CW($)))));var a=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($)},q0,f0,K1,i2,B1,L1,a2,T1,O0,D1,n2,s2,P$,r2,o2,t9,RZ,e9,$5,Z5,X5,AZ,jZ="__json_buf";class _1{constructor(){q0.add(this),this.messages=[],this.receivedMessages=[],f0.set(this,void 0),this.controller=new AbortController,K1.set(this,void 0),i2.set(this,()=>{}),B1.set(this,()=>{}),L1.set(this,void 0),a2.set(this,()=>{}),T1.set(this,()=>{}),O0.set(this,{}),D1.set(this,!1),n2.set(this,!1),s2.set(this,!1),P$.set(this,!1),r2.set(this,void 0),o2.set(this,void 0),e9.set(this,($)=>{if(a(this,n2,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new i;if($ instanceof i)return a(this,s2,!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($)))}),a(this,K1,new Promise(($,Z)=>{a(this,i2,$,"f"),a(this,B1,Z,"f")}),"f"),a(this,L1,new Promise(($,Z)=>{a(this,a2,$,"f"),a(this,T1,Z,"f")}),"f"),N(this,K1,"f").catch(()=>{}),N(this,L1,"f").catch(()=>{})}get response(){return N(this,r2,"f")}get request_id(){return N(this,o2,"f")}async withResponse(){let $=await N(this,K1,"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")},N(this,e9,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal;if(z){if(z.aborted)this.controller.abort();z.addEventListener("abort",()=>this.controller.abort())}N(this,q0,"m",$5).call(this);let{response:q,data:G}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let J of G)N(this,q0,"m",Z5).call(this,J);if(G.controller.signal?.aborted)throw new i;N(this,q0,"m",X5).call(this)}_connected($){if(this.ended)return;a(this,r2,$,"f"),a(this,o2,$?.headers.get("request-id"),"f"),N(this,i2,"f").call(this,$),this._emit("connect")}get ended(){return N(this,D1,"f")}get errored(){return N(this,n2,"f")}get aborted(){return N(this,s2,"f")}abort(){this.controller.abort()}on($,Z){return(N(this,O0,"f")[$]||(N(this,O0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=N(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(N(this,O0,"f")[$]||(N(this,O0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(a(this,P$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){a(this,P$,!0,"f"),await N(this,L1,"f")}get currentMessage(){return N(this,f0,"f")}async finalMessage(){return await this.done(),N(this,q0,"m",t9).call(this)}async finalText(){return await this.done(),N(this,q0,"m",RZ).call(this)}_emit($,...Z){if(N(this,D1,"f"))return;if($==="end")a(this,D1,!0,"f"),N(this,a2,"f").call(this);let X=N(this,O0,"f")[$];if(X)N(this,O0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!N(this,P$,"f")&&!X?.length)Promise.reject(z);N(this,B1,"f").call(this,z),N(this,T1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!N(this,P$,"f")&&!X?.length)Promise.reject(z);N(this,B1,"f").call(this,z),N(this,T1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",N(this,q0,"m",t9).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}N(this,q0,"m",$5).call(this),this._connected(null);let z=e.fromReadableStream($,this.controller);for await(let q of z)N(this,q0,"m",Z5).call(this,q);if(z.controller.signal?.aborted)throw new i;N(this,q0,"m",X5).call(this)}[(f0=new WeakMap,K1=new WeakMap,i2=new WeakMap,B1=new WeakMap,L1=new WeakMap,a2=new WeakMap,T1=new WeakMap,O0=new WeakMap,D1=new WeakMap,n2=new WeakMap,s2=new WeakMap,P$=new WeakMap,r2=new WeakMap,o2=new WeakMap,e9=new WeakMap,q0=new WeakSet,t9=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},RZ=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");let Z=this.receivedMessages.at(-1).content.filter((X)=>X.type==="text").map((X)=>X.text);if(Z.length===0)throw new A("stream ended without producing a content block with type=text");return Z.join(" ")},$5=function(){if(this.ended)return;a(this,f0,void 0,"f")},Z5=function(Z){if(this.ended)return;let X=N(this,q0,"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":{a(this,f0,X,"f");break}case"content_block_start":case"message_delta":break}},X5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=N(this,f0,"f");if(!Z)throw new A("request ended without sending any chunks");return a(this,f0,void 0,"f"),Z},AZ=function(Z){let X=N(this,f0,"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=c2(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 e(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function NZ($){}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"};class e0 extends c{constructor(){super(...arguments);this.batches=new O$(this._client)}create($,Z){let{betas:X,...z}=$;if(z.model in SZ)console.warn(`The model '${z.model}' is deprecated and will reach end-of-life on ${SZ[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 _1.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}})}}e0.Batches=O$;e0.BetaMessageBatchesPage=V1;class w0 extends c{constructor(){super(...arguments);this.models=new F$(this._client),this.messages=new e0(this._client)}}w0.Models=F$;w0.BetaModelInfosPage=W1;w0.Messages=e0;class I$ extends c{create($,Z){return this._client.post("/v1/complete",{body:$,timeout:this._client._options.timeout??600000,...Z,stream:$.stream??!1})}}class R$ extends c{create($,Z){return this._client.post("/v1/messages/batches",{body:$,...Z})}retrieve($,Z){return this._client.get(`/v1/messages/batches/${$}`,Z)}list($={},Z){if(z0($))return this.list({},$);return this._client.getAPIList("/v1/messages/batches",F1,{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)=>M$.fromResponse(q.response,q.controller))}}class F1 extends M0{}R$.MessageBatchesPage=F1;var n=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},S=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($)},G0,h0,M1,t2,O1,w1,e2,P1,P0,I1,$4,Z4,A$,X4,z4,z5,CZ,q5,G5,J5,Q5,EZ,bZ="__json_buf";class R1{constructor(){G0.add(this),this.messages=[],this.receivedMessages=[],h0.set(this,void 0),this.controller=new AbortController,M1.set(this,void 0),t2.set(this,()=>{}),O1.set(this,()=>{}),w1.set(this,void 0),e2.set(this,()=>{}),P1.set(this,()=>{}),P0.set(this,{}),I1.set(this,!1),$4.set(this,!1),Z4.set(this,!1),A$.set(this,!1),X4.set(this,void 0),z4.set(this,void 0),q5.set(this,($)=>{if(n(this,$4,!0,"f"),$ instanceof Error&&$.name==="AbortError")$=new i;if($ instanceof i)return n(this,Z4,!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($)))}),n(this,M1,new Promise(($,Z)=>{n(this,t2,$,"f"),n(this,O1,Z,"f")}),"f"),n(this,w1,new Promise(($,Z)=>{n(this,e2,$,"f"),n(this,P1,Z,"f")}),"f"),S(this,M1,"f").catch(()=>{}),S(this,w1,"f").catch(()=>{})}get response(){return S(this,X4,"f")}get request_id(){return S(this,z4,"f")}async withResponse(){let $=await S(this,M1,"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 R1;return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X){let z=new R1;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")},S(this,q5,"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())}S(this,G0,"m",G5).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)S(this,G0,"m",J5).call(this,J);if(G.controller.signal?.aborted)throw new i;S(this,G0,"m",Q5).call(this)}_connected($){if(this.ended)return;n(this,X4,$,"f"),n(this,z4,$?.headers.get("request-id"),"f"),S(this,t2,"f").call(this,$),this._emit("connect")}get ended(){return S(this,I1,"f")}get errored(){return S(this,$4,"f")}get aborted(){return S(this,Z4,"f")}abort(){this.controller.abort()}on($,Z){return(S(this,P0,"f")[$]||(S(this,P0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=S(this,P0,"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(S(this,P0,"f")[$]||(S(this,P0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(n(this,A$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){n(this,A$,!0,"f"),await S(this,w1,"f")}get currentMessage(){return S(this,h0,"f")}async finalMessage(){return await this.done(),S(this,G0,"m",z5).call(this)}async finalText(){return await this.done(),S(this,G0,"m",CZ).call(this)}_emit($,...Z){if(S(this,I1,"f"))return;if($==="end")n(this,I1,!0,"f"),S(this,e2,"f").call(this);let X=S(this,P0,"f")[$];if(X)S(this,P0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!S(this,A$,"f")&&!X?.length)Promise.reject(z);S(this,O1,"f").call(this,z),S(this,P1,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!S(this,A$,"f")&&!X?.length)Promise.reject(z);S(this,O1,"f").call(this,z),S(this,P1,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",S(this,G0,"m",z5).call(this))}async _fromReadableStream($,Z){let X=Z?.signal;if(X){if(X.aborted)this.controller.abort();X.addEventListener("abort",()=>this.controller.abort())}S(this,G0,"m",G5).call(this),this._connected(null);let z=e.fromReadableStream($,this.controller);for await(let q of z)S(this,G0,"m",J5).call(this,q);if(z.controller.signal?.aborted)throw new i;S(this,G0,"m",Q5).call(this)}[(h0=new WeakMap,M1=new WeakMap,t2=new WeakMap,O1=new WeakMap,w1=new WeakMap,e2=new WeakMap,P1=new WeakMap,P0=new WeakMap,I1=new WeakMap,$4=new WeakMap,Z4=new WeakMap,A$=new WeakMap,X4=new WeakMap,z4=new WeakMap,q5=new WeakMap,G0=new WeakSet,z5=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},CZ=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(" ")},G5=function(){if(this.ended)return;n(this,h0,void 0,"f")},J5=function(Z){if(this.ended)return;let X=S(this,G0,"m",EZ).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:yZ(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":{n(this,h0,X,"f");break}case"content_block_start":case"message_delta":break}},Q5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=S(this,h0,"f");if(!Z)throw new A("request ended without sending any chunks");return n(this,h0,void 0,"f"),Z},EZ=function(Z){let X=S(this,h0,"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[bZ]||"";if(q+=Z.delta.partial_json,Object.defineProperty(z,bZ,{value:q,enumerable:!1,writable:!0}),q)z.input=c2(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:yZ(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 e(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function yZ($){}class g0 extends c{constructor(){super(...arguments);this.batches=new R$(this._client)}create($,Z){if($.model in xZ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${xZ[$.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 R1.createMessage(this,$,Z)}countTokens($,Z){return this._client.post("/v1/messages/count_tokens",{body:$,...Z})}}var xZ={"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"};g0.Batches=R$;g0.MessageBatchesPage=F1;class $$ extends c{retrieve($,Z){return this._client.get(`/v1/models/${$}`,Z)}list($={},Z){if(z0($))return this.list({},$);return this._client.getAPIList("/v1/models",j$,{query:$,...Z})}}class j$ extends M0{}$$.ModelInfosPage=j$;var kZ;class x extends r9{constructor({baseURL:$=l2("ANTHROPIC_BASE_URL"),apiKey:Z=l2("ANTHROPIC_API_KEY")??null,authToken:X=l2("ANTHROPIC_AUTH_TOKEN")??null,...z}={}){let q={apiKey:Z,authToken:X,...z,baseURL:$||"https://api.anthropic.com"};if(!q.dangerouslyAllowBrowser&&IZ())throw new A(`It looks like you're running in a browser-like environment.
|
|
199
199
|
|
|
200
200
|
This is disabled by default, as it risks exposing your secret API credentials to attackers.
|
|
201
201
|
If you understand the risks and have appropriate mitigations in place,
|
|
202
202
|
you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
|
|
203
203
|
|
|
204
204
|
new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
|
|
205
|
-
`);super({baseURL:q.baseURL,timeout:q.timeout??600000,httpAgent:q.httpAgent,maxRetries:q.maxRetries,fetch:q.fetch});this.completions=new
|
|
205
|
+
`);super({baseURL:q.baseURL,timeout:q.timeout??600000,httpAgent:q.httpAgent,maxRetries:q.maxRetries,fetch:q.fetch});this.completions=new I$(this),this.messages=new g0(this),this.models=new $$(this),this.beta=new w0(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}`}}}kZ=x;x.Anthropic=kZ;x.HUMAN_PROMPT=`
|
|
206
206
|
|
|
207
207
|
Human:`;x.AI_PROMPT=`
|
|
208
208
|
|
|
209
|
-
Assistant:`;x.DEFAULT_TIMEOUT=600000;x.AnthropicError=A;x.APIError=u;x.APIConnectionError=o0;x.APIConnectionTimeoutError=Y1;x.APIUserAbortError=i;x.NotFoundError=
|
|
209
|
+
Assistant:`;x.DEFAULT_TIMEOUT=600000;x.AnthropicError=A;x.APIError=u;x.APIConnectionError=o0;x.APIConnectionTimeoutError=Y1;x.APIUserAbortError=i;x.NotFoundError=x2;x.ConflictError=k2;x.RateLimitError=h2;x.BadRequestError=E2;x.AuthenticationError=b2;x.InternalServerError=g2;x.PermissionDeniedError=y2;x.UnprocessableEntityError=f2;x.toFile=BZ;x.fileFromPath=C2;x.Completions=I$;x.Messages=g0;x.Models=$$;x.ModelInfosPage=j$;x.Beta=w0;var fZ=x;function N$($,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,28 +231,28 @@ End your response with a "## Sources" section that lists every source you actual
|
|
|
231
231
|
Rules:
|
|
232
232
|
- Only cite IDs that appear in the inventory above. Do not invent IDs.
|
|
233
233
|
- If you cannot answer from the provided sources, say so explicitly and write an empty "## Sources" section (just the heading, no bullets).
|
|
234
|
-
- The "## Sources" heading must be the last heading in your response.`}class Y5{category="api";provider="anthropic";name;config;clientFactory;constructor($,Z,X){this.name=$,this.config=Z,this.clientFactory=X??(()=>new fZ)}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=
|
|
234
|
+
- The "## Sources" heading must be the last heading in your response.`}class Y5{category="api";provider="anthropic";name;config;clientFactory;constructor($,Z,X){this.name=$,this.config=Z,this.clientFactory=X??(()=>new fZ)}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=N$(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=fW(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 fW($){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 hW}from"@anthropic-ai/claude-agent-sdk";function hZ($,Z){let X=Z&&Z.length>0?`
|
|
235
235
|
The canonical source for this question is: ${Z}
|
|
236
236
|
Use it as the primary reference; consult related authoritative sources if needed.`:`
|
|
237
237
|
Research the answer using authoritative sources you can reach with your tools.`;return`You are answering a question about the tool "${$.name}": ${$.description}.
|
|
238
238
|
|
|
239
239
|
Use the tools available to you to research the answer. Be specific and accurate; do not invent facts.${X}
|
|
240
240
|
|
|
241
|
-
If you cannot find the answer with the available tools, say so explicitly rather than guessing.`}class H5{category="cli";provider="claude-code";name;config;constructor($,Z){this.name=$,this.config=Z}async run($,Z){let{tool:X,cwd:z,context:q,docs:G,requiredSources:J,discovery:Q,restrictBuiltinTools:Y}=Z,H=[],W=[],U=Q?hZ(X,Q.sourceHint):
|
|
241
|
+
If you cannot find the answer with the available tools, say so explicitly rather than guessing.`}class H5{category="cli";provider="claude-code";name;config;constructor($,Z){this.name=$,this.config=Z}async run($,Z){let{tool:X,cwd:z,context:q,docs:G,requiredSources:J,discovery:Q,restrictBuiltinTools:Y}=Z,H=[],W=[],U=Q?hZ(X,Q.sourceHint):N$(X,G,J),V={cwd:z,model:this.config.model??"sonnet",systemPrompt:U,allowedTools:q?.allowedTools??this.config.allowedTools??w4,disallowedTools:q?.disallowedTools??this.config.disallowedTools??P4,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:[]};if(Y!==void 0)V.tools=Y;let B=[],T="",K="";for await(let L of hW({prompt:$,options:V})){if(L.type==="assistant"){let D=L.message?.content;if(Array.isArray(D)){let _="";for(let O of D){if(O.type==="text")_+=O.text;if(O.type==="tool_use"){let w=O;if(!H.includes(w.name))H.push(w.name)}}if(_){let O=B.length===0?"initial":"intermediate";B.push({type:O,text:_}),T=_}}}if(L.type==="result"){let D=L;if(D.result)K=D.result}}if(B.length>0)B[B.length-1].type="final";return{response:K||T,allResponses:B,toolsUsed:H,sources:W,metadata:{model:this.config.model??"sonnet",category:this.category,provider:this.provider,target:this.name}}}}import{randomUUID as gW}from"crypto";import{rm as vW}from"fs/promises";import{tmpdir as uW}from"os";import{join as mW}from"path";var dW="codex";class U5{category="cli";provider="codex-cli";name;config;spawnFn;readFileFn;binary;constructor($,Z,X={}){this.name=$,this.config=Z,this.spawnFn=X.spawn??iW,this.readFileFn=X.readFile??aW,this.binary=X.binary??dW}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=`${N$(X,q,G)}
|
|
242
242
|
|
|
243
243
|
---
|
|
244
244
|
|
|
245
|
-
${$}`,H=
|
|
246
|
-
`)){let q=z.trim();if(!q)continue;let G;try{G=JSON.parse(q)}catch{continue}let J=dW(G);if(J){let Y=Z.length===0?"initial":"intermediate";Z.push({type:Y,text:J})}let Q=pW(G);if(Q&&!X.includes(Q))X.push(Q)}return{allResponses:Z,toolsUsed:X}}function dW($){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 pW($){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 lW=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}},cW=async($)=>{let Z=Bun.file($);if(!await Z.exists())throw Error(`Last-message file not found: ${$}`);return Z.text()};function G4($,Z){let X=Z??U0;switch(X.category){case"cli":return iW($,X);case"api":return aW($,X);case"ide":throw Error("IDE targets not yet implemented. Coming soon!");default:throw Error(`Unknown target category: ${X.category}`)}}function iW($,Z){switch(Z.provider){case"claude-code":return new H5($,Z);case"codex-cli":return new U5($,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 aW($,Z){switch(Z.provider){case"anthropic":return new Y5($,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 N$="default";function J4($,Z){if(!$||$===N$)return{name:N$,config:U0};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Target "${$}" not found, using default`),{name:N$,config:U0}}function W5($,Z){if(!$||$===N$)return{name:N$,config:{}};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Context "${$}" not found, using default`),{name:N$,config:{}}}var V5="__matrix__";function nW($){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:V5,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 K5($,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 Q1(G,$.path);for(let W of J)z?.(` [${W.id}] ${W.name}`);z?.("")}let Q=J.map((W)=>W.id),Y=nW(Z);if(X.scenarioFilter&&X.scenarioFilter.length>0){let W=new Set(X.scenarioFilter);if(Y=Y.filter((U)=>W.has(U.scenario.name)),Y.length===0)throw Error(`No scenarios matched filter: ${[...W].join(", ")}. Declared scenarios: ${Z.scenarios.map((U)=>U.name).join(", ")}`)}let H="";for(let{scenario:W,targetName:U,contextName:V}of Y){let B=sW(U,V);if(W.name!==H){if(H)z?.("");z?.(`"${W.name}"`),H=W.name}try{let L=await rW(W,U,V,$,Z,J,Q,X);q.push(L);let K=B?B.padEnd(18):"";if(L.cells){z?.(` ${K} (matrix mode)`);for(let T of L.cells){let D=_0(T),O=` [${[T.cell.interface,T.cell.source??"-",T.cell.toolset].join(" \xB7 ")}]`.padEnd(40);z?.(`${O} ${D.icon} ${D.label} (${D.confidence}%)`)}}else if(L.surfaces){z?.(` ${K} (compare-surfaces mode)`);for(let T of L.surfaces){let D=_0(T),_=` [${T.active.join(",")}]`.padEnd(22);z?.(`${_} ${D.icon} ${D.label} (${D.confidence}%)`)}}else{let T=_0({answerable:L.answerable??"NO",confidence:L.confidence??0,traps:L.traps??{fired:[],avoided:[]},error:L.error});z?.(` ${K} ${T.icon} ${T.label} (${T.confidence}%)`)}}catch(L){let K=U==="default"?U0:Z.targets?.[U]??U0,T=W.requiredSources??[],D={scenario:W,answerable:"NO",confidence:0,response:"",reason:"Error during run",citations:{cited:[],required:T,missing:T,unknown:[]},traps:{fired:[],avoided:(W.traps??[]).map((O)=>O.id)},error:L instanceof Error?L.message:String(L),target:{target:U===V5?"matrix":U,category:K.category,provider:K.provider,model:K.model??"unknown"},context:{name:V}};q.push(D);let _=B?B.padEnd(18):"";z?.(` ${_} \u2717 Error`)}}return z?.(""),oW($,J,q)}function sW($,Z){if($==="default"&&Z==="default")return"";if(Z==="default")return`[${$}]`;return`[${$}/${Z}]`}async function rW($,Z,X,z,q,G,J,Q){if($.matrix&&Z===V5)return tW($,X,z,q,G,Q);let{config:Y}=J4(Z,q.targets),{config:H}=W5(X,q.contexts),W=Q.targetFactory?Q.targetFactory(Z,Y):G4(Z,Y);if($.compareSurfaces&&$.compareSurfaces.length>0){let w=[],R;for(let I of $.compareSurfaces){let C=new Set(I),M=G.filter((P0)=>C.has(P0.id)),p=($.requiredSources??[]).filter((P0)=>C.has(P0)),s=await W.run($.prompt,{tool:z,cwd:z.path,context:H,docs:M,requiredSources:p,onProgress:Q.onProgress}),k=L$({response:s.response,requiredSources:p,registeredIds:I}),o=x0({response:s.response,traps:$.traps??[]}),E$=o.fired.length>0,N1=E$?"NO":k.answerable,W4=E$?0:k.confidence,S1=E$?`Trap fired: ${o.fired.map((P0)=>`"${P0.id}" (${P0.reason})`).join("; ")}`:k.reason;w.push({active:I,answerable:N1,confidence:W4,response:s.response,reason:S1,citations:k.citations,traps:o,allResponses:s.allResponses}),R=s.metadata??R}return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,surfaces:w,target:R,context:{name:X}}}let U=$.requiredSources??[],V=await W.run($.prompt,{tool:z,cwd:z.path,context:H,docs:G,requiredSources:U,onProgress:Q.onProgress}),B=x0({response:V.response,traps:$.traps??[]}),L=B.fired.length>0,K=$.requiredSources!==void 0?L$({response:V.response,requiredSources:U,registeredIds:J}):null,T=$.expected!==void 0?S2({response:V.response,expected:$.expected}):null,D,_,O;if(L)D="NO",_=0,O=`Trap fired: ${B.fired.map((w)=>`"${w.id}" (${w.reason})`).join("; ")}`;else{let w=[],R=[];if(K)w.push({answerable:K.answerable,confidence:K.confidence}),R.push(K.reason);if(T){let I=T.total===0?100:Math.round(T.satisfied/T.total*100),C=I===100?"YES":I===0?"NO":"PARTIAL";w.push({answerable:C,confidence:I})}if(w.length===0)D="YES",_=100,O="No traps fired; no other contract declared";else{let I={YES:0,PARTIAL:1,NO:2};D=w.reduce((M,y)=>I[y.answerable]>I[M.answerable]?y:M).answerable,_=Math.round(w.reduce((M,y)=>M+y.confidence,0)/w.length),O=R.filter((M)=>M.length>0).join(" | ")}}return{scenario:$,answerable:D,confidence:_,response:V.response,reason:O,citations:K?K.citations:{cited:[],required:U,missing:[],unknown:[]},traps:B,target:V.metadata,context:{name:X},toolsUsed:V.toolsUsed,sources:V.sources,allResponses:V.allResponses}}function oW($,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 tW($,Z,X,z,q,G){let{config:J}=W5(Z,z.contexts),Q=$.matrix??{},Y=$.target??"default",H=Q.interfaces??[Y],W=Q.sources??[null],U=Q.toolsets??["none"],V=G.cellFilter??{},B=[],L;for(let T of H){if(V.interface&&V.interface!==T)continue;for(let D of W){if(V.source!==void 0&&V.source!==(D??""))continue;for(let _ of U){if(V.toolset&&V.toolset!==_)continue;let O=_==="none"?null:z.toolsets?.[_]??null,w=_!=="none"&&(O?.webSearch===!0||O?.webFetch===!0),R=_!=="none"&&O?.mcpServers?Object.keys(O.mcpServers):[],I=R.length>0,{config:C}=J4(T,z.targets);if(_!=="none"){if(w&&I)throw Error(`Toolset "${_}" mixes webSearch/webFetch with mcpServers; declare separate toolsets per shape so provenance can be attributed to one tool path.`);if(!w&&!I)throw Error(`Toolset "${_}" is declared but defines no runtime shape. Supported today: "none", web (webSearch/webFetch flags), MCP (mcpServers map). Other adapters (Firecrawl, native API search) land per release.`);if(C.provider!=="claude-code")throw Error(`Toolset "${_}" is implemented only on the claude-code interface. Interface "${T}" uses provider "${C.provider}"; rerun with a Claude Code interface or use toolset "none".`)}let M=[],y=[],p=[];if(w){if(O?.webSearch)M.push("WebSearch"),y.push("WebSearch"),p.push((j)=>j==="WebSearch");if(O?.webFetch)M.push("WebFetch"),y.push("WebFetch"),p.push((j)=>j==="WebFetch")}if(I)for(let j of R)M.push(`mcp__${j}__*`),p.push((d)=>d.startsWith(`mcp__${j}__`));let s=_==="none"?C:{...C,allowedTools:M,disallowedTools:[],mcpServers:I?O?.mcpServers:void 0,maxTurns:Math.max(C.maxTurns??0,15)},k=G.targetFactory?G.targetFactory(T,s):G4(T,s),o=_==="none",E$=o?D===null?q:q.filter((j)=>j.id===D):[],N1=o?D===null?q.map((j)=>j.id):[D]:[],W4=$.requiredSources??[],S1=o?W4.filter((j)=>N1.includes(j)):[],P0=$V($.prompt,D,q,o),qX=o?void 0:{sourceHint:ZV(D,q)},K0;try{let j=_==="none"?J:void 0;K0=await k.run(P0,{tool:X,cwd:X.path,context:j,docs:E$,requiredSources:S1,discovery:qX,restrictBuiltinTools:_==="none"?void 0:y,onProgress:G.onProgress})}catch(j){B.push({cell:{interface:T,source:D,toolset:_},answerable:"NO",confidence:0,response:"",reason:`Error in cell: ${j instanceof Error?j.message:String(j)}`,citations:null,traps:{fired:[],avoided:($.traps??[]).map((d)=>d.id)},error:j instanceof Error?j.message:String(j)});continue}let V4=x0({response:K0.response,traps:$.traps??[]}),GX=V4.fired.length>0,I0=$.requiredSources!==void 0&&o?L$({response:K0.response,requiredSources:S1,registeredIds:N1}):null,m=$.expected!==void 0?S2({response:K0.response,expected:$.expected}):null,b$=_!=="none"&&p.length>0?{expected:M,used:(K0.toolsUsed??[]).filter((j)=>p.some((d)=>d(j)))}:null,JX=b$!==null&&b$.used.length===0,QX=()=>{let j=[];if(I0)j.push(I0.reason);if(m){let d=m.includes.filter((l)=>!l.satisfied).map((l)=>`"${l.value}"`),$0=m.excludes.filter((l)=>!l.satisfied).map((l)=>`"${l.value}"`),v0=[];if(d.length>0)v0.push(`missing includes: ${d.join(", ")}`);if($0.length>0)v0.push(`hit excludes: ${$0.join(", ")}`);j.push(v0.length>0?v0.join("; "):`expected checks satisfied (${m.satisfied}/${m.total})`)}return j.filter((d)=>d.length>0)},y$,x$,k$;if(GX)y$="NO",x$=0,k$=`Trap fired: ${V4.fired.map((j)=>`"${j.id}" (${j.reason})`).join("; ")}`;else if(JX){let j=b$;y$="NO",x$=0;let d=`Provenance failed: toolset "${_}" configured but none of [${j.expected.join(", ")}] were used (answer rests on model prior knowledge)`,$0=QX();k$=$0.length>0?`${d} | ${$0.join(" | ")}`:d}else{let j=[],d=[];if(I0)j.push({answerable:I0.answerable,confidence:I0.confidence}),d.push(I0.reason);if(m){let $0=m.total===0?100:Math.round(m.satisfied/m.total*100),v0=$0===100?"YES":$0===0?"NO":"PARTIAL";j.push({answerable:v0,confidence:$0});let l=m.includes.filter((m0)=>!m0.satisfied).map((m0)=>`"${m0.value}"`),u0=m.excludes.filter((m0)=>!m0.satisfied).map((m0)=>`"${m0.value}"`),C1=[];if(l.length>0)C1.push(`missing includes: ${l.join(", ")}`);if(u0.length>0)C1.push(`hit excludes: ${u0.join(", ")}`);d.push(C1.length>0?C1.join("; "):`expected checks satisfied (${m.satisfied}/${m.total})`)}if(b$)d.push(`tool use verified (${b$.used.join(", ")})`);if(j.length===0)y$="YES",x$=100,k$="No traps fired; no other contract declared";else{let $0={YES:0,PARTIAL:1,NO:2};y$=j.reduce((l,u0)=>$0[u0.answerable]>$0[l.answerable]?u0:l).answerable,x$=Math.round(j.reduce((l,u0)=>l+u0.confidence,0)/j.length),k$=d.filter((l)=>l.length>0).join(" | ")}}B.push({cell:{interface:T,source:D,toolset:_},answerable:y$,confidence:x$,response:K0.response,reason:k$,citations:I0?I0.citations:null,traps:V4,expected:m?{includes:m.includes,excludes:m.excludes,satisfied:m.satisfied,total:m.total}:void 0,toolsUsed:K0.toolsUsed,allResponses:K0.allResponses}),L=K0.metadata??L}}}let K=eW($,q);return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,cells:B,verifierSamples:K,target:L,context:{name:Z}}}function eW($,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 $V($,Z,X,z){if(z)return $;if(Z===null)return $;let q=X.find((J)=>J.id===Z);if(!q)return $;let G=q.type==="url"?`The canonical source for this question is the documentation at ${q.source}. Use your available tools to research it.`:`The canonical source for this question is "${q.name}" (registered locally as ${q.id}). Use your available tools to research from authoritative sources.`;return`${$}
|
|
245
|
+
${$}`,H=mW(uW(),`pickled-codex-${gW()}.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",H,"-"];try{let U=await this.spawnFn(this.binary,W,{cwd:z,stdin:Y}),{allResponses:V,toolsUsed:B}=pW(U.stdout);if(U.exitCode!==0)throw Error(`codex exec failed (exit ${U.exitCode}): ${U.stderr.trim()||"no stderr output"}`);let T="";try{T=(await this.readFileFn(H)).trim()}catch{T=V.length>0?V[V.length-1].text:""}if(V.length>0)V[V.length-1].type="final";return{response:T,allResponses:V,toolsUsed:B,sources:[],metadata:{model:J,category:this.category,provider:this.provider,target:this.name}}}finally{await vW(H,{force:!0})}}}function pW($){let Z=[],X=[];for(let z of $.split(`
|
|
246
|
+
`)){let q=z.trim();if(!q)continue;let G;try{G=JSON.parse(q)}catch{continue}let J=lW(G);if(J){let Y=Z.length===0?"initial":"intermediate";Z.push({type:Y,text:J})}let Q=cW(G);if(Q&&!X.includes(Q))X.push(Q)}return{allResponses:Z,toolsUsed:X}}function lW($){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 cW($){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 iW=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}},aW=async($)=>{let Z=Bun.file($);if(!await Z.exists())throw Error(`Last-message file not found: ${$}`);return Z.text()};function q4($,Z){let X=Z??U0;switch(X.category){case"cli":return nW($,X);case"api":return sW($,X);case"ide":throw Error("IDE targets not yet implemented. Coming soon!");default:throw Error(`Unknown target category: ${X.category}`)}}function nW($,Z){switch(Z.provider){case"claude-code":return new H5($,Z);case"codex-cli":return new U5($,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 sW($,Z){switch(Z.provider){case"anthropic":return new Y5($,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 S$="default";function G4($,Z){if(!$||$===S$)return{name:S$,config:U0};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Target "${$}" not found, using default`),{name:S$,config:U0}}function W5($,Z){if(!$||$===S$)return{name:S$,config:{}};if(Z?.[$])return{name:$,config:Z[$]};return console.warn(`Context "${$}" not found, using default`),{name:S$,config:{}}}var V5="__matrix__";function rW($){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:V5,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 K5($,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 Q1(G,$.path);for(let W of J)z?.(` [${W.id}] ${W.name}`);z?.("")}let Q=J.map((W)=>W.id),Y=rW(Z);if(X.scenarioFilter&&X.scenarioFilter.length>0){let W=new Set(X.scenarioFilter);if(Y=Y.filter((U)=>W.has(U.scenario.name)),Y.length===0)throw Error(`No scenarios matched filter: ${[...W].join(", ")}. Declared scenarios: ${Z.scenarios.map((U)=>U.name).join(", ")}`)}let H="";for(let{scenario:W,targetName:U,contextName:V}of Y){let B=oW(U,V);if(W.name!==H){if(H)z?.("");z?.(`"${W.name}"`),H=W.name}try{let T=await tW(W,U,V,$,Z,J,Q,X);q.push(T);let K=B?B.padEnd(18):"";if(T.cells){z?.(` ${K} (matrix mode)`);for(let L of T.cells){let D=F0(L),O=` [${[L.cell.interface,L.cell.source??"-",L.cell.toolset].join(" \xB7 ")}]`.padEnd(40);z?.(`${O} ${D.icon} ${D.label} (${D.confidence}%)`)}}else if(T.surfaces){z?.(` ${K} (compare-surfaces mode)`);for(let L of T.surfaces){let D=F0(L),_=` [${L.active.join(",")}]`.padEnd(22);z?.(`${_} ${D.icon} ${D.label} (${D.confidence}%)`)}}else{let L=F0({answerable:T.answerable??"NO",confidence:T.confidence??0,traps:T.traps??{fired:[],avoided:[]},error:T.error});z?.(` ${K} ${L.icon} ${L.label} (${L.confidence}%)`)}}catch(T){let K=U==="default"?U0:Z.targets?.[U]??U0,L=W.requiredSources??[],D={scenario:W,answerable:"NO",confidence:0,response:"",reason:"Error during run",citations:{cited:[],required:L,missing:L,unknown:[]},traps:{fired:[],avoided:(W.traps??[]).map((O)=>O.id)},error:T instanceof Error?T.message:String(T),target:{target:U===V5?"matrix":U,category:K.category,provider:K.provider,model:K.model??"unknown"},context:{name:V}};q.push(D);let _=B?B.padEnd(18):"";z?.(` ${_} \u2717 Error`)}}return z?.(""),eW($,J,q)}function oW($,Z){if($==="default"&&Z==="default")return"";if(Z==="default")return`[${$}]`;return`[${$}/${Z}]`}async function tW($,Z,X,z,q,G,J,Q){if($.matrix&&Z===V5)return $V($,X,z,q,G,Q);let{config:Y}=G4(Z,q.targets),{config:H}=W5(X,q.contexts),W=Q.targetFactory?Q.targetFactory(Z,Y):q4(Z,Y);if($.compareSurfaces&&$.compareSurfaces.length>0){let w=[],R;for(let I of $.compareSurfaces){let C=new Set(I),M=G.filter((K0)=>C.has(K0.id)),p=($.requiredSources??[]).filter((K0)=>C.has(K0)),s=await W.run($.prompt,{tool:z,cwd:z.path,context:H,docs:M,requiredSources:p,onProgress:Q.onProgress}),k=D$({response:s.response,requiredSources:p,registeredIds:I}),o=x0({response:s.response,traps:$.traps??[]}),Z$=o.fired.length>0,U4=Z$?"NO":k.answerable,N1=Z$?0:k.confidence,W4=Z$?`Trap fired: ${o.fired.map((K0)=>`"${K0.id}" (${K0.reason})`).join("; ")}`:k.reason;w.push({active:I,answerable:U4,confidence:N1,response:s.response,reason:W4,citations:k.citations,traps:o,allResponses:s.allResponses}),R=s.metadata??R}return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,surfaces:w,target:R,context:{name:X}}}let U=$.requiredSources??[],V=await W.run($.prompt,{tool:z,cwd:z.path,context:H,docs:G,requiredSources:U,onProgress:Q.onProgress}),B=x0({response:V.response,traps:$.traps??[]}),T=B.fired.length>0,K=$.requiredSources!==void 0?D$({response:V.response,requiredSources:U,registeredIds:J}):null,L=$.expected!==void 0?N2({response:V.response,expected:$.expected}):null,D,_,O;if(T)D="NO",_=0,O=`Trap fired: ${B.fired.map((w)=>`"${w.id}" (${w.reason})`).join("; ")}`;else{let w=[],R=[];if(K)w.push({answerable:K.answerable,confidence:K.confidence}),R.push(K.reason);if(L){let I=L.total===0?100:Math.round(L.satisfied/L.total*100),C=I===100?"YES":I===0?"NO":"PARTIAL";w.push({answerable:C,confidence:I})}if(w.length===0)D="YES",_=100,O="No traps fired; no other contract declared";else{let I={YES:0,PARTIAL:1,NO:2};D=w.reduce((M,y)=>I[y.answerable]>I[M.answerable]?y:M).answerable,_=Math.round(w.reduce((M,y)=>M+y.confidence,0)/w.length),O=R.filter((M)=>M.length>0).join(" | ")}}return{scenario:$,answerable:D,confidence:_,response:V.response,reason:O,citations:K?K.citations:{cited:[],required:U,missing:[],unknown:[]},traps:B,target:V.metadata,context:{name:X},toolsUsed:V.toolsUsed,sources:V.sources,allResponses:V.allResponses}}function eW($,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 $V($,Z,X,z,q,G){let{config:J}=W5(Z,z.contexts),Q=$.matrix??{},Y=$.target??"default",H=Q.interfaces??[Y],W=Q.sources??[null],U=Q.toolsets??["none"],V=G.cellFilter??{},B=[],T;for(let L of H){if(V.interface&&V.interface!==L)continue;for(let D of W){if(V.source!==void 0&&V.source!==(D??""))continue;for(let _ of U){if(V.toolset&&V.toolset!==_)continue;let O=_==="none"?null:z.toolsets?.[_]??null,w=_!=="none"&&(O?.webSearch===!0||O?.webFetch===!0),R=_!=="none"&&O?.mcpServers?Object.keys(O.mcpServers):[],I=R.length>0,{config:C}=G4(L,z.targets);if(_!=="none"){if(w&&I)throw Error(`Toolset "${_}" mixes webSearch/webFetch with mcpServers; declare separate toolsets per shape so provenance can be attributed to one tool path.`);if(!w&&!I)throw Error(`Toolset "${_}" is declared but defines no runtime shape. Supported today: "none", web (webSearch/webFetch flags), MCP (mcpServers map). Other adapters (Firecrawl, native API search) land per release.`);if(C.provider!=="claude-code")throw Error(`Toolset "${_}" is implemented only on the claude-code interface. Interface "${L}" uses provider "${C.provider}"; rerun with a Claude Code interface or use toolset "none".`)}let M=[],y=[],p=[];if(w){if(O?.webSearch)M.push("WebSearch"),y.push("WebSearch"),p.push((j)=>j==="WebSearch");if(O?.webFetch)M.push("WebFetch"),y.push("WebFetch"),p.push((j)=>j==="WebFetch")}if(I)for(let j of R)M.push(`mcp__${j}__*`),p.push((d)=>d.startsWith(`mcp__${j}__`));let s=_==="none"?C:{...C,allowedTools:M,disallowedTools:[],mcpServers:I?O?.mcpServers:void 0,maxTurns:Math.max(C.maxTurns??0,15)},k=G.targetFactory?G.targetFactory(L,s):q4(L,s),o=_==="none",Z$=D==="none",U4=Z$||!o?[]:D===null?q:q.filter((j)=>j.id===D),N1=Z$||!o?[]:D===null?q.map((j)=>j.id):[D],W4=$.requiredSources??[],K0=o?W4.filter((j)=>N1.includes(j)):[],GX=XV($.prompt,D,q,o),JX=o?void 0:{sourceHint:zV(D,q)},B0;try{let j=_==="none"?J:void 0;B0=await k.run(GX,{tool:X,cwd:X.path,context:j,docs:U4,requiredSources:K0,discovery:JX,restrictBuiltinTools:_==="none"?void 0:y,onProgress:G.onProgress})}catch(j){B.push({cell:{interface:L,source:D,toolset:_},answerable:"NO",confidence:0,response:"",reason:`Error in cell: ${j instanceof Error?j.message:String(j)}`,citations:null,traps:{fired:[],avoided:($.traps??[]).map((d)=>d.id)},error:j instanceof Error?j.message:String(j)});continue}let V4=x0({response:B0.response,traps:$.traps??[]}),QX=V4.fired.length>0,I0=$.requiredSources!==void 0&&o?D$({response:B0.response,requiredSources:K0,registeredIds:N1}):null,m=$.expected!==void 0?N2({response:B0.response,expected:$.expected}):null,b$=_!=="none"&&p.length>0?{expected:M,used:(B0.toolsUsed??[]).filter((j)=>p.some((d)=>d(j)))}:null,YX=b$!==null&&b$.used.length===0,HX=()=>{let j=[];if(I0)j.push(I0.reason);if(m){let d=m.includes.filter((l)=>!l.satisfied).map((l)=>`"${l.value}"`),$0=m.excludes.filter((l)=>!l.satisfied).map((l)=>`"${l.value}"`),v0=[];if(d.length>0)v0.push(`missing includes: ${d.join(", ")}`);if($0.length>0)v0.push(`hit excludes: ${$0.join(", ")}`);j.push(v0.length>0?v0.join("; "):`expected checks satisfied (${m.satisfied}/${m.total})`)}return j.filter((d)=>d.length>0)},y$,x$,k$;if(QX)y$="NO",x$=0,k$=`Trap fired: ${V4.fired.map((j)=>`"${j.id}" (${j.reason})`).join("; ")}`;else if(YX){let j=b$;y$="NO",x$=0;let d=`Provenance failed: toolset "${_}" configured but none of [${j.expected.join(", ")}] were used (answer rests on model prior knowledge)`,$0=HX();k$=$0.length>0?`${d} | ${$0.join(" | ")}`:d}else{let j=[],d=[];if(I0)j.push({answerable:I0.answerable,confidence:I0.confidence}),d.push(I0.reason);if(m){let $0=m.total===0?100:Math.round(m.satisfied/m.total*100),v0=$0===100?"YES":$0===0?"NO":"PARTIAL";j.push({answerable:v0,confidence:$0});let l=m.includes.filter((m0)=>!m0.satisfied).map((m0)=>`"${m0.value}"`),u0=m.excludes.filter((m0)=>!m0.satisfied).map((m0)=>`"${m0.value}"`),S1=[];if(l.length>0)S1.push(`missing includes: ${l.join(", ")}`);if(u0.length>0)S1.push(`hit excludes: ${u0.join(", ")}`);d.push(S1.length>0?S1.join("; "):`expected checks satisfied (${m.satisfied}/${m.total})`)}if(b$)d.push(`tool use verified (${b$.used.join(", ")})`);if(j.length===0)y$="YES",x$=100,k$="No traps fired; no other contract declared";else{let $0={YES:0,PARTIAL:1,NO:2};y$=j.reduce((l,u0)=>$0[u0.answerable]>$0[l.answerable]?u0:l).answerable,x$=Math.round(j.reduce((l,u0)=>l+u0.confidence,0)/j.length),k$=d.filter((l)=>l.length>0).join(" | ")}}B.push({cell:{interface:L,source:D,toolset:_},answerable:y$,confidence:x$,response:B0.response,reason:k$,citations:I0?I0.citations:null,traps:V4,expected:m?{includes:m.includes,excludes:m.excludes,satisfied:m.satisfied,total:m.total}:void 0,toolsUsed:B0.toolsUsed,allResponses:B0.allResponses}),T=B0.metadata??T}}}let K=ZV($,q);return{scenario:$,answerable:null,confidence:null,response:null,reason:null,citations:null,traps:null,cells:B,verifierSamples:K,target:T,context:{name:Z}}}function ZV($,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 XV($,Z,X,z){if(z)return $;if(Z===null||Z==="none")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`${$}
|
|
247
247
|
|
|
248
|
-
${G}`}function
|
|
248
|
+
${G}`}function zV($,Z){if($===null||$==="none")return null;let X=Z.find((z)=>z.id===$);if(!X)return null;if(X.type==="url")return X.source;return X.name}var gZ=($=0)=>(Z)=>`\x1B[${Z+$}m`,vZ=($=0)=>(Z)=>`\x1B[${38+$};5;${Z}m`,uZ=($=0)=>(Z,X,z)=>`\x1B[${38+$};2;${Z};${X};${z}m`,f={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]}},qD=Object.keys(f.modifier),qV=Object.keys(f.color),GV=Object.keys(f.bgColor),GD=[...qV,...GV];function JV(){let $=new Map;for(let[Z,X]of Object.entries(f)){for(let[z,q]of Object.entries(X))f[z]={open:`\x1B[${q[0]}m`,close:`\x1B[${q[1]}m`},X[z]=f[z],$.set(q[0],q[1]);Object.defineProperty(f,Z,{value:X,enumerable:!1})}return Object.defineProperty(f,"codes",{value:$,enumerable:!1}),f.color.close="\x1B[39m",f.bgColor.close="\x1B[49m",f.color.ansi=gZ(),f.color.ansi256=vZ(),f.color.ansi16m=uZ(),f.bgColor.ansi=gZ(10),f.bgColor.ansi256=vZ(10),f.bgColor.ansi16m=uZ(10),Object.defineProperties(f,{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)=>f.rgbToAnsi256(...f.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)=>f.ansi256ToAnsi(f.rgbToAnsi256(Z,X,z)),enumerable:!1},hexToAnsi:{value:(Z)=>f.ansi256ToAnsi(f.hexToAnsi256(Z)),enumerable:!1}}),f}var QV=JV(),H0=QV;import B5 from"process";import YV from"os";import mZ from"tty";function J0($,Z=globalThis.Deno?globalThis.Deno.args:B5.argv){let X=$.startsWith("-")?"":$.length===1?"-":"--",z=Z.indexOf(X+$),q=Z.indexOf("--");return z!==-1&&(q===-1||z<q)}var{env:h}=B5,J4;if(J0("no-color")||J0("no-colors")||J0("color=false")||J0("color=never"))J4=0;else if(J0("color")||J0("colors")||J0("color=true")||J0("color=always"))J4=1;function HV(){if("FORCE_COLOR"in h){if(h.FORCE_COLOR==="true")return 1;if(h.FORCE_COLOR==="false")return 0;return h.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(h.FORCE_COLOR,10),3)}}function UV($){if($===0)return!1;return{level:$,hasBasic:!0,has256:$>=2,has16m:$>=3}}function WV($,{streamIsTTY:Z,sniffFlags:X=!0}={}){let z=HV();if(z!==void 0)J4=z;let q=X?J4:z;if(q===0)return 0;if(X){if(J0("color=16m")||J0("color=full")||J0("color=truecolor"))return 3;if(J0("color=256"))return 2}if("TF_BUILD"in h&&"AGENT_NAME"in h)return 1;if($&&!Z&&q===void 0)return 0;let G=q||0;if(h.TERM==="dumb")return G;if(B5.platform==="win32"){let J=YV.release().split(".");if(Number(J[0])>=10&&Number(J[2])>=10586)return Number(J[2])>=14931?3:2;return 1}if("CI"in h){if(["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some((J)=>(J in h)))return 3;if(["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some((J)=>(J in h))||h.CI_NAME==="codeship")return 1;return G}if("TEAMCITY_VERSION"in h)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(h.TEAMCITY_VERSION)?1:0;if(h.COLORTERM==="truecolor")return 3;if(h.TERM==="xterm-kitty")return 3;if(h.TERM==="xterm-ghostty")return 3;if(h.TERM==="wezterm")return 3;if("TERM_PROGRAM"in h){let J=Number.parseInt((h.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(h.TERM_PROGRAM){case"iTerm.app":return J>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(h.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(h.TERM))return 1;if("COLORTERM"in h)return 1;return G}function dZ($,Z={}){let X=WV($,{streamIsTTY:$&&$.isTTY,...Z});return UV(X)}var VV={stdout:dZ({isTTY:mZ.isatty(1)}),stderr:dZ({isTTY:mZ.isatty(2)})},pZ=VV;function lZ($,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 cZ($,Z,X,z){let q=0,G="";do{let J=$[z-1]==="\r";G+=$.slice(q,J?z-1:z)+Z+(J?`\r
|
|
249
249
|
`:`
|
|
250
250
|
`)+X,q=z+1,z=$.indexOf(`
|
|
251
|
-
`,q)}while(z!==-1);return G+=$.slice(q),G}var{stdout:iZ,stderr:aZ}=pZ,
|
|
252
|
-
`);if(G!==-1)Z=cZ(Z,q,z,G);return z+Z+q};Object.defineProperties(j1.prototype,
|
|
253
|
-
`)}function O5($,Z={}){console.log($X($,Z)),console.log()}function
|
|
254
|
-
`);let Q=G.findings.filter((U)=>U.severity==="error").length,Y=G.findings.filter((U)=>U.severity==="warning").length;if(z!=="json"&&!X)if(console.log(),Q===0&&Y===0)console.log(P.green("Audit clean. No issues found."));else{let U=Q>0?P.red:P.yellow;console.log(U(`Audit found ${Q} error(s), ${Y} warning(s).`))}if((Z.failOn??"error")==="warning"?Q+Y>0:Q>0)process.exit(1)}function
|
|
255
|
-
`);else O5(
|
|
251
|
+
`,q)}while(z!==-1);return G+=$.slice(q),G}var{stdout:iZ,stderr:aZ}=pZ,L5=Symbol("GENERATOR"),C$=Symbol("STYLER"),A1=Symbol("IS_EMPTY"),nZ=["ansi","ansi","ansi256","ansi16m"],E$=Object.create(null),KV=($,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=iZ?iZ.level:0;$.level=Z.level===void 0?X:Z.level};var BV=($)=>{let Z=(...X)=>X.join(" ");return KV(Z,$),Object.setPrototypeOf(Z,j1.prototype),Z};function j1($){return BV($)}Object.setPrototypeOf(j1.prototype,Function.prototype);for(let[$,Z]of Object.entries(H0))E$[$]={get(){let X=Q4(this,D5(Z.open,Z.close,this[C$]),this[A1]);return Object.defineProperty(this,$,{value:X}),X}};E$.visible={get(){let $=Q4(this,this[C$],!0);return Object.defineProperty(this,"visible",{value:$}),$}};var T5=($,Z,X,...z)=>{if($==="rgb"){if(Z==="ansi16m")return H0[X].ansi16m(...z);if(Z==="ansi256")return H0[X].ansi256(H0.rgbToAnsi256(...z));return H0[X].ansi(H0.rgbToAnsi(...z))}if($==="hex")return T5("rgb",Z,X,...H0.hexToRgb(...z));return H0[X][$](...z)},LV=["rgb","hex","ansi256"];for(let $ of LV){E$[$]={get(){let{level:X}=this;return function(...z){let q=D5(T5($,nZ[X],"color",...z),H0.color.close,this[C$]);return Q4(this,q,this[A1])}}};let Z="bg"+$[0].toUpperCase()+$.slice(1);E$[Z]={get(){let{level:X}=this;return function(...z){let q=D5(T5($,nZ[X],"bgColor",...z),H0.bgColor.close,this[C$]);return Q4(this,q,this[A1])}}}}var TV=Object.defineProperties(()=>{},{...E$,level:{enumerable:!0,get(){return this[L5].level},set($){this[L5].level=$}}}),D5=($,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}},Q4=($,Z,X)=>{let z=(...q)=>DV(z,q.length===1?""+q[0]:q.join(" "));return Object.setPrototypeOf(z,TV),z[L5]=$,z[C$]=Z,z[A1]=X,z},DV=($,Z)=>{if($.level<=0||!Z)return $[A1]?"":Z;let X=$[C$];if(X===void 0)return Z;let{openAll:z,closeAll:q}=X;if(Z.includes("\x1B"))while(X!==void 0)Z=lZ(Z,X.close,X.open),X=X.parent;let G=Z.indexOf(`
|
|
252
|
+
`);if(G!==-1)Z=cZ(Z,q,z,G);return z+Z+q};Object.defineProperties(j1.prototype,E$);var _V=j1(),LD=j1({level:aZ?aZ.level:0});var P=_V;var sZ="\u2500".repeat(55);function _5($){if($==="success")return P.green;if($==="warning")return P.yellow;return P.red}function FV($){if($>=70)return P.green;if($>=50)return P.yellow;return P.red}function F5($){if($.label==="Error")return $.label;return`${$.label} (${$.confidence}%)`}function MV($){let Z=F0({answerable:$.answerable??"NO",confidence:$.confidence??0,traps:$.traps??{fired:[],avoided:[]},error:$.error}),X=_5(Z.tone);return{icon:X(Z.icon),status:F5(Z),color:X}}function OV($){let Z=$.target?.target??"default",X=$.context?.name??"default";if(Z==="default"&&X==="default")return"";if(X==="default")return P.dim(`[${Z}]`);return P.dim(`[${Z}/${X}]`)}function wV($){let Z=$.map((X)=>X.scenario.name);return new Set(Z).size!==Z.length}function Y4($){return $.map((Z)=>`[${Z}]`).join(", ")}function M5($,Z){let X=[];if($.error)return X.push(P.dim(`${Z}error: ${$.error}`)),X;if($.traps.fired.length>0)for(let z of $.traps.fired)X.push(P.red(`${Z}trap: ${z.id}`)),X.push(P.dim(`${Z}reason: ${z.reason}`)),X.push(P.dim(`${Z}match: "${z.matched}"`));else if($.reason&&$.answerable!=="YES")X.push(P.dim(`${Z}reason: ${$.reason}`));if($.citations.cited.length>0)X.push(P.dim(`${Z}cited: ${Y4($.citations.cited)}`));if($.citations.missing.length>0)X.push(P.dim(`${Z}missing: ${Y4($.citations.missing)}`));if($.citations.unknown.length>0)X.push(P.dim(`${Z}unknown: ${Y4($.citations.unknown)}`));return X}function rZ($,Z){if(!$.traps||!$.citations)return[];return M5({error:$.error,traps:$.traps,reason:$.reason??"",answerable:$.answerable??"NO",citations:$.citations},Z)}function oZ($){let{icon:Z,status:X,color:z}=MV($),q=OV($),G=`${Z} ${X}`;return q?`${q} ${z(G)}`:z(G)}function tZ($,Z){if(!$.cells)return[];let X=[];X.push(`${Z}${P.dim("Matrix cells (interface \xB7 source \xB7 toolset)")}`);for(let z of $.cells){let q=F0(z),G=_5(q.tone),J=`[${z.cell.interface} \xB7 ${z.cell.source??"-"} \xB7 ${z.cell.toolset}]`,Q=P.dim(J),Y=`${G(q.icon)} ${G(F5(q))}`;if(X.push(`${Z}${Q} ${Y}`),X.push(...M5({traps:z.traps,reason:z.reason,answerable:z.answerable,citations:z.citations??{cited:[],required:[],missing:[],unknown:[]}},`${Z} `)),z.expected){let H=z.expected.includes.filter((U)=>!U.satisfied).map((U)=>`"${U.value}"`),W=z.expected.excludes.filter((U)=>!U.satisfied).map((U)=>`"${U.value}"`);if(H.length>0)X.push(P.dim(`${Z} expected.includes missing: ${H.join(", ")}`));if(W.length>0)X.push(P.dim(`${Z} expected.excludes hit: ${W.join(", ")}`))}if(z.toolsUsed&&z.toolsUsed.length>0)X.push(P.dim(`${Z} tools: ${z.toolsUsed.join(", ")}`))}if($.verifierSamples&&$.verifierSamples.length>0){X.push(`${Z}${P.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(P.dim(`${Z} [${z.id}] ${z.name}`)),X.push(P.dim(`${Z} ${q}${G}`))}}return X}function eZ($,Z){if(!$.surfaces)return[];let X=[];X.push(`${Z}${P.dim("Citations scoped to active surface (compare mode)")}`);for(let z of $.surfaces){let q=F0(z),G=_5(q.tone),J=P.dim(`[${z.active.join(",")}]`),Q=`${G(q.icon)} ${G(F5(q))}`;X.push(`${Z}${J} ${Q}`),X.push(...M5({traps:z.traps,reason:z.reason,answerable:z.answerable,citations:z.citations},`${Z} `))}return X}function PV($){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 IV($,Z){let X=$.summary.score,q=`Overall: ${FV(X)(`${X}`)} / 100`;if(Z===void 0||Z<=0)return q;let J=X>=Z?P.green("run passes"):P.red("run fails");return`${q} \xB7 threshold ${Z} \xB7 ${J}`}function $X($,Z={}){let{tool:X,scenarios:z,summary:q}=$,G=z,J=[];if(J.push(P.bold("pickled check")),J.push(sZ),J.push(`Tool: ${P.cyan(X.name)}`),$.docs.length>0)J.push(`Sources: ${P.dim(Y4($.docs.map((Q)=>Q.id)))}`);else J.push(`Sources: ${P.dim("none registered")}`);if(J.push(`Scenarios: ${P.dim(String(q.total))}`),J.push(""),wV(G)){let Q=new Map;for(let Y of G){let H=Y.scenario.name;if(!Q.has(H))Q.set(H,[]);Q.get(H)?.push(Y)}for(let[Y,H]of Q){J.push(`Scenario: ${Y}`);for(let W of H)if(W.cells)J.push(...tZ(W," "));else if(W.surfaces)J.push(...eZ(W," "));else J.push(` ${oZ(W)}`),J.push(...rZ(W," "));J.push("")}}else for(let Q of G){if(J.push(`Scenario: ${Q.scenario.name}`),Q.cells)J.push(...tZ(Q," "));else if(Q.surfaces)J.push(...eZ(Q," "));else J.push(` ${oZ(Q)}`),J.push(...rZ(Q," "));J.push("")}return J.push(sZ),J.push(IV($,Z.threshold)),J.push(P.dim(PV(z))),J.join(`
|
|
253
|
+
`)}function O5($,Z={}){console.log($X($,Z)),console.log()}function H4($,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((H)=>({...H,content:""})),cells:J?.map((H)=>{let{allResponses:W,...U}=H;return U}),surfaces:Q?.map((H)=>{let{allResponses:W,...U}=H;return U})}})};return JSON.stringify(X,null,2)}function AV($){if($.format&&$.format!=="terminal")return $.format;if($.json)return"json";return $.format??"terminal"}async function ZX($,Z){let{output:X}=Z,z=AV(Z),q=RV.resolve($),G;try{G=await j2({targetRepo:q})}catch(U){console.error(P.red(U instanceof Error?U.message:U)),process.exit(1)}let J;if(z==="json")J=M2(G);else if(z==="markdown")J=F2(G);else J=O2(G);if(X)await Bun.write(X,J);else await jV(`${J}
|
|
254
|
+
`);let Q=G.findings.filter((U)=>U.severity==="error").length,Y=G.findings.filter((U)=>U.severity==="warning").length;if(z!=="json"&&!X)if(console.log(),Q===0&&Y===0)console.log(P.green("Audit clean. No issues found."));else{let U=Q>0?P.red:P.yellow;console.log(U(`Audit found ${Q} error(s), ${Y} warning(s).`))}if((Z.failOn??"error")==="warning"?Q+Y>0:Q>0)process.exit(1)}function jV($){return new Promise((Z,X)=>{process.stdout.write($,(z)=>{if(z)X(z);else Z()})})}import NV from"path";async function zX($,Z){let{json:X,output:z,verbose:q}=Z,G=(K)=>!X&&console.log(K),J=NV.resolve($),Q;try{Q=await B$(J)}catch(K){console.error(P.red(K instanceof Error?K.message:K)),console.error(),console.error(P.dim("Run `pickled init` to create a config file")),process.exit(1)}if(Z.target){let K=Q.scenarios.length;try{Q=f9(Q,Z.target)}catch(D){console.error(P.red(D instanceof Error?D.message:String(D))),process.exit(1)}let L=K-Q.scenarios.length;if(L>0&&!X)G(P.dim(`Skipping ${L} scenario(s) with explicit target != "${Z.target}"`))}let Y={name:Q.tool.name,description:Q.tool.description,path:J};if(q){G(P.bold("pickled check")),G(""),G(P.dim(` Tool: ${Y.name}`)),G(P.dim(` Scenarios: ${Q.scenarios.length}`));for(let K of Q.scenarios)G(P.dim(` - ${K.name}`))}let H;try{H=SV(Z.threshold,Q.threshold)}catch(K){console.error(P.red(K instanceof Error?K.message:K)),process.exit(1)}let W=Z.interface??Z.target,U=W||Z.source||Z.toolset?{interface:W,source:Z.source,toolset:Z.toolset}:void 0,V=Z.scenario?[Z.scenario]:void 0,B=await K5(Y,Q,{onProgress:q?(K)=>{if(!X)G(P.dim(` ${K}`))}:void 0,cellFilter:U,scenarioFilter:V}),T=H>0&&B.summary.score<H;if(z)await Bun.write(z,H4(B,{verbose:q}));else if(X)await CV(`${H4(B,{verbose:q})}
|
|
255
|
+
`);else O5(B,{threshold:H});if(T){if(X||z)console.error(P.red(`Overall: ${B.summary.score} / 100 \xB7 threshold ${H} \xB7 run fails`)),console.error(P.dim("Review failed scenarios before trusting this surface."));process.exit(1)}}function SV($,Z){if($===void 0){if(Z===void 0)return 0;return XX(Z,"pickled.yml threshold")}return XX($,"--threshold")}function XX($,Z){if(typeof $==="number"){if(Number.isInteger($)&&$>=0&&$<=100)return $;throw Error(`Invalid ${Z} "${$}". Expected an integer from 0 to 100.`)}if(typeof $==="string"&&/^\d+$/.test($)){let X=Number($);if(X<=100)return X}if(typeof $==="string")throw Error(`Invalid ${Z} "${$}". Expected an integer from 0 to 100.`);throw Error(`Invalid ${Z}. Expected an integer from 0 to 100.`)}function CV($){return new Promise((Z,X)=>{process.stdout.write($,(z)=>{if(z)X(z);else Z()})})}import EV from"path";var bV=`# pickled.yml - Agent legibility check for your product
|
|
256
256
|
|
|
257
257
|
tool:
|
|
258
258
|
name: "your-product"
|
|
@@ -274,4 +274,4 @@ scenarios:
|
|
|
274
274
|
|
|
275
275
|
# Optional: fail CI if score falls below threshold
|
|
276
276
|
# threshold: 80
|
|
277
|
-
`;async function
|
|
277
|
+
`;async function qX($){let X=`${EV.resolve($)}/pickled.yml`;if(await Bun.file(X).exists())console.error(P.red("pickled.yml already exists")),process.exit(1);await Bun.write(X,bV),console.log(P.green("Created pickled.yml")),console.log(),console.log(P.dim("Next steps:")),console.log(P.dim(" 1. Edit pickled.yml: list your sources and scenarios")),console.log(P.dim(" 2. Run: pickled check")),console.log()}X$.name("pickled").description("Test what agents actually understand about your product").version(m5.version);X$.command("init").description("Create a pickled.yml config file").argument("[path]","Path to your project (default: current directory)",".").action(qX);X$.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 O4("--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 O4("--fail-on <level>","Exit non-zero on this severity or higher").choices(["error","warning"]).default("error")).action(ZX);X$.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(zX);await X$.parseAsync();
|