faf-cli 6.0.3 → 6.0.4
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 +12 -0
- package/dist/cli.js +162 -162
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -1,176 +1,176 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as
|
|
3
|
-
`)}displayWidth($){return
|
|
2
|
+
import{createRequire as uJ}from"node:module";var fJ=Object.create;var{getPrototypeOf:yJ,defineProperty:r2,getOwnPropertyNames:gJ}=Object;var hJ=Object.prototype.hasOwnProperty;var vJ=($,Z,X)=>{X=$!=null?fJ(yJ($)):{};let z=Z||!$||!$.__esModule?r2(X,"default",{value:$,enumerable:!0}):X;for(let J of gJ($))if(!hJ.call(z,J))r2(z,J,{get:()=>$[J],enumerable:!0});return z};var T=($,Z)=>()=>(Z||$((Z={exports:{}}).exports,Z),Z.exports);var g5=($,Z)=>{for(var X in Z)r2($,X,{get:Z[X],enumerable:!0,configurable:!0,set:(z)=>Z[X]=()=>z})};var j=($,Z)=>()=>($&&(Z=$($=0)),Z);var J0=uJ(import.meta.url);var Y6=T((mJ)=>{class a2 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 h5 extends a2{constructor($){super(1,"commander.invalidArgument",$);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}mJ.CommanderError=a2;mJ.InvalidArgumentError=h5});var O8=T((iJ)=>{var{InvalidArgumentError:pJ}=Y6();class v5{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 pJ(`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 lJ($){let Z=$.name()+($.variadic===!0?"...":"");return $.required?"<"+Z+">":"["+Z+"]"}iJ.Argument=v5;iJ.humanReadableArgName=lJ});var o2=T((aJ)=>{var{humanReadableArgName:rJ}=O8();class u5{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,J)=>{return z.name().localeCompare(J.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),J=X.long&&$._findOption(X.long);if(!z&&!J)Z.push(X);else if(X.long&&!J)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((J)=>!J.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)=>rJ(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((J)=>{let q=X(J);if(!z.has(q))z.set(q,[])}),Z.forEach((J)=>{let q=X(J);if(!z.has(q))z.set(q,[]);z.get(q).push(J)}),z}formatHelp($,Z){let X=Z.padWidth($,Z),z=Z.helpWidth??80;function J(W,V){return Z.formatItem(W,X,V,Z)}let q=[`${Z.styleTitle("Usage:")} ${Z.styleUsage(Z.commandUsage($))}`,""],Q=Z.commandDescription($);if(Q.length>0)q=q.concat([Z.boxWrap(Z.styleCommandDescription(Q),z),""]);let Y=Z.visibleArguments($).map((W)=>{return J(Z.styleArgumentTerm(Z.argumentTerm(W)),Z.styleArgumentDescription(Z.argumentDescription(W)))});if(q=q.concat(this.formatItemList("Arguments:",Y,Z)),this.groupItems($.options,Z.visibleOptions($),(W)=>W.helpGroupHeading??"Options:").forEach((W,V)=>{let H=W.map((D)=>{return J(Z.styleOptionTerm(Z.optionTerm(D)),Z.styleOptionDescription(Z.optionDescription(D)))});q=q.concat(this.formatItemList(V,H,Z))}),Z.showGlobalOptions){let W=Z.visibleGlobalOptions($).map((V)=>{return J(Z.styleOptionTerm(Z.optionTerm(V)),Z.styleOptionDescription(Z.optionDescription(V)))});q=q.concat(this.formatItemList("Global Options:",W,Z))}return this.groupItems($.commands,Z.visibleCommands($),(W)=>W.helpGroup()||"Commands:").forEach((W,V)=>{let H=W.map((D)=>{return J(Z.styleSubcommandTerm(Z.subcommandTerm(D)),Z.styleSubcommandDescription(Z.subcommandDescription(D)))});q=q.concat(this.formatItemList(V,H,Z))}),q.join(`
|
|
3
|
+
`)}displayWidth($){return m5($).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 q=" ".repeat(2);if(!X)return q+$;let Q=$.padEnd(Z+$.length-z.displayWidth($)),Y=2,U=(this.helpWidth??80)-Z-Y-2,W;if(U<this.minWidthToWrap||z.preformatted(X))W=X;else W=z.boxWrap(X,U).replace(/\n/g,`
|
|
4
4
|
`+" ".repeat(Z+Y));return q+Q+" ".repeat(Y)+W.replace(/\n/g,`
|
|
5
|
-
${q}`)}boxWrap($,Z){if(Z<this.minWidthToWrap)return $;let X=$.split(/\r\n|\n/),z=/[\s]*[^\s]+/g,J=[];return X.forEach((q)=>{let Q=q.match(z);if(Q===null){J.push("");return}let Y=[Q.shift()],G=this.displayWidth(Y[0]);Q.forEach((U)=>{let W=this.displayWidth(U);if(G+W<=Z){Y.push(U),G+=W;return}J.push(Y.join(""));let
|
|
6
|
-
`)}}function
|
|
5
|
+
${q}`)}boxWrap($,Z){if(Z<this.minWidthToWrap)return $;let X=$.split(/\r\n|\n/),z=/[\s]*[^\s]+/g,J=[];return X.forEach((q)=>{let Q=q.match(z);if(Q===null){J.push("");return}let Y=[Q.shift()],G=this.displayWidth(Y[0]);Q.forEach((U)=>{let W=this.displayWidth(U);if(G+W<=Z){Y.push(U),G+=W;return}J.push(Y.join(""));let V=U.trimStart();Y=[V],G=this.displayWidth(V)}),J.push(Y.join(""))}),J.join(`
|
|
6
|
+
`)}}function m5($){let Z=/\x1b\[\d*(;\d*)*m/g;return $.replace(Z,"")}aJ.Help=u5;aJ.stripColor=m5});var t2=T((Zq)=>{var{InvalidArgumentError:eJ}=Y6();class c5{constructor($,Z){this.flags=$,this.description=Z||"",this.required=$.includes("<"),this.optional=$.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test($),this.mandatory=!1;let X=$q($);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 eJ(`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 d5(this.name().replace(/^no-/,""));return d5(this.name())}helpGroup($){return this.helpGroupHeading=$,this}is($){return this.short===$||this.long===$}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class p5{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,J=z!==void 0?z:!1;return Z.negate===(J===$)}}function d5($){return $.split("-").reduce((Z,X)=>{return Z+X[0].toUpperCase()+X.slice(1)})}function $q($){let Z,X,z=/^-[^-]$/,J=/^--[^-]/,q=$.split(/[ |,]+/).concat("guard");if(z.test(q[0]))Z=q.shift();if(J.test(q[0]))X=q.shift();if(!Z&&z.test(q[0]))Z=q.shift();if(!Z&&J.test(q[0]))Z=X,X=q.shift();if(q[0].startsWith("-")){let Q=q[0],Y=`option creation failed due to '${Q}' in option flags '${$}'`;if(/^-[^-][^-]/.test(Q))throw Error(`${Y}
|
|
7
7
|
- a short flag is a single dash and a single character
|
|
8
8
|
- either use a single dash and a single character (for a short flag)
|
|
9
9
|
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(z.test(Q))throw Error(`${Y}
|
|
10
10
|
- too many short flags`);if(J.test(Q))throw Error(`${Y}
|
|
11
11
|
- too many long flags`);throw Error(`${Y}
|
|
12
|
-
- 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}}
|
|
12
|
+
- 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}}Zq.Option=c5;Zq.DualOptions=p5});var l5=T((Qq)=>{function Jq($,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 J=1;J<=$.length;J++){let q=1;if($[J-1]===Z[z-1])q=0;else q=1;if(X[J][z]=Math.min(X[J-1][z]+1,X[J][z-1]+1,X[J-1][z-1]+q),J>1&&z>1&&$[J-1]===Z[z-2]&&$[J-2]===Z[z-1])X[J][z]=Math.min(X[J][z],X[J-2][z-2]+1)}return X[$.length][Z.length]}function qq($,Z){if(!Z||Z.length===0)return"";Z=Array.from(new Set(Z));let X=$.startsWith("--");if(X)$=$.slice(2),Z=Z.map((Q)=>Q.slice(2));let z=[],J=3,q=0.4;if(Z.forEach((Q)=>{if(Q.length<=1)return;let Y=Jq($,Q),G=Math.max($.length,Q.length);if((G-Y)/G>q){if(Y<J)J=Y,z=[Q];else if(Y===J)z.push(Q)}}),z.sort((Q,Y)=>Q.localeCompare(Y)),X)z=z.map((Q)=>`--${Q}`);if(z.length>1)return`
|
|
13
13
|
(Did you mean one of ${z.join(", ")}?)`;if(z.length===1)return`
|
|
14
|
-
(Did you mean ${z[0]}?)`;return""}
|
|
15
|
-
- 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
|
|
16
|
-
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
|
|
17
|
-
- 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("|"),J=Z($).join("|");throw Error(`cannot add command '${J}' as already have command '${z}'`)}this._initCommandGroup($),this.commands.push($)}addOption($){this._registerOption($);let Z=$.name(),X=$.attributeName();if($.negate){let J=$.long.replace(/^--no-/,"--");if(!this._findOption(J))this.setOptionValueWithSource(X,$.defaultValue===void 0?!0:$.defaultValue,"default")}else if($.defaultValue!==void 0)this.setOptionValueWithSource(X,$.defaultValue,"default");let z=(J,q,Q)=>{if(J==null&&$.presetArg!==void 0)J=$.presetArg;let Y=this.getOptionValue(X);if(J!==null&&$.parseArg)J=this._callParseArg($,J,Y,q);else if(J!==null&&$.variadic)J=$._collectValue(J,Y);if(J==null)if($.negate)J=!1;else if($.isBoolean()||$.optional)J=!0;else J="";this.setOptionValueWithSource(X,J,Q)};if(this.on("option:"+Z,(J)=>{let q=`error: option '${$.flags}' argument '${J}' is invalid.`;z(J,q,"cli")}),$.envVar)this.on("optionEnv:"+Z,(J)=>{let q=`error: option '${$.flags}' value '${J}' from env '${$.envVar}' is invalid.`;z(J,q,"env")});return this}_optionEx($,Z,X,z,J){if(typeof Z==="object"&&Z instanceof
|
|
18
|
-
- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable($,Z,X){if(
|
|
14
|
+
(Did you mean ${z[0]}?)`;return""}Qq.suggestSimilar=qq});var r5=T((Bq)=>{var Gq=J0("node:events").EventEmitter,e2=J0("node:child_process"),_0=J0("node:path"),w8=J0("node:fs"),h=J0("node:process"),{Argument:Uq,humanReadableArgName:Wq}=O8(),{CommanderError:$Z}=Y6(),{Help:Hq,stripColor:Vq}=o2(),{Option:i5,DualOptions:Kq}=t2(),{suggestSimilar:n5}=l5();class XZ extends Gq{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)=>h.stdout.write(Z),writeErr:(Z)=>h.stderr.write(Z),outputError:(Z,X)=>X(Z),getOutHelpWidth:()=>h.stdout.isTTY?h.stdout.columns:void 0,getErrHelpWidth:()=>h.stderr.isTTY?h.stderr.columns:void 0,getOutHasColors:()=>ZZ()??(h.stdout.isTTY&&h.stdout.hasColors?.()),getErrHasColors:()=>ZZ()??(h.stderr.isTTY&&h.stderr.hasColors?.()),stripColor:(Z)=>Vq(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,J=X;if(typeof z==="object"&&z!==null)J=z,z=null;J=J||{};let[,q,Q]=$.match(/([^ ]+) *(.*)/),Y=this.createCommand(q);if(z)Y.description(z),Y._executableHandler=!0;if(J.isDefault)this._defaultCommandName=Y._name;if(Y._hidden=!!(J.noHelp||J.hidden),Y._executableFile=J.executableFile||null,Q)Y.arguments(Q);if(this._registerCommand(Y),Y.parent=this,Y.copyInheritedSettings(this),z)return this;return Y}createCommand($){return new XZ($)}createHelp(){return Object.assign(new Hq,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
|
|
15
|
+
- 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 Uq($,Z)}argument($,Z,X,z){let J=this.createArgument($,Z);if(typeof X==="function")J.default(z).argParser(X);else J.default(X);return this.addArgument(J),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,J]=X.match(/([^ ]+) *(.*)/),q=Z??"display help for command",Q=this.createCommand(z);if(Q.helpOption(!1),J)Q.arguments(J);if(q)Q.description(q);if(this._addImplicitHelpCommand=!0,this._helpCommand=Q,$||Z)this._initCommandGroup(Q);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 : '${$}'.
|
|
16
|
+
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 $Z($,Z,X));h.exit($)}action($){let Z=(X)=>{let z=this.registeredArguments.length,J=X.slice(0,z);if(this._storeOptionsAsProperties)J[z]=this;else J[z]=this.opts();return J.push(this),$.apply(this,J)};return this._actionHandler=Z,this}createOption($,Z){return new i5($,Z)}_callParseArg($,Z,X,z){try{return $.parseArg(Z,X)}catch(J){if(J.code==="commander.invalidArgument"){let q=`${z} ${J.message}`;this.error(q,{exitCode:J.exitCode,code:J.code})}throw J}}_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}'
|
|
17
|
+
- 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("|"),J=Z($).join("|");throw Error(`cannot add command '${J}' as already have command '${z}'`)}this._initCommandGroup($),this.commands.push($)}addOption($){this._registerOption($);let Z=$.name(),X=$.attributeName();if($.negate){let J=$.long.replace(/^--no-/,"--");if(!this._findOption(J))this.setOptionValueWithSource(X,$.defaultValue===void 0?!0:$.defaultValue,"default")}else if($.defaultValue!==void 0)this.setOptionValueWithSource(X,$.defaultValue,"default");let z=(J,q,Q)=>{if(J==null&&$.presetArg!==void 0)J=$.presetArg;let Y=this.getOptionValue(X);if(J!==null&&$.parseArg)J=this._callParseArg($,J,Y,q);else if(J!==null&&$.variadic)J=$._collectValue(J,Y);if(J==null)if($.negate)J=!1;else if($.isBoolean()||$.optional)J=!0;else J="";this.setOptionValueWithSource(X,J,Q)};if(this.on("option:"+Z,(J)=>{let q=`error: option '${$.flags}' argument '${J}' is invalid.`;z(J,q,"cli")}),$.envVar)this.on("optionEnv:"+Z,(J)=>{let q=`error: option '${$.flags}' value '${J}' from env '${$.envVar}' is invalid.`;z(J,q,"env")});return this}_optionEx($,Z,X,z,J){if(typeof Z==="object"&&Z instanceof i5)throw Error("To add an Option object use addOption() instead of option() or requiredOption()");let q=this.createOption(Z,X);if(q.makeOptionMandatory(!!$.mandatory),typeof z==="function")q.default(J).argParser(z);else if(z instanceof RegExp){let Q=z;z=(Y,G)=>{let U=Q.exec(Y);return U?U[0]:G},q.default(J).argParser(z)}else q.default(z);return this.addOption(q)}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(h.versions?.electron)Z.from="electron";let z=h.execArgv??[];if(z.includes("-e")||z.includes("--eval")||z.includes("-p")||z.includes("--print"))Z.from="eval"}if($===void 0)$=h.argv;this.rawArgs=$.slice();let X;switch(Z.from){case void 0:case"node":this._scriptPath=$[1],X=$.slice(2);break;case"electron":if(h.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.
|
|
18
|
+
- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable($,Z,X){if(w8.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",J=`'${$}' does not exist
|
|
19
19
|
- if '${X}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
|
|
20
20
|
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
|
|
21
|
-
- ${z}`;throw Error(J)}_executeSubCommand($,Z){Z=Z.slice();let X=!1,z=[".js",".ts",".tsx",".mjs",".cjs"];function J(U,W){let
|
|
21
|
+
- ${z}`;throw Error(J)}_executeSubCommand($,Z){Z=Z.slice();let X=!1,z=[".js",".ts",".tsx",".mjs",".cjs"];function J(U,W){let V=_0.resolve(U,W);if(w8.existsSync(V))return V;if(z.includes(_0.extname(W)))return;let H=z.find((D)=>w8.existsSync(`${V}${D}`));if(H)return`${V}${H}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let q=$._executableFile||`${this._name}-${$._name}`,Q=this._executableDir||"";if(this._scriptPath){let U;try{U=w8.realpathSync(this._scriptPath)}catch{U=this._scriptPath}Q=_0.resolve(_0.dirname(U),Q)}if(Q){let U=J(Q,q);if(!U&&!$._executableFile&&this._scriptPath){let W=_0.basename(this._scriptPath,_0.extname(this._scriptPath));if(W!==this._name)U=J(Q,`${W}-${$._name}`)}q=U||q}X=z.includes(_0.extname(q));let Y;if(h.platform!=="win32")if(X)Z.unshift(q),Z=s5(h.execArgv).concat(Z),Y=e2.spawn(h.argv[0],Z,{stdio:"inherit"});else Y=e2.spawn(q,Z,{stdio:"inherit"});else this._checkForMissingExecutable(q,Q,$._name),Z.unshift(q),Z=s5(h.execArgv).concat(Z),Y=e2.spawn(h.execPath,Z,{stdio:"inherit"});if(!Y.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((W)=>{h.on(W,()=>{if(Y.killed===!1&&Y.exitCode===null)Y.kill(W)})});let G=this._exitCallback;Y.on("close",(U)=>{if(U=U??1,!G)h.exit(U);else G(new $Z(U,"commander.executeSubCommandAsync","(close)"))}),Y.on("error",(U)=>{if(U.code==="ENOENT")this._checkForMissingExecutable(q,Q,$._name);else if(U.code==="EACCES")throw Error(`'${q}' not executable`);if(!G)h.exit(1);else{let W=new $Z(1,"commander.executeSubCommandAsync","(error)");W.nestedError=U,G(W)}}),this.runningCommand=Y}_dispatchSubcommand($,Z,X){let z=this._findCommand($);if(!z)this.help({error:!0});z._prepareForParse();let J;return J=this._chainOrCallSubCommandHook(J,z,"preSubcommand"),J=this._chainOrCall(J,()=>{if(z._executableHandler)this._executeSubCommand(z,Z.concat(X));else return z._parseCommand(Z,X)}),J}_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,J)=>{let q=z;if(z!==null&&X.parseArg){let Q=`error: command-argument value '${z}' is invalid for argument '${X.name()}'.`;q=this._callParseArg(X,z,J,Q)}return q};this._checkNumberOfArguments();let Z=[];this.registeredArguments.forEach((X,z)=>{let J=X.defaultValue;if(X.variadic){if(z<this.args.length){if(J=this.args.slice(z),X.parseArg)J=J.reduce((q,Q)=>{return $(X,Q,q)},X.defaultValue)}else if(J===void 0)J=[]}else if(z<this.args.length){if(J=this.args[z],X.parseArg)J=$(X,J,X.defaultValue)}Z[z]=J}),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((J)=>J._lifeCycleHooks[Z]!==void 0).forEach((J)=>{J._lifeCycleHooks[Z].forEach((q)=>{z.push({hookedCommand:J,callback:q})})}),Z==="postAction")z.reverse();return z.forEach((J)=>{X=this._chainOrCall(X,()=>{return J.callback(J.hookedCommand,this)})}),X}_chainOrCallSubCommandHook($,Z,X){let z=$;if(this._lifeCycleHooks[X]!==void 0)this._lifeCycleHooks[X].forEach((J)=>{z=this._chainOrCall(z,()=>{return J(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])},J=`command:${this.name()}`;if(this._actionHandler){z(),this._processArguments();let q;if(q=this._chainOrCallHooks(q,"preAction"),q=this._chainOrCall(q,()=>this._actionHandler(this.processedArgs)),this.parent)q=this._chainOrCall(q,()=>{this.parent.emit(J,$,Z)});return q=this._chainOrCallHooks(q,"postAction"),q}if(this.parent?.listenerCount(J))z(),this._processArguments(),this.parent.emit(J,$,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((J)=>X.conflictsWith.includes(J.attributeName()));if(z)this._conflictingOption(X,z)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(($)=>{$._checkForConflictingLocalOptions()})}parseOptions($){let Z=[],X=[],z=Z;function J(U){return U.length>1&&U[0]==="-"}let q=(U)=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(U))return!1;return!this._getCommandAndAncestors().some((W)=>W.options.map((V)=>V.short).some((V)=>/^-\d$/.test(V)))},Q=null,Y=null,G=0;while(G<$.length||Y){let U=Y??$[G++];if(Y=null,U==="--"){if(z===X)z.push(U);z.push(...$.slice(G));break}if(Q&&(!J(U)||q(U))){this.emit(`option:${Q.name()}`,U);continue}if(Q=null,J(U)){let W=this._findOption(U);if(W){if(W.required){let V=$[G++];if(V===void 0)this.optionMissingArgument(W);this.emit(`option:${W.name()}`,V)}else if(W.optional){let V=null;if(G<$.length&&(!J($[G])||q($[G])))V=$[G++];this.emit(`option:${W.name()}`,V)}else this.emit(`option:${W.name()}`);Q=W.variadic?W:null;continue}}if(U.length>2&&U[0]==="-"&&U[1]!=="-"){let W=this._findOption(`-${U[1]}`);if(W){if(W.required||W.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${W.name()}`,U.slice(2));else this.emit(`option:${W.name()}`),Y=`-${U.slice(2)}`;continue}}if(/^--[^=]+=/.test(U)){let W=U.indexOf("="),V=this._findOption(U.slice(0,W));if(V&&(V.required||V.optional)){this.emit(`option:${V.name()}`,U.slice(W+1));continue}}if(z===Z&&J(U)&&!(this.commands.length===0&&q(U)))z=X;if((this._enablePositionalOptions||this._passThroughOptions)&&Z.length===0&&X.length===0){if(this._findCommand(U)){Z.push(U),X.push(...$.slice(G));break}else if(this._getHelpCommand()&&U===this._getHelpCommand().name()){Z.push(U,...$.slice(G));break}else if(this._defaultCommandName){X.push(U,...$.slice(G));break}}if(this._passThroughOptions){z.push(U,...$.slice(G));break}z.push(U)}return{operands:Z,unknown:X}}opts(){if(this._storeOptionsAsProperties){let $={},Z=this.options.length;for(let X=0;X<Z;X++){let z=this.options[X].attributeName();$[z]=z===this._versionOptionName?this._version:this[z]}return $}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(($,Z)=>Object.assign($,Z.opts()),{})}error($,Z){if(this._outputConfiguration.outputError(`${$}
|
|
22
22
|
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
|
|
23
23
|
`);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
|
|
24
|
-
`),this.outputHelp({error:!0});let X=Z||{},z=X.exitCode||1,J=X.code||"commander.error";this._exit(z,J,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in h.env){let Z=$.attributeName();if(this.getOptionValue(Z)===void 0||["default","config","env"].includes(this.getOptionValueSource(Z)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,h.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new
|
|
25
|
-
`),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
|
|
24
|
+
`),this.outputHelp({error:!0});let X=Z||{},z=X.exitCode||1,J=X.code||"commander.error";this._exit(z,J,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in h.env){let Z=$.attributeName();if(this.getOptionValue(Z)===void 0||["default","config","env"].includes(this.getOptionValueSource(Z)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,h.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new Kq(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=(q)=>{let Q=q.attributeName(),Y=this.getOptionValue(Q),G=this.options.find((W)=>W.negate&&Q===W.attributeName()),U=this.options.find((W)=>!W.negate&&Q===W.attributeName());if(G&&(G.presetArg===void 0&&Y===!1||G.presetArg!==void 0&&Y===G.presetArg))return G;return U||q},z=(q)=>{let Q=X(q),Y=Q.attributeName();if(this.getOptionValueSource(Y)==="env")return`environment variable '${Q.envVar}'`;return`option '${Q.flags}'`},J=`error: ${z($)} cannot be used with ${z(Z)}`;this.error(J,{code:"commander.conflictingOption"})}unknownOption($){if(this._allowUnknownOption)return;let Z="";if($.startsWith("--")&&this._showSuggestionAfterError){let z=[],J=this;do{let q=J.createHelp().visibleOptions(J).filter((Q)=>Q.long).map((Q)=>Q.long);z=z.concat(q),J=J.parent}while(J&&!J._enablePositionalOptions);Z=n5($,z)}let X=`error: unknown option '${$}'${Z}`;this.error(X,{code:"commander.unknownOption"})}_excessArguments($){if(this._allowExcessArguments)return;let Z=this.registeredArguments.length,X=Z===1?"":"s",J=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${Z} argument${X} but got ${$.length}.`;this.error(J,{code:"commander.excessArguments"})}unknownCommand(){let $=this.args[0],Z="";if(this._showSuggestionAfterError){let z=[];this.createHelp().visibleCommands(this).forEach((J)=>{if(z.push(J.name()),J.alias())z.push(J.alias())}),Z=n5($,z)}let X=`error: unknown command '${$}'${Z}`;this.error(X,{code:"commander.unknownCommand"})}version($,Z,X){if($===void 0)return this._version;this._version=$,Z=Z||"-V, --version",X=X||"output the version number";let z=this.createOption(Z,X);return this._versionOptionName=z.attributeName(),this._registerOption(z),this.on("option:"+z.name(),()=>{this._outputConfiguration.writeOut(`${$}
|
|
25
|
+
`),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 Wq(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=_0.basename($,_0.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,J;if(Z)X=(Q)=>this._outputConfiguration.writeErr(Q),z=this._outputConfiguration.getErrHasColors(),J=this._outputConfiguration.getErrHelpWidth();else X=(Q)=>this._outputConfiguration.writeOut(Q),z=this._outputConfiguration.getOutHasColors(),J=this._outputConfiguration.getOutHelpWidth();return{error:Z,write:(Q)=>{if(!z)Q=this._outputConfiguration.stripColor(Q);return X(Q)},hasColors:z,helpWidth:J}}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((q)=>q.emit("beforeAllHelp",z)),this.emit("beforeHelp",z);let J=this.helpInformation({error:X.error});if(Z){if(J=Z(J),typeof J!=="string"&&!Buffer.isBuffer(J))throw Error("outputHelp callback must return a string or a Buffer")}if(X.write(J),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",z),this._getCommandAndAncestors().forEach((q)=>q.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(h.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.
|
|
26
26
|
Expecting one of '${X.join("', '")}'`);let z=`${$}Help`;return this.on(z,(J)=>{let q;if(typeof Z==="function")q=Z({error:J.error,command:J.command});else q=Z;if(q)J.write(`${q}
|
|
27
|
-
`)}),this}_outputHelpIfRequested($){let Z=this._getHelpOption();if(Z&&$.find((z)=>Z.is(z)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function
|
|
28
|
-
`)}}
|
|
29
|
-
`)?
|
|
27
|
+
`)}),this}_outputHelpIfRequested($){let Z=this._getHelpOption();if(Z&&$.find((z)=>Z.is(z)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function s5($){return $.map((Z)=>{if(!Z.startsWith("--inspect"))return Z;let X,z="127.0.0.1",J="9229",q;if((q=Z.match(/^(--inspect(-brk)?)$/))!==null)X=q[1];else if((q=Z.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(X=q[1],/^\d+$/.test(q[3]))J=q[3];else z=q[3];else if((q=Z.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)X=q[1],z=q[3],J=q[4];if(X&&J!=="0")return`${X}=${z}:${parseInt(J)+1}`;return Z})}function ZZ(){if(h.env.NO_COLOR||h.env.FORCE_COLOR==="0"||h.env.FORCE_COLOR==="false")return!1;if(h.env.FORCE_COLOR||h.env.CLICOLOR_FORCE!==void 0)return!0;return}Bq.Command=XZ;Bq.useColor=ZZ});var e5=T((Tq)=>{var{Argument:a5}=O8(),{Command:zZ}=r5(),{CommanderError:Iq,InvalidArgumentError:o5}=Y6(),{Help:Lq}=o2(),{Option:t5}=t2();Tq.program=new zZ;Tq.createCommand=($)=>new zZ($);Tq.createOption=($,Z)=>new t5($,Z);Tq.createArgument=($,Z)=>new a5($,Z);Tq.Command=zZ;Tq.Option=t5;Tq.Argument=a5;Tq.Help=Lq;Tq.CommanderError=Iq;Tq.InvalidArgumentError=o5;Tq.InvalidOptionArgumentError=o5});var k=T((hq)=>{var JZ=Symbol.for("yaml.alias"),X7=Symbol.for("yaml.document"),F8=Symbol.for("yaml.map"),z7=Symbol.for("yaml.pair"),qZ=Symbol.for("yaml.scalar"),R8=Symbol.for("yaml.seq"),C0=Symbol.for("yaml.node.type"),jq=($)=>!!$&&typeof $==="object"&&$[C0]===JZ,bq=($)=>!!$&&typeof $==="object"&&$[C0]===X7,xq=($)=>!!$&&typeof $==="object"&&$[C0]===F8,kq=($)=>!!$&&typeof $==="object"&&$[C0]===z7,J7=($)=>!!$&&typeof $==="object"&&$[C0]===qZ,fq=($)=>!!$&&typeof $==="object"&&$[C0]===R8;function q7($){if($&&typeof $==="object")switch($[C0]){case F8:case R8:return!0}return!1}function yq($){if($&&typeof $==="object")switch($[C0]){case JZ:case F8:case qZ:case R8:return!0}return!1}var gq=($)=>(J7($)||q7($))&&!!$.anchor;hq.ALIAS=JZ;hq.DOC=X7;hq.MAP=F8;hq.NODE_TYPE=C0;hq.PAIR=z7;hq.SCALAR=qZ;hq.SEQ=R8;hq.hasAnchor=gq;hq.isAlias=jq;hq.isCollection=q7;hq.isDocument=bq;hq.isMap=xq;hq.isNode=yq;hq.isPair=kq;hq.isScalar=J7;hq.isSeq=fq});var G6=T((ZQ)=>{var Z0=k(),G0=Symbol("break visit"),Q7=Symbol("skip children"),F0=Symbol("remove node");function A8($,Z){let X=Y7(Z);if(Z0.isDocument($)){if(O$(null,$.contents,X,Object.freeze([$]))===F0)$.contents=null}else O$(null,$,X,Object.freeze([]))}A8.BREAK=G0;A8.SKIP=Q7;A8.REMOVE=F0;function O$($,Z,X,z){let J=G7($,Z,X,z);if(Z0.isNode(J)||Z0.isPair(J))return U7($,z,J),O$($,J,X,z);if(typeof J!=="symbol"){if(Z0.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let q=0;q<Z.items.length;++q){let Q=O$(q,Z.items[q],X,z);if(typeof Q==="number")q=Q-1;else if(Q===G0)return G0;else if(Q===F0)Z.items.splice(q,1),q-=1}}else if(Z0.isPair(Z)){z=Object.freeze(z.concat(Z));let q=O$("key",Z.key,X,z);if(q===G0)return G0;else if(q===F0)Z.key=null;let Q=O$("value",Z.value,X,z);if(Q===G0)return G0;else if(Q===F0)Z.value=null}}return J}async function P8($,Z){let X=Y7(Z);if(Z0.isDocument($)){if(await w$(null,$.contents,X,Object.freeze([$]))===F0)$.contents=null}else await w$(null,$,X,Object.freeze([]))}P8.BREAK=G0;P8.SKIP=Q7;P8.REMOVE=F0;async function w$($,Z,X,z){let J=await G7($,Z,X,z);if(Z0.isNode(J)||Z0.isPair(J))return U7($,z,J),w$($,J,X,z);if(typeof J!=="symbol"){if(Z0.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let q=0;q<Z.items.length;++q){let Q=await w$(q,Z.items[q],X,z);if(typeof Q==="number")q=Q-1;else if(Q===G0)return G0;else if(Q===F0)Z.items.splice(q,1),q-=1}}else if(Z0.isPair(Z)){z=Object.freeze(z.concat(Z));let q=await w$("key",Z.key,X,z);if(q===G0)return G0;else if(q===F0)Z.key=null;let Q=await w$("value",Z.value,X,z);if(Q===G0)return G0;else if(Q===F0)Z.value=null}}return J}function Y7($){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 G7($,Z,X,z){if(typeof X==="function")return X($,Z,z);if(Z0.isMap(Z))return X.Map?.($,Z,z);if(Z0.isSeq(Z))return X.Seq?.($,Z,z);if(Z0.isPair(Z))return X.Pair?.($,Z,z);if(Z0.isScalar(Z))return X.Scalar?.($,Z,z);if(Z0.isAlias(Z))return X.Alias?.($,Z,z);return}function U7($,Z,X){let z=Z[Z.length-1];if(Z0.isCollection(z))z.items[$]=X;else if(Z0.isPair(z))if($==="key")z.key=X;else z.value=X;else if(Z0.isDocument(z))z.contents=X;else{let J=Z0.isAlias(z)?"alias":"scalar";throw Error(`Cannot replace node with ${J} parent`)}}ZQ.visit=A8;ZQ.visitAsync=P8});var QZ=T((YQ)=>{var W7=k(),JQ=G6(),qQ={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},QQ=($)=>$.replace(/[!,[\]{}]/g,(Z)=>qQ[Z]);class N0{constructor($,Z){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},N0.defaultYaml,$),this.tags=Object.assign({},N0.defaultTags,Z)}clone(){let $=new N0(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new N0(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:N0.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},N0.defaultTags);break}return $}add($,Z){if(this.atNextDocument)this.yaml={explicit:N0.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},N0.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[J,q]=X;return this.tags[J]=q,!0}case"%YAML":{if(this.yaml.explicit=!0,X.length!==1)return Z(0,"%YAML directive should contain exactly one part"),!1;let[J]=X;if(J==="1.1"||J==="1.2")return this.yaml.version=J,!0;else{let q=/^\d+\.\d+$/.test(J);return Z(6,`Unsupported YAML version ${J}`,q),!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 q=$.slice(2,-1);if(q==="!"||q==="!!")return Z(`Verbatim tags aren't resolved, so ${$} is invalid.`),null;if($[$.length-1]!==">")Z("Verbatim tags must end with a >");return q}let[,X,z]=$.match(/^(.*!)([^!]*)$/s);if(!z)Z(`The ${$} tag has no suffix`);let J=this.tags[X];if(J)try{return J+decodeURIComponent(z)}catch(q){return Z(String(q)),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+QQ($.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&&W7.isNode($.contents)){let J={};JQ.visit($.contents,(q,Q)=>{if(W7.isNode(Q)&&Q.tag)J[Q.tag]=!0}),z=Object.keys(J)}else z=[];for(let[J,q]of X){if(J==="!!"&&q==="tag:yaml.org,2002:")continue;if(!$||z.some((Q)=>Q.startsWith(q)))Z.push(`%TAG ${J} ${q}`)}return Z.join(`
|
|
28
|
+
`)}}N0.defaultYaml={explicit:!1,version:"1.2"};N0.defaultTags={"!!":"tag:yaml.org,2002:"};YQ.Directives=N0});var S8=T((VQ)=>{var H7=k(),UQ=G6();function WQ($){if(/[\x00-\x19\s,[\]{}]/.test($)){let X=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(X)}return!0}function V7($){let Z=new Set;return UQ.visit($,{Value(X,z){if(z.anchor)Z.add(z.anchor)}}),Z}function K7($,Z){for(let X=1;;++X){let z=`${$}${X}`;if(!Z.has(z))return z}}function HQ($,Z){let X=[],z=new Map,J=null;return{onAnchor:(q)=>{X.push(q),J??(J=V7($));let Q=K7(Z,J);return J.add(Q),Q},setAnchors:()=>{for(let q of X){let Q=z.get(q);if(typeof Q==="object"&&Q.anchor&&(H7.isScalar(Q.node)||H7.isCollection(Q.node)))Q.node.anchor=Q.anchor;else{let Y=Error("Failed to resolve repeated object (this should not happen)");throw Y.source=q,Y}}},sourceObjects:z}}VQ.anchorIsValid=WQ;VQ.anchorNames=V7;VQ.createNodeAnchors=HQ;VQ.findNewAnchor=K7});var YZ=T((IQ)=>{function U6($,Z,X,z){if(z&&typeof z==="object")if(Array.isArray(z))for(let J=0,q=z.length;J<q;++J){let Q=z[J],Y=U6($,z,String(J),Q);if(Y===void 0)delete z[J];else if(Y!==Q)z[J]=Y}else if(z instanceof Map)for(let J of Array.from(z.keys())){let q=z.get(J),Q=U6($,z,J,q);if(Q===void 0)z.delete(J);else if(Q!==q)z.set(J,Q)}else if(z instanceof Set)for(let J of Array.from(z)){let q=U6($,z,J,J);if(q===void 0)z.delete(J);else if(q!==J)z.delete(J),z.add(q)}else for(let[J,q]of Object.entries(z)){let Q=U6($,z,J,q);if(Q===void 0)delete z[J];else if(Q!==q)z[J]=Q}return $.call(Z,X,z)}IQ.applyReviver=U6});var h0=T((MQ)=>{var TQ=k();function B7($,Z,X){if(Array.isArray($))return $.map((z,J)=>B7(z,String(J),X));if($&&typeof $.toJSON==="function"){if(!X||!TQ.hasAnchor($))return $.toJSON(Z,X);let z={aliasCount:0,count:1,res:void 0};X.anchors.set($,z),X.onCreate=(q)=>{z.res=q,delete X.onCreate};let J=$.toJSON(Z,X);if(X.onCreate)X.onCreate(J);return J}if(typeof $==="bigint"&&!X?.keep)return Number($);return $}MQ.toJS=B7});var _8=T((RQ)=>{var wQ=YZ(),D7=k(),FQ=h0();class N7{constructor($){Object.defineProperty(this,D7.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:J}={}){if(!D7.isDocument($))throw TypeError("A document argument is required");let q={anchors:new Map,doc:$,keep:!0,mapAsMap:Z===!0,mapKeyWarned:!1,maxAliasCount:typeof X==="number"?X:100},Q=FQ.toJS(this,"",q);if(typeof z==="function")for(let{count:Y,res:G}of q.anchors.values())z(G,Y);return typeof J==="function"?wQ.applyReviver(J,{"":Q},"",Q):Q}}RQ.NodeBase=N7});var W6=T((EQ)=>{var PQ=S8(),SQ=G6(),F$=k(),_Q=_8(),CQ=h0();class I7 extends _Q.NodeBase{constructor($){super(F$.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=[],SQ.visit($,{Node:(J,q)=>{if(F$.isAlias(q)||F$.hasAnchor(q))X.push(q)}}),Z)Z.aliasResolveCache=X;let z=void 0;for(let J of X){if(J===this)break;if(J.anchor===this.source)z=J}return z}toJSON($,Z){if(!Z)return{source:this.source};let{anchors:X,doc:z,maxAliasCount:J}=Z,q=this.resolve(z,Z);if(!q){let Y=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(Y)}let Q=X.get(q);if(!Q)CQ.toJS(q,null,Z),Q=X.get(q);if(Q?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(J>=0){if(Q.count+=1,Q.aliasCount===0)Q.aliasCount=C8(z,q,X);if(Q.count*Q.aliasCount>J)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return Q.res}toString($,Z,X){let z=`*${this.source}`;if($){if(PQ.anchorIsValid(this.source),$.options.verifyAliasOrder&&!$.anchors.has(this.source)){let J=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(J)}if($.implicitKey)return`${z} `}return z}}function C8($,Z,X){if(F$.isAlias(Z)){let z=Z.resolve($),J=X&&z&&X.get(z);return J?J.count*J.aliasCount:0}else if(F$.isCollection(Z)){let z=0;for(let J of Z.items){let q=C8($,J,X);if(q>z)z=q}return z}else if(F$.isPair(Z)){let z=C8($,Z.key,X),J=C8($,Z.value,X);return Math.max(z,J)}return 1}EQ.Alias=I7});var a=T((yQ)=>{var bQ=k(),xQ=_8(),kQ=h0(),fQ=($)=>!$||typeof $!=="function"&&typeof $!=="object";class J$ extends xQ.NodeBase{constructor($){super(bQ.SCALAR);this.value=$}toJSON($,Z){return Z?.keep?this.value:kQ.toJS(this.value,$,Z)}toString(){return String(this.value)}}J$.BLOCK_FOLDED="BLOCK_FOLDED";J$.BLOCK_LITERAL="BLOCK_LITERAL";J$.PLAIN="PLAIN";J$.QUOTE_DOUBLE="QUOTE_DOUBLE";J$.QUOTE_SINGLE="QUOTE_SINGLE";yQ.Scalar=J$;yQ.isScalarValue=fQ});var H6=T((cQ)=>{var vQ=W6(),q$=k(),L7=a(),uQ="tag:yaml.org,2002:";function mQ($,Z,X){if(Z){let z=X.filter((q)=>q.tag===Z),J=z.find((q)=>!q.format)??z[0];if(!J)throw Error(`Tag ${Z} not found`);return J}return X.find((z)=>z.identify?.($)&&!z.format)}function dQ($,Z,X){if(q$.isDocument($))$=$.contents;if(q$.isNode($))return $;if(q$.isPair($)){let V=X.schema[q$.MAP].createNode?.(X.schema,null,X);return V.items.push($),V}if($ instanceof String||$ instanceof Number||$ instanceof Boolean||typeof BigInt<"u"&&$ instanceof BigInt)$=$.valueOf();let{aliasDuplicateObjects:z,onAnchor:J,onTagObj:q,schema:Q,sourceObjects:Y}=X,G=void 0;if(z&&$&&typeof $==="object")if(G=Y.get($),G)return G.anchor??(G.anchor=J($)),new vQ.Alias(G.anchor);else G={anchor:null,node:null},Y.set($,G);if(Z?.startsWith("!!"))Z=uQ+Z.slice(2);let U=mQ($,Z,Q.tags);if(!U){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let V=new L7.Scalar($);if(G)G.node=V;return V}U=$ instanceof Map?Q[q$.MAP]:(Symbol.iterator in Object($))?Q[q$.SEQ]:Q[q$.MAP]}if(q)q(U),delete X.onTagObj;let W=U?.createNode?U.createNode(X.schema,$,X):typeof U?.nodeClass?.from==="function"?U.nodeClass.from(X.schema,$,X):new L7.Scalar($);if(Z)W.tag=Z;else if(!U.default)W.tag=U.tag;if(G)G.node=W;return W}cQ.createNode=dQ});var E8=T((nQ)=>{var lQ=H6(),R0=k(),iQ=_8();function GZ($,Z,X){let z=X;for(let J=Z.length-1;J>=0;--J){let q=Z[J];if(typeof q==="number"&&Number.isInteger(q)&&q>=0){let Q=[];Q[q]=z,z=Q}else z=new Map([[q,z]])}return lQ.createNode(z,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var T7=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class M7 extends iQ.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)=>R0.isNode(X)||R0.isPair(X)?X.clone($):X),this.range)Z.range=this.range.slice();return Z}addIn($,Z){if(T7($))this.add(Z);else{let[X,...z]=$,J=this.get(X,!0);if(R0.isCollection(J))J.addIn(z,Z);else if(J===void 0&&this.schema)this.set(X,GZ(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(R0.isCollection(z))return z.deleteIn(X);else throw Error(`Expected YAML collection at ${Z}. Remaining path: ${X}`)}getIn($,Z){let[X,...z]=$,J=this.get(X,!0);if(z.length===0)return!Z&&R0.isScalar(J)?J.value:J;else return R0.isCollection(J)?J.getIn(z,Z):void 0}hasAllNullValues($){return this.items.every((Z)=>{if(!R0.isPair(Z))return!1;let X=Z.value;return X==null||$&&R0.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 R0.isCollection(z)?z.hasIn(X):!1}setIn($,Z){let[X,...z]=$;if(z.length===0)this.set(X,Z);else{let J=this.get(X,!0);if(R0.isCollection(J))J.setIn(z,Z);else if(J===void 0&&this.schema)this.set(X,GZ(this.schema,z,Z));else throw Error(`Expected YAML collection at ${X}. Remaining path: ${z}`)}}}nQ.Collection=M7;nQ.collectionFromPath=GZ;nQ.isEmptyPath=T7});var V6=T((eQ)=>{var oQ=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function UZ($,Z){if(/^\n+$/.test($))return $.substring(1);return Z?$.replace(/^(?! *$)/gm,Z):$}var tQ=($,Z,X)=>$.endsWith(`
|
|
29
|
+
`)?UZ(X,Z):X.includes(`
|
|
30
30
|
`)?`
|
|
31
|
-
`+
|
|
32
|
-
`){if(X==="block")B=
|
|
31
|
+
`+UZ(X,Z):($.endsWith(" ")?"":" ")+X;eQ.indentComment=UZ;eQ.lineComment=tQ;eQ.stringifyComment=oQ});var w7=T((JY)=>{function zY($,Z,X="flow",{indentAtStart:z,lineWidth:J=80,minContentWidth:q=20,onFold:Q,onOverflow:Y}={}){if(!J||J<0)return $;if(J<q)q=0;let G=Math.max(1+q,1+J-Z.length);if($.length<=G)return $;let U=[],W={},V=J-Z.length;if(typeof z==="number")if(z>J-Math.max(2,q))U.push(0);else V=J-z;let H=void 0,D=void 0,M=!1,B=-1,N=-1,L=-1;if(X==="block"){if(B=O7($,B,Z.length),B!==-1)V=B+G}for(let _;_=$[B+=1];){if(X==="quoted"&&_==="\\"){switch(N=B,$[B+1]){case"x":B+=3;break;case"u":B+=5;break;case"U":B+=9;break;default:B+=1}L=B}if(_===`
|
|
32
|
+
`){if(X==="block")B=O7($,B,Z.length);V=B+Z.length+G,H=void 0}else{if(_===" "&&D&&D!==" "&&D!==`
|
|
33
33
|
`&&D!=="\t"){let C=$[B+1];if(C&&C!==" "&&C!==`
|
|
34
|
-
`&&C!=="\t")
|
|
34
|
+
`&&C!=="\t")H=B}if(B>=V)if(H)U.push(H),V=H+G,H=void 0;else if(X==="quoted"){while(D===" "||D==="\t")D=_,_=$[B+=1],M=!0;let C=B>L+1?B-2:N-1;if(W[C])return $;U.push(C),W[C]=!0,V=C+G,H=void 0}else M=!0}D=_}if(M&&Y)Y();if(U.length===0)return $;if(Q)Q();let S=$.slice(0,U[0]);for(let _=0;_<U.length;++_){let C=U[_],R=U[_+1]||$.length;if(C===0)S=`
|
|
35
35
|
${Z}${$.slice(0,R)}`;else{if(X==="quoted"&&W[C])S+=`${$[C]}\\`;S+=`
|
|
36
|
-
${Z}${$.slice(C+1,R)}`}}return S}function
|
|
37
|
-
`);z=Z,J=Z+1,q=$[J]}return z}
|
|
38
|
-
`){if(q-Q>z)return!0;if(Q=q+1,J-Q<=z)return!1}return!0}function
|
|
36
|
+
${Z}${$.slice(C+1,R)}`}}return S}function O7($,Z,X){let z=Z,J=Z+1,q=$[J];while(q===" "||q==="\t")if(Z<J+X)q=$[++Z];else{do q=$[++Z];while(q&&q!==`
|
|
37
|
+
`);z=Z,J=Z+1,q=$[J]}return z}JY.FOLD_BLOCK="block";JY.FOLD_FLOW="flow";JY.FOLD_QUOTED="quoted";JY.foldFlowLines=zY});var B6=T((VY)=>{var M0=a(),v0=w7(),b8=($,Z)=>({indentAtStart:Z?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),x8=($)=>/^(%|---|\.\.\.)/m.test($);function UY($,Z,X){if(!Z||Z<0)return!1;let z=Z-X,J=$.length;if(J<=z)return!1;for(let q=0,Q=0;q<J;++q)if($[q]===`
|
|
38
|
+
`){if(q-Q>z)return!0;if(Q=q+1,J-Q<=z)return!1}return!0}function K6($,Z){let X=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return X;let{implicitKey:z}=Z,J=Z.options.doubleQuotedMinMultiLineLength,q=Z.indent||(x8($)?" ":""),Q="",Y=0;for(let G=0,U=X[G];U;U=X[++G]){if(U===" "&&X[G+1]==="\\"&&X[G+2]==="n")Q+=X.slice(Y,G)+"\\ ",G+=1,Y=G,U="\\";if(U==="\\")switch(X[G+1]){case"u":{Q+=X.slice(Y,G);let W=X.substr(G+2,4);switch(W){case"0000":Q+="\\0";break;case"0007":Q+="\\a";break;case"000b":Q+="\\v";break;case"001b":Q+="\\e";break;case"0085":Q+="\\N";break;case"00a0":Q+="\\_";break;case"2028":Q+="\\L";break;case"2029":Q+="\\P";break;default:if(W.substr(0,2)==="00")Q+="\\x"+W.substr(2);else Q+=X.substr(G,6)}G+=5,Y=G+1}break;case"n":if(z||X[G+2]==='"'||X.length<J)G+=1;else{Q+=X.slice(Y,G)+`
|
|
39
39
|
|
|
40
40
|
`;while(X[G+2]==="\\"&&X[G+3]==="n"&&X[G+4]!=='"')Q+=`
|
|
41
|
-
`,G+=2;if(Q+=q,X[G+2]===" ")Q+="\\";G+=1,Y=G+1}break;default:G+=1}}return Q=Y?Q+X.slice(Y):X,z?Q:v0.foldFlowLines(Q,q,v0.FOLD_QUOTED,
|
|
42
|
-
`)||/[ \t]\n|\n[ \t]/.test($))return
|
|
43
|
-
${X}`)+"'";return Z.implicitKey?z:v0.foldFlowLines(z,X,v0.FOLD_FLOW,
|
|
41
|
+
`,G+=2;if(Q+=q,X[G+2]===" ")Q+="\\";G+=1,Y=G+1}break;default:G+=1}}return Q=Y?Q+X.slice(Y):X,z?Q:v0.foldFlowLines(Q,q,v0.FOLD_QUOTED,b8(Z,!1))}function WZ($,Z){if(Z.options.singleQuote===!1||Z.implicitKey&&$.includes(`
|
|
42
|
+
`)||/[ \t]\n|\n[ \t]/.test($))return K6($,Z);let X=Z.indent||(x8($)?" ":""),z="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
43
|
+
${X}`)+"'";return Z.implicitKey?z:v0.foldFlowLines(z,X,v0.FOLD_FLOW,b8(Z,!1))}function R$($,Z){let{singleQuote:X}=Z.options,z;if(X===!1)z=K6;else{let J=$.includes('"'),q=$.includes("'");if(J&&!q)z=WZ;else if(q&&!J)z=K6;else z=X?WZ:K6}return z($,Z)}var HZ;try{HZ=new RegExp(`(^|(?<!
|
|
44
44
|
))
|
|
45
45
|
+(?!
|
|
46
|
-
|$)`,"g")}catch{
|
|
46
|
+
|$)`,"g")}catch{HZ=/\n+(?!\n|$)/g}function j8({comment:$,type:Z,value:X},z,J,q){let{blockQuote:Q,commentString:Y,lineWidth:G}=z.options;if(!Q||/\n[\t ]+$/.test(X))return R$(X,z);let U=z.indent||(z.forceBlockIndent||x8(X)?" ":""),W=Q==="literal"?!0:Q==="folded"||Z===M0.Scalar.BLOCK_FOLDED?!1:Z===M0.Scalar.BLOCK_LITERAL?!0:!UY(X,G,U.length);if(!X)return W?`|
|
|
47
47
|
`:`>
|
|
48
|
-
`;let H
|
|
49
|
-
`&&R!=="\t"&&R!==" ")break}let D=X.substring(
|
|
50
|
-
`);if(M===-1)
|
|
51
|
-
`)D=D.slice(0,-1);D=D.replace(
|
|
52
|
-
`)L=N;else break}let S=X.substring(0,L<N?L+1:N);if(S)X=X.substring(S.length),S=S.replace(/\n+/g,`$&${U}`);let C=(B?U?"2":"1":"")+
|
|
53
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`),F=!1,
|
|
48
|
+
`;let V,H;for(H=X.length;H>0;--H){let R=X[H-1];if(R!==`
|
|
49
|
+
`&&R!=="\t"&&R!==" ")break}let D=X.substring(H),M=D.indexOf(`
|
|
50
|
+
`);if(M===-1)V="-";else if(X===D||M!==D.length-1){if(V="+",q)q()}else V="";if(D){if(X=X.slice(0,-D.length),D[D.length-1]===`
|
|
51
|
+
`)D=D.slice(0,-1);D=D.replace(HZ,`$&${U}`)}let B=!1,N,L=-1;for(N=0;N<X.length;++N){let R=X[N];if(R===" ")B=!0;else if(R===`
|
|
52
|
+
`)L=N;else break}let S=X.substring(0,L<N?L+1:N);if(S)X=X.substring(S.length),S=S.replace(/\n+/g,`$&${U}`);let C=(B?U?"2":"1":"")+V;if($){if(C+=" "+Y($.replace(/ ?[\r\n]+/g," ")),J)J()}if(!W){let R=X.replace(/\n+/g,`
|
|
53
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`),F=!1,c=b8(z,!0);if(Q!=="folded"&&Z!==M0.Scalar.BLOCK_FOLDED)c.onOverflow=()=>{F=!0};let P=v0.foldFlowLines(`${S}${R}${D}`,U,v0.FOLD_BLOCK,c);if(!F)return`>${C}
|
|
54
54
|
${U}${P}`}return X=X.replace(/\n+/g,`$&${U}`),`|${C}
|
|
55
|
-
${U}${S}${X}${D}`}function
|
|
56
|
-
`)||W&&/[[\]{},]/.test(q))return
|
|
57
|
-
`)?
|
|
58
|
-
`))return
|
|
59
|
-
${G}`);if(Q){let
|
|
60
|
-
${Z.indent}${Y}`}
|
|
61
|
-
${Y}:`}else if(N=`${N}:`,
|
|
62
|
-
`:"",S){let
|
|
63
|
-
${
|
|
55
|
+
${U}${S}${X}${D}`}function WY($,Z,X,z){let{type:J,value:q}=$,{actualString:Q,implicitKey:Y,indent:G,indentStep:U,inFlow:W}=Z;if(Y&&q.includes(`
|
|
56
|
+
`)||W&&/[[\]{},]/.test(q))return R$(q,Z);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(q))return Y||W||!q.includes(`
|
|
57
|
+
`)?R$(q,Z):j8($,Z,X,z);if(!Y&&!W&&J!==M0.Scalar.PLAIN&&q.includes(`
|
|
58
|
+
`))return j8($,Z,X,z);if(x8(q)){if(G==="")return Z.forceBlockIndent=!0,j8($,Z,X,z);else if(Y&&G===U)return R$(q,Z)}let V=q.replace(/\n+/g,`$&
|
|
59
|
+
${G}`);if(Q){let H=(B)=>B.default&&B.tag!=="tag:yaml.org,2002:str"&&B.test?.test(V),{compat:D,tags:M}=Z.doc.schema;if(M.some(H)||D?.some(H))return R$(q,Z)}return Y?V:v0.foldFlowLines(V,G,v0.FOLD_FLOW,b8(Z,!1))}function HY($,Z,X,z){let{implicitKey:J,inFlow:q}=Z,Q=typeof $.value==="string"?$:Object.assign({},$,{value:String($.value)}),{type:Y}=$;if(Y!==M0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(Q.value))Y=M0.Scalar.QUOTE_DOUBLE}let G=(W)=>{switch(W){case M0.Scalar.BLOCK_FOLDED:case M0.Scalar.BLOCK_LITERAL:return J||q?R$(Q.value,Z):j8(Q,Z,X,z);case M0.Scalar.QUOTE_DOUBLE:return K6(Q.value,Z);case M0.Scalar.QUOTE_SINGLE:return WZ(Q.value,Z);case M0.Scalar.PLAIN:return WY(Q,Z,X,z);default:return null}},U=G(Y);if(U===null){let{defaultKeyType:W,defaultStringType:V}=Z.options,H=J&&W||V;if(U=G(H),U===null)throw Error(`Unsupported default string type ${H}`)}return U}VY.stringifyString=HY});var D6=T((OY)=>{var BY=S8(),u0=k(),DY=V6(),NY=B6();function IY($,Z){let X=Object.assign({blockQuote:!0,commentString:DY.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 LY($,Z){if(Z.tag){let J=$.filter((q)=>q.tag===Z.tag);if(J.length>0)return J.find((q)=>q.format===Z.format)??J[0]}let X=void 0,z;if(u0.isScalar(Z)){z=Z.value;let J=$.filter((q)=>q.identify?.(z));if(J.length>1){let q=J.filter((Q)=>Q.test);if(q.length>0)J=q}X=J.find((q)=>q.format===Z.format)??J.find((q)=>!q.format)}else z=Z,X=$.find((J)=>J.nodeClass&&z instanceof J.nodeClass);if(!X){let J=z?.constructor?.name??(z===null?"null":typeof z);throw Error(`Tag not resolved for ${J} value`)}return X}function TY($,Z,{anchors:X,doc:z}){if(!z.directives)return"";let J=[],q=(u0.isScalar($)||u0.isCollection($))&&$.anchor;if(q&&BY.anchorIsValid(q))X.add(q),J.push(`&${q}`);let Q=$.tag??(Z.default?null:Z.tag);if(Q)J.push(z.directives.tagString(Q));return J.join(" ")}function MY($,Z,X,z){if(u0.isPair($))return $.toString(Z,X,z);if(u0.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 J=void 0,q=u0.isNode($)?$:Z.doc.createNode($,{onTagObj:(G)=>J=G});J??(J=LY(Z.doc.schema.tags,q));let Q=TY(q,J,Z);if(Q.length>0)Z.indentAtStart=(Z.indentAtStart??0)+Q.length+1;let Y=typeof J.stringify==="function"?J.stringify(q,Z,X,z):u0.isScalar(q)?NY.stringifyString(q,Z,X,z):q.toString(Z,X,z);if(!Q)return Y;return u0.isScalar(q)||Y[0]==="{"||Y[0]==="["?`${Q} ${Y}`:`${Q}
|
|
60
|
+
${Z.indent}${Y}`}OY.createStringifyContext=IY;OY.stringify=MY});var A7=T((AY)=>{var E0=k(),F7=a(),R7=D6(),N6=V6();function RY({key:$,value:Z},X,z,J){let{allNullValues:q,doc:Q,indent:Y,indentStep:G,options:{commentString:U,indentSeq:W,simpleKeys:V}}=X,H=E0.isNode($)&&$.comment||null;if(V){if(H)throw Error("With simple keys, key nodes cannot have comments");if(E0.isCollection($)||!E0.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let D=!V&&(!$||H&&Z==null&&!X.inFlow||E0.isCollection($)||(E0.isScalar($)?$.type===F7.Scalar.BLOCK_FOLDED||$.type===F7.Scalar.BLOCK_LITERAL:typeof $==="object"));X=Object.assign({},X,{allNullValues:!1,implicitKey:!D&&(V||!q),indent:Y+G});let M=!1,B=!1,N=R7.stringify($,X,()=>M=!0,()=>B=!0);if(!D&&!X.inFlow&&N.length>1024){if(V)throw Error("With simple keys, single line scalar must not span more than 1024 characters");D=!0}if(X.inFlow){if(q||Z==null){if(M&&z)z();return N===""?"?":D?`? ${N}`:N}}else if(q&&!V||Z==null&&D){if(N=`? ${N}`,H&&!M)N+=N6.lineComment(N,X.indent,U(H));else if(B&&J)J();return N}if(M)H=null;if(D){if(H)N+=N6.lineComment(N,X.indent,U(H));N=`? ${N}
|
|
61
|
+
${Y}:`}else if(N=`${N}:`,H)N+=N6.lineComment(N,X.indent,U(H));let L,S,_;if(E0.isNode(Z))L=!!Z.spaceBefore,S=Z.commentBefore,_=Z.comment;else if(L=!1,S=null,_=null,Z&&typeof Z==="object")Z=Q.createNode(Z);if(X.implicitKey=!1,!D&&!H&&E0.isScalar(Z))X.indentAtStart=N.length+1;if(B=!1,!W&&G.length>=2&&!X.inFlow&&!D&&E0.isSeq(Z)&&!Z.flow&&!Z.tag&&!Z.anchor)X.indent=X.indent.substring(2);let C=!1,R=R7.stringify(Z,X,()=>C=!0,()=>B=!0),F=" ";if(H||L||S){if(F=L?`
|
|
62
|
+
`:"",S){let c=U(S);F+=`
|
|
63
|
+
${N6.indentComment(c,X.indent)}`}if(R===""&&!X.inFlow){if(F===`
|
|
64
64
|
`&&_)F=`
|
|
65
65
|
|
|
66
66
|
`}else F+=`
|
|
67
|
-
${X.indent}`}else if(!D&&
|
|
68
|
-
`),
|
|
67
|
+
${X.indent}`}else if(!D&&E0.isCollection(Z)){let c=R[0],P=R.indexOf(`
|
|
68
|
+
`),e=P!==-1,g0=X.inFlow??Z.flow??Z.items.length===0;if(e||!g0){let M$=!1;if(e&&(c==="&"||c==="!")){let $0=R.indexOf(" ");if(c==="&"&&$0!==-1&&$0<P&&R[$0+1]==="!")$0=R.indexOf(" ",$0+1);if($0===-1||P<$0)M$=!0}if(!M$)F=`
|
|
69
69
|
${X.indent}`}}else if(R===""||R[0]===`
|
|
70
|
-
`)F="";if(N+=F+R,X.inFlow){if(C&&z)z()}else if(_&&!C)N+=
|
|
70
|
+
`)F="";if(N+=F+R,X.inFlow){if(C&&z)z()}else if(_&&!C)N+=N6.lineComment(N,X.indent,U(_));else if(B&&J)J();return N}AY.stringifyPair=RY});var VZ=T((CY)=>{var P7=J0("process");function SY($,...Z){if($==="debug")console.log(...Z)}function _Y($,Z){if($==="debug"||$==="warn")if(typeof P7.emitWarning==="function")P7.emitWarning(Z);else console.warn(Z)}CY.debug=SY;CY.warn=_Y});var y8=T((xY)=>{var I6=k(),S7=a(),k8="<<",f8={identify:($)=>$===k8||typeof $==="symbol"&&$.description===k8,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new S7.Scalar(Symbol(k8)),{addToJSMap:_7}),stringify:()=>k8},bY=($,Z)=>(f8.identify(Z)||I6.isScalar(Z)&&(!Z.type||Z.type===S7.Scalar.PLAIN)&&f8.identify(Z.value))&&$?.doc.schema.tags.some((X)=>X.tag===f8.tag&&X.default);function _7($,Z,X){if(X=$&&I6.isAlias(X)?X.resolve($.doc):X,I6.isSeq(X))for(let z of X.items)KZ($,Z,z);else if(Array.isArray(X))for(let z of X)KZ($,Z,z);else KZ($,Z,X)}function KZ($,Z,X){let z=$&&I6.isAlias(X)?X.resolve($.doc):X;if(!I6.isMap(z))throw Error("Merge sources must be maps or map aliases");let J=z.toJSON(null,$,Map);for(let[q,Q]of J)if(Z instanceof Map){if(!Z.has(q))Z.set(q,Q)}else if(Z instanceof Set)Z.add(q);else if(!Object.prototype.hasOwnProperty.call(Z,q))Object.defineProperty(Z,q,{value:Q,writable:!0,enumerable:!0,configurable:!0});return Z}xY.addMergeToJSMap=_7;xY.isMergeKey=bY;xY.merge=f8});var DZ=T((mY)=>{var gY=VZ(),C7=y8(),hY=D6(),E7=k(),BZ=h0();function vY($,Z,{key:X,value:z}){if(E7.isNode(X)&&X.addToJSMap)X.addToJSMap($,Z,z);else if(C7.isMergeKey($,X))C7.addMergeToJSMap($,Z,z);else{let J=BZ.toJS(X,"",$);if(Z instanceof Map)Z.set(J,BZ.toJS(z,J,$));else if(Z instanceof Set)Z.add(J);else{let q=uY(X,J,$),Q=BZ.toJS(z,q,$);if(q in Z)Object.defineProperty(Z,q,{value:Q,writable:!0,enumerable:!0,configurable:!0});else Z[q]=Q}}return Z}function uY($,Z,X){if(Z===null)return"";if(typeof Z!=="object")return String(Z);if(E7.isNode($)&&X?.doc){let z=hY.createStringifyContext(X.doc,{});z.anchors=new Set;for(let q of X.anchors.keys())z.anchors.add(q.anchor);z.inFlow=!0,z.inStringifyKey=!0;let J=$.toString(z);if(!X.mapKeyWarned){let q=JSON.stringify(J);if(q.length>40)q=q.substring(0,36)+'..."';gY.warn(X.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${q}. Set mapAsMap: true to use object keys.`),X.mapKeyWarned=!0}return J}return JSON.stringify(Z)}mY.addPairToJSMap=vY});var m0=T((iY)=>{var j7=H6(),cY=A7(),pY=DZ(),g8=k();function lY($,Z,X){let z=j7.createNode($,void 0,X),J=j7.createNode(Z,void 0,X);return new h8(z,J)}class h8{constructor($,Z=null){Object.defineProperty(this,g8.NODE_TYPE,{value:g8.PAIR}),this.key=$,this.value=Z}clone($){let{key:Z,value:X}=this;if(g8.isNode(Z))Z=Z.clone($);if(g8.isNode(X))X=X.clone($);return new h8(Z,X)}toJSON($,Z){let X=Z?.mapAsMap?new Map:{};return pY.addPairToJSMap(Z,X,this)}toString($,Z,X){return $?.doc?cY.stringifyPair(this,$,Z,X):JSON.stringify(this)}}iY.Pair=h8;iY.createPair=lY});var NZ=T((tY)=>{var Q$=k(),b7=D6(),v8=V6();function rY($,Z,X){return(Z.inFlow??$.flow?oY:aY)($,Z,X)}function aY({comment:$,items:Z},X,{blockItemPrefix:z,flowChars:J,itemIndent:q,onChompKeep:Q,onComment:Y}){let{indent:G,options:{commentString:U}}=X,W=Object.assign({},X,{indent:q,type:null}),V=!1,H=[];for(let M=0;M<Z.length;++M){let B=Z[M],N=null;if(Q$.isNode(B)){if(!V&&B.spaceBefore)H.push("");if(u8(X,H,B.commentBefore,V),B.comment)N=B.comment}else if(Q$.isPair(B)){let S=Q$.isNode(B.key)?B.key:null;if(S){if(!V&&S.spaceBefore)H.push("");u8(X,H,S.commentBefore,V)}}V=!1;let L=b7.stringify(B,W,()=>N=null,()=>V=!0);if(N)L+=v8.lineComment(L,q,U(N));if(V&&N)V=!1;H.push(z+L)}let D;if(H.length===0)D=J.start+J.end;else{D=H[0];for(let M=1;M<H.length;++M){let B=H[M];D+=B?`
|
|
71
71
|
${G}${B}`:`
|
|
72
72
|
`}}if($){if(D+=`
|
|
73
|
-
`+
|
|
74
|
-
`)))U=!0;
|
|
73
|
+
`+v8.indentComment(U($),G),Y)Y()}else if(V&&Q)Q();return D}function oY({items:$},Z,{flowChars:X,itemIndent:z}){let{indent:J,indentStep:q,flowCollectionPadding:Q,options:{commentString:Y}}=Z;z+=q;let G=Object.assign({},Z,{indent:z,inFlow:!0,type:null}),U=!1,W=0,V=[];for(let M=0;M<$.length;++M){let B=$[M],N=null;if(Q$.isNode(B)){if(B.spaceBefore)V.push("");if(u8(Z,V,B.commentBefore,!1),B.comment)N=B.comment}else if(Q$.isPair(B)){let S=Q$.isNode(B.key)?B.key:null;if(S){if(S.spaceBefore)V.push("");if(u8(Z,V,S.commentBefore,!1),S.comment)U=!0}let _=Q$.isNode(B.value)?B.value:null;if(_){if(_.comment)N=_.comment;if(_.commentBefore)U=!0}else if(B.value==null&&S?.comment)N=S.comment}if(N)U=!0;let L=b7.stringify(B,G,()=>N=null);if(M<$.length-1)L+=",";if(N)L+=v8.lineComment(L,z,Y(N));if(!U&&(V.length>W||L.includes(`
|
|
74
|
+
`)))U=!0;V.push(L),W=V.length}let{start:H,end:D}=X;if(V.length===0)return H+D;else{if(!U){let M=V.reduce((B,N)=>B+N.length+2,2);U=Z.options.lineWidth>0&&M>Z.options.lineWidth}if(U){let M=H;for(let B of V)M+=B?`
|
|
75
75
|
${q}${J}${B}`:`
|
|
76
76
|
`;return`${M}
|
|
77
|
-
${J}${D}`}else return`${
|
|
78
|
-
`:" ")}return
|
|
77
|
+
${J}${D}`}else return`${H}${Q}${V.join(" ")}${Q}${D}`}}function u8({indent:$,options:{commentString:Z}},X,z,J){if(z&&J)z=z.replace(/^\n+/,"");if(z){let q=v8.indentComment(Z(z),$);X.push(q.trimStart())}}tY.stringifyCollection=rY});var c0=T((J1)=>{var $1=NZ(),Z1=DZ(),X1=E8(),d0=k(),m8=m0(),z1=a();function L6($,Z){let X=d0.isScalar(Z)?Z.value:Z;for(let z of $)if(d0.isPair(z)){if(z.key===Z||z.key===X)return z;if(d0.isScalar(z.key)&&z.key.value===X)return z}return}class x7 extends X1.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor($){super(d0.MAP,$);this.items=[]}static from($,Z,X){let{keepUndefined:z,replacer:J}=X,q=new this($),Q=(Y,G)=>{if(typeof J==="function")G=J.call(Z,Y,G);else if(Array.isArray(J)&&!J.includes(Y))return;if(G!==void 0||z)q.items.push(m8.createPair(Y,G,X))};if(Z instanceof Map)for(let[Y,G]of Z)Q(Y,G);else if(Z&&typeof Z==="object")for(let Y of Object.keys(Z))Q(Y,Z[Y]);if(typeof $.sortMapEntries==="function")q.items.sort($.sortMapEntries);return q}add($,Z){let X;if(d0.isPair($))X=$;else if(!$||typeof $!=="object"||!("key"in $))X=new m8.Pair($,$?.value);else X=new m8.Pair($.key,$.value);let z=L6(this.items,X.key),J=this.schema?.sortMapEntries;if(z){if(!Z)throw Error(`Key ${X.key} already set`);if(d0.isScalar(z.value)&&z1.isScalarValue(X.value))z.value.value=X.value;else z.value=X.value}else if(J){let q=this.items.findIndex((Q)=>J(X,Q)<0);if(q===-1)this.items.push(X);else this.items.splice(q,0,X)}else this.items.push(X)}delete($){let Z=L6(this.items,$);if(!Z)return!1;return this.items.splice(this.items.indexOf(Z),1).length>0}get($,Z){let z=L6(this.items,$)?.value;return(!Z&&d0.isScalar(z)?z.value:z)??void 0}has($){return!!L6(this.items,$)}set($,Z){this.add(new m8.Pair($,Z),!0)}toJSON($,Z,X){let z=X?new X:Z?.mapAsMap?new Map:{};if(Z?.onCreate)Z.onCreate(z);for(let J of this.items)Z1.addPairToJSMap(Z,z,J);return z}toString($,Z,X){if(!$)return JSON.stringify(this);for(let z of this.items)if(!d0.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 $1.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:X,onComment:Z})}}J1.YAMLMap=x7;J1.findPair=L6});var A$=T((U1)=>{var Y1=k(),k7=c0(),G1={collection:"map",default:!0,nodeClass:k7.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,Z){if(!Y1.isMap($))Z("Expected a mapping for this tag");return $},createNode:($,Z,X)=>k7.YAMLMap.from($,Z,X)};U1.map=G1});var p0=T((N1)=>{var H1=H6(),V1=NZ(),K1=E8(),c8=k(),B1=a(),D1=h0();class f7 extends K1.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(c8.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let Z=d8($);if(typeof Z!=="number")return!1;return this.items.splice(Z,1).length>0}get($,Z){let X=d8($);if(typeof X!=="number")return;let z=this.items[X];return!Z&&c8.isScalar(z)?z.value:z}has($){let Z=d8($);return typeof Z==="number"&&Z<this.items.length}set($,Z){let X=d8($);if(typeof X!=="number")throw Error(`Expected a valid index, not ${$}.`);let z=this.items[X];if(c8.isScalar(z)&&B1.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 J of this.items)X.push(D1.toJS(J,String(z++),Z));return X}toString($,Z,X){if(!$)return JSON.stringify(this);return V1.stringifyCollection(this,$,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:($.indent||"")+" ",onChompKeep:X,onComment:Z})}static from($,Z,X){let{replacer:z}=X,J=new this($);if(Z&&Symbol.iterator in Object(Z)){let q=0;for(let Q of Z){if(typeof z==="function"){let Y=Z instanceof Set?Q:String(q++);Q=z.call(Z,Y,Q)}J.items.push(H1.createNode(Q,void 0,X))}}return J}}function d8($){let Z=c8.isScalar($)?$.value:$;if(Z&&typeof Z==="string")Z=Number(Z);return typeof Z==="number"&&Number.isInteger(Z)&&Z>=0?Z:null}N1.YAMLSeq=f7});var P$=T((M1)=>{var L1=k(),y7=p0(),T1={collection:"seq",default:!0,nodeClass:y7.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,Z){if(!L1.isSeq($))Z("Expected a sequence for this tag");return $},createNode:($,Z,X)=>y7.YAMLSeq.from($,Z,X)};M1.seq=T1});var T6=T((R1)=>{var w1=B6(),F1={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,Z,X,z){return Z=Object.assign({actualString:!0},Z),w1.stringifyString($,Z,X,z)}};R1.string=F1});var p8=T((P1)=>{var g7=a(),h7={identify:($)=>$==null,createNode:()=>new g7.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new g7.Scalar(null),stringify:({source:$},Z)=>typeof $==="string"&&h7.test.test($)?$:Z.options.nullStr};P1.nullTag=h7});var IZ=T((C1)=>{var _1=a(),v7={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new _1.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:Z},X){if($&&v7.test.test($)){let z=$[0]==="t"||$[0]==="T";if(Z===z)return $}return Z?X.options.trueStr:X.options.falseStr}};C1.boolTag=v7});var S$=T((b1)=>{function j1({format:$,minFractionDigits:Z,tag:X,value:z}){if(typeof z==="bigint")return String(z);let J=typeof z==="number"?z:Number(z);if(!isFinite(J))return isNaN(J)?".nan":J<0?"-.inf":".inf";let q=Object.is(z,-0)?"-0":JSON.stringify(z);if(!$&&Z&&(!X||X==="tag:yaml.org,2002:float")&&/^\d/.test(q)){let Q=q.indexOf(".");if(Q<0)Q=q.length,q+=".";let Y=Z-(q.length-Q-1);while(Y-- >0)q+="0"}return q}b1.stringifyNumber=j1});var TZ=T((h1)=>{var k1=a(),LZ=S$(),f1={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:LZ.stringifyNumber},y1={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():LZ.stringifyNumber($)}},g1={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let Z=new k1.Scalar(parseFloat($)),X=$.indexOf(".");if(X!==-1&&$[$.length-1]==="0")Z.minFractionDigits=$.length-X-1;return Z},stringify:LZ.stringifyNumber};h1.float=g1;h1.floatExp=y1;h1.floatNaN=f1});var OZ=T((l1)=>{var u7=S$(),l8=($)=>typeof $==="bigint"||Number.isInteger($),MZ=($,Z,X,{intAsBigInt:z})=>z?BigInt($):parseInt($.substring(Z),X);function m7($,Z,X){let{value:z}=$;if(l8(z)&&z>=0)return X+z.toString(Z);return u7.stringifyNumber($)}var d1={identify:($)=>l8($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,Z,X)=>MZ($,2,8,X),stringify:($)=>m7($,8,"0o")},c1={identify:l8,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,Z,X)=>MZ($,0,10,X),stringify:u7.stringifyNumber},p1={identify:($)=>l8($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,Z,X)=>MZ($,2,16,X),stringify:($)=>m7($,16,"0x")};l1.int=c1;l1.intHex=p1;l1.intOct=d1});var d7=T((Z3)=>{var r1=A$(),a1=p8(),o1=P$(),t1=T6(),e1=IZ(),wZ=TZ(),FZ=OZ(),$3=[r1.map,o1.seq,t1.string,a1.nullTag,e1.boolTag,FZ.intOct,FZ.int,FZ.intHex,wZ.floatNaN,wZ.floatExp,wZ.float];Z3.schema=$3});var p7=T((U3)=>{var z3=a(),J3=A$(),q3=P$();function c7($){return typeof $==="bigint"||Number.isInteger($)}var i8=({value:$})=>JSON.stringify($),Q3=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:i8},{identify:($)=>$==null,createNode:()=>new z3.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:i8},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:i8},{identify:c7,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,Z,{intAsBigInt:X})=>X?BigInt($):parseInt($,10),stringify:({value:$})=>c7($)?$.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:i8}],Y3={default:!0,tag:"",test:/^/,resolve($,Z){return Z(`Unresolved plain scalar ${JSON.stringify($)}`),$}},G3=[J3.map,q3.seq].concat(Q3,Y3);U3.schema=G3});var AZ=T((K3)=>{var M6=J0("buffer"),RZ=a(),H3=B6(),V3={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,Z){if(typeof M6.Buffer==="function")return M6.Buffer.from($,"base64");else if(typeof atob==="function"){let X=atob($.replace(/[\n\r]/g,"")),z=new Uint8Array(X.length);for(let J=0;J<X.length;++J)z[J]=X.charCodeAt(J);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,J,q){if(!X)return"";let Q=X,Y;if(typeof M6.Buffer==="function")Y=Q instanceof M6.Buffer?Q.toString("base64"):M6.Buffer.from(Q.buffer).toString("base64");else if(typeof btoa==="function"){let G="";for(let U=0;U<Q.length;++U)G+=String.fromCharCode(Q[U]);Y=btoa(G)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(Z??(Z=RZ.Scalar.BLOCK_LITERAL),Z!==RZ.Scalar.QUOTE_DOUBLE){let G=Math.max(z.options.lineWidth-z.indent.length,z.options.minContentWidth),U=Math.ceil(Y.length/G),W=Array(U);for(let V=0,H=0;V<U;++V,H+=G)W[V]=Y.substr(H,G);Y=W.join(Z===RZ.Scalar.BLOCK_LITERAL?`
|
|
78
|
+
`:" ")}return H3.stringifyString({comment:$,type:Z,value:Y},z,J,q)}};K3.binary=V3});var s8=T((L3)=>{var n8=k(),PZ=m0(),D3=a(),N3=p0();function l7($,Z){if(n8.isSeq($))for(let X=0;X<$.items.length;++X){let z=$.items[X];if(n8.isPair(z))continue;else if(n8.isMap(z)){if(z.items.length>1)Z("Each pair must have its own sequence indicator");let J=z.items[0]||new PZ.Pair(new D3.Scalar(null));if(z.commentBefore)J.key.commentBefore=J.key.commentBefore?`${z.commentBefore}
|
|
79
79
|
${J.key.commentBefore}`:z.commentBefore;if(z.comment){let q=J.value??J.key;q.comment=q.comment?`${z.comment}
|
|
80
|
-
${q.comment}`:z.comment}z=J}$.items[X]=i8.isPair(z)?z:new AZ.Pair(z)}else Z("Expected a sequence for this tag");return $}function p7($,Z,X){let{replacer:z}=X,J=new K3.YAMLSeq($);J.tag="tag:yaml.org,2002:pairs";let q=0;if(Z&&Symbol.iterator in Object(Z))for(let Q of Z){if(typeof z==="function")Q=z.call(Z,String(q++),Q);let Y,G;if(Array.isArray(Q))if(Q.length===2)Y=Q[0],G=Q[1];else throw TypeError(`Expected [key, value] tuple: ${Q}`);else if(Q&&Q instanceof Object){let U=Object.keys(Q);if(U.length===1)Y=U[0],G=Q[Y];else throw TypeError(`Expected tuple with one key, not ${U.length} keys`)}else Y=Q;J.items.push(AZ.createPair(Y,G,X))}return J}var B3={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:c7,createNode:p7};D3.createPairs=p7;D3.pairs=B3;D3.resolvePairs=c7});var SZ=T((O3)=>{var l7=k(),PZ=h0(),M6=c0(),T3=p0(),i7=n8();class Q$ extends T3.YAMLSeq{constructor(){super();this.add=M6.YAMLMap.prototype.add.bind(this),this.delete=M6.YAMLMap.prototype.delete.bind(this),this.get=M6.YAMLMap.prototype.get.bind(this),this.has=M6.YAMLMap.prototype.has.bind(this),this.set=M6.YAMLMap.prototype.set.bind(this),this.tag=Q$.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 J,q;if(l7.isPair(z))J=PZ.toJS(z.key,"",Z),q=PZ.toJS(z.value,J,Z);else J=PZ.toJS(z,"",Z);if(X.has(J))throw Error("Ordered maps must not include duplicate keys");X.set(J,q)}return X}static from($,Z,X){let z=i7.createPairs($,Z,X),J=new this;return J.items=z.items,J}}Q$.tag="tag:yaml.org,2002:omap";var M3={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:Q$,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=i7.resolvePairs($,Z),z=[];for(let{key:J}of X.items)if(l7.isScalar(J))if(z.includes(J.value))Z(`Ordered maps must not include duplicate keys: ${J.value}`);else z.push(J.value);return Object.assign(new Q$,X)},createNode:($,Z,X)=>Q$.from($,Z,X)};O3.YAMLOMap=Q$;O3.omap=M3});var o7=T((R3)=>{var n7=r();function s7({value:$,source:Z},X){if(Z&&($?r7:a7).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var r7={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new n7.Scalar(!0),stringify:s7},a7={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new n7.Scalar(!1),stringify:s7};R3.falseTag=a7;R3.trueTag=r7});var t7=T((j3)=>{var S3=r(),_Z=P$(),_3={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:_Z.stringifyNumber},C3={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():_Z.stringifyNumber($)}},E3={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new S3.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:_Z.stringifyNumber};j3.float=E3;j3.floatExp=C3;j3.floatNaN=_3});var $X=T((v3)=>{var e7=P$(),O6=($)=>typeof $==="bigint"||Number.isInteger($);function s8($,Z,X,{intAsBigInt:z}){let J=$[0];if(J==="-"||J==="+")Z+=1;if($=$.substring(Z).replace(/_/g,""),z){switch(X){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let Q=BigInt($);return J==="-"?BigInt(-1)*Q:Q}let q=parseInt($,X);return J==="-"?-1*q:q}function CZ($,Z,X){let{value:z}=$;if(O6(z)){let J=z.toString(Z);return z<0?"-"+X+J.substr(1):X+J}return e7.stringifyNumber($)}var f3={identify:O6,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>s8($,2,2,X),stringify:($)=>CZ($,2,"0b")},y3={identify:O6,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>s8($,1,8,X),stringify:($)=>CZ($,8,"0")},g3={identify:O6,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>s8($,0,10,X),stringify:e7.stringifyNumber},h3={identify:O6,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>s8($,2,16,X),stringify:($)=>CZ($,16,"0x")};v3.int=g3;v3.intBin=f3;v3.intHex=h3;v3.intOct=y3});var EZ=T((l3)=>{var o8=k(),r8=m0(),a8=c0();class Y$ extends a8.YAMLMap{constructor($){super($);this.tag=Y$.tag}add($){let Z;if(o8.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new r8.Pair($.key,null);else Z=new r8.Pair($,null);if(!a8.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=a8.findPair(this.items,$);return!Z&&o8.isPair(X)?o8.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=a8.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new r8.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,J=new this($);if(Z&&Symbol.iterator in Object(Z))for(let q of Z){if(typeof z==="function")q=z.call(Z,q,q);J.items.push(r8.createPair(q,null,X))}return J}}Y$.tag="tag:yaml.org,2002:set";var p3={collection:"map",identify:($)=>$ instanceof Set,nodeClass:Y$,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>Y$.from($,Z,X),resolve($,Z){if(o8.isMap($))if($.hasAllNullValues(!0))return Object.assign(new Y$,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};l3.YAMLSet=Y$;l3.set=p3});var bZ=T((o3)=>{var s3=P$();function jZ($,Z){let X=$[0],z=X==="-"||X==="+"?$.substring(1):$,J=(Q)=>Z?BigInt(Q):Number(Q),q=z.replace(/_/g,"").split(":").reduce((Q,Y)=>Q*J(60)+J(Y),J(0));return X==="-"?J(-1)*q:q}function ZX($){let{value:Z}=$,X=(Q)=>Q;if(typeof Z==="bigint")X=(Q)=>BigInt(Q);else if(isNaN(Z)||!isFinite(Z))return s3.stringifyNumber($);let z="";if(Z<0)z="-",Z*=X(-1);let J=X(60),q=[Z%J];if(Z<60)q.unshift(0);else if(Z=(Z-q[0])/J,q.unshift(Z%J),Z>=60)Z=(Z-q[0])/J,q.unshift(Z);return z+q.map((Q)=>String(Q).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var r3={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})=>jZ($,X),stringify:ZX},a3={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:($)=>jZ($,!1),stringify:ZX},XX={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(XX.test);if(!Z)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,X,z,J,q,Q,Y]=Z.map(Number),G=Z[7]?Number((Z[7]+"00").substr(1,3)):0,U=Date.UTC(X,z-1,J,q||0,Q||0,Y||0,G),W=Z[8];if(W&&W!=="Z"){let H=jZ(W,!1);if(Math.abs(H)<30)H*=60;U-=60000*H}return new Date(U)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};o3.floatTime=a3;o3.intTime=r3;o3.timestamp=XX});var JX=T((VG)=>{var ZG=R$(),XG=c8(),zG=A$(),JG=L6(),qG=RZ(),zX=o7(),xZ=t7(),t8=$X(),QG=f8(),YG=SZ(),GG=n8(),UG=EZ(),kZ=bZ(),WG=[ZG.map,zG.seq,JG.string,XG.nullTag,zX.trueTag,zX.falseTag,t8.intBin,t8.intOct,t8.int,t8.intHex,xZ.floatNaN,xZ.floatExp,xZ.float,qG.binary,QG.merge,YG.omap,GG.pairs,UG.set,kZ.intTime,kZ.floatTime,kZ.timestamp];VG.schema=WG});var BX=T((MG)=>{var GX=R$(),KG=c8(),UX=A$(),BG=L6(),DG=NZ(),fZ=LZ(),yZ=MZ(),NG=u7(),IG=d7(),WX=RZ(),w6=f8(),VX=SZ(),HX=n8(),qX=JX(),KX=EZ(),e8=bZ(),QX=new Map([["core",NG.schema],["failsafe",[GX.map,UX.seq,BG.string]],["json",IG.schema],["yaml11",qX.schema],["yaml-1.1",qX.schema]]),YX={binary:WX.binary,bool:DG.boolTag,float:fZ.float,floatExp:fZ.floatExp,floatNaN:fZ.floatNaN,floatTime:e8.floatTime,int:yZ.int,intHex:yZ.intHex,intOct:yZ.intOct,intTime:e8.intTime,map:GX.map,merge:w6.merge,null:KG.nullTag,omap:VX.omap,pairs:HX.pairs,seq:UX.seq,set:KX.set,timestamp:e8.timestamp},LG={"tag:yaml.org,2002:binary":WX.binary,"tag:yaml.org,2002:merge":w6.merge,"tag:yaml.org,2002:omap":VX.omap,"tag:yaml.org,2002:pairs":HX.pairs,"tag:yaml.org,2002:set":KX.set,"tag:yaml.org,2002:timestamp":e8.timestamp};function TG($,Z,X){let z=QX.get(Z);if(z&&!$)return X&&!z.includes(w6.merge)?z.concat(w6.merge):z.slice();let J=z;if(!J)if(Array.isArray($))J=[];else{let q=Array.from(QX.keys()).filter((Q)=>Q!=="yaml11").map((Q)=>JSON.stringify(Q)).join(", ");throw Error(`Unknown schema "${Z}"; use one of ${q} or define customTags array`)}if(Array.isArray($))for(let q of $)J=J.concat(q);else if(typeof $==="function")J=$(J.slice());if(X)J=J.concat(w6.merge);return J.reduce((q,Q)=>{let Y=typeof Q==="string"?YX[Q]:Q;if(!Y){let G=JSON.stringify(Q),U=Object.keys(YX).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${G}; use one of ${U}`)}if(!q.includes(Y))q.push(Y);return q},[])}MG.coreKnownTags=LG;MG.getTags=TG});var vZ=T((SG)=>{var gZ=k(),FG=R$(),RG=A$(),AG=L6(),$2=BX(),PG=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class hZ{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:J,sortMapEntries:q,toStringDefaults:Q}){this.compat=Array.isArray($)?$2.getTags($,"compat"):$?$2.getTags(null,$):null,this.name=typeof J==="string"&&J||"core",this.knownTags=z?$2.coreKnownTags:{},this.tags=$2.getTags(Z,this.name,X),this.toStringOptions=Q??null,Object.defineProperty(this,gZ.MAP,{value:FG.map}),Object.defineProperty(this,gZ.SCALAR,{value:AG.string}),Object.defineProperty(this,gZ.SEQ,{value:RG.seq}),this.sortMapEntries=typeof q==="function"?q:q===!0?PG:null}clone(){let $=Object.create(hZ.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}SG.Schema=hZ});var DX=T((jG)=>{var CG=k(),uZ=B6(),F6=V6();function EG($,Z){let X=[],z=Z.directives===!0;if(Z.directives!==!1&&$.directives){let G=$.directives.toString($);if(G)X.push(G),z=!0;else if($.directives.docStart)z=!0}if(z)X.push("---");let J=uZ.createStringifyContext($,Z),{commentString:q}=J.options;if($.commentBefore){if(X.length!==1)X.unshift("");let G=q($.commentBefore);X.unshift(F6.indentComment(G,""))}let Q=!1,Y=null;if($.contents){if(CG.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=q($.contents.commentBefore);X.push(F6.indentComment(W,""))}J.forceBlockIndent=!!$.comment,Y=$.contents.comment}let G=Y?void 0:()=>Q=!0,U=uZ.stringify($.contents,J,()=>Y=null,G);if(Y)U+=F6.lineComment(U,"",q(Y));if((U[0]==="|"||U[0]===">")&&X[X.length-1]==="---")X[X.length-1]=`--- ${U}`;else X.push(U)}else X.push(uZ.stringify($.contents,J));if($.directives?.docEnd)if($.comment){let G=q($.comment);if(G.includes(`
|
|
81
|
-
`))X.push("..."),X.push(
|
|
80
|
+
${q.comment}`:z.comment}z=J}$.items[X]=n8.isPair(z)?z:new PZ.Pair(z)}else Z("Expected a sequence for this tag");return $}function i7($,Z,X){let{replacer:z}=X,J=new N3.YAMLSeq($);J.tag="tag:yaml.org,2002:pairs";let q=0;if(Z&&Symbol.iterator in Object(Z))for(let Q of Z){if(typeof z==="function")Q=z.call(Z,String(q++),Q);let Y,G;if(Array.isArray(Q))if(Q.length===2)Y=Q[0],G=Q[1];else throw TypeError(`Expected [key, value] tuple: ${Q}`);else if(Q&&Q instanceof Object){let U=Object.keys(Q);if(U.length===1)Y=U[0],G=Q[Y];else throw TypeError(`Expected tuple with one key, not ${U.length} keys`)}else Y=Q;J.items.push(PZ.createPair(Y,G,X))}return J}var I3={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:l7,createNode:i7};L3.createPairs=i7;L3.pairs=I3;L3.resolvePairs=l7});var _Z=T((R3)=>{var n7=k(),SZ=h0(),O6=c0(),w3=p0(),s7=s8();class Y$ extends w3.YAMLSeq{constructor(){super();this.add=O6.YAMLMap.prototype.add.bind(this),this.delete=O6.YAMLMap.prototype.delete.bind(this),this.get=O6.YAMLMap.prototype.get.bind(this),this.has=O6.YAMLMap.prototype.has.bind(this),this.set=O6.YAMLMap.prototype.set.bind(this),this.tag=Y$.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 J,q;if(n7.isPair(z))J=SZ.toJS(z.key,"",Z),q=SZ.toJS(z.value,J,Z);else J=SZ.toJS(z,"",Z);if(X.has(J))throw Error("Ordered maps must not include duplicate keys");X.set(J,q)}return X}static from($,Z,X){let z=s7.createPairs($,Z,X),J=new this;return J.items=z.items,J}}Y$.tag="tag:yaml.org,2002:omap";var F3={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:Y$,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=s7.resolvePairs($,Z),z=[];for(let{key:J}of X.items)if(n7.isScalar(J))if(z.includes(J.value))Z(`Ordered maps must not include duplicate keys: ${J.value}`);else z.push(J.value);return Object.assign(new Y$,X)},createNode:($,Z,X)=>Y$.from($,Z,X)};R3.YAMLOMap=Y$;R3.omap=F3});var e7=T((S3)=>{var r7=a();function a7({value:$,source:Z},X){if(Z&&($?o7:t7).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var o7={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new r7.Scalar(!0),stringify:a7},t7={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new r7.Scalar(!1),stringify:a7};S3.falseTag=t7;S3.trueTag=o7});var $X=T((k3)=>{var E3=a(),CZ=S$(),j3={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:CZ.stringifyNumber},b3={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():CZ.stringifyNumber($)}},x3={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new E3.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:CZ.stringifyNumber};k3.float=x3;k3.floatExp=b3;k3.floatNaN=j3});var XX=T((d3)=>{var ZX=S$(),w6=($)=>typeof $==="bigint"||Number.isInteger($);function r8($,Z,X,{intAsBigInt:z}){let J=$[0];if(J==="-"||J==="+")Z+=1;if($=$.substring(Z).replace(/_/g,""),z){switch(X){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let Q=BigInt($);return J==="-"?BigInt(-1)*Q:Q}let q=parseInt($,X);return J==="-"?-1*q:q}function EZ($,Z,X){let{value:z}=$;if(w6(z)){let J=z.toString(Z);return z<0?"-"+X+J.substr(1):X+J}return ZX.stringifyNumber($)}var h3={identify:w6,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>r8($,2,2,X),stringify:($)=>EZ($,2,"0b")},v3={identify:w6,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>r8($,1,8,X),stringify:($)=>EZ($,8,"0")},u3={identify:w6,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>r8($,0,10,X),stringify:ZX.stringifyNumber},m3={identify:w6,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>r8($,2,16,X),stringify:($)=>EZ($,16,"0x")};d3.int=u3;d3.intBin=h3;d3.intHex=m3;d3.intOct=v3});var jZ=T((s3)=>{var t8=k(),a8=m0(),o8=c0();class G$ extends o8.YAMLMap{constructor($){super($);this.tag=G$.tag}add($){let Z;if(t8.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new a8.Pair($.key,null);else Z=new a8.Pair($,null);if(!o8.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=o8.findPair(this.items,$);return!Z&&t8.isPair(X)?t8.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=o8.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new a8.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,J=new this($);if(Z&&Symbol.iterator in Object(Z))for(let q of Z){if(typeof z==="function")q=z.call(Z,q,q);J.items.push(a8.createPair(q,null,X))}return J}}G$.tag="tag:yaml.org,2002:set";var n3={collection:"map",identify:($)=>$ instanceof Set,nodeClass:G$,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>G$.from($,Z,X),resolve($,Z){if(t8.isMap($))if($.hasAllNullValues(!0))return Object.assign(new G$,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};s3.YAMLSet=G$;s3.set=n3});var xZ=T(($G)=>{var o3=S$();function bZ($,Z){let X=$[0],z=X==="-"||X==="+"?$.substring(1):$,J=(Q)=>Z?BigInt(Q):Number(Q),q=z.replace(/_/g,"").split(":").reduce((Q,Y)=>Q*J(60)+J(Y),J(0));return X==="-"?J(-1)*q:q}function zX($){let{value:Z}=$,X=(Q)=>Q;if(typeof Z==="bigint")X=(Q)=>BigInt(Q);else if(isNaN(Z)||!isFinite(Z))return o3.stringifyNumber($);let z="";if(Z<0)z="-",Z*=X(-1);let J=X(60),q=[Z%J];if(Z<60)q.unshift(0);else if(Z=(Z-q[0])/J,q.unshift(Z%J),Z>=60)Z=(Z-q[0])/J,q.unshift(Z);return z+q.map((Q)=>String(Q).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var t3={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})=>bZ($,X),stringify:zX},e3={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:($)=>bZ($,!1),stringify:zX},JX={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(JX.test);if(!Z)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,X,z,J,q,Q,Y]=Z.map(Number),G=Z[7]?Number((Z[7]+"00").substr(1,3)):0,U=Date.UTC(X,z-1,J,q||0,Q||0,Y||0,G),W=Z[8];if(W&&W!=="Z"){let V=bZ(W,!1);if(Math.abs(V)<30)V*=60;U-=60000*V}return new Date(U)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};$G.floatTime=e3;$G.intTime=t3;$G.timestamp=JX});var QX=T((BG)=>{var JG=A$(),qG=p8(),QG=P$(),YG=T6(),GG=AZ(),qX=e7(),kZ=$X(),e8=XX(),UG=y8(),WG=_Z(),HG=s8(),VG=jZ(),fZ=xZ(),KG=[JG.map,QG.seq,YG.string,qG.nullTag,qX.trueTag,qX.falseTag,e8.intBin,e8.intOct,e8.int,e8.intHex,kZ.floatNaN,kZ.floatExp,kZ.float,GG.binary,UG.merge,WG.omap,HG.pairs,VG.set,fZ.intTime,fZ.floatTime,fZ.timestamp];BG.schema=KG});var NX=T((FG)=>{var WX=A$(),NG=p8(),HX=P$(),IG=T6(),LG=IZ(),yZ=TZ(),gZ=OZ(),TG=d7(),MG=p7(),VX=AZ(),F6=y8(),KX=_Z(),BX=s8(),YX=QX(),DX=jZ(),$2=xZ(),GX=new Map([["core",TG.schema],["failsafe",[WX.map,HX.seq,IG.string]],["json",MG.schema],["yaml11",YX.schema],["yaml-1.1",YX.schema]]),UX={binary:VX.binary,bool:LG.boolTag,float:yZ.float,floatExp:yZ.floatExp,floatNaN:yZ.floatNaN,floatTime:$2.floatTime,int:gZ.int,intHex:gZ.intHex,intOct:gZ.intOct,intTime:$2.intTime,map:WX.map,merge:F6.merge,null:NG.nullTag,omap:KX.omap,pairs:BX.pairs,seq:HX.seq,set:DX.set,timestamp:$2.timestamp},OG={"tag:yaml.org,2002:binary":VX.binary,"tag:yaml.org,2002:merge":F6.merge,"tag:yaml.org,2002:omap":KX.omap,"tag:yaml.org,2002:pairs":BX.pairs,"tag:yaml.org,2002:set":DX.set,"tag:yaml.org,2002:timestamp":$2.timestamp};function wG($,Z,X){let z=GX.get(Z);if(z&&!$)return X&&!z.includes(F6.merge)?z.concat(F6.merge):z.slice();let J=z;if(!J)if(Array.isArray($))J=[];else{let q=Array.from(GX.keys()).filter((Q)=>Q!=="yaml11").map((Q)=>JSON.stringify(Q)).join(", ");throw Error(`Unknown schema "${Z}"; use one of ${q} or define customTags array`)}if(Array.isArray($))for(let q of $)J=J.concat(q);else if(typeof $==="function")J=$(J.slice());if(X)J=J.concat(F6.merge);return J.reduce((q,Q)=>{let Y=typeof Q==="string"?UX[Q]:Q;if(!Y){let G=JSON.stringify(Q),U=Object.keys(UX).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${G}; use one of ${U}`)}if(!q.includes(Y))q.push(Y);return q},[])}FG.coreKnownTags=OG;FG.getTags=wG});var uZ=T((EG)=>{var hZ=k(),PG=A$(),SG=P$(),_G=T6(),Z2=NX(),CG=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class vZ{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:J,sortMapEntries:q,toStringDefaults:Q}){this.compat=Array.isArray($)?Z2.getTags($,"compat"):$?Z2.getTags(null,$):null,this.name=typeof J==="string"&&J||"core",this.knownTags=z?Z2.coreKnownTags:{},this.tags=Z2.getTags(Z,this.name,X),this.toStringOptions=Q??null,Object.defineProperty(this,hZ.MAP,{value:PG.map}),Object.defineProperty(this,hZ.SCALAR,{value:_G.string}),Object.defineProperty(this,hZ.SEQ,{value:SG.seq}),this.sortMapEntries=typeof q==="function"?q:q===!0?CG:null}clone(){let $=Object.create(vZ.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}EG.Schema=vZ});var IX=T((kG)=>{var bG=k(),mZ=D6(),R6=V6();function xG($,Z){let X=[],z=Z.directives===!0;if(Z.directives!==!1&&$.directives){let G=$.directives.toString($);if(G)X.push(G),z=!0;else if($.directives.docStart)z=!0}if(z)X.push("---");let J=mZ.createStringifyContext($,Z),{commentString:q}=J.options;if($.commentBefore){if(X.length!==1)X.unshift("");let G=q($.commentBefore);X.unshift(R6.indentComment(G,""))}let Q=!1,Y=null;if($.contents){if(bG.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=q($.contents.commentBefore);X.push(R6.indentComment(W,""))}J.forceBlockIndent=!!$.comment,Y=$.contents.comment}let G=Y?void 0:()=>Q=!0,U=mZ.stringify($.contents,J,()=>Y=null,G);if(Y)U+=R6.lineComment(U,"",q(Y));if((U[0]==="|"||U[0]===">")&&X[X.length-1]==="---")X[X.length-1]=`--- ${U}`;else X.push(U)}else X.push(mZ.stringify($.contents,J));if($.directives?.docEnd)if($.comment){let G=q($.comment);if(G.includes(`
|
|
81
|
+
`))X.push("..."),X.push(R6.indentComment(G,""));else X.push(`... ${G}`)}else X.push("...");else{let G=$.comment;if(G&&Q)G=G.replace(/^\n+/,"");if(G){if((!Q||Y)&&X[X.length-1]!=="")X.push("");X.push(R6.indentComment(q(G),""))}}return X.join(`
|
|
82
82
|
`)+`
|
|
83
|
-
`}
|
|
83
|
+
`}kG.stringifyDocument=xG});var A6=T((cG)=>{var yG=W6(),_$=E8(),I0=k(),gG=m0(),hG=h0(),vG=uZ(),uG=IX(),dZ=S8(),mG=YZ(),dG=H6(),cZ=QZ();class pZ{constructor($,Z,X){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,I0.NODE_TYPE,{value:I0.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 J=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},X);this.options=J;let{version:q}=J;if(X?._directives){if(this.directives=X._directives.atDocument(),this.directives.yaml.explicit)q=this.directives.yaml.version}else this.directives=new cZ.Directives({version:q});this.setSchema(q,X),this.contents=$===void 0?null:this.createNode($,z,X)}clone(){let $=Object.create(pZ.prototype,{[I0.NODE_TYPE]:{value:I0.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=I0.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(C$(this.contents))this.contents.add($)}addIn($,Z){if(C$(this.contents))this.contents.addIn($,Z)}createAlias($,Z){if(!$.anchor){let X=dZ.anchorNames(this);$.anchor=!Z||X.has(Z)?dZ.findNewAnchor(Z||"a",X):Z}return new yG.Alias($.anchor)}createNode($,Z,X){let z=void 0;if(typeof Z==="function")$=Z.call({"":$},"",$),z=Z;else if(Array.isArray(Z)){let B=(L)=>typeof L==="number"||L instanceof String||L instanceof Number,N=Z.filter(B).map(String);if(N.length>0)Z=Z.concat(N);z=Z}else if(X===void 0&&Z)X=Z,Z=void 0;let{aliasDuplicateObjects:J,anchorPrefix:q,flow:Q,keepUndefined:Y,onTagObj:G,tag:U}=X??{},{onAnchor:W,setAnchors:V,sourceObjects:H}=dZ.createNodeAnchors(this,q||"a"),D={aliasDuplicateObjects:J??!0,keepUndefined:Y??!1,onAnchor:W,onTagObj:G,replacer:z,schema:this.schema,sourceObjects:H},M=dG.createNode($,U,D);if(Q&&I0.isCollection(M))M.flow=!0;return V(),M}createPair($,Z,X={}){let z=this.createNode($,null,X),J=this.createNode(Z,null,X);return new gG.Pair(z,J)}delete($){return C$(this.contents)?this.contents.delete($):!1}deleteIn($){if(_$.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return C$(this.contents)?this.contents.deleteIn($):!1}get($,Z){return I0.isCollection(this.contents)?this.contents.get($,Z):void 0}getIn($,Z){if(_$.isEmptyPath($))return!Z&&I0.isScalar(this.contents)?this.contents.value:this.contents;return I0.isCollection(this.contents)?this.contents.getIn($,Z):void 0}has($){return I0.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(_$.isEmptyPath($))return this.contents!==void 0;return I0.isCollection(this.contents)?this.contents.hasIn($):!1}set($,Z){if(this.contents==null)this.contents=_$.collectionFromPath(this.schema,[$],Z);else if(C$(this.contents))this.contents.set($,Z)}setIn($,Z){if(_$.isEmptyPath($))this.contents=Z;else if(this.contents==null)this.contents=_$.collectionFromPath(this.schema,Array.from($),Z);else if(C$(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 cZ.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 cZ.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 vG.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:J,reviver:q}={}){let Q={anchors:new Map,doc:this,keep:!$,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof z==="number"?z:100},Y=hG.toJS(this.contents,Z??"",Q);if(typeof J==="function")for(let{count:G,res:U}of Q.anchors.values())J(U,G);return typeof q==="function"?mG.applyReviver(q,{"":Y},"",Y):Y}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 uG.stringifyDocument(this,$)}}function C$($){if(I0.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}cG.Document=pZ});var P6=T((iG)=>{class X2 extends Error{constructor($,Z,X,z){super();this.name=$,this.code=X,this.message=z,this.pos=Z}}class LX extends X2{constructor($,Z,X){super("YAMLParseError",$,Z,X)}}class TX extends X2{constructor($,Z,X){super("YAMLWarning",$,Z,X)}}var lG=($,Z)=>(X)=>{if(X.pos[0]===-1)return;X.linePos=X.pos.map((Y)=>Z.linePos(Y));let{line:z,col:J}=X.linePos[0];X.message+=` at line ${z}, column ${J}`;let q=J-1,Q=$.substring(Z.lineStarts[z-1],Z.lineStarts[z]).replace(/[\n\r]+$/,"");if(q>=60&&Q.length>80){let Y=Math.min(q-39,Q.length-79);Q="…"+Q.substring(Y),q-=Y-1}if(Q.length>80)Q=Q.substring(0,79)+"…";if(z>1&&/^ *$/.test(Q.substring(0,q))){let Y=$.substring(Z.lineStarts[z-2],Z.lineStarts[z-1]);if(Y.length>80)Y=Y.substring(0,79)+`…
|
|
84
84
|
`;Q=Y+Q}if(/[^ ]/.test(Q)){let Y=1,G=X.linePos[1];if(G?.line===z&&G.col>J)Y=Math.max(1,Math.min(G.col-J,80-q));let U=" ".repeat(q)+"^".repeat(Y);X.message+=`:
|
|
85
85
|
|
|
86
86
|
${Q}
|
|
87
87
|
${U}
|
|
88
|
-
`}};
|
|
89
|
-
`))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(
|
|
90
|
-
`+B.comment;else Y.comment=B.comment;continue}if(B.newlineAfterProp||
|
|
91
|
-
`+_.comment;else S.comment=_.comment;let C=new
|
|
92
|
-
`+F.comment;else U.comment=F.comment;
|
|
93
|
-
`+
|
|
94
|
-
`+
|
|
95
|
-
`+N.comment;else U.comment=N.comment;U.range=[z.offset,B,N.offset]}else U.range=[z.offset,B,B];return U}
|
|
96
|
-
`.repeat(Math.max(1,Q.length-1)):"",N=z+J.length;if(Z.source)N+=Z.source.length;return{value:B,type:q,comment:J.comment,range:[z,N,N]}}let G=Z.indent+J.indent,U=Z.offset+J.length,W=0;for(let B=0;B<Y;++B){let[N,L]=Q[B];if(L===""||L==="\r"){if(J.indent===0&&N.length>G)G=N.length}else{if(N.length<G)X(U+N.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(J.indent===0)G=N.length;if(W=B,G===0&&!$.atRoot)X(U,"BAD_INDENT","Block scalar values in collections must be indented");break}U+=N.length+L.length+1}for(let B=Q.length-1;B>=Y;--B)if(Q[B][0].length>G)Y=B+1;let
|
|
97
|
-
`;for(let B=W;B<Y;++B){let[N,L]=Q[B];U+=N.length+L.length+1;let S=L[L.length-1]==="\r";if(S)L=L.slice(0,-1);if(L&&N.length<G){let C=`Block scalar lines must not be less indented than their ${J.indent?"explicit indentation indicator":"first line"}`;X(U-L.length-(S?2:1),"BAD_INDENT",C),N=""}if(q===
|
|
98
|
-
`;else if(N.length>G||L[0]==="\t"){if(
|
|
99
|
-
`;else if(!D&&
|
|
100
|
-
`)
|
|
101
|
-
|
|
102
|
-
`;H
|
|
103
|
-
`,D=!0}else if(L==="")if(
|
|
104
|
-
`)
|
|
105
|
-
`;else
|
|
106
|
-
`;else H
|
|
107
|
-
`+Q[B][0].slice(G);if(
|
|
108
|
-
`)
|
|
109
|
-
`;break;default:
|
|
110
|
-
`}let M=z+J.length+Z.source.length;return{value:
|
|
88
|
+
`}};iG.YAMLError=X2;iG.YAMLParseError=LX;iG.YAMLWarning=TX;iG.prettifyError=lG});var S6=T((tG)=>{function oG($,{flow:Z,indicator:X,next:z,offset:J,onError:q,parentIndent:Q,startOnNewline:Y}){let G=!1,U=Y,W=Y,V="",H="",D=!1,M=!1,B=null,N=null,L=null,S=null,_=null,C=null,R=null;for(let P of $){if(M){if(P.type!=="space"&&P.type!=="newline"&&P.type!=="comma")q(P.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");M=!1}if(B){if(U&&P.type!=="comment"&&P.type!=="newline")q(B,"TAB_AS_INDENT","Tabs are not allowed as indentation");B=null}switch(P.type){case"space":if(!Z&&(X!=="doc-start"||z?.type!=="flow-collection")&&P.source.includes("\t"))B=P;W=!0;break;case"comment":{if(!W)q(P,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let e=P.source.substring(1)||" ";if(!V)V=e;else V+=H+e;H="",U=!1;break}case"newline":if(U){if(V)V+=P.source;else if(!C||X!=="seq-item-ind")G=!0}else H+=P.source;if(U=!0,D=!0,N||L)S=P;W=!0;break;case"anchor":if(N)q(P,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(P.source.endsWith(":"))q(P.offset+P.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);N=P,R??(R=P.offset),U=!1,W=!1,M=!0;break;case"tag":{if(L)q(P,"MULTIPLE_TAGS","A node can have at most one tag");L=P,R??(R=P.offset),U=!1,W=!1,M=!0;break}case X:if(N||L)q(P,"BAD_PROP_ORDER",`Anchors and tags must be after the ${P.source} indicator`);if(C)q(P,"UNEXPECTED_TOKEN",`Unexpected ${P.source} in ${Z??"collection"}`);C=P,U=X==="seq-item-ind"||X==="explicit-key-ind",W=!1;break;case"comma":if(Z){if(_)q(P,"UNEXPECTED_TOKEN",`Unexpected , in ${Z}`);_=P,U=!1,W=!1;break}default:q(P,"UNEXPECTED_TOKEN",`Unexpected ${P.type} token`),U=!1,W=!1}}let F=$[$.length-1],c=F?F.offset+F.source.length:J;if(M&&z&&z.type!=="space"&&z.type!=="newline"&&z.type!=="comma"&&(z.type!=="scalar"||z.source!==""))q(z.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(B&&(U&&B.indent<=Q||z?.type==="block-map"||z?.type==="block-seq"))q(B,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:_,found:C,spaceBefore:G,comment:V,hasNewline:D,anchor:N,tag:L,newlineAfterProp:S,end:c,start:R??c}}tG.resolveProps=oG});var z2=T(($U)=>{function lZ($){if(!$)return null;switch($.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if($.source.includes(`
|
|
89
|
+
`))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(lZ(Z.key)||lZ(Z.value))return!0}return!1;default:return!0}}$U.containsNewline=lZ});var iZ=T((JU)=>{var XU=z2();function zU($,Z,X){if(Z?.type==="flow-collection"){let z=Z.end[0];if(z.indent===$&&(z.source==="]"||z.source==="}")&&XU.containsNewline(Z))X(z,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}JU.flowIndentCheck=zU});var nZ=T((YU)=>{var MX=k();function QU($,Z,X){let{uniqueKeys:z}=$.options;if(z===!1)return!1;let J=typeof z==="function"?z:(q,Q)=>q===Q||MX.isScalar(q)&&MX.isScalar(Q)&&q.value===Q.value;return Z.some((q)=>J(q.key,X))}YU.mapIncludes=QU});var AX=T((KU)=>{var OX=m0(),UU=c0(),wX=S6(),WU=z2(),FX=iZ(),HU=nZ(),RX="All mapping items must start at the same column";function VU({composeNode:$,composeEmptyNode:Z},X,z,J,q){let Y=new(q?.nodeClass??UU.YAMLMap)(X.schema);if(X.atRoot)X.atRoot=!1;let G=z.offset,U=null;for(let W of z.items){let{start:V,key:H,sep:D,value:M}=W,B=wX.resolveProps(V,{indicator:"explicit-key-ind",next:H??D?.[0],offset:G,onError:J,parentIndent:z.indent,startOnNewline:!0}),N=!B.found;if(N){if(H){if(H.type==="block-seq")J(G,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in H&&H.indent!==z.indent)J(G,"BAD_INDENT",RX)}if(!B.anchor&&!B.tag&&!D){if(U=B.end,B.comment)if(Y.comment)Y.comment+=`
|
|
90
|
+
`+B.comment;else Y.comment=B.comment;continue}if(B.newlineAfterProp||WU.containsNewline(H))J(H??V[V.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(B.found?.indent!==z.indent)J(G,"BAD_INDENT",RX);X.atKey=!0;let L=B.end,S=H?$(X,H,B,J):Z(X,L,V,null,B,J);if(X.schema.compat)FX.flowIndentCheck(z.indent,H,J);if(X.atKey=!1,HU.mapIncludes(X,Y.items,S))J(L,"DUPLICATE_KEY","Map keys must be unique");let _=wX.resolveProps(D??[],{indicator:"map-value-ind",next:M,offset:S.range[2],onError:J,parentIndent:z.indent,startOnNewline:!H||H.type==="block-scalar"});if(G=_.end,_.found){if(N){if(M?.type==="block-map"&&!_.hasNewline)J(G,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(X.options.strict&&B.start<_.found.offset-1024)J(S.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let C=M?$(X,M,_,J):Z(X,G,D,null,_,J);if(X.schema.compat)FX.flowIndentCheck(z.indent,M,J);G=C.range[2];let R=new OX.Pair(S,C);if(X.options.keepSourceTokens)R.srcToken=W;Y.items.push(R)}else{if(N)J(S.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(_.comment)if(S.comment)S.comment+=`
|
|
91
|
+
`+_.comment;else S.comment=_.comment;let C=new OX.Pair(S);if(X.options.keepSourceTokens)C.srcToken=W;Y.items.push(C)}}if(U&&U<G)J(U,"IMPOSSIBLE","Map comment with trailing content");return Y.range=[z.offset,G,U??G],Y}KU.resolveBlockMap=VU});var PX=T((TU)=>{var DU=p0(),NU=S6(),IU=iZ();function LU({composeNode:$,composeEmptyNode:Z},X,z,J,q){let Y=new(q?.nodeClass??DU.YAMLSeq)(X.schema);if(X.atRoot)X.atRoot=!1;if(X.atKey)X.atKey=!1;let G=z.offset,U=null;for(let{start:W,value:V}of z.items){let H=NU.resolveProps(W,{indicator:"seq-item-ind",next:V,offset:G,onError:J,parentIndent:z.indent,startOnNewline:!0});if(!H.found)if(H.anchor||H.tag||V)if(V?.type==="block-seq")J(H.end,"BAD_INDENT","All sequence items must start at the same column");else J(G,"MISSING_CHAR","Sequence item without - indicator");else{if(U=H.end,H.comment)Y.comment=H.comment;continue}let D=V?$(X,V,H,J):Z(X,H.end,W,null,H,J);if(X.schema.compat)IU.flowIndentCheck(z.indent,V,J);G=D.range[2],Y.items.push(D)}return Y.range=[z.offset,G,U??G],Y}TU.resolveBlockSeq=LU});var E$=T((wU)=>{function OU($,Z,X,z){let J="";if($){let q=!1,Q="";for(let Y of $){let{source:G,type:U}=Y;switch(U){case"space":q=!0;break;case"comment":{if(X&&!q)z(Y,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let W=G.substring(1)||" ";if(!J)J=W;else J+=Q+W;Q="";break}case"newline":if(J)Q+=G;q=!0;break;default:z(Y,"UNEXPECTED_TOKEN",`Unexpected ${U} at node end`)}Z+=G.length}}return{comment:J,offset:Z}}wU.resolveEnd=OU});var CX=T((jU)=>{var RU=k(),AU=m0(),SX=c0(),PU=p0(),SU=E$(),_X=S6(),_U=z2(),CU=nZ(),sZ="Block collections are not allowed within flow collections",rZ=($)=>$&&($.type==="block-map"||$.type==="block-seq");function EU({composeNode:$,composeEmptyNode:Z},X,z,J,q){let Q=z.start.source==="{",Y=Q?"flow map":"flow sequence",U=new(q?.nodeClass??(Q?SX.YAMLMap:PU.YAMLSeq))(X.schema);U.flow=!0;let W=X.atRoot;if(W)X.atRoot=!1;if(X.atKey)X.atKey=!1;let V=z.offset+z.start.source.length;for(let N=0;N<z.items.length;++N){let L=z.items[N],{start:S,key:_,sep:C,value:R}=L,F=_X.resolveProps(S,{flow:Y,indicator:"explicit-key-ind",next:_??C?.[0],offset:V,onError:J,parentIndent:z.indent,startOnNewline:!1});if(!F.found){if(!F.anchor&&!F.tag&&!C&&!R){if(N===0&&F.comma)J(F.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Y}`);else if(N<z.items.length-1)J(F.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${Y}`);if(F.comment)if(U.comment)U.comment+=`
|
|
92
|
+
`+F.comment;else U.comment=F.comment;V=F.end;continue}if(!Q&&X.options.strict&&_U.containsNewline(_))J(_,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(N===0){if(F.comma)J(F.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${Y}`)}else{if(!F.comma)J(F.start,"MISSING_CHAR",`Missing , between ${Y} items`);if(F.comment){let c="";$:for(let P of S)switch(P.type){case"comma":case"space":break;case"comment":c=P.source.substring(1);break $;default:break $}if(c){let P=U.items[U.items.length-1];if(RU.isPair(P))P=P.value??P.key;if(P.comment)P.comment+=`
|
|
93
|
+
`+c;else P.comment=c;F.comment=F.comment.substring(c.length+1)}}}if(!Q&&!C&&!F.found){let c=R?$(X,R,F,J):Z(X,F.end,C,null,F,J);if(U.items.push(c),V=c.range[2],rZ(R))J(c.range,"BLOCK_IN_FLOW",sZ)}else{X.atKey=!0;let c=F.end,P=_?$(X,_,F,J):Z(X,c,S,null,F,J);if(rZ(_))J(P.range,"BLOCK_IN_FLOW",sZ);X.atKey=!1;let e=_X.resolveProps(C??[],{flow:Y,indicator:"map-value-ind",next:R,offset:P.range[2],onError:J,parentIndent:z.indent,startOnNewline:!1});if(e.found){if(!Q&&!F.found&&X.options.strict){if(C)for(let $0 of C){if($0===e.found)break;if($0.type==="newline"){J($0,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(F.start<e.found.offset-1024)J(e.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(R)if("source"in R&&R.source?.[0]===":")J(R,"MISSING_CHAR",`Missing space after : in ${Y}`);else J(e.start,"MISSING_CHAR",`Missing , or : between ${Y} items`);let g0=R?$(X,R,e,J):e.found?Z(X,e.end,C,null,e,J):null;if(g0){if(rZ(R))J(g0.range,"BLOCK_IN_FLOW",sZ)}else if(e.comment)if(P.comment)P.comment+=`
|
|
94
|
+
`+e.comment;else P.comment=e.comment;let M$=new AU.Pair(P,g0);if(X.options.keepSourceTokens)M$.srcToken=L;if(Q){let $0=U;if(CU.mapIncludes(X,$0.items,P))J(c,"DUPLICATE_KEY","Map keys must be unique");$0.items.push(M$)}else{let $0=new SX.YAMLMap(X.schema);$0.flow=!0,$0.items.push(M$);let y5=(g0??P).range;$0.range=[P.range[0],y5[1],y5[2]],U.items.push($0)}V=g0?g0.range[2]:e.end}}let H=Q?"}":"]",[D,...M]=z.end,B=V;if(D?.source===H)B=D.offset+D.source.length;else{let N=Y[0].toUpperCase()+Y.substring(1),L=W?`${N} must end with a ${H}`:`${N} in block collection must be sufficiently indented and end with a ${H}`;if(J(V,W?"MISSING_CHAR":"BAD_INDENT",L),D&&D.source.length!==1)M.unshift(D)}if(M.length>0){let N=SU.resolveEnd(M,B,X.options.strict,J);if(N.comment)if(U.comment)U.comment+=`
|
|
95
|
+
`+N.comment;else U.comment=N.comment;U.range=[z.offset,B,N.offset]}else U.range=[z.offset,B,B];return U}jU.resolveFlowCollection=EU});var EX=T((mU)=>{var xU=k(),kU=a(),fU=c0(),yU=p0(),gU=AX(),hU=PX(),vU=CX();function aZ($,Z,X,z,J,q){let Q=X.type==="block-map"?gU.resolveBlockMap($,Z,X,z,q):X.type==="block-seq"?hU.resolveBlockSeq($,Z,X,z,q):vU.resolveFlowCollection($,Z,X,z,q),Y=Q.constructor;if(J==="!"||J===Y.tagName)return Q.tag=Y.tagName,Q;if(J)Q.tag=J;return Q}function uU($,Z,X,z,J){let q=z.tag,Q=!q?null:Z.directives.tagName(q.source,(H)=>J(q,"TAG_RESOLVE_FAILED",H));if(X.type==="block-seq"){let{anchor:H,newlineAfterProp:D}=z,M=H&&q?H.offset>q.offset?H:q:H??q;if(M&&(!D||D.offset<M.offset))J(M,"MISSING_CHAR","Missing newline after block sequence props")}let Y=X.type==="block-map"?"map":X.type==="block-seq"?"seq":X.start.source==="{"?"map":"seq";if(!q||!Q||Q==="!"||Q===fU.YAMLMap.tagName&&Y==="map"||Q===yU.YAMLSeq.tagName&&Y==="seq")return aZ($,Z,X,J,Q);let G=Z.schema.tags.find((H)=>H.tag===Q&&H.collection===Y);if(!G){let H=Z.schema.knownTags[Q];if(H?.collection===Y)Z.schema.tags.push(Object.assign({},H,{default:!1})),G=H;else{if(H)J(q,"BAD_COLLECTION_TYPE",`${H.tag} used for ${Y} collection, but expects ${H.collection??"scalar"}`,!0);else J(q,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Q}`,!0);return aZ($,Z,X,J,Q)}}let U=aZ($,Z,X,J,Q,G),W=G.resolve?.(U,(H)=>J(q,"TAG_RESOLVE_FAILED",H),Z.options)??U,V=xU.isNode(W)?W:new kU.Scalar(W);if(V.range=U.range,V.tag=Q,G?.format)V.format=G.format;return V}mU.composeCollection=uU});var tZ=T((iU)=>{var oZ=a();function cU($,Z,X){let z=Z.offset,J=pU(Z,$.options.strict,X);if(!J)return{value:"",type:null,comment:"",range:[z,z,z]};let q=J.mode===">"?oZ.Scalar.BLOCK_FOLDED:oZ.Scalar.BLOCK_LITERAL,Q=Z.source?lU(Z.source):[],Y=Q.length;for(let B=Q.length-1;B>=0;--B){let N=Q[B][1];if(N===""||N==="\r")Y=B;else break}if(Y===0){let B=J.chomp==="+"&&Q.length>0?`
|
|
96
|
+
`.repeat(Math.max(1,Q.length-1)):"",N=z+J.length;if(Z.source)N+=Z.source.length;return{value:B,type:q,comment:J.comment,range:[z,N,N]}}let G=Z.indent+J.indent,U=Z.offset+J.length,W=0;for(let B=0;B<Y;++B){let[N,L]=Q[B];if(L===""||L==="\r"){if(J.indent===0&&N.length>G)G=N.length}else{if(N.length<G)X(U+N.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(J.indent===0)G=N.length;if(W=B,G===0&&!$.atRoot)X(U,"BAD_INDENT","Block scalar values in collections must be indented");break}U+=N.length+L.length+1}for(let B=Q.length-1;B>=Y;--B)if(Q[B][0].length>G)Y=B+1;let V="",H="",D=!1;for(let B=0;B<W;++B)V+=Q[B][0].slice(G)+`
|
|
97
|
+
`;for(let B=W;B<Y;++B){let[N,L]=Q[B];U+=N.length+L.length+1;let S=L[L.length-1]==="\r";if(S)L=L.slice(0,-1);if(L&&N.length<G){let C=`Block scalar lines must not be less indented than their ${J.indent?"explicit indentation indicator":"first line"}`;X(U-L.length-(S?2:1),"BAD_INDENT",C),N=""}if(q===oZ.Scalar.BLOCK_LITERAL)V+=H+N.slice(G)+L,H=`
|
|
98
|
+
`;else if(N.length>G||L[0]==="\t"){if(H===" ")H=`
|
|
99
|
+
`;else if(!D&&H===`
|
|
100
|
+
`)H=`
|
|
101
|
+
|
|
102
|
+
`;V+=H+N.slice(G)+L,H=`
|
|
103
|
+
`,D=!0}else if(L==="")if(H===`
|
|
104
|
+
`)V+=`
|
|
105
|
+
`;else H=`
|
|
106
|
+
`;else V+=H+L,H=" ",D=!1}switch(J.chomp){case"-":break;case"+":for(let B=Y;B<Q.length;++B)V+=`
|
|
107
|
+
`+Q[B][0].slice(G);if(V[V.length-1]!==`
|
|
108
|
+
`)V+=`
|
|
109
|
+
`;break;default:V+=`
|
|
110
|
+
`}let M=z+J.length+Z.source.length;return{value:V,type:q,comment:J.comment,range:[z,M,M]}}function pU({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:J}=Z[0],q=J[0],Q=0,Y="",G=-1;for(let H=1;H<J.length;++H){let D=J[H];if(!Y&&(D==="-"||D==="+"))Y=D;else{let M=Number(D);if(!Q&&M)Q=M;else if(G===-1)G=$+H}}if(G!==-1)z(G,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${J}`);let U=!1,W="",V=J.length;for(let H=1;H<Z.length;++H){let D=Z[H];switch(D.type){case"space":U=!0;case"newline":V+=D.source.length;break;case"comment":if(X&&!U)z(D,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");V+=D.source.length,W=D.source.substring(1);break;case"error":z(D,"UNEXPECTED_TOKEN",D.message),V+=D.source.length;break;default:{let M=`Unexpected token in block scalar header: ${D.type}`;z(D,"UNEXPECTED_TOKEN",M);let B=D.source;if(B&&typeof B==="string")V+=B.length}}}return{mode:q,indent:Q,chomp:Y,comment:W,length:V}}function lU($){let Z=$.split(/\n( *)/),X=Z[0],z=X.match(/^( *)/),q=[z?.[1]?[z[1],X.slice(z[1].length)]:["",X]];for(let Q=1;Q<Z.length;Q+=2)q.push([Z[Q],Z[Q+1]]);return q}iU.resolveBlockScalar=cU});var $4=T((XW)=>{var eZ=a(),sU=E$();function rU($,Z,X){let{offset:z,type:J,source:q,end:Q}=$,Y,G,U=(H,D,M)=>X(z+H,D,M);switch(J){case"scalar":Y=eZ.Scalar.PLAIN,G=aU(q,U);break;case"single-quoted-scalar":Y=eZ.Scalar.QUOTE_SINGLE,G=oU(q,U);break;case"double-quoted-scalar":Y=eZ.Scalar.QUOTE_DOUBLE,G=tU(q,U);break;default:return X($,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${J}`),{value:"",type:null,comment:"",range:[z,z+q.length,z+q.length]}}let W=z+q.length,V=sU.resolveEnd(Q,W,Z,X);return{value:G,type:Y,comment:V.comment,range:[z,W,V.offset]}}function aU($,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 jX($)}function oU($,Z){if($[$.length-1]!=="'"||$.length===1)Z($.length,"MISSING_CHAR","Missing closing 'quote");return jX($.slice(1,-1)).replace(/''/g,"'")}function jX($){let Z,X;try{Z=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
111
111
|
`,"sy"),X=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
112
112
|
`,"sy")}catch{Z=/(.*?)[ \t]*\r?\n/sy,X=/[ \t]*(.*?)[ \t]*\r?\n/sy}let z=Z.exec($);if(!z)return $;let J=z[1],q=" ",Q=Z.lastIndex;X.lastIndex=Q;while(z=X.exec($)){if(z[1]==="")if(q===`
|
|
113
113
|
`)J+=q;else q=`
|
|
114
|
-
`;else J+=q+z[1],q=" ";Q=X.lastIndex}let Y=/[ \t]*(.*)/sy;return Y.lastIndex=Q,z=Y.exec($),J+q+(z?.[1]??"")}function
|
|
114
|
+
`;else J+=q+z[1],q=" ";Q=X.lastIndex}let Y=/[ \t]*(.*)/sy;return Y.lastIndex=Q,z=Y.exec($),J+q+(z?.[1]??"")}function tU($,Z){let X="";for(let z=1;z<$.length-1;++z){let J=$[z];if(J==="\r"&&$[z+1]===`
|
|
115
115
|
`)continue;if(J===`
|
|
116
|
-
`){let{fold:q,offset:Q}=
|
|
116
|
+
`){let{fold:q,offset:Q}=eU($,z);X+=q,z=Q}else if(J==="\\"){let q=$[++z],Q=$W[q];if(Q)X+=Q;else if(q===`
|
|
117
117
|
`){q=$[z+1];while(q===" "||q==="\t")q=$[++z+1]}else if(q==="\r"&&$[z+1]===`
|
|
118
|
-
`){q=$[++z+1];while(q===" "||q==="\t")q=$[++z+1]}else if(q==="x"||q==="u"||q==="U"){let Y={x:2,u:4,U:8}[q];X+=
|
|
118
|
+
`){q=$[++z+1];while(q===" "||q==="\t")q=$[++z+1]}else if(q==="x"||q==="u"||q==="U"){let Y={x:2,u:4,U:8}[q];X+=ZW($,z+1,Y,Z),z+=Y}else{let Y=$.substr(z-1,2);Z(z-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${Y}`),X+=Y}}else if(J===" "||J==="\t"){let q=z,Q=$[z+1];while(Q===" "||Q==="\t")Q=$[++z+1];if(Q!==`
|
|
119
119
|
`&&!(Q==="\r"&&$[z+2]===`
|
|
120
|
-
`))X+=z>q?$.slice(q,z+1):J}else X+=J}if($[$.length-1]!=='"'||$.length===1)Z($.length,"MISSING_CHAR",'Missing closing "quote');return X}function
|
|
120
|
+
`))X+=z>q?$.slice(q,z+1):J}else X+=J}if($[$.length-1]!=='"'||$.length===1)Z($.length,"MISSING_CHAR",'Missing closing "quote');return X}function eU($,Z){let X="",z=$[Z+1];while(z===" "||z==="\t"||z===`
|
|
121
121
|
`||z==="\r"){if(z==="\r"&&$[Z+2]!==`
|
|
122
122
|
`)break;if(z===`
|
|
123
123
|
`)X+=`
|
|
124
|
-
`;Z+=1,z=$[Z+1]}if(!X)X=" ";return{fold:X,offset:Z}}var
|
|
125
|
-
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function
|
|
124
|
+
`;Z+=1,z=$[Z+1]}if(!X)X=" ";return{fold:X,offset:Z}}var $W={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
125
|
+
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function ZW($,Z,X,z){let J=$.substr(Z,X),Q=J.length===X&&/^[0-9a-fA-F]+$/.test(J)?parseInt(J,16):NaN;if(isNaN(Q)){let Y=$.substr(Z-2,X+2);return z(Z-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${Y}`),Y}return String.fromCodePoint(Q)}XW.resolveFlowScalar=rU});var xX=T((UW)=>{var U$=k(),bX=a(),JW=tZ(),qW=$4();function QW($,Z,X,z){let{value:J,type:q,comment:Q,range:Y}=Z.type==="block-scalar"?JW.resolveBlockScalar($,Z,z):qW.resolveFlowScalar(Z,$.options.strict,z),G=X?$.directives.tagName(X.source,(V)=>z(X,"TAG_RESOLVE_FAILED",V)):null,U;if($.options.stringKeys&&$.atKey)U=$.schema[U$.SCALAR];else if(G)U=YW($.schema,J,G,X,z);else if(Z.type==="scalar")U=GW($,J,Z,z);else U=$.schema[U$.SCALAR];let W;try{let V=U.resolve(J,(H)=>z(X??Z,"TAG_RESOLVE_FAILED",H),$.options);W=U$.isScalar(V)?V:new bX.Scalar(V)}catch(V){let H=V instanceof Error?V.message:String(V);z(X??Z,"TAG_RESOLVE_FAILED",H),W=new bX.Scalar(J)}if(W.range=Y,W.source=J,q)W.type=q;if(G)W.tag=G;if(U.format)W.format=U.format;if(Q)W.comment=Q;return W}function YW($,Z,X,z,J){if(X==="!")return $[U$.SCALAR];let q=[];for(let Y of $.tags)if(!Y.collection&&Y.tag===X)if(Y.default&&Y.test)q.push(Y);else return Y;for(let Y of q)if(Y.test?.test(Z))return Y;let Q=$.knownTags[X];if(Q&&!Q.collection)return $.tags.push(Object.assign({},Q,{default:!1,test:void 0})),Q;return J(z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${X}`,X!=="tag:yaml.org,2002:str"),$[U$.SCALAR]}function GW({atKey:$,directives:Z,schema:X},z,J,q){let Q=X.tags.find((Y)=>(Y.default===!0||$&&Y.default==="key")&&Y.test?.test(z))||X[U$.SCALAR];if(X.compat){let Y=X.compat.find((G)=>G.default&&G.test?.test(z))??X[U$.SCALAR];if(Q.tag!==Y.tag){let G=Z.tagString(Q.tag),U=Z.tagString(Y.tag),W=`Value may be parsed as either ${G} or ${U}`;q(J,"TAG_RESOLVE_FAILED",W,!0)}}return Q}UW.composeScalar=QW});var kX=T((VW)=>{function HW($,Z,X){if(Z){X??(X=Z.length);for(let z=X-1;z>=0;--z){let J=Z[z];switch(J.type){case"space":case"comment":case"newline":$-=J.source.length;continue}J=Z[++z];while(J?.type==="space")$+=J.source.length,J=Z[++z];break}}return $}VW.emptyScalarPosition=HW});var gX=T((OW)=>{var BW=W6(),DW=k(),NW=EX(),fX=xX(),IW=E$(),LW=kX(),TW={composeNode:yX,composeEmptyNode:Z4};function yX($,Z,X,z){let J=$.atKey,{spaceBefore:q,comment:Q,anchor:Y,tag:G}=X,U,W=!0;switch(Z.type){case"alias":if(U=MW($,Z,z),Y||G)z(Z,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(U=fX.composeScalar($,Z,G,z),Y)U.anchor=Y.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(U=NW.composeCollection(TW,$,Z,X,z),Y)U.anchor=Y.source.substring(1);break;default:{let V=Z.type==="error"?Z.message:`Unsupported token (type: ${Z.type})`;z(Z,"UNEXPECTED_TOKEN",V),U=Z4($,Z.offset,void 0,null,X,z),W=!1}}if(Y&&U.anchor==="")z(Y,"BAD_ALIAS","Anchor cannot be an empty string");if(J&&$.options.stringKeys&&(!DW.isScalar(U)||typeof U.value!=="string"||U.tag&&U.tag!=="tag:yaml.org,2002:str"))z(G??Z,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(q)U.spaceBefore=!0;if(Q)if(Z.type==="scalar"&&Z.source==="")U.comment=Q;else U.commentBefore=Q;if($.options.keepSourceTokens&&W)U.srcToken=Z;return U}function Z4($,Z,X,z,{spaceBefore:J,comment:q,anchor:Q,tag:Y,end:G},U){let W={type:"scalar",offset:LW.emptyScalarPosition(Z,X,z),indent:-1,source:""},V=fX.composeScalar($,W,Y,U);if(Q){if(V.anchor=Q.source.substring(1),V.anchor==="")U(Q,"BAD_ALIAS","Anchor cannot be an empty string")}if(J)V.spaceBefore=!0;if(q)V.comment=q,V.range[2]=G;return V}function MW({options:$},{offset:Z,source:X,end:z},J){let q=new BW.Alias(X.substring(1));if(q.source==="")J(Z,"BAD_ALIAS","Alias cannot be an empty string");if(q.source.endsWith(":"))J(Z+X.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let Q=Z+X.length,Y=IW.resolveEnd(z,Q,$.strict,J);if(q.range=[Z,Q,Y.offset],Y.comment)q.comment=Y.comment;return q}OW.composeEmptyNode=Z4;OW.composeNode=yX});var vX=T((_W)=>{var RW=A6(),hX=gX(),AW=E$(),PW=S6();function SW($,Z,{offset:X,start:z,value:J,end:q},Q){let Y=Object.assign({_directives:Z},$),G=new RW.Document(void 0,Y),U={atKey:!1,atRoot:!0,directives:G.directives,options:G.options,schema:G.schema},W=PW.resolveProps(z,{indicator:"doc-start",next:J??q?.[0],offset:X,onError:Q,parentIndent:0,startOnNewline:!0});if(W.found){if(G.directives.docStart=!0,J&&(J.type==="block-map"||J.type==="block-seq")&&!W.hasNewline)Q(W.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}G.contents=J?hX.composeNode(U,J,W,Q):hX.composeEmptyNode(U,W.end,z,null,W,Q);let V=G.contents.range[2],H=AW.resolveEnd(q,V,!1,Q);if(H.comment)G.comment=H.comment;return G.range=[X,V,H.offset],G}_W.composeDoc=SW});var X4=T((fW)=>{var EW=J0("process"),jW=QZ(),bW=A6(),_6=P6(),uX=k(),xW=vX(),kW=E$();function C6($){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 mX($){let Z="",X=!1,z=!1;for(let J=0;J<$.length;++J){let q=$[J];switch(q[0]){case"#":Z+=(Z===""?"":z?`
|
|
126
126
|
|
|
127
127
|
`:`
|
|
128
|
-
`)+(q.substring(1)||" "),X=!0,z=!1;break;case"%":if($[J+1]?.[0]!=="#")J+=1;X=!1;break;default:if(!X)z=!0;X=!1}}return{comment:Z,afterEmptyLine:z}}class
|
|
129
|
-
${X}`:X;else if(z||$.directives.docStart||!J)$.commentBefore=X;else if(
|
|
128
|
+
`)+(q.substring(1)||" "),X=!0,z=!1;break;case"%":if($[J+1]?.[0]!=="#")J+=1;X=!1;break;default:if(!X)z=!0;X=!1}}return{comment:Z,afterEmptyLine:z}}class dX{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(Z,X,z,J)=>{let q=C6(Z);if(J)this.warnings.push(new _6.YAMLWarning(q,X,z));else this.errors.push(new _6.YAMLParseError(q,X,z))},this.directives=new jW.Directives({version:$.version||"1.2"}),this.options=$}decorate($,Z){let{comment:X,afterEmptyLine:z}=mX(this.prelude);if(X){let J=$.contents;if(Z)$.comment=$.comment?`${$.comment}
|
|
129
|
+
${X}`:X;else if(z||$.directives.docStart||!J)$.commentBefore=X;else if(uX.isCollection(J)&&!J.flow&&J.items.length>0){let q=J.items[0];if(uX.isPair(q))q=q.key;let Q=q.commentBefore;q.commentBefore=Q?`${X}
|
|
130
130
|
${Q}`:X}else{let q=J.commentBefore;J.commentBefore=q?`${X}
|
|
131
|
-
${q}`: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:
|
|
132
|
-
${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.push(new
|
|
131
|
+
${q}`: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:mX(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(EW.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(Z,X,z)=>{let J=C6($);J[0]+=Z,this.onError(J,"BAD_DIRECTIVE",X,z)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let Z=xW.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 _6.YAMLParseError(C6($),"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 _6.YAMLParseError(C6($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let Z=kW.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}
|
|
132
|
+
${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.push(new _6.YAMLParseError(C6($),"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 bW.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}}}fW.Composer=dX});var lX=T((pW)=>{var gW=tZ(),hW=$4(),vW=P6(),cX=B6();function uW($,Z=!0,X){if($){let z=(J,q,Q)=>{let Y=typeof J==="number"?J:Array.isArray(J)?J[0]:J.offset;if(X)X(Y,q,Q);else throw new vW.YAMLParseError([Y,Y+1],q,Q)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return hW.resolveFlowScalar($,Z,z);case"block-scalar":return gW.resolveBlockScalar({options:{strict:Z}},$,z)}}return null}function mW($,Z){let{implicitKey:X=!1,indent:z,inFlow:J=!1,offset:q=-1,type:Q="PLAIN"}=Z,Y=cX.stringifyString({type:Q,value:$},{implicitKey:X,indent:z>0?" ".repeat(z):"",inFlow:J,options:{blockQuote:!0,lineWidth:-1}}),G=Z.end??[{type:"newline",offset:-1,indent:z,source:`
|
|
133
133
|
`}];switch(Y[0]){case"|":case">":{let U=Y.indexOf(`
|
|
134
|
-
`),W=Y.substring(0,U),
|
|
135
|
-
`,
|
|
136
|
-
`});return{type:"block-scalar",offset:q,indent:z,props:
|
|
134
|
+
`),W=Y.substring(0,U),V=Y.substring(U+1)+`
|
|
135
|
+
`,H=[{type:"block-scalar-header",offset:q,indent:z,source:W}];if(!pX(H,G))H.push({type:"newline",offset:-1,indent:z,source:`
|
|
136
|
+
`});return{type:"block-scalar",offset:q,indent:z,props:H,source:V}}case'"':return{type:"double-quoted-scalar",offset:q,indent:z,source:Y,end:G};case"'":return{type:"single-quoted-scalar",offset:q,indent:z,source:Y,end:G};default:return{type:"scalar",offset:q,indent:z,source:Y,end:G}}}function dW($,Z,X={}){let{afterKey:z=!1,implicitKey:J=!1,inFlow:q=!1,type:Q}=X,Y="indent"in $?$.indent:null;if(z&&typeof Y==="number")Y+=2;if(!Q)switch($.type){case"single-quoted-scalar":Q="QUOTE_SINGLE";break;case"double-quoted-scalar":Q="QUOTE_DOUBLE";break;case"block-scalar":{let U=$.props[0];if(U.type!=="block-scalar-header")throw Error("Invalid block scalar header");Q=U.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:Q="PLAIN"}let G=cX.stringifyString({type:Q,value:Z},{implicitKey:J||Y===null,indent:Y!==null&&Y>0?" ".repeat(Y):"",inFlow:q,options:{blockQuote:!0,lineWidth:-1}});switch(G[0]){case"|":case">":cW($,G);break;case'"':z4($,G,"double-quoted-scalar");break;case"'":z4($,G,"single-quoted-scalar");break;default:z4($,G,"scalar")}}function cW($,Z){let X=Z.indexOf(`
|
|
137
137
|
`),z=Z.substring(0,X),J=Z.substring(X+1)+`
|
|
138
|
-
`;if($.type==="block-scalar"){let q=$.props[0];if(q.type!=="block-scalar-header")throw Error("Invalid block scalar header");q.source=z,$.source=J}else{let{offset:q}=$,Q="indent"in $?$.indent:-1,Y=[{type:"block-scalar-header",offset:q,indent:Q,source:z}];if(!
|
|
139
|
-
`});for(let G of Object.keys($))if(G!=="type"&&G!=="offset")delete $[G];Object.assign($,{type:"block-scalar",indent:Q,props:Y,source:J})}}function
|
|
140
|
-
`};delete $.items,Object.assign($,{type:X,source:Z,end:[J]});break}default:{let z="indent"in $?$.indent:-1,J="end"in $&&Array.isArray($.end)?$.end.filter((q)=>q.type==="space"||q.type==="comment"||q.type==="newline"):[];for(let q of Object.keys($))if(q!=="type"&&q!=="offset")delete $[q];Object.assign($,{type:X,indent:z,source:Z,end:J})}}}
|
|
138
|
+
`;if($.type==="block-scalar"){let q=$.props[0];if(q.type!=="block-scalar-header")throw Error("Invalid block scalar header");q.source=z,$.source=J}else{let{offset:q}=$,Q="indent"in $?$.indent:-1,Y=[{type:"block-scalar-header",offset:q,indent:Q,source:z}];if(!pX(Y,"end"in $?$.end:void 0))Y.push({type:"newline",offset:-1,indent:Q,source:`
|
|
139
|
+
`});for(let G of Object.keys($))if(G!=="type"&&G!=="offset")delete $[G];Object.assign($,{type:"block-scalar",indent:Q,props:Y,source:J})}}function pX($,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 z4($,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),J=Z.length;if($.props[0].type==="block-scalar-header")J-=$.props[0].source.length;for(let q of z)q.offset+=J;delete $.props,Object.assign($,{type:X,source:Z,end:z});break}case"block-map":case"block-seq":{let J={type:"newline",offset:$.offset+Z.length,indent:$.indent,source:`
|
|
140
|
+
`};delete $.items,Object.assign($,{type:X,source:Z,end:[J]});break}default:{let z="indent"in $?$.indent:-1,J="end"in $&&Array.isArray($.end)?$.end.filter((q)=>q.type==="space"||q.type==="comment"||q.type==="newline"):[];for(let q of Object.keys($))if(q!=="type"&&q!=="offset")delete $[q];Object.assign($,{type:X,indent:z,source:Z,end:J})}}}pW.createScalarToken=mW;pW.resolveAsScalar=uW;pW.setScalarValue=dW});var iX=T((rW)=>{var sW=($)=>("type"in $)?q2($):J2($);function q2($){switch($.type){case"block-scalar":{let Z="";for(let X of $.props)Z+=q2(X);return Z+$.source}case"block-map":case"block-seq":{let Z="";for(let X of $.items)Z+=J2(X);return Z}case"flow-collection":{let Z=$.start.source;for(let X of $.items)Z+=J2(X);for(let X of $.end)Z+=X.source;return Z}case"document":{let Z=J2($);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 J2({start:$,key:Z,sep:X,value:z}){let J="";for(let q of $)J+=q.source;if(Z)J+=q2(Z);if(X)for(let q of X)J+=q.source;if(z)J+=q2(z);return J}rW.stringify=sW});var rX=T((tW)=>{var J4=Symbol("break visit"),oW=Symbol("skip children"),nX=Symbol("remove item");function W$($,Z){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};sX(Object.freeze([]),$,Z)}W$.BREAK=J4;W$.SKIP=oW;W$.REMOVE=nX;W$.itemAtPath=($,Z)=>{let X=$;for(let[z,J]of Z){let q=X?.[z];if(q&&"items"in q)X=q.items[J];else return}return X};W$.parentCollection=($,Z)=>{let X=W$.itemAtPath($,Z.slice(0,-1)),z=Z[Z.length-1][0],J=X?.[z];if(J&&"items"in J)return J;throw Error("Parent collection not found")};function sX($,Z,X){let z=X(Z,$);if(typeof z==="symbol")return z;for(let J of["key","value"]){let q=Z[J];if(q&&"items"in q){for(let Q=0;Q<q.items.length;++Q){let Y=sX(Object.freeze($.concat([[J,Q]])),q.items[Q],X);if(typeof Y==="number")Q=Y-1;else if(Y===J4)return J4;else if(Y===nX)q.items.splice(Q,1),Q-=1}if(typeof z==="function"&&J==="key")z=z(Z,$)}}return typeof z==="function"?z(Z,$):z}tW.visit=W$});var Q2=T((QH)=>{var q4=lX(),$H=iX(),ZH=rX(),Q4="\uFEFF",Y4="\x02",G4="\x18",U4="\x1F",XH=($)=>!!$&&("items"in $),zH=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function JH($){switch($){case Q4:return"<BOM>";case Y4:return"<DOC>";case G4:return"<FLOW_END>";case U4:return"<SCALAR>";default:return JSON.stringify($)}}function qH($){switch($){case Q4:return"byte-order-mark";case Y4:return"doc-mode";case G4:return"flow-error-end";case U4:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
141
141
|
`:case`\r
|
|
142
|
-
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch($[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}
|
|
143
|
-
`:case"\r":case"\t":return!0;default:return!1}}var
|
|
144
|
-
\r `),
|
|
142
|
+
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch($[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}QH.createScalarToken=q4.createScalarToken;QH.resolveAsScalar=q4.resolveAsScalar;QH.setScalarValue=q4.setScalarValue;QH.stringify=$H.stringify;QH.visit=ZH.visit;QH.BOM=Q4;QH.DOCUMENT=Y4;QH.FLOW_END=G4;QH.SCALAR=U4;QH.isCollection=XH;QH.isScalar=zH;QH.prettyToken=JH;QH.tokenType=qH});var H4=T((wH)=>{var E6=Q2();function O0($){switch($){case void 0:case" ":case`
|
|
143
|
+
`:case"\r":case"\t":return!0;default:return!1}}var aX=new Set("0123456789ABCDEFabcdef"),MH=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Y2=new Set(",[]{}"),OH=new Set(` ,[]{}
|
|
144
|
+
\r `),W4=($)=>!$||OH.has($);class oX{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===`
|
|
145
145
|
`)return!0;if(Z==="\r")return this.buffer[$+1]===`
|
|
146
146
|
`;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===`
|
|
147
147
|
`||!z&&!this.atEnd)return $+X+1}return Z===`
|
|
148
|
-
`||X>=this.indentNext||!Z&&!this.atEnd?$+X:-1}if(Z==="-"||Z==="."){let X=this.buffer.substr($,3);if((X==="---"||X==="...")&&
|
|
149
|
-
`,this.pos),this.lineEndPos=$;if($===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[$-1]==="\r")$-=1;return this.buffer.substring(this.pos,$)}hasChars($){return this.pos+$<=this.buffer.length}setNext($){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=$,null}peek($){return this.buffer.substr(this.pos,$)}*parseNext($){switch($){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let $=this.getLine();if($===null)return this.setNext("stream");if($[0]===
|
|
148
|
+
`||X>=this.indentNext||!Z&&!this.atEnd?$+X:-1}if(Z==="-"||Z==="."){let X=this.buffer.substr($,3);if((X==="---"||X==="...")&&O0(this.buffer[$+3]))return-1}return $}getLine(){let $=this.lineEndPos;if(typeof $!=="number"||$!==-1&&$<this.pos)$=this.buffer.indexOf(`
|
|
149
|
+
`,this.pos),this.lineEndPos=$;if($===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[$-1]==="\r")$-=1;return this.buffer.substring(this.pos,$)}hasChars($){return this.pos+$<=this.buffer.length}setNext($){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=$,null}peek($){return this.buffer.substr(this.pos,$)}*parseNext($){switch($){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let $=this.getLine();if($===null)return this.setNext("stream");if($[0]===E6.BOM)yield*this.pushCount(1),$=$.substring(1);if($[0]==="%"){let Z=$.length,X=$.indexOf("#");while(X!==-1){let J=$[X-1];if(J===" "||J==="\t"){Z=X-1;break}else X=$.indexOf("#",X+1)}while(!0){let J=$[Z-1];if(J===" "||J==="\t")Z-=1;else break}let z=(yield*this.pushCount(Z))+(yield*this.pushSpaces(!0));return yield*this.pushCount($.length-z),this.pushNewline(),"stream"}if(this.atLineEnd()){let Z=yield*this.pushSpaces(!0);return yield*this.pushCount($.length-Z),yield*this.pushNewline(),"stream"}return yield E6.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let $=this.charAt(0);if(!$&&!this.atEnd)return this.setNext("line-start");if($==="-"||$==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let Z=this.peek(3);if((Z==="---"||Z==="...")&&O0(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,Z==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!O0(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[$,Z]=this.peek(2);if(!Z&&!this.atEnd)return this.setNext("block-start");if(($==="-"||$==="?"||$===":")&&O0(Z)){let X=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=X,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let $=this.getLine();if($===null)return this.setNext("doc");let Z=yield*this.pushIndicators();switch($[Z]){case"#":yield*this.pushCount($.length-Z);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(W4),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return Z+=yield*this.parseBlockScalarHeader(),Z+=yield*this.pushSpaces(!0),yield*this.pushCount($.length-Z),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let $,Z,X=-1;do{if($=yield*this.pushNewline(),$>0)Z=yield*this.pushSpaces(!1),this.indentValue=X=Z;else Z=0;Z+=yield*this.pushSpaces(!0)}while($+Z>0);let z=this.getLine();if(z===null)return this.setNext("flow");if(X!==-1&&X<this.indentNext&&z[0]!=="#"||X===0&&(z.startsWith("---")||z.startsWith("..."))&&O0(z[3])){if(!(X===this.indentNext-1&&this.flowLevel===1&&(z[0]==="]"||z[0]==="}")))return this.flowLevel=0,yield E6.FLOW_END,yield*this.parseLineStart()}let J=0;while(z[J]===",")J+=yield*this.pushCount(1),J+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(J+=yield*this.pushIndicators(),z[J]){case void 0:return"flow";case"#":return yield*this.pushCount(z.length-J),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(W4),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let q=this.charAt(1);if(this.flowKey||O0(q)||q===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let $=this.charAt(0),Z=this.buffer.indexOf($,this.pos+1);if($==="'")while(Z!==-1&&this.buffer[Z+1]==="'")Z=this.buffer.indexOf("'",Z+2);else while(Z!==-1){let J=0;while(this.buffer[Z-1-J]==="\\")J+=1;if(J%2===0)break;Z=this.buffer.indexOf('"',Z+1)}let X=this.buffer.substring(0,Z),z=X.indexOf(`
|
|
150
150
|
`,this.pos);if(z!==-1){while(z!==-1){let J=this.continueScalar(z+1);if(J===-1)break;z=X.indexOf(`
|
|
151
|
-
`,J)}if(z!==-1)Z=z-(X[z-1]==="\r"?2:1)}if(Z===-1){if(!this.atEnd)return this.setNext("quoted-scalar");Z=this.buffer.length}return yield*this.pushToIndex(Z+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let Z=this.buffer[++$];if(Z==="+")this.blockScalarKeep=!0;else if(Z>"0"&&Z<="9")this.blockScalarIndent=Number(Z)-1;else if(Z!=="-")break}return yield*this.pushUntil((Z)=>
|
|
151
|
+
`,J)}if(z!==-1)Z=z-(X[z-1]==="\r"?2:1)}if(Z===-1){if(!this.atEnd)return this.setNext("quoted-scalar");Z=this.buffer.length}return yield*this.pushToIndex(Z+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let Z=this.buffer[++$];if(Z==="+")this.blockScalarKeep=!0;else if(Z>"0"&&Z<="9")this.blockScalarIndent=Number(Z)-1;else if(Z!=="-")break}return yield*this.pushUntil((Z)=>O0(Z)||Z==="#")}*parseBlockScalar(){let $=this.pos-1,Z=0,X;$:for(let J=this.pos;X=this.buffer[J];++J)switch(X){case" ":Z+=1;break;case`
|
|
152
152
|
`:$=J,Z=0;break;case"\r":{let q=this.buffer[J+1];if(!q&&!this.atEnd)return this.setNext("block-scalar");if(q===`
|
|
153
153
|
`)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 J=this.continueScalar($+1);if(J===-1)break;$=this.buffer.indexOf(`
|
|
154
154
|
`,J)}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===`
|
|
155
155
|
`)X=this.buffer[++z];$=z-1}else if(!this.blockScalarKeep)do{let J=$-1,q=this.buffer[J];if(q==="\r")q=this.buffer[--J];let Q=J;while(q===" ")q=this.buffer[--J];if(q===`
|
|
156
|
-
`&&J>=this.pos&&J+1+Z>Q)$=J;else break}while(!0);return yield
|
|
156
|
+
`&&J>=this.pos&&J+1+Z>Q)$=J;else break}while(!0);return yield E6.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 J=this.buffer[X+1];if(O0(J)||$&&Y2.has(J))break;Z=X}else if(O0(z)){let J=this.buffer[X+1];if(z==="\r")if(J===`
|
|
157
157
|
`)X+=1,z=`
|
|
158
|
-
`,J=this.buffer[X+1];else Z=X;if(J==="#"||$&&
|
|
159
|
-
`){let q=this.continueScalar(X+1);if(q===-1)break;X=Math.max(X,q-2)}}else{if($&&
|
|
158
|
+
`,J=this.buffer[X+1];else Z=X;if(J==="#"||$&&Y2.has(J))break;if(z===`
|
|
159
|
+
`){let q=this.continueScalar(X+1);if(q===-1)break;X=Math.max(X,q-2)}}else{if($&&Y2.has(z))break;Z=X}if(!z&&!this.atEnd)return this.setNext("plain-scalar");return yield E6.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(W4))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,Z=this.charAt(1);if(O0(Z)||$&&Y2.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(!O0(Z)&&Z!==">")Z=this.buffer[++$];return yield*this.pushToIndex(Z===">"?$+1:$,!1)}else{let $=this.pos+1,Z=this.buffer[$];while(Z)if(MH.has(Z))Z=this.buffer[++$];else if(Z==="%"&&aX.has(this.buffer[$+1])&&aX.has(this.buffer[$+2]))Z=this.buffer[$+=3];else break;return yield*this.pushToIndex($,!1)}}*pushNewline(){let $=this.buffer[this.pos];if($===`
|
|
160
160
|
`)return yield*this.pushCount(1);else if($==="\r"&&this.charAt(1)===`
|
|
161
|
-
`)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)}}
|
|
161
|
+
`)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)}}wH.Lexer=oX});var V4=T((RH)=>{class tX{constructor(){this.lineStarts=[],this.addNewLine=($)=>this.lineStarts.push($),this.linePos=($)=>{let Z=0,X=this.lineStarts.length;while(Z<X){let J=Z+X>>1;if(this.lineStarts[J]<$)Z=J+1;else X=J}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}}}}RH.LineCounter=tX});var K4=T((_H)=>{var PH=J0("process"),eX=Q2(),SH=H4();function l0($,Z){for(let X=0;X<$.length;++X)if($[X].type===Z)return!0;return!1}function $z($){for(let Z=0;Z<$.length;++Z)switch($[Z].type){case"space":case"comment":case"newline":break;default:return Z}return-1}function Xz($){switch($?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function G2($){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 j$($){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 Zz($){if($.start.type==="flow-seq-start"){for(let Z of $.items)if(Z.sep&&!Z.value&&!l0(Z.start,"explicit-key-ind")&&!l0(Z.sep,"map-value-ind")){if(Z.key)Z.value=Z.key;if(delete Z.key,Xz(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 zz{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 SH.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=$,PH.env.LOG_TOKENS)console.log("|",eX.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let Z=eX.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")Zz(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&&$z(z.start)===-1&&(Z.indent===0||z.start.every((J)=>J.type!=="comment"||J.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($z($.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=G2(this.peek(2)),X=j$(Z),z;if($.end)z=$.end,z.push(this.sourceToken),delete $.end;else z=[this.sourceToken];let J={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:X,key:$,sep:z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=J}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(`
|
|
162
162
|
`)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
|
|
163
|
-
`,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",J=[];if(z&&Z.sep&&!Z.value){let q=[];for(let Q=0;Q<Z.sep.length;++Q){let Y=Z.sep[Q];switch(Y.type){case"newline":q.push(Q);break;case"space":break;case"comment":if(Y.indent>$.indent)q.length=0;break;default:q.length=0}}if(q.length>=2)J=Z.sep.splice(q[1])}switch(this.type){case"anchor":case"tag":if(z||Z.value)J.push(this.sourceToken),$.items.push({start:J}),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)J.push(this.sourceToken),$.items.push({start:J,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(l0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let q=
|
|
163
|
+
`,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",J=[];if(z&&Z.sep&&!Z.value){let q=[];for(let Q=0;Q<Z.sep.length;++Q){let Y=Z.sep[Q];switch(Y.type){case"newline":q.push(Q);break;case"space":break;case"comment":if(Y.indent>$.indent)q.length=0;break;default:q.length=0}}if(q.length>=2)J=Z.sep.splice(q[1])}switch(this.type){case"anchor":case"tag":if(z||Z.value)J.push(this.sourceToken),$.items.push({start:J}),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)J.push(this.sourceToken),$.items.push({start:J,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(l0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let q=j$(Z.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]})}else if(Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(l0(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:J,key:null,sep:[this.sourceToken]}]});else if(Xz(Z.key)&&!l0(Z.sep,"newline")){let q=j$(Z.start),Q=Z.key,Y=Z.sep;Y.push(this.sourceToken),delete Z.key,delete Z.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:Q,sep:Y}]})}else if(J.length>0)Z.sep=Z.sep.concat(J,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:J,key:null,sep:[this.sourceToken]});else if(l0(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 q=this.flowScalar(this.type);if(z||Z.value)$.items.push({start:J,key:q,sep:[]}),this.onKeyLine=!0;else if(Z.sep)this.stack.push(q);else Object.assign(Z,{key:q,sep:[]}),this.onKeyLine=!0;return}default:{let q=this.startBlockValue($);if(q){if(q.type==="block-seq"){if(!Z.explicitKey&&Z.sep&&!l0(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:J});this.stack.push(q);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||l0(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=G2(X),J=j$(z);Zz($);let q=$.end.splice(1,$.end.length);q.push(this.sourceToken);let Q={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:J,key:$,sep:q}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=Q}else yield*this.lineEnd($)}}flowScalar($){if(this.onNewLine){let Z=this.source.indexOf(`
|
|
164
164
|
`)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
|
|
165
|
-
`,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=Y2($),X=E$(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=Y2($),X=E$(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()}}}AV.Parser=Zz});var Qz=T((kV)=>{var Xz=Z5(),SV=R6(),E6=A6(),_V=VZ(),CV=k(),EV=V5(),zz=H5();function Jz($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new EV.LineCounter||null,prettyErrors:Z}}function jV($,Z={}){let{lineCounter:X,prettyErrors:z}=Jz(Z),J=new zz.Parser(X?.addNewLine),q=new Xz.Composer(Z),Q=Array.from(q.compose(J.parse($)));if(z&&X)for(let Y of Q)Y.errors.forEach(E6.prettifyError($,X)),Y.warnings.forEach(E6.prettifyError($,X));if(Q.length>0)return Q;return Object.assign([],{empty:!0},q.streamInfo())}function qz($,Z={}){let{lineCounter:X,prettyErrors:z}=Jz(Z),J=new zz.Parser(X?.addNewLine),q=new Xz.Composer(Z),Q=null;for(let Y of q.compose(J.parse($),!0,$.length))if(!Q)Q=Y;else if(Q.options.logLevel!=="silent"){Q.errors.push(new E6.YAMLParseError(Y.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&X)Q.errors.forEach(E6.prettifyError($,X)),Q.warnings.forEach(E6.prettifyError($,X));return Q}function bV($,Z,X){let z=void 0;if(typeof Z==="function")z=Z;else if(X===void 0&&Z&&typeof Z==="object")X=Z;let J=qz($,X);if(!J)return null;if(J.warnings.forEach((q)=>_V.warn(J.options.logLevel,q)),J.errors.length>0)if(J.options.logLevel!=="silent")throw J.errors[0];else J.errors=[];return J.toJS(Object.assign({reviver:z},X))}function xV($,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 J=Math.round(X);X=J<1?void 0:J>8?{indent:8}:{indent:J}}if($===void 0){let{keepUndefined:J}=X??Z??{};if(!J)return}if(CV.isDocument($)&&!z)return $.toString(X);return new SV.Document($,z,X).toString(X)}kV.parse=bV;kV.parseAllDocuments=jV;kV.parseDocument=qz;kV.stringify=xV});var Kz=T((_H,Hz)=>{var __dirname="/Users/wolfejam/FAF/cli/node_modules/faf-scoring-kernel",Wz={};Wz.__wbindgen_placeholder__=_H;var U2=null;function j$(){if(U2===null||U2.byteLength===0)U2=new Uint8Array(v.memory.buffer);return U2}var Vz=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});Vz.decode();function FH($,Z){return Vz.decode(j$().subarray($,$+Z))}function W$($,Z){return $=$>>>0,FH($,Z)}_H.sdk_version=function(){let $,Z;try{let X=v.sdk_version();return $=X[0],Z=X[1],W$(X[0],X[1])}finally{v.__wbindgen_free($,Z,1)}};var R0=0,b6=new TextEncoder;if(!("encodeInto"in b6))b6.encodeInto=function($,Z){let X=b6.encode($);return Z.set(X),{read:$.length,written:X.length}};function W2($,Z,X){if(X===void 0){let Y=b6.encode($),G=Z(Y.length,1)>>>0;return j$().subarray(G,G+Y.length).set(Y),R0=Y.length,G}let z=$.length,J=Z(z,1)>>>0,q=j$(),Q=0;for(;Q<z;Q++){let Y=$.charCodeAt(Q);if(Y>127)break;q[J+Q]=Y}if(Q!==z){if(Q!==0)$=$.slice(Q);J=X(J,z,z=Q+$.length*3,1)>>>0;let Y=j$().subarray(J+Q,J+z),G=b6.encodeInto($,Y);Q+=G.written,J=X(J,z,Q,1)>>>0}return R0=Q,J}function b$($){let Z=v.__wbindgen_externrefs.get($);return v.__externref_table_dealloc($),Z}_H.score_faf_enterprise=function($){let Z,X;try{let q=W2($,v.__wbindgen_malloc,v.__wbindgen_realloc),Q=R0,Y=v.score_faf_enterprise(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,b$(Y[2]);return Z=z,X=J,W$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};_H.score_faf=function($){let Z,X;try{let q=W2($,v.__wbindgen_malloc,v.__wbindgen_realloc),Q=R0,Y=v.score_faf(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,b$(Y[2]);return Z=z,X=J,W$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};function D5($,Z){let X=Z($.length*1,1)>>>0;return j$().set($,X/1),R0=$.length,X}_H.decompile_fafb=function($){let Z,X;try{let q=D5($,v.__wbindgen_malloc),Q=R0,Y=v.decompile_fafb(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,b$(Y[2]);return Z=z,X=J,W$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};_H.score_fafb=function($){let Z,X;try{let q=D5($,v.__wbindgen_malloc),Q=R0,Y=v.score_fafb(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,b$(Y[2]);return Z=z,X=J,W$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};_H.validate_faf=function($){let Z=W2($,v.__wbindgen_malloc,v.__wbindgen_realloc),X=R0;return v.validate_faf(Z,X)!==0};function RH($,Z){return $=$>>>0,j$().subarray($/1,$/1+Z)}_H.compile_fafb=function($){let Z=W2($,v.__wbindgen_malloc,v.__wbindgen_realloc),X=R0,z=v.compile_fafb(Z,X);if(z[3])throw b$(z[2]);var J=RH(z[0],z[1]).slice();return v.__wbindgen_free(z[0],z[1]*1,1),J};_H.fafb_info=function($){let Z,X;try{let q=D5($,v.__wbindgen_malloc),Q=R0,Y=v.fafb_info(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,b$(Y[2]);return Z=z,X=J,W$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};_H.__wbindgen_cast_2241b6af4c4b2941=function($,Z){return W$($,Z)};_H.__wbindgen_init_externref_table=function(){let $=v.__wbindgen_externrefs,Z=$.grow(4);$.set(0,void 0),$.set(Z+0,void 0),$.set(Z+1,null),$.set(Z+2,!0),$.set(Z+3,!1)};var AH=`${__dirname}/faf_wasm_sdk_bg.wasm`,PH=z0("fs").readFileSync(AH),SH=new WebAssembly.Module(PH),v=_H.__wasm=new WebAssembly.Instance(SH,Wz).exports;v.__wbindgen_start()});var az=T((kL,NK)=>{NK.exports={name:"faf-cli",version:"6.0.3",description:"The Persistent AI Context Standard — project DNA for any AI. IANA-registered. Anthropic-approved.",type:"module",icon:"https://faf.one/orange-smiley.svg",logo:"https://faf.one/orange-smiley.svg",main:"dist/index.js",bin:{faf:"dist/cli.js","faf-cli":"dist/cli.js"},exports:{".":{bun:"./src/index.ts",default:"./dist/index.js"}},files:["dist/**/*","README.md","LICENSE","project.faf"],scripts:{dev:"bun src/cli.ts",build:"bun build src/cli.ts --outfile dist/cli.js --target=node --minify && bun build src/index.ts --outfile dist/index.js --target=node --minify",compile:"bun build src/cli.ts --compile --bytecode --minify --outfile faf","compile:all":"bun build src/cli.ts --compile --target=bun-darwin-arm64 --outfile faf-darwin-arm64 && bun build src/cli.ts --compile --target=bun-darwin-x64 --outfile faf-darwin-x64 && bun build src/cli.ts --compile --target=bun-linux-x64 --outfile faf-linux-x64 && bun build src/cli.ts --compile --target=bun-windows-x64 --outfile faf-windows-x64.exe",test:"bun test","test:watch":"bun test --watch",lint:"eslint src/**/*.ts",format:"prettier --write 'src/**/*.ts'",prepublishOnly:"bun run build"},keywords:["faf","ai-context","project-dna","bi-sync","cli","claude","gemini","cursor","mcp","model-context-protocol","persistent-context","ai-readiness","foundational"],author:"wolfejam <wolfejam@faf.one>",license:"MIT",repository:{type:"git",url:"https://github.com/Wolfe-Jam/faf-cli.git"},homepage:"https://faf.one",bugs:{url:"https://github.com/Wolfe-Jam/faf-cli/issues"},dependencies:{commander:"^14.0.1","faf-scoring-kernel":"^2.0.3",open:"8.4.2",yaml:"^2.4.1"},optionalDependencies:{"@anthropic-ai/sdk":"^0.74.0"},devDependencies:{"@types/node":"^22.15.0",typescript:"^5.3.3",eslint:"^9.39.2","@typescript-eslint/eslint-plugin":"^8.41.0","@typescript-eslint/parser":"^8.41.0",prettier:"^3.2.5"},engines:{node:">=18.0.0"},publishConfig:{access:"public"}}});var P5=T((LT,G9)=>{var Y9=z0("fs"),A5;function AK(){try{return Y9.statSync("/.dockerenv"),!0}catch($){return!1}}function PK(){try{return Y9.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch($){return!1}}G9.exports=()=>{if(A5===void 0)A5=AK()||PK();return A5}});var V9=T((TT,S5)=>{var SK=z0("os"),_K=z0("fs"),U9=P5(),W9=()=>{if(process.platform!=="linux")return!1;if(SK.release().toLowerCase().includes("microsoft")){if(U9())return!1;return!0}try{return _K.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!U9():!1}catch($){return!1}};if(process.env.__IS_WSL_TEST__)S5.exports=W9;else S5.exports=W9()});var K9=T((MT,H9)=>{H9.exports=($,Z,X)=>{let z=(J)=>Object.defineProperty($,Z,{value:J,enumerable:!0,writable:!0});return Object.defineProperty($,Z,{configurable:!0,enumerable:!0,get(){let J=X();return z(J),J},set(J){z(J)}}),$}});var M9=T((OT,T9)=>{var __dirname="/Users/wolfejam/FAF/cli/node_modules/open",CK=z0("path"),EK=z0("child_process"),{promises:I2,constants:L9}=z0("fs"),N2=V9(),jK=P5(),C5=K9(),B9=CK.join(__dirname,"xdg-open"),{platform:h$,arch:D9}=process,bK=()=>{try{return I2.statSync("/run/.containerenv"),!0}catch{return!1}},_5;function xK(){if(_5===void 0)_5=bK()||jK();return _5}var kK=(()=>{let Z;return async function(){if(Z)return Z;let X="/etc/wsl.conf",z=!1;try{await I2.access(X,L9.F_OK),z=!0}catch{}if(!z)return"/mnt/";let J=await I2.readFile(X,{encoding:"utf8"}),q=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(J);if(!q)return"/mnt/";return Z=q.groups.mountPoint.trim(),Z=Z.endsWith("/")?Z:`${Z}/`,Z}})(),N9=async($,Z)=>{let X;for(let z of $)try{return await Z(z)}catch(J){X=J}throw X},L2=async($)=>{if($={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...$},Array.isArray($.app))return N9($.app,(Y)=>L2({...$,app:Y}));let{name:Z,arguments:X=[]}=$.app||{};if(X=[...X],Array.isArray(Z))return N9(Z,(Y)=>L2({...$,app:{name:Y,arguments:X}}));let z,J=[],q={};if(h$==="darwin"){if(z="open",$.wait)J.push("--wait-apps");if($.background)J.push("--background");if($.newInstance)J.push("--new");if(Z)J.push("-a",Z)}else if(h$==="win32"||N2&&!xK()&&!Z){let Y=await kK();if(z=N2?`${Y}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`:`${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\powershell`,J.push("-NoProfile","-NonInteractive","–ExecutionPolicy","Bypass","-EncodedCommand"),!N2)q.windowsVerbatimArguments=!0;let G=["Start"];if($.wait)G.push("-Wait");if(Z){if(G.push(`"\`"${Z}\`""`,"-ArgumentList"),$.target)X.unshift($.target)}else if($.target)G.push(`"${$.target}"`);if(X.length>0)X=X.map((U)=>`"\`"${U}\`""`),G.push(X.join(","));$.target=Buffer.from(G.join(" "),"utf16le").toString("base64")}else{if(Z)z=Z;else{let Y=!__dirname||__dirname==="/",G=!1;try{await I2.access(B9,L9.X_OK),G=!0}catch{}z=process.versions.electron||h$==="android"||Y||!G?"xdg-open":B9}if(X.length>0)J.push(...X);if(!$.wait)q.stdio="ignore",q.detached=!0}if($.target)J.push($.target);if(h$==="darwin"&&X.length>0)J.push("--args",...X);let Q=EK.spawn(z,J,q);if($.wait)return new Promise((Y,G)=>{Q.once("error",G),Q.once("close",(U)=>{if(!$.allowNonzeroExitCode&&U>0){G(Error(`Exited with code ${U}`));return}Y(Q)})});return Q.unref(),Q},E5=($,Z)=>{if(typeof $!=="string")throw TypeError("Expected a `target`");return L2({...Z,target:$})},fK=($,Z)=>{if(typeof $!=="string")throw TypeError("Expected a `name`");let{arguments:X=[]}=Z||{};if(X!==void 0&&X!==null&&!Array.isArray(X))throw TypeError("Expected `appArguments` as Array type");return L2({...Z,app:{name:$,arguments:X}})};function I9($){if(typeof $==="string"||Array.isArray($))return $;let{[D9]:Z}=$;if(!Z)throw Error(`${D9} is not supported`);return Z}function j5({[h$]:$},{wsl:Z}){if(Z&&N2)return I9(Z);if(!$)throw Error(`${h$} is not supported`);return I9($)}var T2={};C5(T2,"chrome",()=>j5({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));C5(T2,"firefox",()=>j5({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));C5(T2,"edge",()=>j5({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));E5.apps=T2;E5.openApp=fK;T9.exports=E5});function O($,Z,X,z,J){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!J)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!J:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?J.call($,X):J?J.value=X:Z.set($,X),X}function K($,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($)}var j0=()=>{};var b5=function(){let{crypto:$}=globalThis;if($?.randomUUID)return b5=$.randomUUID.bind($),$.randomUUID();let Z=new Uint8Array(1),X=$?()=>$.getRandomValues(Z)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(z)=>(+z^X()&15>>+z/4).toString(16))};function b0($){return typeof $==="object"&&$!==null&&(("name"in $)&&$.name==="AbortError"||("message"in $)&&String($.message).includes("FetchRequestCanceledException"))}var h6=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null){try{if(Object.prototype.toString.call($)==="[object Error]"){let Z=Error($.message,$.cause?{cause:$.cause}:{});if($.stack)Z.stack=$.stack;if($.cause&&!Z.cause)Z.cause=$.cause;if($.name)Z.name=$.name;return Z}}catch{}try{return Error(JSON.stringify($))}catch{}}return Error($)};var A,o,q0,n0,v$,u$,m$,d$,c$,p$,l$,i$,n$;var U0=j(()=>{A=class A extends Error{};o=class o extends A{constructor($,Z,X,z){super(`${o.makeMessage($,Z,X)}`);this.status=$,this.headers=z,this.requestID=z?.get("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 n0({message:X,cause:h6(Z)});let J=Z;if($===400)return new u$($,J,X,z);if($===401)return new m$($,J,X,z);if($===403)return new d$($,J,X,z);if($===404)return new c$($,J,X,z);if($===409)return new p$($,J,X,z);if($===422)return new l$($,J,X,z);if($===429)return new i$($,J,X,z);if($>=500)return new n$($,J,X,z);return new o($,J,X,z)}};q0=class q0 extends o{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}};n0=class n0 extends o{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}};v$=class v$ extends n0{constructor({message:$}={}){super({message:$??"Request timed out."})}};u$=class u$ extends o{};m$=class m$ extends o{};d$=class d$ extends o{};c$=class c$ extends o{};p$=class p$ extends o{};l$=class l$ extends o{};i$=class i$ extends o{};n$=class n$ extends o{}});function M2($){if(typeof $!=="object")return{};return $??{}}function E9($){if(!$)return!0;for(let Z in $)return!1;return!0}function j9($,Z){return Object.prototype.hasOwnProperty.call($,Z)}var $B,C9=($)=>{return $B.test($)},x5=($)=>(x5=Array.isArray,x5($)),k5,b9=($,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},O2=($)=>{try{return JSON.parse($)}catch(Z){return}};var K$=j(()=>{U0();$B=/^[a-z][a-z0-9+.-]*:/i,k5=x5});var x9=($)=>new Promise((Z)=>setTimeout(Z,$));var s0="0.74.0";function ZB(){if(typeof Deno<"u"&&Deno.build!=null)return"deno";if(typeof EdgeRuntime<"u")return"edge";if(Object.prototype.toString.call(typeof globalThis.process<"u"?globalThis.process:0)==="[object process]")return"node";return"unknown"}function zB(){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 J=z[1]||0,q=z[2]||0,Q=z[3]||0;return{browser:Z,version:`${J}.${q}.${Q}`}}}return null}var g9=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},XB=()=>{let $=ZB();if($==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":s0,"X-Stainless-OS":f9(Deno.build.os),"X-Stainless-Arch":k9(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":globalThis.process.version};if($==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":s0,"X-Stainless-OS":f9(globalThis.process.platform??"unknown"),"X-Stainless-Arch":k9(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let Z=zB();if(Z)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":s0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${Z.browser}`,"X-Stainless-Runtime-Version":Z.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"}},k9=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},f9=($)=>{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"},y9,h9=()=>{return y9??(y9=XB())};var f5=()=>{};function v9(){if(typeof fetch<"u")return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function y5(...$){let Z=globalThis.ReadableStream;if(typeof Z>"u")throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new Z(...$)}function w2($){let Z=Symbol.asyncIterator in $?$[Symbol.asyncIterator]():$[Symbol.iterator]();return y5({start(){},async pull(X){let{done:z,value:J}=await Z.next();if(z)X.close();else X.enqueue(J)},async cancel(){await Z.return?.()}})}function v6($){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}}}async function u9($){if($===null||typeof $!=="object")return;if($[Symbol.asyncIterator]){await $[Symbol.asyncIterator]().return?.();return}let Z=$.getReader(),X=Z.cancel();Z.releaseLock(),await X}var m9=({headers:$,body:Z})=>{return{bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(Z)}};function p9($){let Z=0;for(let J of $)Z+=J.length;let X=new Uint8Array(Z),z=0;for(let J of $)X.set(J,z),z+=J.length;return X}function u6($){let Z;return(d9??(Z=new globalThis.TextEncoder,d9=Z.encode.bind(Z)))($)}function g5($){let Z;return(c9??(Z=new globalThis.TextDecoder,c9=Z.decode.bind(Z)))($)}var d9,c9;class r0{constructor(){W0.set(this,void 0),V0.set(this,void 0),O(this,W0,new Uint8Array,"f"),O(this,V0,null,"f")}decode($){if($==null)return[];let Z=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?u6($):$;O(this,W0,p9([K(this,W0,"f"),Z]),"f");let X=[],z;while((z=QB(K(this,W0,"f"),K(this,V0,"f")))!=null){if(z.carriage&&K(this,V0,"f")==null){O(this,V0,z.index,"f");continue}if(K(this,V0,"f")!=null&&(z.index!==K(this,V0,"f")+1||z.carriage)){X.push(g5(K(this,W0,"f").subarray(0,K(this,V0,"f")-1))),O(this,W0,K(this,W0,"f").subarray(K(this,V0,"f")),"f"),O(this,V0,null,"f");continue}let J=K(this,V0,"f")!==null?z.preceding-1:z.preceding,q=g5(K(this,W0,"f").subarray(0,J));X.push(q),O(this,W0,K(this,W0,"f").subarray(z.index),"f"),O(this,V0,null,"f")}return X}flush(){if(!K(this,W0,"f").length)return[];return this.decode(`
|
|
166
|
-
`)}}function
|
|
167
|
-
`,"\r"]);
|
|
168
|
-
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],J}if(this.chunks.push($),$.startsWith(":"))return null;let[Z,X,z]=
|
|
169
|
-
`);X.enqueue(q)}catch(z){X.error(z)}},async cancel(){await Z.return?.()}})}}});async function
|
|
170
|
-
${q.map((
|
|
165
|
+
`,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=G2($),X=j$(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=G2($),X=j$(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()}}}_H.Parser=zz});var Gz=T((gH)=>{var Jz=X4(),EH=A6(),j6=P6(),jH=VZ(),bH=k(),xH=V4(),qz=K4();function Qz($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new xH.LineCounter||null,prettyErrors:Z}}function kH($,Z={}){let{lineCounter:X,prettyErrors:z}=Qz(Z),J=new qz.Parser(X?.addNewLine),q=new Jz.Composer(Z),Q=Array.from(q.compose(J.parse($)));if(z&&X)for(let Y of Q)Y.errors.forEach(j6.prettifyError($,X)),Y.warnings.forEach(j6.prettifyError($,X));if(Q.length>0)return Q;return Object.assign([],{empty:!0},q.streamInfo())}function Yz($,Z={}){let{lineCounter:X,prettyErrors:z}=Qz(Z),J=new qz.Parser(X?.addNewLine),q=new Jz.Composer(Z),Q=null;for(let Y of q.compose(J.parse($),!0,$.length))if(!Q)Q=Y;else if(Q.options.logLevel!=="silent"){Q.errors.push(new j6.YAMLParseError(Y.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&X)Q.errors.forEach(j6.prettifyError($,X)),Q.warnings.forEach(j6.prettifyError($,X));return Q}function fH($,Z,X){let z=void 0;if(typeof Z==="function")z=Z;else if(X===void 0&&Z&&typeof Z==="object")X=Z;let J=Yz($,X);if(!J)return null;if(J.warnings.forEach((q)=>jH.warn(J.options.logLevel,q)),J.errors.length>0)if(J.options.logLevel!=="silent")throw J.errors[0];else J.errors=[];return J.toJS(Object.assign({reviver:z},X))}function yH($,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 J=Math.round(X);X=J<1?void 0:J>8?{indent:8}:{indent:J}}if($===void 0){let{keepUndefined:J}=X??Z??{};if(!J)return}if(bH.isDocument($)&&!z)return $.toString(X);return new EH.Document($,z,X).toString(X)}gH.parse=fH;gH.parseAllDocuments=kH;gH.parseDocument=Yz;gH.stringify=yH});var Dz=T((jV,Bz)=>{var __dirname="/Users/wolfejam/FAF/cli/node_modules/faf-scoring-kernel",Vz={};Vz.__wbindgen_placeholder__=jV;var W2=null;function b$(){if(W2===null||W2.byteLength===0)W2=new Uint8Array(v.memory.buffer);return W2}var Kz=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});Kz.decode();function PV($,Z){return Kz.decode(b$().subarray($,$+Z))}function H$($,Z){return $=$>>>0,PV($,Z)}jV.sdk_version=function(){let $,Z;try{let X=v.sdk_version();return $=X[0],Z=X[1],H$(X[0],X[1])}finally{v.__wbindgen_free($,Z,1)}};var A0=0,x6=new TextEncoder;if(!("encodeInto"in x6))x6.encodeInto=function($,Z){let X=x6.encode($);return Z.set(X),{read:$.length,written:X.length}};function H2($,Z,X){if(X===void 0){let Y=x6.encode($),G=Z(Y.length,1)>>>0;return b$().subarray(G,G+Y.length).set(Y),A0=Y.length,G}let z=$.length,J=Z(z,1)>>>0,q=b$(),Q=0;for(;Q<z;Q++){let Y=$.charCodeAt(Q);if(Y>127)break;q[J+Q]=Y}if(Q!==z){if(Q!==0)$=$.slice(Q);J=X(J,z,z=Q+$.length*3,1)>>>0;let Y=b$().subarray(J+Q,J+z),G=x6.encodeInto($,Y);Q+=G.written,J=X(J,z,Q,1)>>>0}return A0=Q,J}function x$($){let Z=v.__wbindgen_externrefs.get($);return v.__externref_table_dealloc($),Z}jV.score_faf_enterprise=function($){let Z,X;try{let q=H2($,v.__wbindgen_malloc,v.__wbindgen_realloc),Q=A0,Y=v.score_faf_enterprise(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,x$(Y[2]);return Z=z,X=J,H$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};jV.score_faf=function($){let Z,X;try{let q=H2($,v.__wbindgen_malloc,v.__wbindgen_realloc),Q=A0,Y=v.score_faf(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,x$(Y[2]);return Z=z,X=J,H$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};function N4($,Z){let X=Z($.length*1,1)>>>0;return b$().set($,X/1),A0=$.length,X}jV.decompile_fafb=function($){let Z,X;try{let q=N4($,v.__wbindgen_malloc),Q=A0,Y=v.decompile_fafb(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,x$(Y[2]);return Z=z,X=J,H$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};jV.score_fafb=function($){let Z,X;try{let q=N4($,v.__wbindgen_malloc),Q=A0,Y=v.score_fafb(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,x$(Y[2]);return Z=z,X=J,H$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};jV.validate_faf=function($){let Z=H2($,v.__wbindgen_malloc,v.__wbindgen_realloc),X=A0;return v.validate_faf(Z,X)!==0};function SV($,Z){return $=$>>>0,b$().subarray($/1,$/1+Z)}jV.compile_fafb=function($){let Z=H2($,v.__wbindgen_malloc,v.__wbindgen_realloc),X=A0,z=v.compile_fafb(Z,X);if(z[3])throw x$(z[2]);var J=SV(z[0],z[1]).slice();return v.__wbindgen_free(z[0],z[1]*1,1),J};jV.fafb_info=function($){let Z,X;try{let q=N4($,v.__wbindgen_malloc),Q=A0,Y=v.fafb_info(q,Q);var z=Y[0],J=Y[1];if(Y[3])throw z=0,J=0,x$(Y[2]);return Z=z,X=J,H$(z,J)}finally{v.__wbindgen_free(Z,X,1)}};jV.__wbindgen_cast_2241b6af4c4b2941=function($,Z){return H$($,Z)};jV.__wbindgen_init_externref_table=function(){let $=v.__wbindgen_externrefs,Z=$.grow(4);$.set(0,void 0),$.set(Z+0,void 0),$.set(Z+1,null),$.set(Z+2,!0),$.set(Z+3,!1)};var _V=`${__dirname}/faf_wasm_sdk_bg.wasm`,CV=J0("fs").readFileSync(_V),EV=new WebAssembly.Module(CV),v=jV.__wasm=new WebAssembly.Instance(EV,Vz).exports;v.__wbindgen_start()});var Mz={};g5(Mz,{orange:()=>n0,italic:()=>dV,fafCyan:()=>w,dim:()=>I,bold:()=>b});var L4=($)=>(Z)=>`\x1B[${$}m${Z}\x1B[0m`,b,I,dV,w=($)=>`\x1B[38;2;0;212;212m${$}\x1B[0m`,n0=($)=>`\x1B[38;5;208m${$}\x1B[0m`;var d=j(()=>{b=L4("1"),I=L4("2"),dV=L4("3")});var ez=T((gL,MK)=>{MK.exports={name:"faf-cli",version:"6.0.4",description:"The Persistent AI Context Standard — project DNA for any AI. IANA-registered. Anthropic-approved.",type:"module",icon:"https://faf.one/orange-smiley.svg",logo:"https://faf.one/orange-smiley.svg",main:"dist/index.js",bin:{faf:"dist/cli.js","faf-cli":"dist/cli.js"},exports:{".":{bun:"./src/index.ts",default:"./dist/index.js"}},files:["dist/**/*","README.md","LICENSE","project.faf"],scripts:{dev:"bun src/cli.ts",build:"bun build src/cli.ts --outfile dist/cli.js --target=node --minify && bun build src/index.ts --outfile dist/index.js --target=node --minify",compile:"bun build src/cli.ts --compile --bytecode --minify --outfile faf","compile:all":"bun build src/cli.ts --compile --target=bun-darwin-arm64 --outfile faf-darwin-arm64 && bun build src/cli.ts --compile --target=bun-darwin-x64 --outfile faf-darwin-x64 && bun build src/cli.ts --compile --target=bun-linux-x64 --outfile faf-linux-x64 && bun build src/cli.ts --compile --target=bun-windows-x64 --outfile faf-windows-x64.exe",test:"bun test","test:watch":"bun test --watch",lint:"eslint src/**/*.ts",format:"prettier --write 'src/**/*.ts'",prepublishOnly:"bun run build"},keywords:["faf","ai-context","project-dna","bi-sync","cli","claude","gemini","cursor","mcp","model-context-protocol","persistent-context","ai-readiness","foundational"],author:"wolfejam <wolfejam@faf.one>",license:"MIT",repository:{type:"git",url:"https://github.com/Wolfe-Jam/faf-cli.git"},homepage:"https://faf.one",bugs:{url:"https://github.com/Wolfe-Jam/faf-cli/issues"},dependencies:{commander:"^14.0.1","faf-scoring-kernel":"^2.0.3",open:"8.4.2",yaml:"^2.4.1"},optionalDependencies:{"@anthropic-ai/sdk":"^0.74.0"},devDependencies:{"@types/node":"^22.15.0",typescript:"^5.3.3",eslint:"^9.39.2","@typescript-eslint/eslint-plugin":"^8.41.0","@typescript-eslint/parser":"^8.41.0",prettier:"^3.2.5"},engines:{node:">=18.0.0"},publishConfig:{access:"public"}}});var S4=T((OT,H9)=>{var W9=J0("fs"),P4;function CK(){try{return W9.statSync("/.dockerenv"),!0}catch($){return!1}}function EK(){try{return W9.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch($){return!1}}H9.exports=()=>{if(P4===void 0)P4=CK()||EK();return P4}});var B9=T((wT,_4)=>{var jK=J0("os"),bK=J0("fs"),V9=S4(),K9=()=>{if(process.platform!=="linux")return!1;if(jK.release().toLowerCase().includes("microsoft")){if(V9())return!1;return!0}try{return bK.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!V9():!1}catch($){return!1}};if(process.env.__IS_WSL_TEST__)_4.exports=K9;else _4.exports=K9()});var N9=T((FT,D9)=>{D9.exports=($,Z,X)=>{let z=(J)=>Object.defineProperty($,Z,{value:J,enumerable:!0,writable:!0});return Object.defineProperty($,Z,{configurable:!0,enumerable:!0,get(){let J=X();return z(J),J},set(J){z(J)}}),$}});var F9=T((RT,w9)=>{var __dirname="/Users/wolfejam/FAF/cli/node_modules/open",xK=J0("path"),kK=J0("child_process"),{promises:L2,constants:O9}=J0("fs"),I2=B9(),fK=S4(),E4=N9(),I9=xK.join(__dirname,"xdg-open"),{platform:v$,arch:L9}=process,yK=()=>{try{return L2.statSync("/run/.containerenv"),!0}catch{return!1}},C4;function gK(){if(C4===void 0)C4=yK()||fK();return C4}var hK=(()=>{let Z;return async function(){if(Z)return Z;let X="/etc/wsl.conf",z=!1;try{await L2.access(X,O9.F_OK),z=!0}catch{}if(!z)return"/mnt/";let J=await L2.readFile(X,{encoding:"utf8"}),q=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(J);if(!q)return"/mnt/";return Z=q.groups.mountPoint.trim(),Z=Z.endsWith("/")?Z:`${Z}/`,Z}})(),T9=async($,Z)=>{let X;for(let z of $)try{return await Z(z)}catch(J){X=J}throw X},T2=async($)=>{if($={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...$},Array.isArray($.app))return T9($.app,(Y)=>T2({...$,app:Y}));let{name:Z,arguments:X=[]}=$.app||{};if(X=[...X],Array.isArray(Z))return T9(Z,(Y)=>T2({...$,app:{name:Y,arguments:X}}));let z,J=[],q={};if(v$==="darwin"){if(z="open",$.wait)J.push("--wait-apps");if($.background)J.push("--background");if($.newInstance)J.push("--new");if(Z)J.push("-a",Z)}else if(v$==="win32"||I2&&!gK()&&!Z){let Y=await hK();if(z=I2?`${Y}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`:`${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\powershell`,J.push("-NoProfile","-NonInteractive","–ExecutionPolicy","Bypass","-EncodedCommand"),!I2)q.windowsVerbatimArguments=!0;let G=["Start"];if($.wait)G.push("-Wait");if(Z){if(G.push(`"\`"${Z}\`""`,"-ArgumentList"),$.target)X.unshift($.target)}else if($.target)G.push(`"${$.target}"`);if(X.length>0)X=X.map((U)=>`"\`"${U}\`""`),G.push(X.join(","));$.target=Buffer.from(G.join(" "),"utf16le").toString("base64")}else{if(Z)z=Z;else{let Y=!__dirname||__dirname==="/",G=!1;try{await L2.access(I9,O9.X_OK),G=!0}catch{}z=process.versions.electron||v$==="android"||Y||!G?"xdg-open":I9}if(X.length>0)J.push(...X);if(!$.wait)q.stdio="ignore",q.detached=!0}if($.target)J.push($.target);if(v$==="darwin"&&X.length>0)J.push("--args",...X);let Q=kK.spawn(z,J,q);if($.wait)return new Promise((Y,G)=>{Q.once("error",G),Q.once("close",(U)=>{if(!$.allowNonzeroExitCode&&U>0){G(Error(`Exited with code ${U}`));return}Y(Q)})});return Q.unref(),Q},j4=($,Z)=>{if(typeof $!=="string")throw TypeError("Expected a `target`");return T2({...Z,target:$})},vK=($,Z)=>{if(typeof $!=="string")throw TypeError("Expected a `name`");let{arguments:X=[]}=Z||{};if(X!==void 0&&X!==null&&!Array.isArray(X))throw TypeError("Expected `appArguments` as Array type");return T2({...Z,app:{name:$,arguments:X}})};function M9($){if(typeof $==="string"||Array.isArray($))return $;let{[L9]:Z}=$;if(!Z)throw Error(`${L9} is not supported`);return Z}function b4({[v$]:$},{wsl:Z}){if(Z&&I2)return M9(Z);if(!$)throw Error(`${v$} is not supported`);return M9($)}var M2={};E4(M2,"chrome",()=>b4({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));E4(M2,"firefox",()=>b4({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));E4(M2,"edge",()=>b4({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));j4.apps=M2;j4.openApp=vK;w9.exports=j4});function O($,Z,X,z,J){if(z==="m")throw TypeError("Private method is not writable");if(z==="a"&&!J)throw TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?$!==Z||!J:!Z.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?J.call($,X):J?J.value=X:Z.set($,X),X}function K($,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($)}var j0=()=>{};var x4=function(){let{crypto:$}=globalThis;if($?.randomUUID)return x4=$.randomUUID.bind($),$.randomUUID();let Z=new Uint8Array(1),X=$?()=>$.getRandomValues(Z)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(z)=>(+z^X()&15>>+z/4).toString(16))};function b0($){return typeof $==="object"&&$!==null&&(("name"in $)&&$.name==="AbortError"||("message"in $)&&String($.message).includes("FetchRequestCanceledException"))}var v6=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null){try{if(Object.prototype.toString.call($)==="[object Error]"){let Z=Error($.message,$.cause?{cause:$.cause}:{});if($.stack)Z.stack=$.stack;if($.cause&&!Z.cause)Z.cause=$.cause;if($.name)Z.name=$.name;return Z}}catch{}try{return Error(JSON.stringify($))}catch{}}return Error($)};var A,t,Q0,s0,u$,m$,d$,c$,p$,l$,i$,n$,s$;var W0=j(()=>{A=class A extends Error{};t=class t extends A{constructor($,Z,X,z){super(`${t.makeMessage($,Z,X)}`);this.status=$,this.headers=z,this.requestID=z?.get("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 s0({message:X,cause:v6(Z)});let J=Z;if($===400)return new m$($,J,X,z);if($===401)return new d$($,J,X,z);if($===403)return new c$($,J,X,z);if($===404)return new p$($,J,X,z);if($===409)return new l$($,J,X,z);if($===422)return new i$($,J,X,z);if($===429)return new n$($,J,X,z);if($>=500)return new s$($,J,X,z);return new t($,J,X,z)}};Q0=class Q0 extends t{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}};s0=class s0 extends t{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}};u$=class u$ extends s0{constructor({message:$}={}){super({message:$??"Request timed out."})}};m$=class m$ extends t{};d$=class d$ extends t{};c$=class c$ extends t{};p$=class p$ extends t{};l$=class l$ extends t{};i$=class i$ extends t{};n$=class n$ extends t{};s$=class s$ extends t{}});function O2($){if(typeof $!=="object")return{};return $??{}}function x9($){if(!$)return!0;for(let Z in $)return!1;return!0}function k9($,Z){return Object.prototype.hasOwnProperty.call($,Z)}var JB,b9=($)=>{return JB.test($)},k4=($)=>(k4=Array.isArray,k4($)),f4,f9=($,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},w2=($)=>{try{return JSON.parse($)}catch(Z){return}};var B$=j(()=>{W0();JB=/^[a-z][a-z0-9+.-]*:/i,f4=k4});var y9=($)=>new Promise((Z)=>setTimeout(Z,$));var r0="0.74.0";function qB(){if(typeof Deno<"u"&&Deno.build!=null)return"deno";if(typeof EdgeRuntime<"u")return"edge";if(Object.prototype.toString.call(typeof globalThis.process<"u"?globalThis.process:0)==="[object process]")return"node";return"unknown"}function YB(){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 J=z[1]||0,q=z[2]||0,Q=z[3]||0;return{browser:Z,version:`${J}.${q}.${Q}`}}}return null}var u9=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},QB=()=>{let $=qB();if($==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":r0,"X-Stainless-OS":h9(Deno.build.os),"X-Stainless-Arch":g9(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":r0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if($==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":r0,"X-Stainless-OS":h9(globalThis.process.platform??"unknown"),"X-Stainless-Arch":g9(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let Z=YB();if(Z)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":r0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${Z.browser}`,"X-Stainless-Runtime-Version":Z.version};return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":r0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}},g9=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},h9=($)=>{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"},v9,m9=()=>{return v9??(v9=QB())};var y4=()=>{};function d9(){if(typeof fetch<"u")return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function g4(...$){let Z=globalThis.ReadableStream;if(typeof Z>"u")throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new Z(...$)}function F2($){let Z=Symbol.asyncIterator in $?$[Symbol.asyncIterator]():$[Symbol.iterator]();return g4({start(){},async pull(X){let{done:z,value:J}=await Z.next();if(z)X.close();else X.enqueue(J)},async cancel(){await Z.return?.()}})}function u6($){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}}}async function c9($){if($===null||typeof $!=="object")return;if($[Symbol.asyncIterator]){await $[Symbol.asyncIterator]().return?.();return}let Z=$.getReader(),X=Z.cancel();Z.releaseLock(),await X}var p9=({headers:$,body:Z})=>{return{bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(Z)}};function n9($){let Z=0;for(let J of $)Z+=J.length;let X=new Uint8Array(Z),z=0;for(let J of $)X.set(J,z),z+=J.length;return X}function m6($){let Z;return(l9??(Z=new globalThis.TextEncoder,l9=Z.encode.bind(Z)))($)}function h4($){let Z;return(i9??(Z=new globalThis.TextDecoder,i9=Z.decode.bind(Z)))($)}var l9,i9;class a0{constructor(){H0.set(this,void 0),V0.set(this,void 0),O(this,H0,new Uint8Array,"f"),O(this,V0,null,"f")}decode($){if($==null)return[];let Z=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?m6($):$;O(this,H0,n9([K(this,H0,"f"),Z]),"f");let X=[],z;while((z=WB(K(this,H0,"f"),K(this,V0,"f")))!=null){if(z.carriage&&K(this,V0,"f")==null){O(this,V0,z.index,"f");continue}if(K(this,V0,"f")!=null&&(z.index!==K(this,V0,"f")+1||z.carriage)){X.push(h4(K(this,H0,"f").subarray(0,K(this,V0,"f")-1))),O(this,H0,K(this,H0,"f").subarray(K(this,V0,"f")),"f"),O(this,V0,null,"f");continue}let J=K(this,V0,"f")!==null?z.preceding-1:z.preceding,q=h4(K(this,H0,"f").subarray(0,J));X.push(q),O(this,H0,K(this,H0,"f").subarray(z.index),"f"),O(this,V0,null,"f")}return X}flush(){if(!K(this,H0,"f").length)return[];return this.decode(`
|
|
166
|
+
`)}}function WB($,Z){for(let J=Z??0;J<$.length;J++){if($[J]===10)return{preceding:J,index:J+1,carriage:!1};if($[J]===13)return{preceding:J,index:J+1,carriage:!0}}return null}function s9($){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}var H0,V0;var v4=j(()=>{j0();H0=new WeakMap,V0=new WeakMap;a0.NEWLINE_CHARS=new Set([`
|
|
167
|
+
`,"\r"]);a0.NEWLINE_REGEXP=/\r\n|[\n\r]/g});function d6(){}function R2($,Z,X){if(!Z||A2[$]>A2[X])return d6;else return Z[$].bind(Z)}function q0($){let Z=$.logger,X=$.logLevel??"off";if(!Z)return HB;let z=r9.get(Z);if(z&&z[0]===X)return z[1];let J={error:R2("error",Z,X),warn:R2("warn",Z,X),info:R2("info",Z,X),debug:R2("debug",Z,X)};return r9.set(Z,[X,J]),J}var A2,u4=($,Z,X)=>{if(!$)return;if(k9(A2,$))return $;q0(X).warn(`${Z} was set to ${JSON.stringify($)}, expected one of ${JSON.stringify(Object.keys(A2))}`);return},HB,r9,x0=($)=>{if($.options)$.options={...$.options},delete $.options.headers;if($.headers)$.headers=Object.fromEntries(($.headers instanceof Headers?[...$.headers]:Object.entries($.headers)).map(([Z,X])=>[Z,Z.toLowerCase()==="x-api-key"||Z.toLowerCase()==="authorization"||Z.toLowerCase()==="cookie"||Z.toLowerCase()==="set-cookie"?"***":X]));if("retryOfRequestLogID"in $){if($.retryOfRequestLogID)$.retryOf=$.retryOfRequestLogID;delete $.retryOfRequestLogID}return $};var P2=j(()=>{B$();A2={off:0,error:200,warn:300,info:400,debug:500};HB={error:d6,warn:d6,info:d6,debug:d6},r9=new WeakMap});async function*VB($,Z){if(!$.body){if(Z.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative")throw new A("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api");throw new A("Attempted to iterate over a response with no body")}let X=new a9,z=new a0,J=u6($.body);for await(let q of KB(J))for(let Q of z.decode(q)){let Y=X.decode(Q);if(Y)yield Y}for(let q of z.flush()){let Q=X.decode(q);if(Q)yield Q}}async function*KB($){let Z=new Uint8Array;for await(let X of $){if(X==null)continue;let z=X instanceof ArrayBuffer?new Uint8Array(X):typeof X==="string"?m6(X):X,J=new Uint8Array(Z.length+z.length);J.set(Z),J.set(z,Z.length),Z=J;let q;while((q=s9(Z))!==-1)yield Z.slice(0,q),Z=Z.slice(q)}if(Z.length>0)yield Z}class a9{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 J={event:this.event,data:this.data.join(`
|
|
168
|
+
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],J}if(this.chunks.push($),$.startsWith(":"))return null;let[Z,X,z]=BB($,":");if(z.startsWith(" "))z=z.substring(1);if(Z==="event")this.event=z;else if(Z==="data")this.data.push(z);return null}}function BB($,Z){let X=$.indexOf(Z);if(X!==-1)return[$.substring(0,X),Z,$.substring(X+Z.length)];return[$,"",""]}var c6,K0;var m4=j(()=>{j0();W0();v4();B$();P2();W0();K0=class K0{constructor($,Z,X){this.iterator=$,c6.set(this,void 0),this.controller=Z,O(this,c6,X,"f")}static fromSSEResponse($,Z,X){let z=!1,J=X?q0(X):console;async function*q(){if(z)throw new A("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");z=!0;let Q=!1;try{for await(let Y of VB($,Z)){if(Y.event==="completion")try{yield JSON.parse(Y.data)}catch(G){throw J.error("Could not parse message into JSON:",Y.data),J.error("From chunk:",Y.raw),G}if(Y.event==="message_start"||Y.event==="message_delta"||Y.event==="message_stop"||Y.event==="content_block_start"||Y.event==="content_block_delta"||Y.event==="content_block_stop")try{yield JSON.parse(Y.data)}catch(G){throw J.error("Could not parse message into JSON:",Y.data),J.error("From chunk:",Y.raw),G}if(Y.event==="ping")continue;if(Y.event==="error")throw new t(void 0,w2(Y.data)??Y.data,void 0,$.headers)}Q=!0}catch(Y){if(b0(Y))return;throw Y}finally{if(!Q)Z.abort()}}return new K0(q,Z,X)}static fromReadableStream($,Z,X){let z=!1;async function*J(){let Q=new a0,Y=u6($);for await(let G of Y)for(let U of Q.decode(G))yield U;for(let G of Q.flush())yield G}async function*q(){if(z)throw new A("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");z=!0;let Q=!1;try{for await(let Y of J()){if(Q)continue;if(Y)yield JSON.parse(Y)}Q=!0}catch(Y){if(b0(Y))return;throw Y}finally{if(!Q)Z.abort()}}return new K0(q,Z,X)}[(c6=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let $=[],Z=[],X=this.iterator(),z=(J)=>{return{next:()=>{if(J.length===0){let q=X.next();$.push(q),Z.push(q)}return J.shift()}}};return[new K0(()=>z($),this.controller,K(this,c6,"f")),new K0(()=>z(Z),this.controller,K(this,c6,"f"))]}toReadableStream(){let $=this,Z;return g4({async start(){Z=$[Symbol.asyncIterator]()},async pull(X){try{let{value:z,done:J}=await Z.next();if(J)return X.close();let q=m6(JSON.stringify(z)+`
|
|
169
|
+
`);X.enqueue(q)}catch(z){X.error(z)}},async cancel(){await Z.return?.()}})}}});async function S2($,Z){let{response:X,requestLogID:z,retryOfRequestLogID:J,startTime:q}=Z,Q=await(async()=>{if(Z.options.stream){if(q0($).debug("response",X.status,X.url,X.headers,X.body),Z.options.__streamClass)return Z.options.__streamClass.fromSSEResponse(X,Z.controller);return K0.fromSSEResponse(X,Z.controller)}if(X.status===204)return null;if(Z.options.__binaryResponse)return X;let G=X.headers.get("content-type")?.split(";")[0]?.trim();if(G?.includes("application/json")||G?.endsWith("+json")){if(X.headers.get("content-length")==="0")return;let H=await X.json();return d4(H,X)}return await X.text()})();return q0($).debug(`[${z}] response parsed`,x0({retryOfRequestLogID:J,url:X.url,status:X.status,body:Q,durationMs:Date.now()-q})),Q}function d4($,Z){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:Z.headers.get("request-id"),enumerable:!1})}var c4=j(()=>{m4();P2()});var p6,o0;var _2=j(()=>{j0();c4();o0=class o0 extends Promise{constructor($,Z,X=S2){super((z)=>{z(null)});this.responsePromise=Z,this.parseResponse=X,p6.set(this,void 0),O(this,p6,$,"f")}_thenUnwrap($){return new o0(K(this,p6,"f"),this.responsePromise,async(Z,X)=>d4($(await this.parseResponse(Z,X),X),X.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(K(this,p6,"f"),$));return this.parsedPromise}then($,Z){return this.parse().then($,Z)}catch($){return this.parse().catch($)}finally($){return this.parse().finally($)}};p6=new WeakMap});var C2,p4,l6,w0,i6;var P0=j(()=>{j0();W0();c4();_2();B$();p4=class p4{constructor($,Z,X,z){C2.set(this,void 0),O(this,C2,$,"f"),this.options=z,this.response=Z,this.body=X}hasNextPage(){if(!this.getPaginatedItems().length)return!1;return this.nextPageRequestOptions()!=null}async getNextPage(){let $=this.nextPageRequestOptions();if(!$)throw new A("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");return await K(this,C2,"f").requestAPIList(this.constructor,$)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(C2=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let Z of $.getPaginatedItems())yield Z}};l6=class l6 extends o0{constructor($,Z,X){super($,Z,async(z,J)=>new X(z,J.response,await S2(z,J),J.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let Z of $)yield Z}};w0=class w0 extends p4{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()}nextPageRequestOptions(){if(this.options.query?.before_id){let Z=this.first_id;if(!Z)return null;return{...this.options,query:{...O2(this.options.query),before_id:Z}}}let $=this.last_id;if(!$)return null;return{...this.options,query:{...O2(this.options.query),after_id:$}}}};i6=class i6 extends p4{constructor($,Z,X,z){super($,Z,X,z);this.data=X.data||[],this.has_more=X.has_more||!1,this.next_page=X.next_page||null}getPaginatedItems(){return this.data??[]}hasNextPage(){if(this.has_more===!1)return!1;return super.hasNextPage()}nextPageRequestOptions(){let $=this.next_page;if(!$)return null;return{...this.options,query:{...O2(this.options.query),page:$}}}}});function D$($,Z,X){return i4(),new File($,Z??"unknown_file",X)}function n6($,Z){let X=typeof $==="object"&&$!==null&&(("name"in $)&&$.name&&String($.name)||("url"in $)&&$.url&&String($.url)||("filename"in $)&&$.filename&&String($.filename)||("path"in $)&&$.path&&String($.path))||"";return Z?X.split(/[\\/]/).pop()||void 0:X}function NB($){let Z=typeof $==="function"?$:$.fetch,X=o9.get(Z);if(X)return X;let z=(async()=>{try{let J="Response"in Z?Z.Response:(await Z("data:,")).constructor,q=new FormData;if(q.toString()===await new J(q).text())return!1;return!0}catch{return!0}})();return o9.set(Z,z),z}var i4=()=>{if(typeof File>"u"){let{process:$}=globalThis,Z=typeof $?.versions?.node==="string"&&parseInt($.versions.node.split("."))<20;throw Error("`File` is not defined as a global, which is required for file uploads."+(Z?" Update to Node 20 LTS or newer, or set `globalThis.File` to `import('node:buffer').File`.":""))}},n4=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function",r$=async($,Z,X=!0)=>{return{...$,body:await IB($.body,Z,X)}},o9,IB=async($,Z,X=!0)=>{if(!await NB(Z))throw TypeError("The provided fetch function does not support file uploads with the current global FormData class.");let z=new FormData;return await Promise.all(Object.entries($||{}).map(([J,q])=>l4(z,J,q,X))),z},LB=($)=>$ instanceof Blob&&("name"in $),l4=async($,Z,X,z)=>{if(X===void 0)return;if(X==null)throw TypeError(`Received null for "${Z}"; to pass null in FormData, you must use the string 'null'`);if(typeof X==="string"||typeof X==="number"||typeof X==="boolean")$.append(Z,String(X));else if(X instanceof Response){let J={},q=X.headers.get("Content-Type");if(q)J={type:q};$.append(Z,D$([await X.blob()],n6(X,z),J))}else if(n4(X))$.append(Z,D$([await new Response(F2(X)).blob()],n6(X,z)));else if(LB(X))$.append(Z,D$([X],n6(X,z),{type:X.type}));else if(Array.isArray(X))await Promise.all(X.map((J)=>l4($,Z+"[]",J,z)));else if(typeof X==="object")await Promise.all(Object.entries(X).map(([J,q])=>l4($,`${Z}[${J}]`,q,z)));else throw TypeError(`Invalid value given to form, expected a string, number, boolean, object, Array, File or Blob but got ${X} instead`)};var a$=j(()=>{o9=new WeakMap});async function s6($,Z,X){if(i4(),$=await $,Z||(Z=n6($,!0)),TB($)){if($ instanceof File&&Z==null&&X==null)return $;return D$([await $.arrayBuffer()],Z??$.name,{type:$.type,lastModified:$.lastModified,...X})}if(MB($)){let J=await $.blob();return Z||(Z=new URL($.url).pathname.split(/[\\/]/).pop()),D$(await s4(J),Z,X)}let z=await s4($);if(!X?.type){let J=z.find((q)=>typeof q==="object"&&("type"in q)&&q.type);if(typeof J==="string")X={...X,type:J}}return D$(z,Z,X)}async function s4($){let Z=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)Z.push($);else if(t9($))Z.push($ instanceof Blob?$:await $.arrayBuffer());else if(n4($))for await(let X of $)Z.push(...await s4(X));else{let X=$?.constructor?.name;throw Error(`Unexpected data type: ${typeof $}${X?`; constructor: ${X}`:""}${OB($)}`)}return Z}function OB($){if(typeof $!=="object"||$===null)return"";return`; props: [${Object.getOwnPropertyNames($).map((X)=>`"${X}"`).join(", ")}]`}var t9=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function",TB=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&t9($),MB=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function";var e9=j(()=>{a$();a$()});var r4=j(()=>{e9()});var $J=()=>{};class i{constructor($){this._client=$}}function*FB($){if(!$)return;if(ZJ in $){let{values:z,nulls:J}=$;yield*z.entries();for(let q of J)yield[q,null];return}let Z=!1,X;if($ instanceof Headers)X=$.entries();else if(f4($))X=$;else Z=!0,X=Object.entries($??{});for(let z of X){let J=z[0];if(typeof J!=="string")throw TypeError("expected header name to be a string");let q=f4(z[1])?z[1]:[z[1]],Q=!1;for(let Y of q){if(Y===void 0)continue;if(Z&&!Q)Q=!0,yield[J,null];yield[J,Y]}}}var ZJ,E=($)=>{let Z=new Headers,X=new Set;for(let z of $){let J=new Set;for(let[q,Q]of FB(z)){let Y=q.toLowerCase();if(!J.has(Y))Z.delete(q),J.add(Y);if(Q===null)Z.delete(q),X.add(Y);else Z.append(q,Q),X.delete(Y)}}return{[ZJ]:!0,values:Z,nulls:X}};var B0=j(()=>{B$();ZJ=Symbol.for("brand.privateNullableHeaders")});function E2($){return typeof $==="object"&&$!==null&&r6 in $}function a4($,Z){let X=new Set;if($){for(let z of $)if(E2(z))X.add(z[r6])}if(Z)for(let z of Z){if(E2(z))X.add(z[r6]);if(Array.isArray(z.content)){for(let J of z.content)if(E2(J))X.add(J[r6])}}return Array.from(X)}function j2($,Z){let X=a4($,Z);if(X.length===0)return{};return{"x-stainless-helper":X.join(", ")}}function XJ($){if(E2($))return{"x-stainless-helper":$[r6]};return{}}var r6;var a6=j(()=>{r6=Symbol("anthropic.sdk.stainlessHelper")});function JJ($){return $.replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/g,encodeURIComponent)}var zJ,RB=($=JJ)=>function(X,...z){if(X.length===1)return X[0];let J=!1,q=[],Q=X.reduce((W,V,H)=>{if(/[?#]/.test(V))J=!0;let D=z[H],M=(J?encodeURIComponent:$)(""+D);if(H!==z.length&&(D==null||typeof D==="object"&&D.toString===Object.getPrototypeOf(Object.getPrototypeOf(D.hasOwnProperty??zJ)??zJ)?.toString))M=D+"",q.push({start:W.length+V.length,length:M.length,error:`Value of type ${Object.prototype.toString.call(D).slice(8,-1)} is not a valid path parameter`});return W+V+(H===z.length?"":M)},""),Y=Q.split(/[?#]/,1)[0],G=/(?<=^|\/)(?:\.|%2e){1,2}(?=\/|$)/gi,U;while((U=G.exec(Y))!==null)q.push({start:U.index,length:U[0].length,error:`Value "${U[0]}" can't be safely passed as a path parameter`});if(q.sort((W,V)=>W.start-V.start),q.length>0){let W=0,V=q.reduce((H,D)=>{let M=" ".repeat(D.start-W),B="^".repeat(D.length);return W=D.start+D.length,H+M+B},"");throw new A(`Path parameters result in path with invalid segments:
|
|
170
|
+
${q.map((H)=>H.error).join(`
|
|
171
171
|
`)}
|
|
172
172
|
${Q}
|
|
173
|
-
${H}`)}return Q},c;var o0=j(()=>{U0();$J=Object.freeze(Object.create(null)),c=MB(ZJ)});var a6;var a5=j(()=>{A0();K0();r6();r$();o0();a6=class a6 extends l{list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/files",O0,{query:z,...Z,headers:E([{"anthropic-beta":[...X??[],"files-api-2025-04-14"].toString()},Z?.headers])})}delete($,Z={},X){let{betas:z}=Z??{};return this._client.delete(c`/v1/files/${$}`,{...X,headers:E([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString()},X?.headers])})}download($,Z={},X){let{betas:z}=Z??{};return this._client.get(c`/v1/files/${$}/content`,{...X,headers:E([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString(),Accept:"application/binary"},X?.headers]),__binaryResponse:!0})}retrieveMetadata($,Z={},X){let{betas:z}=Z??{};return this._client.get(c`/v1/files/${$}`,{...X,headers:E([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString()},X?.headers])})}upload($,Z){let{betas:X,...z}=$;return this._client.post("/v1/files",s$({body:z,...Z,headers:E([{"anthropic-beta":[...X??[],"files-api-2025-04-14"].toString()},e9(z.file),Z?.headers])},this._client))}}});var o6;var o5=j(()=>{A0();K0();o0();o6=class o6 extends l{retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(c`/v1/models/${$}?beta=true`,{...X,headers:E([{...z?.toString()!=null?{"anthropic-beta":z?.toString()}:void 0},X?.headers])})}list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/models?beta=true",O0,{query:z,...Z,headers:E([{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0},Z?.headers])})}}});var a$=j(()=>{U0()});var j2;var t5=j(()=>{j2={"claude-opus-4-20250514":8192,"claude-opus-4-0":8192,"claude-4-opus-20250514":8192,"anthropic.claude-opus-4-20250514-v1:0":8192,"claude-opus-4@20250514":8192,"claude-opus-4-1-20250805":8192,"anthropic.claude-opus-4-1-20250805-v1:0":8192,"claude-opus-4-1@20250805":8192}});function XJ($){return $?.output_format??$?.output_config?.format}function e5($,Z,X){let z=XJ(Z);if(!Z||!("parse"in(z??{})))return{...$,content:$.content.map((J)=>{if(J.type==="text"){let q=Object.defineProperty({...J},"parsed_output",{value:null,enumerable:!1});return Object.defineProperty(q,"parsed",{get(){return X.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),null},enumerable:!1})}return J}),parsed_output:null};return $4($,Z,X)}function $4($,Z,X){let z=null,J=$.content.map((q)=>{if(q.type==="text"){let Q=FB(Z,q.text);if(z===null)z=Q;let Y=Object.defineProperty({...q},"parsed_output",{value:Q,enumerable:!1});return Object.defineProperty(Y,"parsed",{get(){return X.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),Q},enumerable:!1})}return q});return{...$,content:J,parsed_output:z}}function FB($,Z){let X=XJ($);if(X?.type!=="json_schema")return null;try{if("parse"in X)return X.parse(Z);return JSON.parse(Z)}catch(z){throw new A(`Failed to parse structured output: ${z}`)}}var Z4=j(()=>{U0()});var RB=($)=>{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 Y="",G=!1;z=$[++Z];while(z!=='"'){if(Z===$.length){G=!0;break}if(z==="\\"){if(Z++,Z===$.length){G=!0;break}Y+=z+$[Z],z=$[++Z]}else Y+=z,z=$[++Z]}if(z=$[++Z],!G)X.push({type:"string",value:Y});continue}if(z&&/\s/.test(z)){Z++;continue}let q=/[0-9]/;if(z&&q.test(z)||z==="-"||z==="."){let Y="";if(z==="-")Y+=z,z=$[++Z];while(z&&q.test(z)||z===".")Y+=z,z=$[++Z];X.push({type:"number",value:Y});continue}let Q=/[a-z]/i;if(z&&Q.test(z)){let Y="";while(z&&Q.test(z)){if(Z===$.length)break;Y+=z,z=$[++Z]}if(Y=="true"||Y=="false"||Y==="null")X.push({type:"name",value:Y});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 $},AB=($)=>{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 $},PB=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},b2=($)=>JSON.parse(PB(AB(o$(RB($)))));var X4=()=>{};var z4=j(()=>{u5()});function QJ($){return $.type==="tool_use"||$.type==="server_tool_use"||$.type==="mcp_tool_use"}function YJ($){}var I0,t0,t$,t6,x2,e6,$8,k2,Z8,k0,X8,f2,y2,D$,g2,h2,z8,J4,zJ,v2,q4,Q4,Y4,JJ,qJ="__json_buf",J8;var GJ=j(()=>{j0();X4();a$();z4();Z4();J8=class J8{constructor($,Z){I0.add(this),this.messages=[],this.receivedMessages=[],t0.set(this,void 0),t$.set(this,null),this.controller=new AbortController,t6.set(this,void 0),x2.set(this,()=>{}),e6.set(this,()=>{}),$8.set(this,void 0),k2.set(this,()=>{}),Z8.set(this,()=>{}),k0.set(this,{}),X8.set(this,!1),f2.set(this,!1),y2.set(this,!1),D$.set(this,!1),g2.set(this,void 0),h2.set(this,void 0),z8.set(this,void 0),v2.set(this,(X)=>{if(O(this,f2,!0,"f"),b0(X))X=new q0;if(X instanceof q0)return O(this,y2,!0,"f"),this._emit("abort",X);if(X instanceof A)return this._emit("error",X);if(X instanceof Error){let z=new A(X.message);return z.cause=X,this._emit("error",z)}return this._emit("error",new A(String(X)))}),O(this,t6,new Promise((X,z)=>{O(this,x2,X,"f"),O(this,e6,z,"f")}),"f"),O(this,$8,new Promise((X,z)=>{O(this,k2,X,"f"),O(this,Z8,z,"f")}),"f"),K(this,t6,"f").catch(()=>{}),K(this,$8,"f").catch(()=>{}),O(this,t$,$,"f"),O(this,z8,Z?.logger??console,"f")}get response(){return K(this,g2,"f")}get request_id(){return K(this,h2,"f")}async withResponse(){O(this,D$,!0,"f");let $=await K(this,t6,"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 J8(null);return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X,{logger:z}={}){let J=new J8(Z,{logger:z});for(let q of Z.messages)J._addMessageParam(q);return O(J,t$,{...Z,stream:!0},"f"),J._run(()=>J._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),J}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},K(this,v2,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal,J;if(z){if(z.aborted)this.controller.abort();J=this.controller.abort.bind(this.controller),z.addEventListener("abort",J)}try{K(this,I0,"m",q4).call(this);let{response:q,data:Q}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let Y of Q)K(this,I0,"m",Q4).call(this,Y);if(Q.controller.signal?.aborted)throw new q0;K(this,I0,"m",Y4).call(this)}finally{if(z&&J)z.removeEventListener("abort",J)}}_connected($){if(this.ended)return;O(this,g2,$,"f"),O(this,h2,$?.headers.get("request-id"),"f"),K(this,x2,"f").call(this,$),this._emit("connect")}get ended(){return K(this,X8,"f")}get errored(){return K(this,f2,"f")}get aborted(){return K(this,y2,"f")}abort(){this.controller.abort()}on($,Z){return(K(this,k0,"f")[$]||(K(this,k0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=K(this,k0,"f")[$];if(!X)return this;let z=X.findIndex((J)=>J.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(K(this,k0,"f")[$]||(K(this,k0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(O(this,D$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){O(this,D$,!0,"f"),await K(this,$8,"f")}get currentMessage(){return K(this,t0,"f")}async finalMessage(){return await this.done(),K(this,I0,"m",J4).call(this)}async finalText(){return await this.done(),K(this,I0,"m",zJ).call(this)}_emit($,...Z){if(K(this,X8,"f"))return;if($==="end")O(this,X8,!0,"f"),K(this,k2,"f").call(this);let X=K(this,k0,"f")[$];if(X)K(this,k0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!K(this,D$,"f")&&!X?.length)Promise.reject(z);K(this,e6,"f").call(this,z),K(this,Z8,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!K(this,D$,"f")&&!X?.length)Promise.reject(z);K(this,e6,"f").call(this,z),K(this,Z8,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,I0,"m",J4).call(this))}async _fromReadableStream($,Z){let X=Z?.signal,z;if(X){if(X.aborted)this.controller.abort();z=this.controller.abort.bind(this.controller),X.addEventListener("abort",z)}try{K(this,I0,"m",q4).call(this),this._connected(null);let J=H0.fromReadableStream($,this.controller);for await(let q of J)K(this,I0,"m",Q4).call(this,q);if(J.controller.signal?.aborted)throw new q0;K(this,I0,"m",Y4).call(this)}finally{if(X&&z)X.removeEventListener("abort",z)}}[(t0=new WeakMap,t$=new WeakMap,t6=new WeakMap,x2=new WeakMap,e6=new WeakMap,$8=new WeakMap,k2=new WeakMap,Z8=new WeakMap,k0=new WeakMap,X8=new WeakMap,f2=new WeakMap,y2=new WeakMap,D$=new WeakMap,g2=new WeakMap,h2=new WeakMap,z8=new WeakMap,v2=new WeakMap,I0=new WeakSet,J4=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},zJ=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(" ")},q4=function(){if(this.ended)return;O(this,t0,void 0,"f")},Q4=function(Z){if(this.ended)return;let X=K(this,I0,"m",JJ).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(QJ(z)&&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}case"compaction_delta":{if(z.type==="compaction"&&z.content)this._emit("compaction",z.content);break}default:YJ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(e5(X,K(this,t$,"f"),{logger:K(this,z8,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{O(this,t0,X,"f");break}case"content_block_start":case"message_delta":break}},Y4=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=K(this,t0,"f");if(!Z)throw new A("request ended without sending any chunks");return O(this,t0,void 0,"f"),e5(Z,K(this,t$,"f"),{logger:K(this,z8,"f")})},JJ=function(Z){let X=K(this,t0,"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":if(X.container=Z.delta.container,X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,X.context_management=Z.context_management,Z.usage.input_tokens!=null)X.usage.input_tokens=Z.usage.input_tokens;if(Z.usage.cache_creation_input_tokens!=null)X.usage.cache_creation_input_tokens=Z.usage.cache_creation_input_tokens;if(Z.usage.cache_read_input_tokens!=null)X.usage.cache_read_input_tokens=Z.usage.cache_read_input_tokens;if(Z.usage.server_tool_use!=null)X.usage.server_tool_use=Z.usage.server_tool_use;if(Z.usage.iterations!=null)X.usage.iterations=Z.usage.iterations;return 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")X.content[Z.index]={...z,text:(z.text||"")+Z.delta.text};break}case"citations_delta":{if(z?.type==="text")X.content[Z.index]={...z,citations:[...z.citations??[],Z.delta.citation]};break}case"input_json_delta":{if(z&&QJ(z)){let J=z[qJ]||"";J+=Z.delta.partial_json;let q={...z};if(Object.defineProperty(q,qJ,{value:J,enumerable:!1,writable:!0}),J)try{q.input=b2(J)}catch(Q){let Y=new A(`Unable to parse tool parameter JSON from model. Please retry your request or adjust your prompt. Error: ${Q}. JSON: ${J}`);K(this,v2,"f").call(this,Y)}X.content[Z.index]=q}break}case"thinking_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,thinking:z.thinking+Z.delta.thinking};break}case"signature_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,signature:Z.delta.signature};break}case"compaction_delta":{if(z?.type==="compaction")X.content[Z.index]={...z,content:(z.content||"")+Z.delta.content};break}default:YJ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let J=Z.shift();if(J)J.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 J of Z)J.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let J of Z)J.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((J,q)=>Z.push({resolve:J,reject:q})).then((J)=>J?{value:J,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 H0(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var e$;var u2=j(()=>{e$=class e$ extends Error{constructor($){let Z=typeof $==="string"?$:$.map((X)=>{if(X.type==="text")return X.text;return`[${X.type}]`}).join(" ");super(Z);this.name="ToolError",this.content=$}}});var UJ=1e5,WJ=`You have been working on the task described above but have not yet completed it. Write a continuation summary that will allow you (or another instance of yourself) to resume work efficiently in a future context window where the conversation history will be replaced with this summary. Your summary should be structured, concise, and actionable. Include:
|
|
173
|
+
${V}`)}return Q},p;var t0=j(()=>{W0();zJ=Object.freeze(Object.create(null)),p=RB(JJ)});var o6;var o4=j(()=>{P0();B0();a6();a$();t0();o6=class o6 extends i{list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/files",w0,{query:z,...Z,headers:E([{"anthropic-beta":[...X??[],"files-api-2025-04-14"].toString()},Z?.headers])})}delete($,Z={},X){let{betas:z}=Z??{};return this._client.delete(p`/v1/files/${$}`,{...X,headers:E([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString()},X?.headers])})}download($,Z={},X){let{betas:z}=Z??{};return this._client.get(p`/v1/files/${$}/content`,{...X,headers:E([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString(),Accept:"application/binary"},X?.headers]),__binaryResponse:!0})}retrieveMetadata($,Z={},X){let{betas:z}=Z??{};return this._client.get(p`/v1/files/${$}`,{...X,headers:E([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString()},X?.headers])})}upload($,Z){let{betas:X,...z}=$;return this._client.post("/v1/files",r$({body:z,...Z,headers:E([{"anthropic-beta":[...X??[],"files-api-2025-04-14"].toString()},XJ(z.file),Z?.headers])},this._client))}}});var t6;var t4=j(()=>{P0();B0();t0();t6=class t6 extends i{retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(p`/v1/models/${$}?beta=true`,{...X,headers:E([{...z?.toString()!=null?{"anthropic-beta":z?.toString()}:void 0},X?.headers])})}list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/models?beta=true",w0,{query:z,...Z,headers:E([{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0},Z?.headers])})}}});var o$=j(()=>{W0()});var b2;var e4=j(()=>{b2={"claude-opus-4-20250514":8192,"claude-opus-4-0":8192,"claude-4-opus-20250514":8192,"anthropic.claude-opus-4-20250514-v1:0":8192,"claude-opus-4@20250514":8192,"claude-opus-4-1-20250805":8192,"anthropic.claude-opus-4-1-20250805-v1:0":8192,"claude-opus-4-1@20250805":8192}});function qJ($){return $?.output_format??$?.output_config?.format}function $5($,Z,X){let z=qJ(Z);if(!Z||!("parse"in(z??{})))return{...$,content:$.content.map((J)=>{if(J.type==="text"){let q=Object.defineProperty({...J},"parsed_output",{value:null,enumerable:!1});return Object.defineProperty(q,"parsed",{get(){return X.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),null},enumerable:!1})}return J}),parsed_output:null};return Z5($,Z,X)}function Z5($,Z,X){let z=null,J=$.content.map((q)=>{if(q.type==="text"){let Q=SB(Z,q.text);if(z===null)z=Q;let Y=Object.defineProperty({...q},"parsed_output",{value:Q,enumerable:!1});return Object.defineProperty(Y,"parsed",{get(){return X.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),Q},enumerable:!1})}return q});return{...$,content:J,parsed_output:z}}function SB($,Z){let X=qJ($);if(X?.type!=="json_schema")return null;try{if("parse"in X)return X.parse(Z);return JSON.parse(Z)}catch(z){throw new A(`Failed to parse structured output: ${z}`)}}var X5=j(()=>{W0()});var _B=($)=>{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 Y="",G=!1;z=$[++Z];while(z!=='"'){if(Z===$.length){G=!0;break}if(z==="\\"){if(Z++,Z===$.length){G=!0;break}Y+=z+$[Z],z=$[++Z]}else Y+=z,z=$[++Z]}if(z=$[++Z],!G)X.push({type:"string",value:Y});continue}if(z&&/\s/.test(z)){Z++;continue}let q=/[0-9]/;if(z&&q.test(z)||z==="-"||z==="."){let Y="";if(z==="-")Y+=z,z=$[++Z];while(z&&q.test(z)||z===".")Y+=z,z=$[++Z];X.push({type:"number",value:Y});continue}let Q=/[a-z]/i;if(z&&Q.test(z)){let Y="";while(z&&Q.test(z)){if(Z===$.length)break;Y+=z,z=$[++Z]}if(Y=="true"||Y=="false"||Y==="null")X.push({type:"name",value:Y});else{Z++;continue}continue}Z++}return X},t$=($)=>{if($.length===0)return $;let Z=$[$.length-1];switch(Z.type){case"separator":return $=$.slice(0,$.length-1),t$($);break;case"number":let X=Z.value[Z.value.length-1];if(X==="."||X==="-")return $=$.slice(0,$.length-1),t$($);case"string":let z=$[$.length-2];if(z?.type==="delimiter")return $=$.slice(0,$.length-1),t$($);else if(z?.type==="brace"&&z.value==="{")return $=$.slice(0,$.length-1),t$($);break;case"delimiter":return $=$.slice(0,$.length-1),t$($);break}return $},CB=($)=>{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 $},EB=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},x2=($)=>JSON.parse(EB(CB(t$(_B($)))));var z5=()=>{};var J5=j(()=>{m4()});function UJ($){return $.type==="tool_use"||$.type==="server_tool_use"||$.type==="mcp_tool_use"}function WJ($){}var L0,e0,e$,e6,k2,$8,Z8,f2,X8,k0,z8,y2,g2,N$,h2,v2,J8,q5,QJ,u2,Q5,Y5,G5,YJ,GJ="__json_buf",q8;var HJ=j(()=>{j0();z5();o$();J5();X5();q8=class q8{constructor($,Z){L0.add(this),this.messages=[],this.receivedMessages=[],e0.set(this,void 0),e$.set(this,null),this.controller=new AbortController,e6.set(this,void 0),k2.set(this,()=>{}),$8.set(this,()=>{}),Z8.set(this,void 0),f2.set(this,()=>{}),X8.set(this,()=>{}),k0.set(this,{}),z8.set(this,!1),y2.set(this,!1),g2.set(this,!1),N$.set(this,!1),h2.set(this,void 0),v2.set(this,void 0),J8.set(this,void 0),u2.set(this,(X)=>{if(O(this,y2,!0,"f"),b0(X))X=new Q0;if(X instanceof Q0)return O(this,g2,!0,"f"),this._emit("abort",X);if(X instanceof A)return this._emit("error",X);if(X instanceof Error){let z=new A(X.message);return z.cause=X,this._emit("error",z)}return this._emit("error",new A(String(X)))}),O(this,e6,new Promise((X,z)=>{O(this,k2,X,"f"),O(this,$8,z,"f")}),"f"),O(this,Z8,new Promise((X,z)=>{O(this,f2,X,"f"),O(this,X8,z,"f")}),"f"),K(this,e6,"f").catch(()=>{}),K(this,Z8,"f").catch(()=>{}),O(this,e$,$,"f"),O(this,J8,Z?.logger??console,"f")}get response(){return K(this,h2,"f")}get request_id(){return K(this,v2,"f")}async withResponse(){O(this,N$,!0,"f");let $=await K(this,e6,"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 q8(null);return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X,{logger:z}={}){let J=new q8(Z,{logger:z});for(let q of Z.messages)J._addMessageParam(q);return O(J,e$,{...Z,stream:!0},"f"),J._run(()=>J._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),J}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},K(this,u2,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal,J;if(z){if(z.aborted)this.controller.abort();J=this.controller.abort.bind(this.controller),z.addEventListener("abort",J)}try{K(this,L0,"m",Q5).call(this);let{response:q,data:Q}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let Y of Q)K(this,L0,"m",Y5).call(this,Y);if(Q.controller.signal?.aborted)throw new Q0;K(this,L0,"m",G5).call(this)}finally{if(z&&J)z.removeEventListener("abort",J)}}_connected($){if(this.ended)return;O(this,h2,$,"f"),O(this,v2,$?.headers.get("request-id"),"f"),K(this,k2,"f").call(this,$),this._emit("connect")}get ended(){return K(this,z8,"f")}get errored(){return K(this,y2,"f")}get aborted(){return K(this,g2,"f")}abort(){this.controller.abort()}on($,Z){return(K(this,k0,"f")[$]||(K(this,k0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=K(this,k0,"f")[$];if(!X)return this;let z=X.findIndex((J)=>J.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(K(this,k0,"f")[$]||(K(this,k0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(O(this,N$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){O(this,N$,!0,"f"),await K(this,Z8,"f")}get currentMessage(){return K(this,e0,"f")}async finalMessage(){return await this.done(),K(this,L0,"m",q5).call(this)}async finalText(){return await this.done(),K(this,L0,"m",QJ).call(this)}_emit($,...Z){if(K(this,z8,"f"))return;if($==="end")O(this,z8,!0,"f"),K(this,f2,"f").call(this);let X=K(this,k0,"f")[$];if(X)K(this,k0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!K(this,N$,"f")&&!X?.length)Promise.reject(z);K(this,$8,"f").call(this,z),K(this,X8,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!K(this,N$,"f")&&!X?.length)Promise.reject(z);K(this,$8,"f").call(this,z),K(this,X8,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,L0,"m",q5).call(this))}async _fromReadableStream($,Z){let X=Z?.signal,z;if(X){if(X.aborted)this.controller.abort();z=this.controller.abort.bind(this.controller),X.addEventListener("abort",z)}try{K(this,L0,"m",Q5).call(this),this._connected(null);let J=K0.fromReadableStream($,this.controller);for await(let q of J)K(this,L0,"m",Y5).call(this,q);if(J.controller.signal?.aborted)throw new Q0;K(this,L0,"m",G5).call(this)}finally{if(X&&z)X.removeEventListener("abort",z)}}[(e0=new WeakMap,e$=new WeakMap,e6=new WeakMap,k2=new WeakMap,$8=new WeakMap,Z8=new WeakMap,f2=new WeakMap,X8=new WeakMap,k0=new WeakMap,z8=new WeakMap,y2=new WeakMap,g2=new WeakMap,N$=new WeakMap,h2=new WeakMap,v2=new WeakMap,J8=new WeakMap,u2=new WeakMap,L0=new WeakSet,q5=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},QJ=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(" ")},Q5=function(){if(this.ended)return;O(this,e0,void 0,"f")},Y5=function(Z){if(this.ended)return;let X=K(this,L0,"m",YJ).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(UJ(z)&&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}case"compaction_delta":{if(z.type==="compaction"&&z.content)this._emit("compaction",z.content);break}default:WJ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage($5(X,K(this,e$,"f"),{logger:K(this,J8,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{O(this,e0,X,"f");break}case"content_block_start":case"message_delta":break}},G5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=K(this,e0,"f");if(!Z)throw new A("request ended without sending any chunks");return O(this,e0,void 0,"f"),$5(Z,K(this,e$,"f"),{logger:K(this,J8,"f")})},YJ=function(Z){let X=K(this,e0,"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":if(X.container=Z.delta.container,X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,X.context_management=Z.context_management,Z.usage.input_tokens!=null)X.usage.input_tokens=Z.usage.input_tokens;if(Z.usage.cache_creation_input_tokens!=null)X.usage.cache_creation_input_tokens=Z.usage.cache_creation_input_tokens;if(Z.usage.cache_read_input_tokens!=null)X.usage.cache_read_input_tokens=Z.usage.cache_read_input_tokens;if(Z.usage.server_tool_use!=null)X.usage.server_tool_use=Z.usage.server_tool_use;if(Z.usage.iterations!=null)X.usage.iterations=Z.usage.iterations;return 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")X.content[Z.index]={...z,text:(z.text||"")+Z.delta.text};break}case"citations_delta":{if(z?.type==="text")X.content[Z.index]={...z,citations:[...z.citations??[],Z.delta.citation]};break}case"input_json_delta":{if(z&&UJ(z)){let J=z[GJ]||"";J+=Z.delta.partial_json;let q={...z};if(Object.defineProperty(q,GJ,{value:J,enumerable:!1,writable:!0}),J)try{q.input=x2(J)}catch(Q){let Y=new A(`Unable to parse tool parameter JSON from model. Please retry your request or adjust your prompt. Error: ${Q}. JSON: ${J}`);K(this,u2,"f").call(this,Y)}X.content[Z.index]=q}break}case"thinking_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,thinking:z.thinking+Z.delta.thinking};break}case"signature_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,signature:Z.delta.signature};break}case"compaction_delta":{if(z?.type==="compaction")X.content[Z.index]={...z,content:(z.content||"")+Z.delta.content};break}default:WJ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let J=Z.shift();if(J)J.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 J of Z)J.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let J of Z)J.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((J,q)=>Z.push({resolve:J,reject:q})).then((J)=>J?{value:J,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 K0(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var $6;var m2=j(()=>{$6=class $6 extends Error{constructor($){let Z=typeof $==="string"?$:$.map((X)=>{if(X.type==="text")return X.text;return`[${X.type}]`}).join(" ");super(Z);this.name="ToolError",this.content=$}}});var VJ=1e5,KJ=`You have been working on the task described above but have not yet completed it. Write a continuation summary that will allow you (or another instance of yourself) to resume work efficiently in a future context window where the conversation history will be replaced with this summary. Your summary should be structured, concise, and actionable. Include:
|
|
174
174
|
1. Task Overview
|
|
175
175
|
The user's core request and success criteria
|
|
176
176
|
Any clarifications or constraints they specified
|
|
@@ -192,64 +192,64 @@ User preferences or style requirements
|
|
|
192
192
|
Domain-specific details that aren't obvious
|
|
193
193
|
Any promises made to the user
|
|
194
194
|
Be concise but complete—err on the side of including information that would prevent duplicate work or repeated mistakes. Write in a way that enables immediate resumption of the task.
|
|
195
|
-
Wrap your summary in <summary></summary> tags.`;function
|
|
196
|
-
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if(J.model in CB&&J.thinking&&J.thinking.type==="enabled")console.warn(`Using Claude with ${J.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let q=this._client._options.timeout;if(!J.stream&&q==null){let Y=j2[J.model]??void 0;q=this._client.calculateNonstreamingTimeout(J.max_tokens,Y)}let Q=E2(J.tools,J.messages);return this._client.post("/v1/messages?beta=true",{body:J,timeout:q??600000,...Z,headers:E([{...z?.toString()!=null?{"anthropic-beta":z?.toString()}:void 0},Q,Z?.headers]),stream:X.stream??!1})}parse($,Z){return Z={...Z,headers:E([{"anthropic-beta":[...$.betas??[],"structured-outputs-2025-12-15"].toString()},Z?.headers])},this.create($,Z).then((X)=>$4(X,$,{logger:this._client.logger??console}))}stream($,Z){return J8.createMessage(this,$,Z)}countTokens($,Z){let X=BJ($),{betas:z,...J}=X;return this._client.post("/v1/messages/count_tokens?beta=true",{body:J,...Z,headers:E([{"anthropic-beta":[...z??[],"token-counting-2024-11-01"].toString()},Z?.headers])})}toolRunner($,Z){return new G8(this._client,$,Z)}};$$.Batches=U8;$$.BetaToolRunner=G8;$$.ToolError=e$});var W8;var K4=j(()=>{A0();K0();r$();o0();W8=class W8 extends l{create($,Z={},X){let{betas:z,...J}=Z??{};return this._client.post(c`/v1/skills/${$}/versions?beta=true`,s$({body:J,...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])},this._client))}retrieve($,Z,X){let{skill_id:z,betas:J}=Z;return this._client.get(c`/v1/skills/${z}/versions/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])})}list($,Z={},X){let{betas:z,...J}=Z??{};return this._client.getAPIList(c`/v1/skills/${$}/versions?beta=true`,l6,{query:J,...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}delete($,Z,X){let{skill_id:z,betas:J}=Z;return this._client.delete(c`/v1/skills/${z}/versions/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])})}}});var X6;var B4=j(()=>{K4();K4();A0();K0();r$();o0();X6=class X6 extends l{constructor(){super(...arguments);this.versions=new W8(this._client)}create($={},Z){let{betas:X,...z}=$??{};return this._client.post("/v1/skills?beta=true",s$({body:z,...Z,headers:E([{"anthropic-beta":[...X??[],"skills-2025-10-02"].toString()},Z?.headers])},this._client,!1))}retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(c`/v1/skills/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/skills?beta=true",l6,{query:z,...Z,headers:E([{"anthropic-beta":[...X??[],"skills-2025-10-02"].toString()},Z?.headers])})}delete($,Z={},X){let{betas:z}=Z??{};return this._client.delete(c`/v1/skills/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}};X6.Versions=W8});var P0;var D4=j(()=>{a5();a5();o5();o5();H4();H4();B4();B4();P0=class P0 extends l{constructor(){super(...arguments);this.models=new o6(this._client),this.messages=new $$(this._client),this.files=new a6(this._client),this.skills=new X6(this._client)}};P0.Models=o6;P0.Messages=$$;P0.Files=a6;P0.Skills=X6});var z6;var N4=j(()=>{K0();z6=class z6 extends l{create($,Z){let{betas:X,...z}=$;return this._client.post("/v1/complete",{body:z,timeout:this._client._options.timeout??600000,...Z,headers:E([{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0},Z?.headers]),stream:$.stream??!1})}}});function DJ($){return $?.output_config?.format}function I4($,Z,X){let z=DJ(Z);if(!Z||!("parse"in(z??{})))return{...$,content:$.content.map((J)=>{if(J.type==="text")return Object.defineProperty({...J},"parsed_output",{value:null,enumerable:!1});return J}),parsed_output:null};return L4($,Z,X)}function L4($,Z,X){let z=null,J=$.content.map((q)=>{if(q.type==="text"){let Q=xB(Z,q.text);if(z===null)z=Q;return Object.defineProperty({...q},"parsed_output",{value:Q,enumerable:!1})}return q});return{...$,content:J,parsed_output:z}}function xB($,Z){let X=DJ($);if(X?.type!=="json_schema")return null;try{if("parse"in X)return X.parse(Z);return JSON.parse(Z)}catch(z){throw new A(`Failed to parse structured output: ${z}`)}}var T4=j(()=>{U0()});function TJ($){return $.type==="tool_use"||$.type==="server_tool_use"}function MJ($){}var L0,Z$,J6,V8,m2,H8,K8,d2,B8,y0,D8,c2,p2,I$,l2,i2,N8,M4,NJ,O4,w4,F4,R4,IJ,LJ="__json_buf",I8;var OJ=j(()=>{j0();a$();z4();X4();T4();I8=class I8{constructor($,Z){L0.add(this),this.messages=[],this.receivedMessages=[],Z$.set(this,void 0),J6.set(this,null),this.controller=new AbortController,V8.set(this,void 0),m2.set(this,()=>{}),H8.set(this,()=>{}),K8.set(this,void 0),d2.set(this,()=>{}),B8.set(this,()=>{}),y0.set(this,{}),D8.set(this,!1),c2.set(this,!1),p2.set(this,!1),I$.set(this,!1),l2.set(this,void 0),i2.set(this,void 0),N8.set(this,void 0),O4.set(this,(X)=>{if(O(this,c2,!0,"f"),b0(X))X=new q0;if(X instanceof q0)return O(this,p2,!0,"f"),this._emit("abort",X);if(X instanceof A)return this._emit("error",X);if(X instanceof Error){let z=new A(X.message);return z.cause=X,this._emit("error",z)}return this._emit("error",new A(String(X)))}),O(this,V8,new Promise((X,z)=>{O(this,m2,X,"f"),O(this,H8,z,"f")}),"f"),O(this,K8,new Promise((X,z)=>{O(this,d2,X,"f"),O(this,B8,z,"f")}),"f"),K(this,V8,"f").catch(()=>{}),K(this,K8,"f").catch(()=>{}),O(this,J6,$,"f"),O(this,N8,Z?.logger??console,"f")}get response(){return K(this,l2,"f")}get request_id(){return K(this,i2,"f")}async withResponse(){O(this,I$,!0,"f");let $=await K(this,V8,"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 I8(null);return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X,{logger:z}={}){let J=new I8(Z,{logger:z});for(let q of Z.messages)J._addMessageParam(q);return O(J,J6,{...Z,stream:!0},"f"),J._run(()=>J._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),J}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},K(this,O4,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal,J;if(z){if(z.aborted)this.controller.abort();J=this.controller.abort.bind(this.controller),z.addEventListener("abort",J)}try{K(this,L0,"m",w4).call(this);let{response:q,data:Q}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let Y of Q)K(this,L0,"m",F4).call(this,Y);if(Q.controller.signal?.aborted)throw new q0;K(this,L0,"m",R4).call(this)}finally{if(z&&J)z.removeEventListener("abort",J)}}_connected($){if(this.ended)return;O(this,l2,$,"f"),O(this,i2,$?.headers.get("request-id"),"f"),K(this,m2,"f").call(this,$),this._emit("connect")}get ended(){return K(this,D8,"f")}get errored(){return K(this,c2,"f")}get aborted(){return K(this,p2,"f")}abort(){this.controller.abort()}on($,Z){return(K(this,y0,"f")[$]||(K(this,y0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=K(this,y0,"f")[$];if(!X)return this;let z=X.findIndex((J)=>J.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(K(this,y0,"f")[$]||(K(this,y0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(O(this,I$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){O(this,I$,!0,"f"),await K(this,K8,"f")}get currentMessage(){return K(this,Z$,"f")}async finalMessage(){return await this.done(),K(this,L0,"m",M4).call(this)}async finalText(){return await this.done(),K(this,L0,"m",NJ).call(this)}_emit($,...Z){if(K(this,D8,"f"))return;if($==="end")O(this,D8,!0,"f"),K(this,d2,"f").call(this);let X=K(this,y0,"f")[$];if(X)K(this,y0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!K(this,I$,"f")&&!X?.length)Promise.reject(z);K(this,H8,"f").call(this,z),K(this,B8,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!K(this,I$,"f")&&!X?.length)Promise.reject(z);K(this,H8,"f").call(this,z),K(this,B8,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,L0,"m",M4).call(this))}async _fromReadableStream($,Z){let X=Z?.signal,z;if(X){if(X.aborted)this.controller.abort();z=this.controller.abort.bind(this.controller),X.addEventListener("abort",z)}try{K(this,L0,"m",w4).call(this),this._connected(null);let J=H0.fromReadableStream($,this.controller);for await(let q of J)K(this,L0,"m",F4).call(this,q);if(J.controller.signal?.aborted)throw new q0;K(this,L0,"m",R4).call(this)}finally{if(X&&z)X.removeEventListener("abort",z)}}[(Z$=new WeakMap,J6=new WeakMap,V8=new WeakMap,m2=new WeakMap,H8=new WeakMap,K8=new WeakMap,d2=new WeakMap,B8=new WeakMap,y0=new WeakMap,D8=new WeakMap,c2=new WeakMap,p2=new WeakMap,I$=new WeakMap,l2=new WeakMap,i2=new WeakMap,N8=new WeakMap,O4=new WeakMap,L0=new WeakSet,M4=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},NJ=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(" ")},w4=function(){if(this.ended)return;O(this,Z$,void 0,"f")},F4=function(Z){if(this.ended)return;let X=K(this,L0,"m",IJ).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(TJ(z)&&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:MJ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(I4(X,K(this,J6,"f"),{logger:K(this,N8,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{O(this,Z$,X,"f");break}case"content_block_start":case"message_delta":break}},R4=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=K(this,Z$,"f");if(!Z)throw new A("request ended without sending any chunks");return O(this,Z$,void 0,"f"),I4(Z,K(this,J6,"f"),{logger:K(this,N8,"f")})},IJ=function(Z){let X=K(this,Z$,"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":if(X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,Z.usage.input_tokens!=null)X.usage.input_tokens=Z.usage.input_tokens;if(Z.usage.cache_creation_input_tokens!=null)X.usage.cache_creation_input_tokens=Z.usage.cache_creation_input_tokens;if(Z.usage.cache_read_input_tokens!=null)X.usage.cache_read_input_tokens=Z.usage.cache_read_input_tokens;if(Z.usage.server_tool_use!=null)X.usage.server_tool_use=Z.usage.server_tool_use;return 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")X.content[Z.index]={...z,text:(z.text||"")+Z.delta.text};break}case"citations_delta":{if(z?.type==="text")X.content[Z.index]={...z,citations:[...z.citations??[],Z.delta.citation]};break}case"input_json_delta":{if(z&&TJ(z)){let J=z[LJ]||"";J+=Z.delta.partial_json;let q={...z};if(Object.defineProperty(q,LJ,{value:J,enumerable:!1,writable:!0}),J)q.input=b2(J);X.content[Z.index]=q}break}case"thinking_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,thinking:z.thinking+Z.delta.thinking};break}case"signature_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,signature:Z.delta.signature};break}default:MJ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let J=Z.shift();if(J)J.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 J of Z)J.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let J of Z)J.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((J,q)=>Z.push({resolve:J,reject:q})).then((J)=>J?{value:J,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 H0(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var L8;var A4=j(()=>{A0();K0();W4();a$();o0();L8=class L8 extends l{create($,Z){return this._client.post("/v1/messages/batches",{body:$,...Z})}retrieve($,Z){return this._client.get(c`/v1/messages/batches/${$}`,Z)}list($={},Z){return this._client.getAPIList("/v1/messages/batches",O0,{query:$,...Z})}delete($,Z){return this._client.delete(c`/v1/messages/batches/${$}`,Z)}cancel($,Z){return this._client.post(c`/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:E([{Accept:"application/binary"},Z?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((z,J)=>Z6.fromResponse(J.response,J.controller))}}});var L$,wJ,fB;var P4=j(()=>{K0();r6();OJ();T4();A4();A4();t5();L$=class L$ extends l{constructor(){super(...arguments);this.batches=new L8(this._client)}create($,Z){if($.model in wJ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${wJ[$.model]}
|
|
197
|
-
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if($.model in
|
|
195
|
+
Wrap your summary in <summary></summary> tags.`;function DJ(){let $,Z;return{promise:new Promise((z,J)=>{$=z,Z=J}),resolve:$,reject:Z}}async function jB($,Z=$.messages.at(-1)){if(!Z||Z.role!=="assistant"||!Z.content||typeof Z.content==="string")return null;let X=Z.content.filter((J)=>J.type==="tool_use");if(X.length===0)return null;return{role:"user",content:await Promise.all(X.map(async(J)=>{let q=$.tools.find((Q)=>("name"in Q?Q.name:Q.mcp_server_name)===J.name);if(!q||!("run"in q))return{type:"tool_result",tool_use_id:J.id,content:`Error: Tool '${J.name}' not found`,is_error:!0};try{let Q=J.input;if("parse"in q&&q.parse)Q=q.parse(Q);let Y=await q.run(Q);return{type:"tool_result",tool_use_id:J.id,content:Y}}catch(Q){return{type:"tool_result",tool_use_id:J.id,content:Q instanceof $6?Q.content:`Error: ${Q instanceof Error?Q.message:String(Q)}`,is_error:!0}}}))}}var Q8,Z6,I$,z0,Y8,D0,f0,$$,G8,BJ,U5,U8;var W5=j(()=>{j0();m2();W0();B0();a6();U8=class U8{constructor($,Z,X){Q8.add(this),this.client=$,Z6.set(this,!1),I$.set(this,!1),z0.set(this,void 0),Y8.set(this,void 0),D0.set(this,void 0),f0.set(this,void 0),$$.set(this,void 0),G8.set(this,0),O(this,z0,{params:{...Z,messages:structuredClone(Z.messages)}},"f");let J=["BetaToolRunner",...a4(Z.tools,Z.messages)].join(", ");O(this,Y8,{...X,headers:E([{"x-stainless-helper":J},X?.headers])},"f"),O(this,$$,DJ(),"f")}async*[(Z6=new WeakMap,I$=new WeakMap,z0=new WeakMap,Y8=new WeakMap,D0=new WeakMap,f0=new WeakMap,$$=new WeakMap,G8=new WeakMap,Q8=new WeakSet,BJ=async function(){let Z=K(this,z0,"f").params.compactionControl;if(!Z||!Z.enabled)return!1;let X=0;if(K(this,D0,"f")!==void 0)try{let G=await K(this,D0,"f");X=G.usage.input_tokens+(G.usage.cache_creation_input_tokens??0)+(G.usage.cache_read_input_tokens??0)+G.usage.output_tokens}catch{return!1}let z=Z.contextTokenThreshold??VJ;if(X<z)return!1;let J=Z.model??K(this,z0,"f").params.model,q=Z.summaryPrompt??KJ,Q=K(this,z0,"f").params.messages;if(Q[Q.length-1].role==="assistant"){let G=Q[Q.length-1];if(Array.isArray(G.content)){let U=G.content.filter((W)=>W.type!=="tool_use");if(U.length===0)Q.pop();else G.content=U}}let Y=await this.client.beta.messages.create({model:J,messages:[...Q,{role:"user",content:[{type:"text",text:q}]}],max_tokens:K(this,z0,"f").params.max_tokens},{headers:{"x-stainless-helper":"compaction"}});if(Y.content[0]?.type!=="text")throw new A("Expected text response for compaction");return K(this,z0,"f").params.messages=[{role:"user",content:Y.content}],!0},Symbol.asyncIterator)](){var $;if(K(this,Z6,"f"))throw new A("Cannot iterate over a consumed stream");O(this,Z6,!0,"f"),O(this,I$,!0,"f"),O(this,f0,void 0,"f");try{while(!0){let Z;try{if(K(this,z0,"f").params.max_iterations&&K(this,G8,"f")>=K(this,z0,"f").params.max_iterations)break;O(this,I$,!1,"f"),O(this,f0,void 0,"f"),O(this,G8,($=K(this,G8,"f"),$++,$),"f"),O(this,D0,void 0,"f");let{max_iterations:X,compactionControl:z,...J}=K(this,z0,"f").params;if(J.stream)Z=this.client.beta.messages.stream({...J},K(this,Y8,"f")),O(this,D0,Z.finalMessage(),"f"),K(this,D0,"f").catch(()=>{}),yield Z;else O(this,D0,this.client.beta.messages.create({...J,stream:!1},K(this,Y8,"f")),"f"),yield K(this,D0,"f");if(!await K(this,Q8,"m",BJ).call(this)){if(!K(this,I$,"f")){let{role:Y,content:G}=await K(this,D0,"f");K(this,z0,"f").params.messages.push({role:Y,content:G})}let Q=await K(this,Q8,"m",U5).call(this,K(this,z0,"f").params.messages.at(-1));if(Q)K(this,z0,"f").params.messages.push(Q);else if(!K(this,I$,"f"))break}}finally{if(Z)Z.abort()}}if(!K(this,D0,"f"))throw new A("ToolRunner concluded without a message from the server");K(this,$$,"f").resolve(await K(this,D0,"f"))}catch(Z){throw O(this,Z6,!1,"f"),K(this,$$,"f").promise.catch(()=>{}),K(this,$$,"f").reject(Z),O(this,$$,DJ(),"f"),Z}}setMessagesParams($){if(typeof $==="function")K(this,z0,"f").params=$(K(this,z0,"f").params);else K(this,z0,"f").params=$;O(this,I$,!0,"f"),O(this,f0,void 0,"f")}async generateToolResponse(){let $=await K(this,D0,"f")??this.params.messages.at(-1);if(!$)return null;return K(this,Q8,"m",U5).call(this,$)}done(){return K(this,$$,"f").promise}async runUntilDone(){if(!K(this,Z6,"f"))for await(let $ of this);return this.done()}get params(){return K(this,z0,"f").params}pushMessages(...$){this.setMessagesParams((Z)=>({...Z,messages:[...Z.messages,...$]}))}then($,Z){return this.runUntilDone().then($,Z)}};U5=async function(Z){if(K(this,f0,"f")!==void 0)return K(this,f0,"f");return O(this,f0,jB(K(this,z0,"f").params,Z),"f"),K(this,f0,"f")}});var X6;var H5=j(()=>{W0();v4();X6=class X6{constructor($,Z){this.iterator=$,this.controller=Z}async*decoder(){let $=new a0;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){if(Z.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative")throw new A("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api");throw new A("Attempted to iterate over a response with no body")}return new X6(u6($.body),Z)}}});var W8;var V5=j(()=>{P0();B0();H5();o$();t0();W8=class W8 extends i{create($,Z){let{betas:X,...z}=$;return this._client.post("/v1/messages/batches?beta=true",{body:z,...Z,headers:E([{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString()},Z?.headers])})}retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(p`/v1/messages/batches/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString()},X?.headers])})}list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/messages/batches?beta=true",w0,{query:z,...Z,headers:E([{"anthropic-beta":[...X??[],"message-batches-2024-09-24"].toString()},Z?.headers])})}delete($,Z={},X){let{betas:z}=Z??{};return this._client.delete(p`/v1/messages/batches/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString()},X?.headers])})}cancel($,Z={},X){let{betas:z}=Z??{};return this._client.post(p`/v1/messages/batches/${$}/cancel?beta=true`,{...X,headers:E([{"anthropic-beta":[...z??[],"message-batches-2024-09-24"].toString()},X?.headers])})}async results($,Z={},X){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:J}=Z??{};return this._client.get(z.results_url,{...X,headers:E([{"anthropic-beta":[...J??[],"message-batches-2024-09-24"].toString(),Accept:"application/binary"},X?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((q,Q)=>X6.fromResponse(Q.response,Q.controller))}}});function IJ($){if(!$.output_format)return $;if($.output_config?.format)throw new A("Both output_format and output_config.format were provided. Please use only output_config.format (output_format is deprecated).");let{output_format:Z,...X}=$;return{...X,output_config:{...$.output_config,format:Z}}}var NJ,xB,Z$;var K5=j(()=>{o$();e4();B0();a6();X5();HJ();W5();m2();V5();V5();W5();m2();NJ={"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-3-opus-20240229":"January 5th, 2026","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025","claude-3-7-sonnet-latest":"February 19th, 2026","claude-3-7-sonnet-20250219":"February 19th, 2026"},xB=["claude-opus-4-6"];Z$=class Z$ extends i{constructor(){super(...arguments);this.batches=new W8(this._client)}create($,Z){let X=IJ($),{betas:z,...J}=X;if(J.model in NJ)console.warn(`The model '${J.model}' is deprecated and will reach end-of-life on ${NJ[J.model]}
|
|
196
|
+
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if(J.model in xB&&J.thinking&&J.thinking.type==="enabled")console.warn(`Using Claude with ${J.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let q=this._client._options.timeout;if(!J.stream&&q==null){let Y=b2[J.model]??void 0;q=this._client.calculateNonstreamingTimeout(J.max_tokens,Y)}let Q=j2(J.tools,J.messages);return this._client.post("/v1/messages?beta=true",{body:J,timeout:q??600000,...Z,headers:E([{...z?.toString()!=null?{"anthropic-beta":z?.toString()}:void 0},Q,Z?.headers]),stream:X.stream??!1})}parse($,Z){return Z={...Z,headers:E([{"anthropic-beta":[...$.betas??[],"structured-outputs-2025-12-15"].toString()},Z?.headers])},this.create($,Z).then((X)=>Z5(X,$,{logger:this._client.logger??console}))}stream($,Z){return q8.createMessage(this,$,Z)}countTokens($,Z){let X=IJ($),{betas:z,...J}=X;return this._client.post("/v1/messages/count_tokens?beta=true",{body:J,...Z,headers:E([{"anthropic-beta":[...z??[],"token-counting-2024-11-01"].toString()},Z?.headers])})}toolRunner($,Z){return new U8(this._client,$,Z)}};Z$.Batches=W8;Z$.BetaToolRunner=U8;Z$.ToolError=$6});var H8;var B5=j(()=>{P0();B0();a$();t0();H8=class H8 extends i{create($,Z={},X){let{betas:z,...J}=Z??{};return this._client.post(p`/v1/skills/${$}/versions?beta=true`,r$({body:J,...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])},this._client))}retrieve($,Z,X){let{skill_id:z,betas:J}=Z;return this._client.get(p`/v1/skills/${z}/versions/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])})}list($,Z={},X){let{betas:z,...J}=Z??{};return this._client.getAPIList(p`/v1/skills/${$}/versions?beta=true`,i6,{query:J,...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}delete($,Z,X){let{skill_id:z,betas:J}=Z;return this._client.delete(p`/v1/skills/${z}/versions/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])})}}});var z6;var D5=j(()=>{B5();B5();P0();B0();a$();t0();z6=class z6 extends i{constructor(){super(...arguments);this.versions=new H8(this._client)}create($={},Z){let{betas:X,...z}=$??{};return this._client.post("/v1/skills?beta=true",r$({body:z,...Z,headers:E([{"anthropic-beta":[...X??[],"skills-2025-10-02"].toString()},Z?.headers])},this._client,!1))}retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(p`/v1/skills/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/skills?beta=true",i6,{query:z,...Z,headers:E([{"anthropic-beta":[...X??[],"skills-2025-10-02"].toString()},Z?.headers])})}delete($,Z={},X){let{betas:z}=Z??{};return this._client.delete(p`/v1/skills/${$}?beta=true`,{...X,headers:E([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}};z6.Versions=H8});var S0;var N5=j(()=>{o4();o4();t4();t4();K5();K5();D5();D5();S0=class S0 extends i{constructor(){super(...arguments);this.models=new t6(this._client),this.messages=new Z$(this._client),this.files=new o6(this._client),this.skills=new z6(this._client)}};S0.Models=t6;S0.Messages=Z$;S0.Files=o6;S0.Skills=z6});var J6;var I5=j(()=>{B0();J6=class J6 extends i{create($,Z){let{betas:X,...z}=$;return this._client.post("/v1/complete",{body:z,timeout:this._client._options.timeout??600000,...Z,headers:E([{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0},Z?.headers]),stream:$.stream??!1})}}});function LJ($){return $?.output_config?.format}function L5($,Z,X){let z=LJ(Z);if(!Z||!("parse"in(z??{})))return{...$,content:$.content.map((J)=>{if(J.type==="text")return Object.defineProperty({...J},"parsed_output",{value:null,enumerable:!1});return J}),parsed_output:null};return T5($,Z,X)}function T5($,Z,X){let z=null,J=$.content.map((q)=>{if(q.type==="text"){let Q=gB(Z,q.text);if(z===null)z=Q;return Object.defineProperty({...q},"parsed_output",{value:Q,enumerable:!1})}return q});return{...$,content:J,parsed_output:z}}function gB($,Z){let X=LJ($);if(X?.type!=="json_schema")return null;try{if("parse"in X)return X.parse(Z);return JSON.parse(Z)}catch(z){throw new A(`Failed to parse structured output: ${z}`)}}var M5=j(()=>{W0()});function wJ($){return $.type==="tool_use"||$.type==="server_tool_use"}function FJ($){}var T0,X$,q6,V8,d2,K8,B8,c2,D8,y0,N8,p2,l2,L$,i2,n2,I8,O5,TJ,w5,F5,R5,A5,MJ,OJ="__json_buf",L8;var RJ=j(()=>{j0();o$();J5();z5();M5();L8=class L8{constructor($,Z){T0.add(this),this.messages=[],this.receivedMessages=[],X$.set(this,void 0),q6.set(this,null),this.controller=new AbortController,V8.set(this,void 0),d2.set(this,()=>{}),K8.set(this,()=>{}),B8.set(this,void 0),c2.set(this,()=>{}),D8.set(this,()=>{}),y0.set(this,{}),N8.set(this,!1),p2.set(this,!1),l2.set(this,!1),L$.set(this,!1),i2.set(this,void 0),n2.set(this,void 0),I8.set(this,void 0),w5.set(this,(X)=>{if(O(this,p2,!0,"f"),b0(X))X=new Q0;if(X instanceof Q0)return O(this,l2,!0,"f"),this._emit("abort",X);if(X instanceof A)return this._emit("error",X);if(X instanceof Error){let z=new A(X.message);return z.cause=X,this._emit("error",z)}return this._emit("error",new A(String(X)))}),O(this,V8,new Promise((X,z)=>{O(this,d2,X,"f"),O(this,K8,z,"f")}),"f"),O(this,B8,new Promise((X,z)=>{O(this,c2,X,"f"),O(this,D8,z,"f")}),"f"),K(this,V8,"f").catch(()=>{}),K(this,B8,"f").catch(()=>{}),O(this,q6,$,"f"),O(this,I8,Z?.logger??console,"f")}get response(){return K(this,i2,"f")}get request_id(){return K(this,n2,"f")}async withResponse(){O(this,L$,!0,"f");let $=await K(this,V8,"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 L8(null);return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X,{logger:z}={}){let J=new L8(Z,{logger:z});for(let q of Z.messages)J._addMessageParam(q);return O(J,q6,{...Z,stream:!0},"f"),J._run(()=>J._createMessage($,{...Z,stream:!0},{...X,headers:{...X?.headers,"X-Stainless-Helper-Method":"stream"}})),J}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},K(this,w5,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,Z=!0){if(this.receivedMessages.push($),Z)this._emit("message",$)}async _createMessage($,Z,X){let z=X?.signal,J;if(z){if(z.aborted)this.controller.abort();J=this.controller.abort.bind(this.controller),z.addEventListener("abort",J)}try{K(this,T0,"m",F5).call(this);let{response:q,data:Q}=await $.create({...Z,stream:!0},{...X,signal:this.controller.signal}).withResponse();this._connected(q);for await(let Y of Q)K(this,T0,"m",R5).call(this,Y);if(Q.controller.signal?.aborted)throw new Q0;K(this,T0,"m",A5).call(this)}finally{if(z&&J)z.removeEventListener("abort",J)}}_connected($){if(this.ended)return;O(this,i2,$,"f"),O(this,n2,$?.headers.get("request-id"),"f"),K(this,d2,"f").call(this,$),this._emit("connect")}get ended(){return K(this,N8,"f")}get errored(){return K(this,p2,"f")}get aborted(){return K(this,l2,"f")}abort(){this.controller.abort()}on($,Z){return(K(this,y0,"f")[$]||(K(this,y0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=K(this,y0,"f")[$];if(!X)return this;let z=X.findIndex((J)=>J.listener===Z);if(z>=0)X.splice(z,1);return this}once($,Z){return(K(this,y0,"f")[$]||(K(this,y0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(O(this,L$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){O(this,L$,!0,"f"),await K(this,B8,"f")}get currentMessage(){return K(this,X$,"f")}async finalMessage(){return await this.done(),K(this,T0,"m",O5).call(this)}async finalText(){return await this.done(),K(this,T0,"m",TJ).call(this)}_emit($,...Z){if(K(this,N8,"f"))return;if($==="end")O(this,N8,!0,"f"),K(this,c2,"f").call(this);let X=K(this,y0,"f")[$];if(X)K(this,y0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!K(this,L$,"f")&&!X?.length)Promise.reject(z);K(this,K8,"f").call(this,z),K(this,D8,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!K(this,L$,"f")&&!X?.length)Promise.reject(z);K(this,K8,"f").call(this,z),K(this,D8,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,T0,"m",O5).call(this))}async _fromReadableStream($,Z){let X=Z?.signal,z;if(X){if(X.aborted)this.controller.abort();z=this.controller.abort.bind(this.controller),X.addEventListener("abort",z)}try{K(this,T0,"m",F5).call(this),this._connected(null);let J=K0.fromReadableStream($,this.controller);for await(let q of J)K(this,T0,"m",R5).call(this,q);if(J.controller.signal?.aborted)throw new Q0;K(this,T0,"m",A5).call(this)}finally{if(X&&z)X.removeEventListener("abort",z)}}[(X$=new WeakMap,q6=new WeakMap,V8=new WeakMap,d2=new WeakMap,K8=new WeakMap,B8=new WeakMap,c2=new WeakMap,D8=new WeakMap,y0=new WeakMap,N8=new WeakMap,p2=new WeakMap,l2=new WeakMap,L$=new WeakMap,i2=new WeakMap,n2=new WeakMap,I8=new WeakMap,w5=new WeakMap,T0=new WeakSet,O5=function(){if(this.receivedMessages.length===0)throw new A("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},TJ=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(" ")},F5=function(){if(this.ended)return;O(this,X$,void 0,"f")},R5=function(Z){if(this.ended)return;let X=K(this,T0,"m",MJ).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(wJ(z)&&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:FJ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(L5(X,K(this,q6,"f"),{logger:K(this,I8,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{O(this,X$,X,"f");break}case"content_block_start":case"message_delta":break}},A5=function(){if(this.ended)throw new A("stream has ended, this shouldn't happen");let Z=K(this,X$,"f");if(!Z)throw new A("request ended without sending any chunks");return O(this,X$,void 0,"f"),L5(Z,K(this,q6,"f"),{logger:K(this,I8,"f")})},MJ=function(Z){let X=K(this,X$,"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":if(X.stop_reason=Z.delta.stop_reason,X.stop_sequence=Z.delta.stop_sequence,X.usage.output_tokens=Z.usage.output_tokens,Z.usage.input_tokens!=null)X.usage.input_tokens=Z.usage.input_tokens;if(Z.usage.cache_creation_input_tokens!=null)X.usage.cache_creation_input_tokens=Z.usage.cache_creation_input_tokens;if(Z.usage.cache_read_input_tokens!=null)X.usage.cache_read_input_tokens=Z.usage.cache_read_input_tokens;if(Z.usage.server_tool_use!=null)X.usage.server_tool_use=Z.usage.server_tool_use;return 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")X.content[Z.index]={...z,text:(z.text||"")+Z.delta.text};break}case"citations_delta":{if(z?.type==="text")X.content[Z.index]={...z,citations:[...z.citations??[],Z.delta.citation]};break}case"input_json_delta":{if(z&&wJ(z)){let J=z[OJ]||"";J+=Z.delta.partial_json;let q={...z};if(Object.defineProperty(q,OJ,{value:J,enumerable:!1,writable:!0}),J)q.input=x2(J);X.content[Z.index]=q}break}case"thinking_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,thinking:z.thinking+Z.delta.thinking};break}case"signature_delta":{if(z?.type==="thinking")X.content[Z.index]={...z,signature:Z.delta.signature};break}default:FJ(Z.delta)}return X}case"content_block_stop":return X}},Symbol.asyncIterator)](){let $=[],Z=[],X=!1;return this.on("streamEvent",(z)=>{let J=Z.shift();if(J)J.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 J of Z)J.reject(z);Z.length=0}),this.on("error",(z)=>{X=!0;for(let J of Z)J.reject(z);Z.length=0}),{next:async()=>{if(!$.length){if(X)return{value:void 0,done:!0};return new Promise((J,q)=>Z.push({resolve:J,reject:q})).then((J)=>J?{value:J,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 K0(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var T8;var P5=j(()=>{P0();B0();H5();o$();t0();T8=class T8 extends i{create($,Z){return this._client.post("/v1/messages/batches",{body:$,...Z})}retrieve($,Z){return this._client.get(p`/v1/messages/batches/${$}`,Z)}list($={},Z){return this._client.getAPIList("/v1/messages/batches",w0,{query:$,...Z})}delete($,Z){return this._client.delete(p`/v1/messages/batches/${$}`,Z)}cancel($,Z){return this._client.post(p`/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:E([{Accept:"application/binary"},Z?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((z,J)=>X6.fromResponse(J.response,J.controller))}}});var T$,AJ,vB;var S5=j(()=>{B0();a6();RJ();M5();P5();P5();e4();T$=class T$ extends i{constructor(){super(...arguments);this.batches=new T8(this._client)}create($,Z){if($.model in AJ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${AJ[$.model]}
|
|
197
|
+
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if($.model in vB&&$.thinking&&$.thinking.type==="enabled")console.warn(`Using Claude with ${$.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let X=this._client._options.timeout;if(!$.stream&&X==null){let J=b2[$.model]??void 0;X=this._client.calculateNonstreamingTimeout($.max_tokens,J)}let z=j2($.tools,$.messages);return this._client.post("/v1/messages",{body:$,timeout:X??600000,...Z,headers:E([z,Z?.headers]),stream:$.stream??!1})}parse($,Z){return this.create($,Z).then((X)=>T5(X,$,{logger:this._client.logger??console}))}stream($,Z){return L8.createMessage(this,$,Z,{logger:this._client.logger??console})}countTokens($,Z){return this._client.post("/v1/messages/count_tokens",{body:$,...Z})}};AJ={"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-3-opus-20240229":"January 5th, 2026","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025","claude-3-7-sonnet-latest":"February 19th, 2026","claude-3-7-sonnet-20250219":"February 19th, 2026","claude-3-5-haiku-latest":"February 19th, 2026","claude-3-5-haiku-20241022":"February 19th, 2026"},vB=["claude-opus-4-6"];T$.Batches=T8});var Q6;var _5=j(()=>{P0();B0();t0();Q6=class Q6 extends i{retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(p`/v1/models/${$}`,{...X,headers:E([{...z?.toString()!=null?{"anthropic-beta":z?.toString()}:void 0},X?.headers])})}list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/models",w0,{query:z,...Z,headers:E([{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0},Z?.headers])})}}});var PJ=j(()=>{N5();I5();S5();_5();$J()});var M8=($)=>{if(typeof globalThis.process<"u")return globalThis.process.env?.[$]?.trim()??void 0;if(typeof globalThis.Deno<"u")return globalThis.Deno.env?.get?.($)?.trim();return};class n{constructor({baseURL:$=M8("ANTHROPIC_BASE_URL"),apiKey:Z=M8("ANTHROPIC_API_KEY")??null,authToken:X=M8("ANTHROPIC_AUTH_TOKEN")??null,...z}={}){C5.add(this),s2.set(this,void 0);let J={apiKey:Z,authToken:X,...z,baseURL:$||"https://api.anthropic.com"};if(!J.dangerouslyAllowBrowser&&u9())throw new A(`It looks like you're running in a browser-like environment.
|
|
198
198
|
|
|
199
199
|
This is disabled by default, as it risks exposing your secret API credentials to attackers.
|
|
200
200
|
If you understand the risks and have appropriate mitigations in place,
|
|
201
201
|
you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
|
|
202
202
|
|
|
203
203
|
new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
|
|
204
|
-
`);this.baseURL=J.baseURL,this.timeout=J.timeout??C4.DEFAULT_TIMEOUT,this.logger=J.logger??console;let q="warn";this.logLevel=q,this.logLevel=v5(J.logLevel,"ClientOptions.logLevel",this)??v5(T8("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??q,this.fetchOptions=J.fetchOptions,this.maxRetries=J.maxRetries??2,this.fetch=J.fetch??v9(),O(this,n2,m9,"f"),this._options=J,this.apiKey=typeof Z==="string"?Z:null,this.authToken=X}withOptions($){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:this.apiKey,authToken:this.authToken,...$})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:$,nulls:Z}){if($.get("x-api-key")||$.get("authorization"))return;if(this.apiKey&&$.get("x-api-key"))return;if(Z.has("x-api-key"))return;if(this.authToken&&$.get("authorization"))return;if(Z.has("authorization"))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')}async authHeaders($){return E([await this.apiKeyAuth($),await this.bearerAuth($)])}async apiKeyAuth($){if(this.apiKey==null)return;return E([{"X-Api-Key":this.apiKey}])}async bearerAuth($){if(this.authToken==null)return;return E([{Authorization:`Bearer ${this.authToken}`}])}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("&")}getUserAgent(){return`${this.constructor.name}/JS ${s0}`}defaultIdempotencyKey(){return`stainless-node-retry-${b5()}`}makeStatusError($,Z,X,z){return o.generate($,Z,X,z)}buildURL($,Z,X){let z=!K(this,_4,"m",RJ).call(this)&&X||this.baseURL,J=C9($)?new URL($):new URL(z+(z.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),q=this.defaultQuery();if(!E9(q))Z={...q,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))J.search=this.stringifyQuery(Z);return J.toString()}_calculateNonstreamingTimeout($){if(3600*$/128000>600)throw new A("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 600000}async prepareOptions($){}async prepareRequest($,{url:Z,options:X}){}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((z)=>{return{method:$,path:Z,...z}}))}request($,Z=null){return new a0(this,this.makeRequest($,Z,void 0))}async makeRequest($,Z,X){let z=await $,J=z.maxRetries??this.maxRetries;if(Z==null)Z=J;await this.prepareOptions(z);let{req:q,url:Q,timeout:Y}=await this.buildRequest(z,{retryCount:J-Z});await this.prepareRequest(q,{url:Q,options:z});let G="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),U=X===void 0?"":`, retryOf: ${X}`,W=Date.now();if(J0(this).debug(`[${G}] sending request`,x0({retryOfRequestLogID:X,method:z.method,url:Q,options:z,headers:q.headers})),z.signal?.aborted)throw new q0;let H=new AbortController,V=await this.fetchWithTimeout(Q,q,Y,H).catch(h6),D=Date.now();if(V instanceof globalThis.Error){let N=`retrying, ${Z} attempts remaining`;if(z.signal?.aborted)throw new q0;let L=b0(V)||/timed? ?out/i.test(String(V)+("cause"in V?String(V.cause):""));if(Z)return J0(this).info(`[${G}] connection ${L?"timed out":"failed"} - ${N}`),J0(this).debug(`[${G}] connection ${L?"timed out":"failed"} (${N})`,x0({retryOfRequestLogID:X,url:Q,durationMs:D-W,message:V.message})),this.retryRequest(z,Z,X??G);if(J0(this).info(`[${G}] connection ${L?"timed out":"failed"} - error; no more retries left`),J0(this).debug(`[${G}] connection ${L?"timed out":"failed"} (error; no more retries left)`,x0({retryOfRequestLogID:X,url:Q,durationMs:D-W,message:V.message})),L)throw new v$;throw new n0({cause:V})}let M=[...V.headers.entries()].filter(([N])=>N==="request-id").map(([N,L])=>", "+N+": "+JSON.stringify(L)).join(""),B=`[${G}${U}${M}] ${q.method} ${Q} ${V.ok?"succeeded":"failed"} with status ${V.status} in ${D-W}ms`;if(!V.ok){let N=await this.shouldRetry(V);if(Z&&N){let F=`retrying, ${Z} attempts remaining`;return await u9(V.body),J0(this).info(`${B} - ${F}`),J0(this).debug(`[${G}] response error (${F})`,x0({retryOfRequestLogID:X,url:V.url,status:V.status,headers:V.headers,durationMs:D-W})),this.retryRequest(z,Z,X??G,V.headers)}let L=N?"error; no more retries left":"error; not retryable";J0(this).info(`${B} - ${L}`);let S=await V.text().catch((F)=>h6(F).message),_=O2(S),C=_?void 0:S;throw J0(this).debug(`[${G}] response error (${L})`,x0({retryOfRequestLogID:X,url:V.url,status:V.status,headers:V.headers,message:C,durationMs:Date.now()-W})),this.makeStatusError(V.status,_,C,V.headers)}return J0(this).info(B),J0(this).debug(`[${G}] response start`,x0({retryOfRequestLogID:X,url:V.url,status:V.status,headers:V.headers,durationMs:D-W})),{response:V,options:z,controller:H,requestLogID:G,retryOfRequestLogID:X,startTime:W}}getAPIList($,Z,X){return this.requestAPIList(Z,X&&"then"in X?X.then((z)=>({method:"get",path:$,...z})):{method:"get",path:$,...X})}requestAPIList($,Z){let X=this.makeRequest(Z,null,void 0);return new p6(this,X,$)}async fetchWithTimeout($,Z,X,z){let{signal:J,method:q,...Q}=Z||{},Y=this._makeAbort(z);if(J)J.addEventListener("abort",Y,{once:!0});let G=setTimeout(Y,X),U=globalThis.ReadableStream&&Q.body instanceof globalThis.ReadableStream||typeof Q.body==="object"&&Q.body!==null&&Symbol.asyncIterator in Q.body,W={signal:z.signal,...U?{duplex:"half"}:{},method:"GET",...Q};if(q)W.method=q.toUpperCase();try{return await this.fetch.call(void 0,$,W)}finally{clearTimeout(G)}}async 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,z){let J,q=z?.get("retry-after-ms");if(q){let Y=parseFloat(q);if(!Number.isNaN(Y))J=Y}let Q=z?.get("retry-after");if(Q&&!J){let Y=parseFloat(Q);if(!Number.isNaN(Y))J=Y*1000;else J=Date.parse(Q)-Date.now()}if(!(J&&0<=J&&J<60000)){let Y=$.maxRetries??this.maxRetries;J=this.calculateDefaultRetryTimeoutMillis(Z,Y)}return await x9(J),this.makeRequest($,Z-1,X)}calculateDefaultRetryTimeoutMillis($,Z){let J=Z-$,q=Math.min(0.5*Math.pow(2,J),8),Q=1-Math.random()*0.25;return q*Q*1000}calculateNonstreamingTimeout($,Z){if(3600000*$/128000>600000||Z!=null&&$>Z)throw new A("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 600000}async buildRequest($,{retryCount:Z=0}={}){let X={...$},{method:z,path:J,query:q,defaultBaseURL:Q}=X,Y=this.buildURL(J,q,Q);if("timeout"in X)b9("timeout",X.timeout);X.timeout=X.timeout??this.timeout;let{bodyHeaders:G,body:U}=this.buildBody({options:X}),W=await this.buildHeaders({options:$,method:z,bodyHeaders:G,retryCount:Z});return{req:{method:z,headers:W,...X.signal&&{signal:X.signal},...globalThis.ReadableStream&&U instanceof globalThis.ReadableStream&&{duplex:"half"},...U&&{body:U},...this.fetchOptions??{},...X.fetchOptions??{}},url:Y,timeout:X.timeout}}async buildHeaders({options:$,method:Z,bodyHeaders:X,retryCount:z}){let J={};if(this.idempotencyHeader&&Z!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();J[this.idempotencyHeader]=$.idempotencyKey}let q=E([J,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(z),...$.timeout?{"X-Stainless-Timeout":String(Math.trunc($.timeout/1000))}:{},...h9(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders($),this._options.defaultHeaders,X,$.headers]);return this.validateHeaders(q),q.values}_makeAbort($){return()=>$.abort()}buildBody({options:{body:$,headers:Z}}){if(!$)return{bodyHeaders:void 0,body:void 0};let X=E([Z]);if(ArrayBuffer.isView($)||$ instanceof ArrayBuffer||$ instanceof DataView||typeof $==="string"&&X.values.has("content-type")||globalThis.Blob&&$ instanceof globalThis.Blob||$ instanceof FormData||$ instanceof URLSearchParams||globalThis.ReadableStream&&$ instanceof globalThis.ReadableStream)return{bodyHeaders:void 0,body:$};else if(typeof $==="object"&&((Symbol.asyncIterator in $)||(Symbol.iterator in $)&&("next"in $)&&typeof $.next==="function"))return{bodyHeaders:void 0,body:w2($)};else return K(this,n2,"f").call(this,{body:$,headers:X})}}var _4,C4,n2,RJ,E4="\\n\\nHuman:",j4="\\n\\nAssistant:",X$;var b4=j(()=>{j0();K$();f5();U0();A0();s5();FJ();S2();N4();S4();D4();P4();f5();K0();A2();K$();C4=i,n2=new WeakMap,_4=new WeakSet,RJ=function(){return this.baseURL!=="https://api.anthropic.com"};i.Anthropic=C4;i.HUMAN_PROMPT=E4;i.AI_PROMPT=j4;i.DEFAULT_TIMEOUT=600000;i.AnthropicError=A;i.APIError=o;i.APIConnectionError=n0;i.APIConnectionTimeoutError=v$;i.APIUserAbortError=q0;i.NotFoundError=c$;i.ConflictError=p$;i.RateLimitError=i$;i.BadRequestError=u$;i.AuthenticationError=m$;i.InternalServerError=n$;i.PermissionDeniedError=d$;i.UnprocessableEntityError=l$;i.toFile=n6;X$=class X$ extends i{constructor(){super(...arguments);this.completions=new z6(this),this.messages=new L$(this),this.models=new q6(this),this.beta=new P0(this)}};X$.Completions=z6;X$.Messages=L$;X$.Models=q6;X$.Beta=P0});var AJ={};yJ(AJ,{toFile:()=>n6,default:()=>X$,UnprocessableEntityError:()=>l$,RateLimitError:()=>i$,PermissionDeniedError:()=>d$,PagePromise:()=>p6,NotFoundError:()=>c$,InternalServerError:()=>n$,HUMAN_PROMPT:()=>E4,ConflictError:()=>p$,BaseAnthropic:()=>i,BadRequestError:()=>u$,AuthenticationError:()=>m$,AnthropicError:()=>A,Anthropic:()=>X$,APIUserAbortError:()=>q0,APIPromise:()=>a0,APIError:()=>o,APIConnectionTimeoutError:()=>v$,APIConnectionError:()=>n0,AI_PROMPT:()=>j4});var PJ=j(()=>{b4();s5();S2();b4();A0();U0()});var t4=fJ(o4(),1),{program:$D,createCommand:ZD,createArgument:XD,createOption:zD,CommanderError:JD,InvalidArgumentError:qD,InvalidOptionArgumentError:QD,Command:e4,Argument:YD,Option:GD,Help:UD}=t4.default;import{readFileSync as Uz,writeFileSync as wH,existsSync as Gz}from"fs";var vV=Z5(),uV=R6(),mV=vZ(),K5=A6(),dV=U6(),i0=k(),cV=m0(),pV=r(),lV=c0(),iV=p0(),_N=q2(),nV=W5(),sV=V5(),rV=H5(),G2=Qz(),Yz=Y6();var aV=vV.Composer,oV=uV.Document,tV=mV.Schema,eV=K5.YAMLError,$H=K5.YAMLParseError,ZH=K5.YAMLWarning,XH=dV.Alias,zH=i0.isAlias,JH=i0.isCollection,qH=i0.isDocument,QH=i0.isMap,YH=i0.isNode,GH=i0.isPair,UH=i0.isScalar,WH=i0.isSeq,VH=cV.Pair,HH=pV.Scalar,KH=lV.YAMLMap,BH=iV.YAMLSeq;var DH=nV.Lexer,NH=sV.LineCounter,IH=rV.Parser,j6=G2.parse,LH=G2.parseAllDocuments,TH=G2.parseDocument,B5=G2.stringify,MH=Yz.visit,OH=Yz.visitAsync;function m($){let Z=Uz($,"utf-8");return j6(Z)}function p($,Z){let X=B5(Z,{lineWidth:0});wH($,X,"utf-8")}function u($){return Uz($,"utf-8")}function f($=process.cwd()){let Z=["project.faf",".faf"];for(let z of Z){let J=`${$}/${z}`;if(Gz(J))return J}let X=$.replace(/\/[^/]+$/,"");if(X!==$)for(let z of Z){let J=`${X}/${z}`;if(Gz(J))return J}return null}var N5=null;function x6(){if(!N5)try{N5=Kz()}catch{throw Error(`faf-scoring-kernel not installed.
|
|
204
|
+
`);this.baseURL=J.baseURL,this.timeout=J.timeout??E5.DEFAULT_TIMEOUT,this.logger=J.logger??console;let q="warn";this.logLevel=q,this.logLevel=u4(J.logLevel,"ClientOptions.logLevel",this)??u4(M8("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??q,this.fetchOptions=J.fetchOptions,this.maxRetries=J.maxRetries??2,this.fetch=J.fetch??d9(),O(this,s2,p9,"f"),this._options=J,this.apiKey=typeof Z==="string"?Z:null,this.authToken=X}withOptions($){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:this.apiKey,authToken:this.authToken,...$})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:$,nulls:Z}){if($.get("x-api-key")||$.get("authorization"))return;if(this.apiKey&&$.get("x-api-key"))return;if(Z.has("x-api-key"))return;if(this.authToken&&$.get("authorization"))return;if(Z.has("authorization"))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')}async authHeaders($){return E([await this.apiKeyAuth($),await this.bearerAuth($)])}async apiKeyAuth($){if(this.apiKey==null)return;return E([{"X-Api-Key":this.apiKey}])}async bearerAuth($){if(this.authToken==null)return;return E([{Authorization:`Bearer ${this.authToken}`}])}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("&")}getUserAgent(){return`${this.constructor.name}/JS ${r0}`}defaultIdempotencyKey(){return`stainless-node-retry-${x4()}`}makeStatusError($,Z,X,z){return t.generate($,Z,X,z)}buildURL($,Z,X){let z=!K(this,C5,"m",SJ).call(this)&&X||this.baseURL,J=b9($)?new URL($):new URL(z+(z.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),q=this.defaultQuery();if(!x9(q))Z={...q,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))J.search=this.stringifyQuery(Z);return J.toString()}_calculateNonstreamingTimeout($){if(3600*$/128000>600)throw new A("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 600000}async prepareOptions($){}async prepareRequest($,{url:Z,options:X}){}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((z)=>{return{method:$,path:Z,...z}}))}request($,Z=null){return new o0(this,this.makeRequest($,Z,void 0))}async makeRequest($,Z,X){let z=await $,J=z.maxRetries??this.maxRetries;if(Z==null)Z=J;await this.prepareOptions(z);let{req:q,url:Q,timeout:Y}=await this.buildRequest(z,{retryCount:J-Z});await this.prepareRequest(q,{url:Q,options:z});let G="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),U=X===void 0?"":`, retryOf: ${X}`,W=Date.now();if(q0(this).debug(`[${G}] sending request`,x0({retryOfRequestLogID:X,method:z.method,url:Q,options:z,headers:q.headers})),z.signal?.aborted)throw new Q0;let V=new AbortController,H=await this.fetchWithTimeout(Q,q,Y,V).catch(v6),D=Date.now();if(H instanceof globalThis.Error){let N=`retrying, ${Z} attempts remaining`;if(z.signal?.aborted)throw new Q0;let L=b0(H)||/timed? ?out/i.test(String(H)+("cause"in H?String(H.cause):""));if(Z)return q0(this).info(`[${G}] connection ${L?"timed out":"failed"} - ${N}`),q0(this).debug(`[${G}] connection ${L?"timed out":"failed"} (${N})`,x0({retryOfRequestLogID:X,url:Q,durationMs:D-W,message:H.message})),this.retryRequest(z,Z,X??G);if(q0(this).info(`[${G}] connection ${L?"timed out":"failed"} - error; no more retries left`),q0(this).debug(`[${G}] connection ${L?"timed out":"failed"} (error; no more retries left)`,x0({retryOfRequestLogID:X,url:Q,durationMs:D-W,message:H.message})),L)throw new u$;throw new s0({cause:H})}let M=[...H.headers.entries()].filter(([N])=>N==="request-id").map(([N,L])=>", "+N+": "+JSON.stringify(L)).join(""),B=`[${G}${U}${M}] ${q.method} ${Q} ${H.ok?"succeeded":"failed"} with status ${H.status} in ${D-W}ms`;if(!H.ok){let N=await this.shouldRetry(H);if(Z&&N){let F=`retrying, ${Z} attempts remaining`;return await c9(H.body),q0(this).info(`${B} - ${F}`),q0(this).debug(`[${G}] response error (${F})`,x0({retryOfRequestLogID:X,url:H.url,status:H.status,headers:H.headers,durationMs:D-W})),this.retryRequest(z,Z,X??G,H.headers)}let L=N?"error; no more retries left":"error; not retryable";q0(this).info(`${B} - ${L}`);let S=await H.text().catch((F)=>v6(F).message),_=w2(S),C=_?void 0:S;throw q0(this).debug(`[${G}] response error (${L})`,x0({retryOfRequestLogID:X,url:H.url,status:H.status,headers:H.headers,message:C,durationMs:Date.now()-W})),this.makeStatusError(H.status,_,C,H.headers)}return q0(this).info(B),q0(this).debug(`[${G}] response start`,x0({retryOfRequestLogID:X,url:H.url,status:H.status,headers:H.headers,durationMs:D-W})),{response:H,options:z,controller:V,requestLogID:G,retryOfRequestLogID:X,startTime:W}}getAPIList($,Z,X){return this.requestAPIList(Z,X&&"then"in X?X.then((z)=>({method:"get",path:$,...z})):{method:"get",path:$,...X})}requestAPIList($,Z){let X=this.makeRequest(Z,null,void 0);return new l6(this,X,$)}async fetchWithTimeout($,Z,X,z){let{signal:J,method:q,...Q}=Z||{},Y=this._makeAbort(z);if(J)J.addEventListener("abort",Y,{once:!0});let G=setTimeout(Y,X),U=globalThis.ReadableStream&&Q.body instanceof globalThis.ReadableStream||typeof Q.body==="object"&&Q.body!==null&&Symbol.asyncIterator in Q.body,W={signal:z.signal,...U?{duplex:"half"}:{},method:"GET",...Q};if(q)W.method=q.toUpperCase();try{return await this.fetch.call(void 0,$,W)}finally{clearTimeout(G)}}async 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,z){let J,q=z?.get("retry-after-ms");if(q){let Y=parseFloat(q);if(!Number.isNaN(Y))J=Y}let Q=z?.get("retry-after");if(Q&&!J){let Y=parseFloat(Q);if(!Number.isNaN(Y))J=Y*1000;else J=Date.parse(Q)-Date.now()}if(!(J&&0<=J&&J<60000)){let Y=$.maxRetries??this.maxRetries;J=this.calculateDefaultRetryTimeoutMillis(Z,Y)}return await y9(J),this.makeRequest($,Z-1,X)}calculateDefaultRetryTimeoutMillis($,Z){let J=Z-$,q=Math.min(0.5*Math.pow(2,J),8),Q=1-Math.random()*0.25;return q*Q*1000}calculateNonstreamingTimeout($,Z){if(3600000*$/128000>600000||Z!=null&&$>Z)throw new A("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 600000}async buildRequest($,{retryCount:Z=0}={}){let X={...$},{method:z,path:J,query:q,defaultBaseURL:Q}=X,Y=this.buildURL(J,q,Q);if("timeout"in X)f9("timeout",X.timeout);X.timeout=X.timeout??this.timeout;let{bodyHeaders:G,body:U}=this.buildBody({options:X}),W=await this.buildHeaders({options:$,method:z,bodyHeaders:G,retryCount:Z});return{req:{method:z,headers:W,...X.signal&&{signal:X.signal},...globalThis.ReadableStream&&U instanceof globalThis.ReadableStream&&{duplex:"half"},...U&&{body:U},...this.fetchOptions??{},...X.fetchOptions??{}},url:Y,timeout:X.timeout}}async buildHeaders({options:$,method:Z,bodyHeaders:X,retryCount:z}){let J={};if(this.idempotencyHeader&&Z!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();J[this.idempotencyHeader]=$.idempotencyKey}let q=E([J,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(z),...$.timeout?{"X-Stainless-Timeout":String(Math.trunc($.timeout/1000))}:{},...m9(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders($),this._options.defaultHeaders,X,$.headers]);return this.validateHeaders(q),q.values}_makeAbort($){return()=>$.abort()}buildBody({options:{body:$,headers:Z}}){if(!$)return{bodyHeaders:void 0,body:void 0};let X=E([Z]);if(ArrayBuffer.isView($)||$ instanceof ArrayBuffer||$ instanceof DataView||typeof $==="string"&&X.values.has("content-type")||globalThis.Blob&&$ instanceof globalThis.Blob||$ instanceof FormData||$ instanceof URLSearchParams||globalThis.ReadableStream&&$ instanceof globalThis.ReadableStream)return{bodyHeaders:void 0,body:$};else if(typeof $==="object"&&((Symbol.asyncIterator in $)||(Symbol.iterator in $)&&("next"in $)&&typeof $.next==="function"))return{bodyHeaders:void 0,body:F2($)};else return K(this,s2,"f").call(this,{body:$,headers:X})}}var C5,E5,s2,SJ,j5="\\n\\nHuman:",b5="\\n\\nAssistant:",z$;var x5=j(()=>{j0();B$();y4();W0();P0();r4();PJ();_2();I5();_5();N5();S5();y4();B0();P2();B$();E5=n,s2=new WeakMap,C5=new WeakSet,SJ=function(){return this.baseURL!=="https://api.anthropic.com"};n.Anthropic=E5;n.HUMAN_PROMPT=j5;n.AI_PROMPT=b5;n.DEFAULT_TIMEOUT=600000;n.AnthropicError=A;n.APIError=t;n.APIConnectionError=s0;n.APIConnectionTimeoutError=u$;n.APIUserAbortError=Q0;n.NotFoundError=p$;n.ConflictError=l$;n.RateLimitError=n$;n.BadRequestError=m$;n.AuthenticationError=d$;n.InternalServerError=s$;n.PermissionDeniedError=c$;n.UnprocessableEntityError=i$;n.toFile=s6;z$=class z$ extends n{constructor(){super(...arguments);this.completions=new J6(this),this.messages=new T$(this),this.models=new Q6(this),this.beta=new S0(this)}};z$.Completions=J6;z$.Messages=T$;z$.Models=Q6;z$.Beta=S0});var _J={};g5(_J,{toFile:()=>s6,default:()=>z$,UnprocessableEntityError:()=>i$,RateLimitError:()=>n$,PermissionDeniedError:()=>c$,PagePromise:()=>l6,NotFoundError:()=>p$,InternalServerError:()=>s$,HUMAN_PROMPT:()=>j5,ConflictError:()=>l$,BaseAnthropic:()=>n,BadRequestError:()=>m$,AuthenticationError:()=>d$,AnthropicError:()=>A,Anthropic:()=>z$,APIUserAbortError:()=>Q0,APIPromise:()=>o0,APIError:()=>t,APIConnectionTimeoutError:()=>u$,APIConnectionError:()=>s0,AI_PROMPT:()=>b5});var CJ=j(()=>{x5();r4();_2();x5();P0();W0()});var $7=vJ(e5(),1),{program:zD,createCommand:JD,createArgument:qD,createOption:QD,CommanderError:YD,InvalidArgumentError:GD,InvalidOptionArgumentError:UD,Command:Z7,Argument:WD,Option:HD,Help:VD}=$7.default;import{readFileSync as Hz,writeFileSync as AV,existsSync as Wz}from"fs";var dH=X4(),cH=A6(),pH=uZ(),B4=P6(),lH=W6(),i0=k(),iH=m0(),nH=a(),sH=c0(),rH=p0(),jN=Q2(),aH=H4(),oH=V4(),tH=K4(),U2=Gz(),Uz=G6();var eH=dH.Composer,$V=cH.Document,ZV=pH.Schema,XV=B4.YAMLError,zV=B4.YAMLParseError,JV=B4.YAMLWarning,qV=lH.Alias,QV=i0.isAlias,YV=i0.isCollection,GV=i0.isDocument,UV=i0.isMap,WV=i0.isNode,HV=i0.isPair,VV=i0.isScalar,KV=i0.isSeq,BV=iH.Pair,DV=nH.Scalar,NV=sH.YAMLMap,IV=rH.YAMLSeq;var LV=aH.Lexer,TV=oH.LineCounter,MV=tH.Parser,b6=U2.parse,OV=U2.parseAllDocuments,wV=U2.parseDocument,D4=U2.stringify,FV=Uz.visit,RV=Uz.visitAsync;function m($){let Z=Hz($,"utf-8");return b6(Z)}function l($,Z){let X=D4(Z,{lineWidth:0});AV($,X,"utf-8")}function u($){return Hz($,"utf-8")}function f($=process.cwd()){let Z=["project.faf",".faf"];for(let z of Z){let J=`${$}/${z}`;if(Wz(J))return J}let X=$.replace(/\/[^/]+$/,"");if(X!==$)for(let z of Z){let J=`${X}/${z}`;if(Wz(J))return J}return null}var I4=null;function k6(){if(!I4)try{I4=Dz()}catch{throw Error(`faf-scoring-kernel not installed.
|
|
205
205
|
|
|
206
206
|
Run: npm install faf-scoring-kernel
|
|
207
|
-
`)}return
|
|
207
|
+
`)}return I4}function s($){return JSON.parse(k6().score_faf($))}function Nz($){return k6().validate_faf($)}function Iz($){return k6().compile_fafb($)}function Lz($){return JSON.parse(k6().decompile_fafb($))}function Tz(){return k6().sdk_version()}d();var T4=[{name:"TROPHY",indicator:`${n0("\uD83C\uDFC6")} ${n0("TROPHY")}`,threshold:100},{name:"GOLD",indicator:`${n0(b("★"))} ${n0("GOLD")}`,threshold:99},{name:"SILVER",indicator:`${w("◆")} ${w("SILVER")}`,threshold:95},{name:"BRONZE",indicator:`${w("◇")} ${w("BRONZE")}`,threshold:85},{name:"GREEN",indicator:`${b("●")} GREEN`,threshold:70},{name:"YELLOW",indicator:`${I("●")} YELLOW`,threshold:55},{name:"RED",indicator:`${I("○")} RED`,threshold:1},{name:"WHITE",indicator:`${I("♡")}`,threshold:0}];function V2($){return $.indicator}function Oz($){for(let Z of T4)if($>=Z.threshold)return Z;return T4[T4.length-1]}function r($){return{score:$.score,tier:Oz($.score),populated:$.populated,empty:$.empty,ignored:$.ignored,active:$.active,total:$.total,slots:$.slots}}d();function o($,Z,X=!1){let z=V2($.tier),J=b(`${$.score}%`);if(console.log(`${z} ${J} ${I(`${$.populated}/${$.active} slots`)} ${I("—")} ${Z}`),$.tier.name!=="TROPHY"&&$.empty>0)console.log(I(` ${$.empty} empty`));if(X)console.log(""),cV($)}function cV($){for(let[Z,X]of Object.entries($.slots)){let z=X==="populated"?w("●"):X==="slotignored"?I("—"):I("○");console.log(` ${z} ${X==="slotignored"?I(Z):Z}`)}}d();function K2($,Z={}){let X=$??f();if(!X)console.error(`Error: project.faf not found
|
|
208
208
|
|
|
209
|
-
Run 'faf init' to create one.`),process.exit(2);let z=u(X),J=n(z),q=s(J);if(Z.json){console.log(JSON.stringify(q,null,2));return}if(Z.status){console.log(`${V2(q.tier)} ${q.score}%`);return}a(q,X,Z.verbose)}import{existsSync as pH}from"fs";import{join as _z}from"path";var Q0=[{index:1,path:"project.name",description:"Project name",category:"project"},{index:2,path:"project.goal",description:"What the project does",category:"project"},{index:3,path:"project.main_language",description:"Primary language",category:"project"},{index:4,path:"human_context.who",description:"Who is building this",category:"human"},{index:5,path:"human_context.what",description:"What are they building",category:"human"},{index:6,path:"human_context.why",description:"Why does it exist",category:"human"},{index:7,path:"human_context.where",description:"Where does it run",category:"human"},{index:8,path:"human_context.when",description:"When was it started / timeline",category:"human"},{index:9,path:"human_context.how",description:"How is it built",category:"human"},{index:10,path:"stack.frontend",description:"Framework (React, Svelte, etc.)",category:"frontend"},{index:11,path:"stack.css_framework",description:"CSS framework",category:"frontend"},{index:12,path:"stack.ui_library",description:"UI component library",category:"frontend"},{index:13,path:"stack.state_management",description:"State management",category:"frontend"},{index:14,path:"stack.backend",description:"Backend framework",category:"backend"},{index:15,path:"stack.api_type",description:"API style (REST, GraphQL, etc.)",category:"backend"},{index:16,path:"stack.runtime",description:"Runtime (Node, Bun, Python, etc.)",category:"backend"},{index:17,path:"stack.database",description:"Database",category:"backend"},{index:18,path:"stack.connection",description:"Connection method (Prisma, etc.)",category:"backend"},{index:19,path:"stack.hosting",description:"Hosting platform",category:"universal"},{index:20,path:"stack.build",description:"Build tool",category:"universal"},{index:21,path:"stack.cicd",description:"CI/CD",category:"universal"},{index:22,path:"stack.monorepo_tool",description:"Monorepo tool",category:"enterprise_infra"},{index:23,path:"stack.package_manager",description:"Package manager",category:"enterprise_infra"},{index:24,path:"stack.workspaces",description:"Workspace configuration",category:"enterprise_infra"},{index:25,path:"monorepo.packages_count",description:"Number of packages",category:"enterprise_infra"},{index:26,path:"monorepo.build_orchestrator",description:"Build orchestration tool",category:"enterprise_infra"},{index:27,path:"stack.admin",description:"Admin panel",category:"enterprise_app"},{index:28,path:"stack.cache",description:"Caching layer",category:"enterprise_app"},{index:29,path:"stack.search",description:"Search engine",category:"enterprise_app"},{index:30,path:"stack.storage",description:"Object storage",category:"enterprise_app"},{index:31,path:"monorepo.versioning_strategy",description:"Version strategy",category:"enterprise_ops"},{index:32,path:"monorepo.shared_configs",description:"Shared configs",category:"enterprise_ops"},{index:33,path:"monorepo.remote_cache",description:"Remote build cache",category:"enterprise_ops"}],sN=new Map(Q0.map(($)=>[$.path,$]));var rN=Q0.filter(($)=>$.index<=21);var uH=new Set(["describe your project goal","development teams","cloud platform","null","none","unknown","n/a","not applicable"]);function x$($){if($===null||$===void 0||$==="")return!0;if(typeof $==="string")return uH.has($.toLowerCase().trim());if(Array.isArray($)&&$.length===0)return!0;if(typeof $==="object"&&Object.keys($).length===0)return!0;return!1}var k$={cli:["project","human"],library:["project","human"],mcp:["project","backend","human"],backend:["project","backend","universal","human"],"data-science":["project","backend","human"],frontend:["project","frontend","human"],fullstack:["project","frontend","backend","universal","human"],enterprise:["project","frontend","backend","universal","human","enterprise_infra","enterprise_app","enterprise_ops"]};import{existsSync as g,readFileSync as mH,readdirSync as Mz}from"fs";import{join as y}from"path";var Tz=[{name:"Next.js",slug:"nextjs",category:"frontend",signals:[{type:"dependency",key:"next"},{type:"file",pattern:"next.config.*"}]},{name:"React",slug:"react",category:"frontend",signals:[{type:"dependency",key:"react"}]},{name:"SvelteKit",slug:"sveltekit",category:"frontend",signals:[{type:"dependency",key:"@sveltejs/kit"},{type:"file",pattern:"svelte.config.*"}]},{name:"Svelte",slug:"svelte",category:"frontend",signals:[{type:"dependency",key:"svelte"}]},{name:"Vue.js",slug:"vue",category:"frontend",signals:[{type:"dependency",key:"vue"}]},{name:"Nuxt",slug:"nuxt",category:"frontend",signals:[{type:"dependency",key:"nuxt"},{type:"file",pattern:"nuxt.config.*"}]},{name:"Angular",slug:"angular",category:"frontend",signals:[{type:"dependency",key:"@angular/core"},{type:"file",pattern:"angular.json"}]},{name:"Astro",slug:"astro",category:"frontend",signals:[{type:"dependency",key:"astro"},{type:"file",pattern:"astro.config.*"}]},{name:"Solid",slug:"solid",category:"frontend",signals:[{type:"dependency",key:"solid-js"}]},{name:"Remix",slug:"remix",category:"frontend",signals:[{type:"dependency",key:"@remix-run/react"}]},{name:"Gatsby",slug:"gatsby",category:"frontend",signals:[{type:"dependency",key:"gatsby"},{type:"file",pattern:"gatsby-config.*"}]},{name:"Qwik",slug:"qwik",category:"frontend",signals:[{type:"dependency",key:"@builder.io/qwik"}]},{name:"Tailwind CSS",slug:"tailwind",category:"css",signals:[{type:"dependency",key:"tailwindcss"},{type:"devDependency",key:"tailwindcss"},{type:"file",pattern:"tailwind.config.*"}]},{name:"Bootstrap",slug:"bootstrap",category:"css",signals:[{type:"dependency",key:"bootstrap"}]},{name:"Styled Components",slug:"styled-components",category:"css",signals:[{type:"dependency",key:"styled-components"}]},{name:"shadcn/ui",slug:"shadcn",category:"ui",signals:[{type:"file",pattern:"components.json"},{type:"dependency",key:"@radix-ui/react-dialog"}]},{name:"Material UI",slug:"mui",category:"ui",signals:[{type:"dependency",key:"@mui/material"}]},{name:"Chakra UI",slug:"chakra",category:"ui",signals:[{type:"dependency",key:"@chakra-ui/react"}]},{name:"Ant Design",slug:"antd",category:"ui",signals:[{type:"dependency",key:"antd"}]},{name:"Redux",slug:"redux",category:"state",signals:[{type:"dependency",key:"@reduxjs/toolkit"}]},{name:"Zustand",slug:"zustand",category:"state",signals:[{type:"dependency",key:"zustand"}]},{name:"Jotai",slug:"jotai",category:"state",signals:[{type:"dependency",key:"jotai"}]},{name:"Pinia",slug:"pinia",category:"state",signals:[{type:"dependency",key:"pinia"}]},{name:"Express",slug:"express",category:"backend",signals:[{type:"dependency",key:"express"}]},{name:"Fastify",slug:"fastify",category:"backend",signals:[{type:"dependency",key:"fastify"}]},{name:"Hono",slug:"hono",category:"backend",signals:[{type:"dependency",key:"hono"}]},{name:"Elysia",slug:"elysia",category:"backend",signals:[{type:"dependency",key:"elysia"}]},{name:"NestJS",slug:"nestjs",category:"backend",signals:[{type:"dependency",key:"@nestjs/core"}]},{name:"Koa",slug:"koa",category:"backend",signals:[{type:"dependency",key:"koa"}]},{name:"Django",slug:"django",category:"backend",signals:[{type:"file",pattern:"manage.py"},{type:"file",pattern:"settings.py"}]},{name:"Flask",slug:"flask",category:"backend",signals:[{type:"file",pattern:"app.py"}]},{name:"FastAPI",slug:"fastapi",category:"backend",signals:[{type:"file",pattern:"main.py"}]},{name:"Rails",slug:"rails",category:"backend",signals:[{type:"file",pattern:"Gemfile"},{type:"file",pattern:"config/routes.rb"}]},{name:"Spring Boot",slug:"spring",category:"backend",signals:[{type:"file",pattern:"pom.xml"},{type:"file",pattern:"build.gradle"}]},{name:"Prisma",slug:"prisma",category:"database",signals:[{type:"dependency",key:"prisma"},{type:"devDependency",key:"prisma"},{type:"file",pattern:"prisma/schema.prisma"}]},{name:"Drizzle",slug:"drizzle",category:"database",signals:[{type:"dependency",key:"drizzle-orm"},{type:"file",pattern:"drizzle.config.*"}]},{name:"TypeORM",slug:"typeorm",category:"database",signals:[{type:"dependency",key:"typeorm"}]},{name:"Mongoose",slug:"mongoose",category:"database",signals:[{type:"dependency",key:"mongoose"}]},{name:"Vite",slug:"vite",category:"build",signals:[{type:"dependency",key:"vite"},{type:"devDependency",key:"vite"},{type:"file",pattern:"vite.config.*"}]},{name:"webpack",slug:"webpack",category:"build",signals:[{type:"dependency",key:"webpack"},{type:"devDependency",key:"webpack"},{type:"file",pattern:"webpack.config.*"}]},{name:"esbuild",slug:"esbuild",category:"build",signals:[{type:"dependency",key:"esbuild"},{type:"devDependency",key:"esbuild"}]},{name:"Turbopack",slug:"turbopack",category:"build",signals:[{type:"file",pattern:"turbo.json"}]},{name:"Jest",slug:"jest",category:"testing",signals:[{type:"devDependency",key:"jest"},{type:"file",pattern:"jest.config.*"}]},{name:"Vitest",slug:"vitest",category:"testing",signals:[{type:"devDependency",key:"vitest"}]},{name:"Playwright",slug:"playwright",category:"testing",signals:[{type:"devDependency",key:"@playwright/test"},{type:"file",pattern:"playwright.config.*"}]},{name:"Cypress",slug:"cypress",category:"testing",signals:[{type:"devDependency",key:"cypress"},{type:"file",pattern:"cypress.config.*"}]},{name:"Turborepo",slug:"turborepo",category:"monorepo",signals:[{type:"devDependency",key:"turbo"},{type:"file",pattern:"turbo.json"}]},{name:"Nx",slug:"nx",category:"monorepo",signals:[{type:"devDependency",key:"nx"},{type:"file",pattern:"nx.json"}]},{name:"Lerna",slug:"lerna",category:"monorepo",signals:[{type:"devDependency",key:"lerna"},{type:"file",pattern:"lerna.json"}]},{name:"MCP SDK",slug:"mcp",category:"ai",signals:[{type:"dependency",key:"@modelcontextprotocol/sdk"}]},{name:"Anthropic SDK",slug:"anthropic",category:"ai",signals:[{type:"dependency",key:"@anthropic-ai/sdk"}]},{name:"OpenAI SDK",slug:"openai",category:"ai",signals:[{type:"dependency",key:"openai"}]},{name:"LangChain",slug:"langchain",category:"ai",signals:[{type:"dependency",key:"langchain"}]},{name:"Vercel",slug:"vercel",category:"hosting",signals:[{type:"file",pattern:"vercel.json"}]},{name:"Netlify",slug:"netlify",category:"hosting",signals:[{type:"file",pattern:"netlify.toml"}]},{name:"Docker",slug:"docker",category:"hosting",signals:[{type:"file",pattern:"Dockerfile"},{type:"file",pattern:"docker-compose.yml"}]},{name:"Cloudflare Workers",slug:"cloudflare",category:"hosting",signals:[{type:"file",pattern:"wrangler.toml"},{type:"dependency",key:"wrangler"}]},{name:"GitHub Actions",slug:"github-actions",category:"cicd",signals:[{type:"file",pattern:".github/workflows/*.yml"}]},{name:"Commander.js",slug:"commander",category:"cli",signals:[{type:"dependency",key:"commander"}]}];function V$($){let Z=y($,"package.json");if(!g(Z))return null;try{return JSON.parse(mH(Z,"utf-8"))}catch{return null}}function dH($,Z){if(!Z.includes("*"))return g(y($,Z));let X=Z.split("/");if(X.length===1){let Y=Z.split("*")[0];try{return Mz($).some((G)=>G.startsWith(Y))}catch{return!1}}let z=y($,...X.slice(0,-1)),J=X[X.length-1],q=J.split("*")[0],Q=J.split("*")[1]||"";try{return Mz(z).some((Y)=>Y.startsWith(q)&&Y.endsWith(Q))}catch{return!1}}function cH($,Z,X){switch($.type){case"dependency":return!!Z?.dependencies?.[$.key];case"devDependency":return!!Z?.devDependencies?.[$.key];case"file":return dH(X,$.pattern);default:return!1}}function T5($){let Z=V$($);return Tz.map((X)=>{let J=X.signals.filter((q)=>cH(q,Z,$)).length/X.signals.length;return{name:X.name,slug:X.slug,category:X.category,confidence:J}}).filter((X)=>X.confidence>0).sort((X,z)=>z.confidence-X.confidence)}function Oz($){let Z=V$($);if(Z?.devDependencies?.typescript||Z?.dependencies?.typescript)return"TypeScript";if(g(y($,"tsconfig.json")))return"TypeScript";if(g(y($,"Cargo.toml")))return"Rust";if(g(y($,"go.mod")))return"Go";if(g(y($,"pyproject.toml"))||g(y($,"setup.py")))return"Python";if(g(y($,"Gemfile")))return"Ruby";if(g(y($,"pom.xml"))||g(y($,"build.gradle")))return"Java";if(g(y($,"Package.swift")))return"Swift";if(g(y($,"build.zig")))return"Zig";if(Z)return"JavaScript";return"Unknown"}function wz($){let Z=V$($),X=T5($);if(Z?.bin)return"cli";if(X.some((Q)=>Q.slug==="mcp"))return"mcp";let J=X.some((Q)=>Q.category==="frontend"),q=X.some((Q)=>Q.category==="backend");if(J&&q)return"fullstack";if(J)return"frontend";if(q)return"backend";if(Z?.main&&!Z?.bin)return"library";return"library"}function Fz($){if(g(y($,"bunfig.toml")))return"Bun";if(g(y($,"deno.json"))||g(y($,"deno.jsonc")))return"Deno";if(V$($))return"Node.js";if(g(y($,"Cargo.toml")))return"Rust";if(g(y($,"go.mod")))return"Go";return"Unknown"}function Rz($){if(g(y($,"bun.lockb"))||g(y($,"bun.lock")))return"bun";if(g(y($,"pnpm-lock.yaml")))return"pnpm";if(g(y($,"yarn.lock")))return"yarn";if(g(y($,"package-lock.json")))return"npm";return"npm"}function Az($){if(g(y($,".github/workflows")))return"GitHub Actions";if(g(y($,".gitlab-ci.yml")))return"GitLab CI";if(g(y($,".circleci")))return"CircleCI";if(g(y($,"Jenkinsfile")))return"Jenkins";return null}function Pz($){if(g(y($,"vercel.json")))return"Vercel";if(g(y($,"netlify.toml")))return"Netlify";if(g(y($,"wrangler.toml")))return"Cloudflare";if(g(y($,"Dockerfile")))return"Docker";if(g(y($,"fly.toml")))return"Fly.io";if(g(y($,"render.yaml")))return"Render";return null}function Sz($){let Z=V$($);if(Z?.devDependencies?.vite||Z?.dependencies?.vite)return"Vite";if(Z?.devDependencies?.webpack||Z?.dependencies?.webpack)return"webpack";if(Z?.devDependencies?.esbuild||Z?.dependencies?.esbuild)return"esbuild";if(g(y($,"tsconfig.json"))&&Z?.devDependencies?.typescript)return"TypeScript (tsc)";return null}function f$($){let Z=V$($),X=T5($),z=Oz($),J=wz($),q=Fz($),Q=Rz($),Y=Az($),G=Pz($),U=Sz($),W=X.find((R)=>R.category==="frontend"),H=X.find((R)=>R.category==="css"),V=X.find((R)=>R.category==="ui"),D=X.find((R)=>R.category==="state"),M=X.find((R)=>R.category==="backend"),B=X.find((R)=>R.category==="database"),N=k$[J]||k$.library,L={},S=Q0.filter((R)=>R.path.startsWith("stack."));for(let R of S){let F=R.path.replace("stack.","");if(!N.includes(R.category)){L[F]="slotignored";continue}switch(F){case"frontend":L[F]=W?.name??(J==="cli"?"CLI":"");break;case"css_framework":L[F]=H?.name??"";break;case"ui_library":L[F]=V?.name??"";break;case"state_management":L[F]=D?.name??"";break;case"backend":L[F]=M?.name??"";break;case"api_type":L[F]="";break;case"runtime":L[F]=q!=="Unknown"?q:"";break;case"database":L[F]=B?.name??"";break;case"connection":L[F]=B?.name??"";break;case"hosting":L[F]=G??"";break;case"build":L[F]=U??"";break;case"cicd":L[F]=Y??"";break;case"package_manager":L[F]=Q;break;default:L[F]="";break}}let _={},C=Q0.filter((R)=>R.path.startsWith("monorepo."));for(let R of C){let F=R.path.replace("monorepo.","");if(!N.includes(R.category))_[F]="slotignored";else _[F]=""}return{faf_version:"2.5.0",project:{name:Z?.name??$.split("/").pop()??"project",goal:Z?.description??"",main_language:z,type:J},stack:L,human_context:{who:"",what:Z?.description??"",why:"",where:"",when:"",how:""},monorepo:_}}function M5($={}){let Z=process.cwd(),X=$.output?$.output.endsWith(".faf")?$.output:_z(Z,$.output):_z(Z,"project.faf");if(pH(X)&&!$.force)console.error(`project.faf already exists. Use ${b("--force")} to overwrite.`),process.exit(1);let z=f$(Z);p(X,z);let J=u(X),q=s(n(J));if(console.log(`${w("created")} ${X}`),a(q,X),q.score<100)console.log(I(`
|
|
210
|
-
run ${b("'faf go'")} to fill empty slots`))}import{existsSync as
|
|
211
|
-
run ${b("'faf go'")} to reach 100%`))}function
|
|
212
|
-
`)}function
|
|
209
|
+
Run 'faf init' to create one.`),process.exit(2);let z=u(X),J=s(z),q=r(J);if(Z.json){console.log(JSON.stringify(q,null,2));return}if(Z.status){console.log(`${V2(q.tier)} ${b(`${q.score}%`)}`);return}o(q,X,Z.verbose)}import{existsSync as sV}from"fs";import{join as jz}from"path";var Y0=[{index:1,path:"project.name",description:"Project name",category:"project"},{index:2,path:"project.goal",description:"What the project does",category:"project"},{index:3,path:"project.main_language",description:"Primary language",category:"project"},{index:4,path:"human_context.who",description:"Who is building this",category:"human"},{index:5,path:"human_context.what",description:"What are they building",category:"human"},{index:6,path:"human_context.why",description:"Why does it exist",category:"human"},{index:7,path:"human_context.where",description:"Where does it run",category:"human"},{index:8,path:"human_context.when",description:"When was it started / timeline",category:"human"},{index:9,path:"human_context.how",description:"How is it built",category:"human"},{index:10,path:"stack.frontend",description:"Framework (React, Svelte, etc.)",category:"frontend"},{index:11,path:"stack.css_framework",description:"CSS framework",category:"frontend"},{index:12,path:"stack.ui_library",description:"UI component library",category:"frontend"},{index:13,path:"stack.state_management",description:"State management",category:"frontend"},{index:14,path:"stack.backend",description:"Backend framework",category:"backend"},{index:15,path:"stack.api_type",description:"API style (REST, GraphQL, etc.)",category:"backend"},{index:16,path:"stack.runtime",description:"Runtime (Node, Bun, Python, etc.)",category:"backend"},{index:17,path:"stack.database",description:"Database",category:"backend"},{index:18,path:"stack.connection",description:"Connection method (Prisma, etc.)",category:"backend"},{index:19,path:"stack.hosting",description:"Hosting platform",category:"universal"},{index:20,path:"stack.build",description:"Build tool",category:"universal"},{index:21,path:"stack.cicd",description:"CI/CD",category:"universal"},{index:22,path:"stack.monorepo_tool",description:"Monorepo tool",category:"enterprise_infra"},{index:23,path:"stack.package_manager",description:"Package manager",category:"enterprise_infra"},{index:24,path:"stack.workspaces",description:"Workspace configuration",category:"enterprise_infra"},{index:25,path:"monorepo.packages_count",description:"Number of packages",category:"enterprise_infra"},{index:26,path:"monorepo.build_orchestrator",description:"Build orchestration tool",category:"enterprise_infra"},{index:27,path:"stack.admin",description:"Admin panel",category:"enterprise_app"},{index:28,path:"stack.cache",description:"Caching layer",category:"enterprise_app"},{index:29,path:"stack.search",description:"Search engine",category:"enterprise_app"},{index:30,path:"stack.storage",description:"Object storage",category:"enterprise_app"},{index:31,path:"monorepo.versioning_strategy",description:"Version strategy",category:"enterprise_ops"},{index:32,path:"monorepo.shared_configs",description:"Shared configs",category:"enterprise_ops"},{index:33,path:"monorepo.remote_cache",description:"Remote build cache",category:"enterprise_ops"}],oN=new Map(Y0.map(($)=>[$.path,$]));var tN=Y0.filter(($)=>$.index<=21);var pV=new Set(["describe your project goal","development teams","cloud platform","null","none","unknown","n/a","not applicable"]);function k$($){if($===null||$===void 0||$==="")return!0;if(typeof $==="string")return pV.has($.toLowerCase().trim());if(Array.isArray($)&&$.length===0)return!0;if(typeof $==="object"&&Object.keys($).length===0)return!0;return!1}var f$={cli:["project","human"],library:["project","human"],mcp:["project","backend","human"],backend:["project","backend","universal","human"],"data-science":["project","backend","human"],frontend:["project","frontend","human"],fullstack:["project","frontend","backend","universal","human"],enterprise:["project","frontend","backend","universal","human","enterprise_infra","enterprise_app","enterprise_ops"]};import{existsSync as g,readFileSync as lV,readdirSync as Fz}from"fs";import{join as y}from"path";var wz=[{name:"Next.js",slug:"nextjs",category:"frontend",signals:[{type:"dependency",key:"next"},{type:"file",pattern:"next.config.*"}]},{name:"React",slug:"react",category:"frontend",signals:[{type:"dependency",key:"react"}]},{name:"SvelteKit",slug:"sveltekit",category:"frontend",signals:[{type:"dependency",key:"@sveltejs/kit"},{type:"file",pattern:"svelte.config.*"}]},{name:"Svelte",slug:"svelte",category:"frontend",signals:[{type:"dependency",key:"svelte"}]},{name:"Vue.js",slug:"vue",category:"frontend",signals:[{type:"dependency",key:"vue"}]},{name:"Nuxt",slug:"nuxt",category:"frontend",signals:[{type:"dependency",key:"nuxt"},{type:"file",pattern:"nuxt.config.*"}]},{name:"Angular",slug:"angular",category:"frontend",signals:[{type:"dependency",key:"@angular/core"},{type:"file",pattern:"angular.json"}]},{name:"Astro",slug:"astro",category:"frontend",signals:[{type:"dependency",key:"astro"},{type:"file",pattern:"astro.config.*"}]},{name:"Solid",slug:"solid",category:"frontend",signals:[{type:"dependency",key:"solid-js"}]},{name:"Remix",slug:"remix",category:"frontend",signals:[{type:"dependency",key:"@remix-run/react"}]},{name:"Gatsby",slug:"gatsby",category:"frontend",signals:[{type:"dependency",key:"gatsby"},{type:"file",pattern:"gatsby-config.*"}]},{name:"Qwik",slug:"qwik",category:"frontend",signals:[{type:"dependency",key:"@builder.io/qwik"}]},{name:"Tailwind CSS",slug:"tailwind",category:"css",signals:[{type:"dependency",key:"tailwindcss"},{type:"devDependency",key:"tailwindcss"},{type:"file",pattern:"tailwind.config.*"}]},{name:"Bootstrap",slug:"bootstrap",category:"css",signals:[{type:"dependency",key:"bootstrap"}]},{name:"Styled Components",slug:"styled-components",category:"css",signals:[{type:"dependency",key:"styled-components"}]},{name:"shadcn/ui",slug:"shadcn",category:"ui",signals:[{type:"file",pattern:"components.json"},{type:"dependency",key:"@radix-ui/react-dialog"}]},{name:"Material UI",slug:"mui",category:"ui",signals:[{type:"dependency",key:"@mui/material"}]},{name:"Chakra UI",slug:"chakra",category:"ui",signals:[{type:"dependency",key:"@chakra-ui/react"}]},{name:"Ant Design",slug:"antd",category:"ui",signals:[{type:"dependency",key:"antd"}]},{name:"Redux",slug:"redux",category:"state",signals:[{type:"dependency",key:"@reduxjs/toolkit"}]},{name:"Zustand",slug:"zustand",category:"state",signals:[{type:"dependency",key:"zustand"}]},{name:"Jotai",slug:"jotai",category:"state",signals:[{type:"dependency",key:"jotai"}]},{name:"Pinia",slug:"pinia",category:"state",signals:[{type:"dependency",key:"pinia"}]},{name:"Express",slug:"express",category:"backend",signals:[{type:"dependency",key:"express"}]},{name:"Fastify",slug:"fastify",category:"backend",signals:[{type:"dependency",key:"fastify"}]},{name:"Hono",slug:"hono",category:"backend",signals:[{type:"dependency",key:"hono"}]},{name:"Elysia",slug:"elysia",category:"backend",signals:[{type:"dependency",key:"elysia"}]},{name:"NestJS",slug:"nestjs",category:"backend",signals:[{type:"dependency",key:"@nestjs/core"}]},{name:"Koa",slug:"koa",category:"backend",signals:[{type:"dependency",key:"koa"}]},{name:"Django",slug:"django",category:"backend",signals:[{type:"file",pattern:"manage.py"},{type:"file",pattern:"settings.py"}]},{name:"Flask",slug:"flask",category:"backend",signals:[{type:"file",pattern:"app.py"}]},{name:"FastAPI",slug:"fastapi",category:"backend",signals:[{type:"file",pattern:"main.py"}]},{name:"Rails",slug:"rails",category:"backend",signals:[{type:"file",pattern:"Gemfile"},{type:"file",pattern:"config/routes.rb"}]},{name:"Spring Boot",slug:"spring",category:"backend",signals:[{type:"file",pattern:"pom.xml"},{type:"file",pattern:"build.gradle"}]},{name:"Prisma",slug:"prisma",category:"database",signals:[{type:"dependency",key:"prisma"},{type:"devDependency",key:"prisma"},{type:"file",pattern:"prisma/schema.prisma"}]},{name:"Drizzle",slug:"drizzle",category:"database",signals:[{type:"dependency",key:"drizzle-orm"},{type:"file",pattern:"drizzle.config.*"}]},{name:"TypeORM",slug:"typeorm",category:"database",signals:[{type:"dependency",key:"typeorm"}]},{name:"Mongoose",slug:"mongoose",category:"database",signals:[{type:"dependency",key:"mongoose"}]},{name:"Vite",slug:"vite",category:"build",signals:[{type:"dependency",key:"vite"},{type:"devDependency",key:"vite"},{type:"file",pattern:"vite.config.*"}]},{name:"webpack",slug:"webpack",category:"build",signals:[{type:"dependency",key:"webpack"},{type:"devDependency",key:"webpack"},{type:"file",pattern:"webpack.config.*"}]},{name:"esbuild",slug:"esbuild",category:"build",signals:[{type:"dependency",key:"esbuild"},{type:"devDependency",key:"esbuild"}]},{name:"Turbopack",slug:"turbopack",category:"build",signals:[{type:"file",pattern:"turbo.json"}]},{name:"Jest",slug:"jest",category:"testing",signals:[{type:"devDependency",key:"jest"},{type:"file",pattern:"jest.config.*"}]},{name:"Vitest",slug:"vitest",category:"testing",signals:[{type:"devDependency",key:"vitest"}]},{name:"Playwright",slug:"playwright",category:"testing",signals:[{type:"devDependency",key:"@playwright/test"},{type:"file",pattern:"playwright.config.*"}]},{name:"Cypress",slug:"cypress",category:"testing",signals:[{type:"devDependency",key:"cypress"},{type:"file",pattern:"cypress.config.*"}]},{name:"Turborepo",slug:"turborepo",category:"monorepo",signals:[{type:"devDependency",key:"turbo"},{type:"file",pattern:"turbo.json"}]},{name:"Nx",slug:"nx",category:"monorepo",signals:[{type:"devDependency",key:"nx"},{type:"file",pattern:"nx.json"}]},{name:"Lerna",slug:"lerna",category:"monorepo",signals:[{type:"devDependency",key:"lerna"},{type:"file",pattern:"lerna.json"}]},{name:"MCP SDK",slug:"mcp",category:"ai",signals:[{type:"dependency",key:"@modelcontextprotocol/sdk"}]},{name:"Anthropic SDK",slug:"anthropic",category:"ai",signals:[{type:"dependency",key:"@anthropic-ai/sdk"}]},{name:"OpenAI SDK",slug:"openai",category:"ai",signals:[{type:"dependency",key:"openai"}]},{name:"LangChain",slug:"langchain",category:"ai",signals:[{type:"dependency",key:"langchain"}]},{name:"Vercel",slug:"vercel",category:"hosting",signals:[{type:"file",pattern:"vercel.json"}]},{name:"Netlify",slug:"netlify",category:"hosting",signals:[{type:"file",pattern:"netlify.toml"}]},{name:"Docker",slug:"docker",category:"hosting",signals:[{type:"file",pattern:"Dockerfile"},{type:"file",pattern:"docker-compose.yml"}]},{name:"Cloudflare Workers",slug:"cloudflare",category:"hosting",signals:[{type:"file",pattern:"wrangler.toml"},{type:"dependency",key:"wrangler"}]},{name:"GitHub Actions",slug:"github-actions",category:"cicd",signals:[{type:"file",pattern:".github/workflows/*.yml"}]},{name:"Commander.js",slug:"commander",category:"cli",signals:[{type:"dependency",key:"commander"}]}];function V$($){let Z=y($,"package.json");if(!g(Z))return null;try{return JSON.parse(lV(Z,"utf-8"))}catch{return null}}function iV($,Z){if(!Z.includes("*"))return g(y($,Z));let X=Z.split("/");if(X.length===1){let Y=Z.split("*")[0];try{return Fz($).some((G)=>G.startsWith(Y))}catch{return!1}}let z=y($,...X.slice(0,-1)),J=X[X.length-1],q=J.split("*")[0],Q=J.split("*")[1]||"";try{return Fz(z).some((Y)=>Y.startsWith(q)&&Y.endsWith(Q))}catch{return!1}}function nV($,Z,X){switch($.type){case"dependency":return!!Z?.dependencies?.[$.key];case"devDependency":return!!Z?.devDependencies?.[$.key];case"file":return iV(X,$.pattern);default:return!1}}function M4($){let Z=V$($);return wz.map((X)=>{let J=X.signals.filter((q)=>nV(q,Z,$)).length/X.signals.length;return{name:X.name,slug:X.slug,category:X.category,confidence:J}}).filter((X)=>X.confidence>0).sort((X,z)=>z.confidence-X.confidence)}function Rz($){let Z=V$($);if(Z?.devDependencies?.typescript||Z?.dependencies?.typescript)return"TypeScript";if(g(y($,"tsconfig.json")))return"TypeScript";if(g(y($,"Cargo.toml")))return"Rust";if(g(y($,"go.mod")))return"Go";if(g(y($,"pyproject.toml"))||g(y($,"setup.py")))return"Python";if(g(y($,"Gemfile")))return"Ruby";if(g(y($,"pom.xml"))||g(y($,"build.gradle")))return"Java";if(g(y($,"Package.swift")))return"Swift";if(g(y($,"build.zig")))return"Zig";if(Z)return"JavaScript";return"Unknown"}function Az($){let Z=V$($),X=M4($);if(Z?.bin)return"cli";if(X.some((Q)=>Q.slug==="mcp"))return"mcp";let J=X.some((Q)=>Q.category==="frontend"),q=X.some((Q)=>Q.category==="backend");if(J&&q)return"fullstack";if(J)return"frontend";if(q)return"backend";if(Z?.main&&!Z?.bin)return"library";return"library"}function Pz($){if(g(y($,"bunfig.toml")))return"Bun";if(g(y($,"deno.json"))||g(y($,"deno.jsonc")))return"Deno";if(V$($))return"Node.js";if(g(y($,"Cargo.toml")))return"Rust";if(g(y($,"go.mod")))return"Go";return"Unknown"}function Sz($){if(g(y($,"bun.lockb"))||g(y($,"bun.lock")))return"bun";if(g(y($,"pnpm-lock.yaml")))return"pnpm";if(g(y($,"yarn.lock")))return"yarn";if(g(y($,"package-lock.json")))return"npm";return"npm"}function _z($){if(g(y($,".github/workflows")))return"GitHub Actions";if(g(y($,".gitlab-ci.yml")))return"GitLab CI";if(g(y($,".circleci")))return"CircleCI";if(g(y($,"Jenkinsfile")))return"Jenkins";return null}function Cz($){if(g(y($,"vercel.json")))return"Vercel";if(g(y($,"netlify.toml")))return"Netlify";if(g(y($,"wrangler.toml")))return"Cloudflare";if(g(y($,"Dockerfile")))return"Docker";if(g(y($,"fly.toml")))return"Fly.io";if(g(y($,"render.yaml")))return"Render";return null}function Ez($){let Z=V$($);if(Z?.devDependencies?.vite||Z?.dependencies?.vite)return"Vite";if(Z?.devDependencies?.webpack||Z?.dependencies?.webpack)return"webpack";if(Z?.devDependencies?.esbuild||Z?.dependencies?.esbuild)return"esbuild";if(g(y($,"tsconfig.json"))&&Z?.devDependencies?.typescript)return"TypeScript (tsc)";return null}function y$($){let Z=V$($),X=M4($),z=Rz($),J=Az($),q=Pz($),Q=Sz($),Y=_z($),G=Cz($),U=Ez($),W=X.find((R)=>R.category==="frontend"),V=X.find((R)=>R.category==="css"),H=X.find((R)=>R.category==="ui"),D=X.find((R)=>R.category==="state"),M=X.find((R)=>R.category==="backend"),B=X.find((R)=>R.category==="database"),N=f$[J]||f$.library,L={},S=Y0.filter((R)=>R.path.startsWith("stack."));for(let R of S){let F=R.path.replace("stack.","");if(!N.includes(R.category)){L[F]="slotignored";continue}switch(F){case"frontend":L[F]=W?.name??(J==="cli"?"CLI":"");break;case"css_framework":L[F]=V?.name??"";break;case"ui_library":L[F]=H?.name??"";break;case"state_management":L[F]=D?.name??"";break;case"backend":L[F]=M?.name??"";break;case"api_type":L[F]="";break;case"runtime":L[F]=q!=="Unknown"?q:"";break;case"database":L[F]=B?.name??"";break;case"connection":L[F]=B?.name??"";break;case"hosting":L[F]=G??"";break;case"build":L[F]=U??"";break;case"cicd":L[F]=Y??"";break;case"package_manager":L[F]=Q;break;default:L[F]="";break}}let _={},C=Y0.filter((R)=>R.path.startsWith("monorepo."));for(let R of C){let F=R.path.replace("monorepo.","");if(!N.includes(R.category))_[F]="slotignored";else _[F]=""}return{faf_version:"2.5.0",project:{name:Z?.name??$.split("/").pop()??"project",goal:Z?.description??"",main_language:z,type:J},stack:L,human_context:{who:"",what:Z?.description??"",why:"",where:"",when:"",how:""},monorepo:_}}d();function O4($={}){let Z=process.cwd(),X=$.output?$.output.endsWith(".faf")?$.output:jz(Z,$.output):jz(Z,"project.faf");if(sV(X)&&!$.force)console.error(`project.faf already exists. Use ${b("--force")} to overwrite.`),process.exit(1);let z=y$(Z);l(X,z);let J=u(X),q=r(s(J));if(console.log(`${w("created")} ${X}`),o(q,X),q.score<100)console.log(I(`
|
|
210
|
+
run ${b("'faf go'")} to fill empty slots`))}import{existsSync as rV}from"fs";import{join as aV}from"path";d();function bz(){let $=process.cwd(),Z=aV($,"project.faf"),X=y$($);if(rV(Z)){let q=m(Z),Q=xz(q,X);l(Z,Q),console.log(`${w("updated")} ${Z}`)}else{let q=X.project?.type??"library",Q=f$[q]||f$.library;for(let Y of Y0)if(!Q.includes(Y.category)){let[G,U]=Y.path.split(".");if(G==="stack"&&X.stack)X.stack[U]="slotignored";if(G==="monorepo"&&X.monorepo)X.monorepo[U]="slotignored"}l(Z,X),console.log(`${w("created")} ${Z}`)}let z=u(Z),J=r(s(z));if(o(J,Z),J.score<100)console.log(I(`
|
|
211
|
+
run ${b("'faf go'")} to reach 100%`))}function xz($,Z){let X={...$};for(let[z,J]of Object.entries(Z))if(!(z in X)||X[z]===null||X[z]===void 0)X[z]=J;else if(typeof J==="object"&&J!==null&&!Array.isArray(J))X[z]=xz(X[z]??{},J);return X}import{existsSync as h$,statSync as D2}from"fs";import{join as uz}from"path";import{readFileSync as oV,writeFileSync as tV,existsSync as eV,statSync as PI}from"fs";import{join as kz}from"path";var fz="CLAUDE.md",$K="STATUS: BI-SYNC ACTIVE";function yz($){let Z=kz($,fz);if(!eV(Z))return null;return oV(Z,"utf-8")}function gz($,Z){let X=kz($,fz);tV(X,Z,"utf-8")}function K$($){return`<!-- faf: ${[$.project?.name,$.project?.main_language,$.project?.goal].filter(Boolean).map((X)=>String(X).trim()).join(" | ")} -->`}function hz($){let Z=[],X=$.project?.name??"Project",z=$.project?.main_language??"",J=$.project?.goal??"";if(Z.push(K$($)),Z.push(""),Z.push(`# CLAUDE.md — ${X}`),Z.push(""),J)Z.push("## What This Is"),Z.push(""),Z.push(J),Z.push("");let q=$.stack??{},Q=[];if(z)Q.push(`**Language:** ${z}`);for(let[U,W]of Object.entries(q))if(W&&W!=="slotignored"&&String(W).trim()){let V=U.replace(/_/g," ").replace(/\b\w/g,(H)=>H.toUpperCase());Q.push(`**${V}:** ${W}`)}if(Q.length>0){Z.push("## Stack"),Z.push("");for(let U of Q)Z.push(`- ${U}`);Z.push("")}let Y=$.human_context??{},G=[["Who",Y.who],["What",Y.what],["Why",Y.why],["Where",Y.where],["When",Y.when],["How",Y.how]].filter(([U,W])=>W&&String(W).trim());if(G.length>0){Z.push("## Context"),Z.push("");for(let[U,W]of G)Z.push(`- **${U}:** ${W}`);Z.push("")}return Z.push("---"),Z.push(""),Z.push(`*${$K} — ${new Date().toISOString()}*`),Z.push(""),Z.join(`
|
|
212
|
+
`)}function B2($){let Z={project:{}},X=$.match(/^# CLAUDE\.md\s*[—–-]\s*(.+)$/m);if(X)Z.project.name=X[1].trim();if(!Z.project.name){let q=$.match(/\*\*Name:\*\*\s*(.+)/);if(q)Z.project.name=q[1].trim()}let z=$.match(/## What This Is\s*\n\s*\n(.+)/);if(z)Z.project.goal=z[1].trim();if(!Z.project.goal){let q=$.match(/\*\*What Building:\*\*\s*(.+)/);if(q)Z.project.goal=q[1].trim()}let J=$.match(/\*\*Language:\*\*\s*(.+)/);if(J)Z.project.main_language=J[1].trim();if(!Z.project.main_language){let q=$.match(/\*\*Main Language:\*\*\s*(.+)/);if(q)Z.project.main_language=q[1].trim()}return Z}import{readFileSync as EI,writeFileSync as ZK,existsSync as jI}from"fs";import{join as XK}from"path";function vz($,Z){ZK(XK($,"MEMORY.md"),Z,"utf-8")}d();function g$(){return process.env.FAF_PRO==="1"||process.env.FAF_PRO==="true"}function w4($={}){let Z=process.cwd(),X=f(Z);if(!X)console.error(`Error: project.faf not found
|
|
213
213
|
|
|
214
|
-
Run 'faf init' to create one.`),process.exit(2);let z=
|
|
214
|
+
Run 'faf init' to create one.`),process.exit(2);let z=uz(Z,"CLAUDE.md"),J=uz(Z,"MEMORY.md"),q=$.direction??"auto";if(q==="auto")mz(X,z,Z);else if(q==="push")dz(X,Z);else if(q==="pull")cz(X,z);if(g$())pz(X,J,Z);if($.watch)console.log(I("watching for changes... (Ctrl+C to stop)")),JK(X,z,J,Z)}function mz($,Z,X){let z=D2($).mtimeMs,J=h$(Z)?D2(Z).mtimeMs:0;if(!h$(Z)||z>J)dz($,X);else cz($,Z)}function dz($,Z){let X=m($),z=hz(X);gz(Z,z),console.log(`${w("◆")} sync .faf → CLAUDE.md ${I("← bi-sync")}`);let J=r(s(u($)));o(J,$)}function cz($,Z){let X=yz(Z.replace("/CLAUDE.md",""));if(!X){console.error("CLAUDE.md not found.");return}let z=B2(X),J=m($);if(z.project?.name)J.project={...J.project,name:z.project.name};if(z.project?.goal)J.project={...J.project,goal:z.project.goal};if(z.project?.main_language)J.project={...J.project,main_language:z.project.main_language};l($,J),console.log(`${w("◆")} sync CLAUDE.md → .faf ${I("← bi-sync")}`);let q=r(s(u($)));o(q,$)}function pz($,Z,X){let z=m($),J=D2($).mtimeMs,q=h$(Z)?D2(Z).mtimeMs:0;if(!h$(Z)||J>q){let Q=zK(z);vz(X,Q),console.log(`${w("◆")} sync .faf → MEMORY.md ${I("← tri-sync")}`)}else console.log(`${w("◆")} sync MEMORY.md → .faf ${I("← tri-sync")}`)}function zK($){let Z=$.project??{},X=[`# ${Z.name??"Project"} — Memory Topics`,"","> Generated by faf sync (tri-sync)",""];if(Z.name)X.push(`- **Project:** ${Z.name}`);if(Z.goal)X.push(`- **Goal:** ${Z.goal}`);if(Z.main_language)X.push(`- **Language:** ${Z.main_language}`);if(Z.type)X.push(`- **Type:** ${Z.type}`);return X.join(`
|
|
215
215
|
`)+`
|
|
216
|
-
`}function
|
|
216
|
+
`}function JK($,Z,X,z){let{watch:J}=J0("fs"),q=null,Q=()=>{if(q)clearTimeout(q);q=setTimeout(()=>{if(console.log(I("change detected...")),mz($,Z,z),g$())pz($,X,z)},200)};if(J($,Q),h$(Z))J(Z,Q);if(g$()&&h$(X))J(X,Q)}import{writeFileSync as qK}from"fs";d();function lz($,Z={}){let X=$??f();if(!X)console.error(`Error: project.faf not found
|
|
217
217
|
|
|
218
|
-
Run 'faf init' to create one.`),process.exit(2);let z=u(X),J=
|
|
218
|
+
Run 'faf init' to create one.`),process.exit(2);let z=u(X),J=Iz(z),q=Z.output??X.replace(/\.faf$/,".fafb");qK(q,J),console.log(`${w("compiled")} ${q} ${I(`(${J.length} bytes)`)}`)}import{readFileSync as QK}from"fs";function iz($,Z={}){if(!$)console.error("Error: Please specify a .fafb file to decompile."),process.exit(1);let X=new Uint8Array(QK($));if(String.fromCharCode(X[0],X[1],X[2],X[3])!=="FAFB")console.error("Error: Not a valid .fafb file (missing FAFB magic bytes)."),process.exit(3);let z=Lz(X);console.log(JSON.stringify(z,null,2))}function nz($){let Z=[];if(!$||typeof $!=="object")return Z.push("File is not a valid YAML mapping"),{valid:!1,errors:Z};let X=$;if(!X.faf_version)Z.push("Missing required field: faf_version");if(!X.project?.name)Z.push("Missing required field: project.name");return{valid:Z.length===0,errors:Z}}d();function F4($,Z={}){let X=$??f();if(!X)console.error(`Error: project.faf not found
|
|
219
219
|
|
|
220
|
-
Run 'faf init' to create one.`),process.exit(2);let z=m(X),J=
|
|
221
|
-
--strict requires 100%`)),process.exit(1)}import{writeFileSync as
|
|
222
|
-
`)}function
|
|
223
|
-
`)}function
|
|
224
|
-
`)}function
|
|
220
|
+
Run 'faf init' to create one.`),process.exit(2);let z=m(X),J=nz(z);if(!J.valid){console.log(`${b("invalid")} ${X}`);for(let Y of J.errors)console.log(` ${I("x")} ${Y}`);process.exit(3)}let q=u(X);if(!Nz(q))console.log(`${b("invalid yaml")} ${X}`),process.exit(3);console.log(`${w("valid")} ${X}`);let Q=r(s(q));if(o(Q,X),Z.strict&&Q.score<100)console.log(I(`
|
|
221
|
+
--strict requires 100%`)),process.exit(1)}import{writeFileSync as YK}from"fs";import{join as GK}from"path";function UK($){let Z=[];if(Z.push(K$($)),Z.push(""),Z.push(`# AGENTS.md — ${$.project?.name??"Project"}`),Z.push(""),Z.push("> Auto-generated from project.faf — do not edit directly"),Z.push(""),Z.push("## Project Context"),Z.push(""),$.project?.name)Z.push(`- **Name:** ${$.project.name}`);if($.project?.goal)Z.push(`- **Goal:** ${$.project.goal}`);if($.project?.main_language)Z.push(`- **Language:** ${$.project.main_language}`);if(Z.push(""),Z.push("## Stack"),Z.push(""),$.stack){for(let[X,z]of Object.entries($.stack))if(z&&z!=="slotignored"&&z!=="")Z.push(`- **${X}:** ${z}`)}if($.human_context){Z.push(""),Z.push("## Human Context"),Z.push("");for(let[X,z]of Object.entries($.human_context))if(z&&z!=="")Z.push(`- **${X}:** ${z}`)}return Z.push(""),Z.join(`
|
|
222
|
+
`)}function sz($,Z){YK(GK($,"AGENTS.md"),UK(Z),"utf-8")}import{writeFileSync as WK}from"fs";import{join as HK}from"path";function VK($){let Z=[];if(Z.push(K$($)),Z.push(""),Z.push("# .cursorrules"),Z.push(`# Auto-generated from project.faf — ${$.project?.name??"Project"}`),Z.push(""),$.project?.main_language)Z.push(`language: ${$.project.main_language}`);if($.stack){Z.push(""),Z.push("# Stack");for(let[X,z]of Object.entries($.stack))if(z&&z!=="slotignored"&&z!=="")Z.push(`# ${X}: ${z}`)}return Z.push(""),Z.join(`
|
|
223
|
+
`)}function rz($,Z){WK(HK($,".cursorrules"),VK(Z),"utf-8")}import{writeFileSync as KK}from"fs";import{join as BK}from"path";function DK($){let Z=[];if(Z.push(K$($)),Z.push(""),Z.push(`# GEMINI.md — ${$.project?.name??"Project"}`),Z.push(""),Z.push("> Auto-generated from project.faf"),Z.push(""),$.project?.name)Z.push(`Project: ${$.project.name}`);if($.project?.goal)Z.push(`Goal: ${$.project.goal}`);if($.project?.main_language)Z.push(`Language: ${$.project.main_language}`);if($.stack){Z.push(""),Z.push("## Stack");for(let[X,z]of Object.entries($.stack))if(z&&z!=="slotignored"&&z!=="")Z.push(`- ${X}: ${z}`)}return Z.push(""),Z.join(`
|
|
224
|
+
`)}function az($,Z){KK(BK($,"GEMINI.md"),DK(Z),"utf-8")}d();function f6($={}){let Z=f();if(!Z)console.error(`Error: project.faf not found
|
|
225
225
|
|
|
226
|
-
Run 'faf init' to create one.`),process.exit(2);let X=process.cwd(),z=m(Z),J=$.all||!$.agents&&!$.cursor&&!$.gemini&&!$.conductor;if(J||$.agents)
|
|
226
|
+
Run 'faf init' to create one.`),process.exit(2);let X=process.cwd(),z=m(Z),J=$.all||!$.agents&&!$.cursor&&!$.gemini&&!$.conductor;if(J||$.agents)sz(X,z),console.log(" AGENTS.md");if(J||$.cursor)rz(X,z),console.log(" .cursorrules");if(J||$.gemini)az(X,z),console.log(" GEMINI.md");console.log(`${w("exported")} ${I(`from ${Z}`)}`)}import{mkdirSync as NK,rmSync as IK}from"fs";import{join as oz}from"path";import{execSync as LK}from"child_process";import{tmpdir as TK}from"os";d();function tz($){if(!$)console.error(`Error: Please provide a GitHub URL.
|
|
227
227
|
|
|
228
|
-
Usage: faf git <url>`),process.exit(1);let Z=$.endsWith(".git")?$:`${$}.git`,X=
|
|
229
|
-
`);let $=new Map;for(let Z of
|
|
228
|
+
Usage: faf git <url>`),process.exit(1);let Z=$.endsWith(".git")?$:`${$}.git`,X=oz(TK(),`faf-git-${Date.now()}`);NK(X,{recursive:!0});try{console.log(I(`cloning ${$}...`)),LK(`git clone --depth 1 ${Z} ${X}`,{stdio:"pipe"});let z=y$(X),J=oz(process.cwd(),"project.faf");l(J,z),console.log(`${w("created")} ${J}`);let q=u(J),Q=r(s(q));o(Q,J)}finally{IK(X,{recursive:!0,force:!0})}}d();function $9($={}){if($.version||Object.keys($).length===0)OK()}function OK(){let $=ez();console.log(`${w(b("faf"))} v${$.version}`),console.log(I(`kernel ${Tz()} IANA application/vnd.faf+yaml`))}var y6=[{name:"HTML",extensions:[".html",".htm"],category:"web"},{name:"CSS",extensions:[".css"],category:"web"},{name:"JavaScript",extensions:[".js",".mjs",".cjs"],category:"web"},{name:"TypeScript",extensions:[".ts",".tsx",".mts",".cts"],category:"web"},{name:"JSX",extensions:[".jsx"],category:"web"},{name:"Vue",extensions:[".vue"],category:"web"},{name:"Svelte",extensions:[".svelte"],category:"web"},{name:"Astro",extensions:[".astro"],category:"web"},{name:"JSON",extensions:[".json"],category:"data"},{name:"YAML",extensions:[".yml",".yaml"],category:"data"},{name:"TOML",extensions:[".toml"],category:"data"},{name:"XML",extensions:[".xml"],category:"data"},{name:"CSV",extensions:[".csv"],category:"data"},{name:"INI",extensions:[".ini",".cfg"],category:"config"},{name:"Env",extensions:[".env"],category:"config"},{name:"Dockerfile",extensions:["Dockerfile"],category:"config"},{name:"Rust",extensions:[".rs"],category:"systems"},{name:"Go",extensions:[".go"],category:"systems"},{name:"C",extensions:[".c",".h"],category:"systems"},{name:"C++",extensions:[".cpp",".cc",".hpp"],category:"systems"},{name:"Zig",extensions:[".zig"],category:"systems"},{name:"Python",extensions:[".py"],category:"scripting"},{name:"Ruby",extensions:[".rb"],category:"scripting"},{name:"Shell",extensions:[".sh",".bash",".zsh"],category:"scripting"},{name:"Lua",extensions:[".lua"],category:"scripting"},{name:"Java",extensions:[".java"],category:"jvm"},{name:"Kotlin",extensions:[".kt",".kts"],category:"jvm"},{name:"Scala",extensions:[".scala"],category:"jvm"},{name:"C#",extensions:[".cs"],category:"dotnet"},{name:"F#",extensions:[".fs"],category:"dotnet"},{name:"Swift",extensions:[".swift"],category:"mobile"},{name:"Dart",extensions:[".dart"],category:"mobile"},{name:"Markdown",extensions:[".md",".mdx"],category:"docs"},{name:"LaTeX",extensions:[".tex"],category:"docs"},{name:"reStructuredText",extensions:[".rst"],category:"docs"},{name:"FAF",extensions:[".faf"],category:"faf"},{name:"FAFb",extensions:[".fafb"],category:"faf"}];d();function Z9(){console.log(`${w("formats")} ${I("— supported file types")}
|
|
229
|
+
`);let $=new Map;for(let Z of y6){let X=$.get(Z.category)??[];X.push(Z),$.set(Z.category,X)}for(let[Z,X]of $){console.log(` ${b(Z)}`);for(let z of X)console.log(` ${z.name} ${I(z.extensions.join(", "))}`);console.log()}console.log(I(` ${y6.length} formats across ${$.size} categories`))}d();import{readdirSync as wK,rmSync as FK}from"fs";import{tmpdir as RK}from"os";import{join as AK}from"path";function X9(){let $=RK(),Z=0;try{let X=wK($);for(let z of X)if(z.startsWith("faf-git-"))FK(AK($,z),{recursive:!0,force:!0}),Z++}catch{}if(Z>0)console.log(`${w("cleared")} ${Z} cached director${Z===1?"y":"ies"}`);else console.log(I("nothing to clear"))}function z9($={}){let Z=f();if(!Z)console.error(`Error: project.faf not found
|
|
230
230
|
|
|
231
|
-
Run 'faf init' to create one.`),process.exit(2);if($.json){let X=m(Z);console.log(JSON.stringify(X,null,2))}else{let X=u(Z);console.log(X)}}function
|
|
231
|
+
Run 'faf init' to create one.`),process.exit(2);if($.json){let X=m(Z);console.log(JSON.stringify(X,null,2))}else{let X=u(Z);console.log(X)}}d();function J9(){let $=f();if(!$)console.error(`Error: project.faf not found
|
|
232
232
|
|
|
233
|
-
Run 'faf init' to create one.`),process.exit(2);let Z=m($),X=[];for(let z of
|
|
234
|
-
`))}import{existsSync as
|
|
233
|
+
Run 'faf init' to create one.`),process.exit(2);let Z=m($),X=[];for(let z of Y0){let[J,q]=z.path.split("."),Y=Z[J]?.[q];if(k$(Y)||Y==="slotignored")continue;X.push(`${z.path}: ${Y}`)}if(X.length===0){console.log(I("no populated slots"));return}console.log(X.join(`
|
|
234
|
+
`))}import{existsSync as PK,statSync as q9}from"fs";import{join as SK}from"path";d();var _K=["CLAUDE.md","AGENTS.md",".cursorrules","GEMINI.md"];function Q9(){let $=f();if(!$)console.error(`Error: project.faf not found
|
|
235
235
|
|
|
236
|
-
Run 'faf init' to create one.`),process.exit(2);let Z=process.cwd(),X=
|
|
237
|
-
`),console.log(` ${b(".faf")} ${I(
|
|
238
|
-
run ${b("'faf sync'")} to resolve drift`))}function
|
|
236
|
+
Run 'faf init' to create one.`),process.exit(2);let Z=process.cwd(),X=q9($).mtimeMs;console.log(`${w("drift")} ${I("— context file sync status")}
|
|
237
|
+
`),console.log(` ${b(".faf")} ${I(R4(X))}`);let z=0;for(let J of _K){let q=SK(Z,J);if(!PK(q)){console.log(` ${I("○")} ${J} ${I("missing")}`);continue}let Q=q9(q).mtimeMs,Y=Q-X;if(Math.abs(Y)<1000)console.log(` ${w("●")} ${J} ${I("in sync")}`);else if(Y>0)console.log(` ${b("!")} ${J} ${b("newer")} ${I(R4(Q))}`),z++;else console.log(` ${I("○")} ${J} ${I("older")} ${I(R4(Q))}`),z++}if(z>0)console.log(I(`
|
|
238
|
+
run ${b("'faf sync'")} to resolve drift`))}function R4($){let Z=Date.now()-$,X=Math.floor(Z/1000);if(X<60)return`${X}s ago`;let z=Math.floor(X/60);if(z<60)return`${z}m ago`;let J=Math.floor(z/60);if(J<24)return`${J}h ago`;return`${Math.floor(J/24)}d ago`}d();function Y9($,Z){if(!$||Z===void 0)console.error(`Usage: faf edit <path> <value>
|
|
239
239
|
|
|
240
240
|
Example: faf edit project.name "My Project"`),process.exit(1);let X=f();if(!X)console.error(`Error: project.faf not found
|
|
241
241
|
|
|
242
|
-
Run 'faf init' to create one.`),process.exit(2);let z=m(X),J=$.split(".");if(J.length!==2)console.error("Error: path must be section.field (e.g. project.name)"),process.exit(1);let[q,Q]=J;if(!z[q]||typeof z[q]!=="object")z[q]={};z[q][Q]=Z,
|
|
242
|
+
Run 'faf init' to create one.`),process.exit(2);let z=m(X),J=$.split(".");if(J.length!==2)console.error("Error: path must be section.field (e.g. project.name)"),process.exit(1);let[q,Q]=J;if(!z[q]||typeof z[q]!=="object")z[q]={};z[q][Q]=Z,l(X,z),console.log(`${w("updated")} ${$} ${I("→")} ${Z}`)}import{existsSync as N2,readFileSync as A4}from"fs";import{join as g6}from"path";d();function G9(){let $=process.cwd(),Z=[],X={faf_version:"2.5.0",project:{}},z=g6($,"CLAUDE.md");if(N2(z)){let G=A4(z,"utf-8"),U=B2(G);if(U.project?.name)X.project.name=U.project.name;if(U.project?.goal)X.project.goal=U.project.goal;if(U.project?.main_language)X.project.main_language=U.project.main_language;Z.push("CLAUDE.md")}let J=g6($,"AGENTS.md");if(N2(J)){let G=A4(J,"utf-8");if(!X.project.name){let U=G.match(/^#\s+(.+)/m);if(U)X.project.name=U[1].trim()}Z.push("AGENTS.md")}let q=g6($,"GEMINI.md");if(N2(q)){let G=A4(q,"utf-8");if(!X.project.name){let U=G.match(/^#\s+(.+)/m);if(U)X.project.name=U[1].trim()}Z.push("GEMINI.md")}let Q=g6($,".cursorrules");if(N2(Q))Z.push(".cursorrules");if(Z.length===0)console.error("No context files found (CLAUDE.md, AGENTS.md, GEMINI.md, .cursorrules)."),process.exit(2);let Y=f($);if(Y){let G=m(Y);if(!G.project)G.project={};if(X.project.name&&!G.project.name)G.project.name=X.project.name;if(X.project.goal&&!G.project.goal)G.project.goal=X.project.goal;if(X.project.main_language&&!G.project.main_language)G.project.main_language=X.project.main_language;l(Y,G),console.log(`${w("◆")} recover merged into ${Y}`)}else{let G=g6($,"project.faf");l(G,X),console.log(`${w("◆")} recover created ${G}`)}console.log(I(` sources: ${Z.join(", ")}`))}d();var h6="2.5.0";function U9($={}){let Z=f();if(!Z)console.error(`Error: project.faf not found
|
|
243
243
|
|
|
244
|
-
Run 'faf init' to create one.`),process.exit(2);let X=m(Z),z=X.faf_version??"unknown";if(z===
|
|
245
|
-
`),console.log(` Status: ${$?
|
|
246
|
-
`);let $=[["tri-sync",".faf ↔ CLAUDE.md ↔ MEMORY.md"],["enterprise slots","33-slot scoring (slots 22-33)"],["advanced analytics","Drift tracking & team metrics"]];for(let[Z,X]of $)console.log(` ${w("◆")} ${b(Z)} ${I("—")} ${X}`);console.log("")}function
|
|
247
|
-
`),console.log(" Set FAF_PRO=1 in your environment to enable Pro features."),console.log(""),console.log(I(" export FAF_PRO=1")),console.log("");try{
|
|
244
|
+
Run 'faf init' to create one.`),process.exit(2);let X=m(Z),z=X.faf_version??"unknown";if(z===h6){console.log(`${w("◆")} migrate already at v${h6}`);return}if(X.faf_version=h6,!X.project)X.project={};if(!X.stack)X.stack={};if(!X.human_context)X.human_context={};if(!X.monorepo)X.monorepo={};if($.dryRun){console.log(`${w("◆")} migrate ${I("(dry run)")} v${z} → v${h6}`),console.log(I(` would update ${Z}`));return}l(Z,X),console.log(`${w("◆")} migrate v${z} → v${h6}`),console.log(I(` updated ${Z}`))}d();function R9($){if($==="features")mK();else if($==="activate")dK();else uK()}function uK(){let $=g$();if(console.log(`${w("pro")} ${I("— FAF Pro status")}
|
|
245
|
+
`),console.log(` Status: ${$?n0(b("PRO")):b("Free")}`),console.log(""),!$)console.log(I(" Upgrade: faf pro activate"))}function mK(){console.log(`${w("pro")} ${I("— Pro features")}
|
|
246
|
+
`);let $=[["tri-sync",".faf ↔ CLAUDE.md ↔ MEMORY.md"],["enterprise slots","33-slot scoring (slots 22-33)"],["advanced analytics","Drift tracking & team metrics"]];for(let[Z,X]of $)console.log(` ${w("◆")} ${b(Z)} ${I("—")} ${X}`);console.log("")}function dK(){console.log(`${w("pro")} ${I("— activate")}
|
|
247
|
+
`),console.log(" Set FAF_PRO=1 in your environment to enable Pro features."),console.log(""),console.log(I(" export FAF_PRO=1")),console.log("");try{F9()("https://faf.one/pro")}catch{console.log(I(" Visit: https://faf.one/pro"))}}import{gzipSync as cK}from"zlib";d();function A9($={}){let Z=f();if(!Z)console.error(`Error: project.faf not found
|
|
248
248
|
|
|
249
|
-
Run 'faf init' to create one.`),process.exit(2);let X=u(Z),J=
|
|
250
|
-
`),console.log(` ${q}`),$.copy)try{let{execSync:Q}=
|
|
249
|
+
Run 'faf init' to create one.`),process.exit(2);let X=u(Z),J=cK(Buffer.from(X)).toString("base64url");if($.raw){console.log(J);return}let q=`https://faf.one/share?d=${J}`;if(console.log(`${w("◆")} share ${I(Z)}
|
|
250
|
+
`),console.log(` ${q}`),$.copy)try{let{execSync:Q}=J0("child_process"),Y=process.platform;if(Y==="darwin")Q("pbcopy",{input:q});else if(Y==="linux")Q("xclip -selection clipboard",{input:q});console.log(I(`
|
|
251
251
|
copied to clipboard`))}catch{console.log(I(`
|
|
252
|
-
copy failed — install xclip or pbcopy`))}}import{mkdirSync as
|
|
252
|
+
copy failed — install xclip or pbcopy`))}}import{mkdirSync as pK,writeFileSync as lK,rmSync as iK}from"fs";import{tmpdir as nK}from"os";import{join as P9}from"path";d();function S9(){let $=P9(nK(),`faf-demo-${Date.now()}`);pK($,{recursive:!0}),console.log(`${w("demo")} ${I("— FAF in action")}
|
|
253
253
|
`);let Z=`faf_version: 2.5.0
|
|
254
254
|
project:
|
|
255
255
|
name: acme-app
|
|
@@ -275,25 +275,25 @@ human_context:
|
|
|
275
275
|
where: Cloud (Vercel + AWS)
|
|
276
276
|
when: "2026"
|
|
277
277
|
how: Agile sprints with CI/CD
|
|
278
|
-
`,X=
|
|
279
|
-
`)),console.log(` ${b("2.")} Scoring...`);let z=s(
|
|
280
|
-
${I(' Demo complete. Run "faf init" in your project to get started.')}`)}function
|
|
281
|
-
`);for(let Q of q)console.log(` ${b(`#${Q.index}`)} ${Q.path} ${I("—")} ${Q.description} ${I(`[${Q.category}]`)}`);console.log(""),J+=q.length}}if(z||Z.formats){let q=
|
|
282
|
-
`);for(let Q of q)console.log(` ${b(Q.name)} ${I(Q.extensions.join(", "))} ${I(`[${Q.category}]`)}`);console.log(""),J+=q.length}}if(J===0)console.log(I(` No results for "${$}"`))}import{writeFileSync as
|
|
278
|
+
`,X=P9($,"project.faf");lK(X,Z),console.log(` ${b("1.")} Created sample project.faf`),console.log(I(` ${X}
|
|
279
|
+
`)),console.log(` ${b("2.")} Scoring...`);let z=r(s(u(X)));console.log(""),o(z,"project.faf",!0),iK($,{recursive:!0,force:!0}),console.log(`
|
|
280
|
+
${I(' Demo complete. Run "faf init" in your project to get started.')}`)}d();function _9($,Z={}){if(!$)console.error("Usage: faf search <keyword>"),process.exit(2);let X=$.toLowerCase(),z=!Z.slots&&!Z.formats,J=0;if(z||Z.slots){let q=Y0.filter((Q)=>Q.path.toLowerCase().includes(X)||Q.description.toLowerCase().includes(X)||Q.category.toLowerCase().includes(X));if(q.length>0){console.log(`${w("slots")} ${I(`— ${q.length} match${q.length===1?"":"es"}`)}
|
|
281
|
+
`);for(let Q of q)console.log(` ${b(`#${Q.index}`)} ${Q.path} ${I("—")} ${Q.description} ${I(`[${Q.category}]`)}`);console.log(""),J+=q.length}}if(z||Z.formats){let q=y6.filter((Q)=>Q.name.toLowerCase().includes(X)||Q.extensions.some((Y)=>Y.toLowerCase().includes(X))||Q.category.toLowerCase().includes(X));if(q.length>0){console.log(`${w("formats")} ${I(`— ${q.length} match${q.length===1?"":"es"}`)}
|
|
282
|
+
`);for(let Q of q)console.log(` ${b(Q.name)} ${I(Q.extensions.join(", "))} ${I(`[${Q.category}]`)}`);console.log(""),J+=q.length}}if(J===0)console.log(I(` No results for "${$}"`))}import{writeFileSync as sK}from"fs";d();function C9($={}){let Z=f();if(!Z)console.error(`Error: project.faf not found
|
|
283
283
|
|
|
284
|
-
Run 'faf init' to create one.`),process.exit(2);let X=m(Z),z=u(Z),J=s(
|
|
284
|
+
Run 'faf init' to create one.`),process.exit(2);let X=m(Z),z=u(Z),J=r(s(z)),q={taf_version:"1.0.0",generated:new Date().toISOString(),source:Z,project:X.project?.name??"unknown",faf_version:X.faf_version??"unknown",score:J.score,tier:J.tier.name,populated:J.populated,active:J.active,total:J.total,slots:J.slots},Q=JSON.stringify(q,null,2);if($.output)sK($.output,Q,"utf-8"),console.log(`${w("◆")} taf receipt written to ${$.output}`);else console.log(Q)}import{createInterface as rK}from"readline";import{existsSync as E9,readFileSync as aK,writeFileSync as oK,unlinkSync as tK}from"fs";import{join as eK}from"path";d();var $B=".faf-session.json";function ZB($,Z){let X=Z.split("."),z=$;for(let J of X){if(z===null||z===void 0||typeof z!=="object")return;z=z[J]}return z}function XB($,Z,X){let z=Z.split("."),J=$;for(let q=0;q<z.length-1;q++){if(!J[z[q]]||typeof J[z[q]]!=="object")J[z[q]]={};J=J[z[q]]}J[z[z.length-1]]=X}async function j9($={}){let Z=f();if(!Z)console.error(`Error: project.faf not found
|
|
285
285
|
|
|
286
|
-
Run 'faf init' to create one.`),process.exit(2);let X=process.cwd(),z=
|
|
287
|
-
`));let Y=
|
|
288
|
-
session saved. Resume with: faf go --resume`));break}if(M.toLowerCase()==="skip"||M.trim()==="")continue;
|
|
289
|
-
${w("◆")} go filled ${U} slot${U===1?"":"s"}`);let
|
|
290
|
-
`),console.log(` ${b("faf ai enhance")} ${I("— fill empty slots via Claude")}`),console.log(` ${b("faf ai analyze")} ${I("— get improvement suggestions")}`),console.log(""),console.log(I(" Requires ANTHROPIC_API_KEY environment variable."))}async function
|
|
286
|
+
Run 'faf init' to create one.`),process.exit(2);let X=process.cwd(),z=eK(X,$B),J=0;if($.resume&&E9(z))try{J=JSON.parse(aK(z,"utf-8")).slotIndex,console.log(I(` resuming from slot #${J+1}`))}catch{}let q=m(Z),Q=Y0.filter((H)=>{let D=ZB(q,H.path);return k$(D)&&D!=="slotignored"});if(Q.length===0){console.log(`${w("◆")} go all slots populated`);let H=r(s(u(Z)));o(H,Z);return}console.log(`${w("go")} ${I("— guided interview")}`),console.log(I(` ${Q.length} empty slots. Enter a value, "skip" to skip, or "quit" to stop.
|
|
287
|
+
`));let Y=rK({input:process.stdin,output:process.stdout}),G=(H)=>new Promise((D)=>Y.question(H,D)),U=0,W=Q.slice(J);for(let H=0;H<W.length;H++){let D=W[H],M=await G(` ${b(`#${D.index}`)} ${D.description} ${I(`(${D.path})`)}: `);if(M.toLowerCase()==="quit"){let B={slotIndex:J+H,fafPath:Z};oK(z,JSON.stringify(B),"utf-8"),console.log(I(`
|
|
288
|
+
session saved. Resume with: faf go --resume`));break}if(M.toLowerCase()==="skip"||M.trim()==="")continue;XB(q,D.path,M.trim()),U++}if(Y.close(),U>0)l(Z,q),console.log(`
|
|
289
|
+
${w("◆")} go filled ${U} slot${U===1?"":"s"}`);let V=r(s(u(Z)));if(o(V,Z),E9(z))try{tK(z)}catch{}}d();function mB($,Z){let X=Z.split("."),z=$;for(let J of X){if(z===null||z===void 0||typeof z!=="object")return;z=z[J]}return z}function dB($,Z,X){let z=Z.split("."),J=$;for(let q=0;q<z.length-1;q++){if(!J[z[q]]||typeof J[z[q]]!=="object")J[z[q]]={};J=J[z[q]]}J[z[z.length-1]]=X}async function EJ($){if($==="analyze")await pB();else if($==="enhance")await cB();else console.log(`${w("ai")} ${I("— AI-powered features")}
|
|
290
|
+
`),console.log(` ${b("faf ai enhance")} ${I("— fill empty slots via Claude")}`),console.log(` ${b("faf ai analyze")} ${I("— get improvement suggestions")}`),console.log(""),console.log(I(" Requires ANTHROPIC_API_KEY environment variable."))}async function jJ(){let $=process.env.ANTHROPIC_API_KEY;if(!$)console.error(`Error: ANTHROPIC_API_KEY not set.
|
|
291
291
|
|
|
292
|
-
export ANTHROPIC_API_KEY=sk-...`),process.exit(2);try{let{default:Z}=await Promise.resolve().then(() => (
|
|
292
|
+
export ANTHROPIC_API_KEY=sk-...`),process.exit(2);try{let{default:Z}=await Promise.resolve().then(() => (CJ(),_J));return new Z({apiKey:$})}catch{console.error(`Error: @anthropic-ai/sdk not installed.
|
|
293
293
|
|
|
294
|
-
npm install @anthropic-ai/sdk`),process.exit(2)}}async function
|
|
294
|
+
npm install @anthropic-ai/sdk`),process.exit(2)}}async function cB(){let $=f();if(!$)console.error(`Error: project.faf not found
|
|
295
295
|
|
|
296
|
-
Run 'faf init' to create one.`),process.exit(2);let Z=m($),X=u($),z=
|
|
296
|
+
Run 'faf init' to create one.`),process.exit(2);let Z=m($),X=u($),z=Y0.filter((G)=>{let U=mB(Z,G.path);return k$(U)&&U!=="slotignored"});if(z.length===0){console.log(`${w("◆")} ai enhance all slots populated`);return}console.log(`${w("ai")} enhance ${I(`filling ${z.length} empty slots...`)}`);let J=await jJ(),q=z.map((G)=>`- ${G.path}: ${G.description}`).join(`
|
|
297
297
|
`),Q=`Given this project .faf file:
|
|
298
298
|
|
|
299
299
|
${X}
|
|
@@ -303,14 +303,14 @@ Fill in these empty slots with reasonable values based on the project context. R
|
|
|
303
303
|
Empty slots:
|
|
304
304
|
${q}
|
|
305
305
|
|
|
306
|
-
Respond with ONLY valid JSON, no markdown fences.`,Y=await J.messages.create({model:"claude-haiku-4-5-20251001",max_tokens:1024,messages:[{role:"user",content:Q}]});try{let G=Y.content[0].text,U=JSON.parse(G),W=0;for(let
|
|
307
|
-
${w("◆")} ai enhance filled ${W} slot${W===1?"":"s"}`);let
|
|
306
|
+
Respond with ONLY valid JSON, no markdown fences.`,Y=await J.messages.create({model:"claude-haiku-4-5-20251001",max_tokens:1024,messages:[{role:"user",content:Q}]});try{let G=Y.content[0].text,U=JSON.parse(G),W=0;for(let V of z){let H=U[V.path];if(H&&typeof H==="string")dB(Z,V.path,H),console.log(` ${w("●")} ${V.path} ${I("←")} ${H}`),W++}if(W>0){l($,Z),console.log(`
|
|
307
|
+
${w("◆")} ai enhance filled ${W} slot${W===1?"":"s"}`);let V=r(s(u($)));o(V,$)}}catch{console.error("Error: Could not parse AI response.")}}async function pB(){let $=f();if(!$)console.error(`Error: project.faf not found
|
|
308
308
|
|
|
309
|
-
Run 'faf init' to create one.`),process.exit(2);let Z=u($);console.log(`${w("ai")} analyze ${I("getting suggestions...")}`);let z=await(await
|
|
309
|
+
Run 'faf init' to create one.`),process.exit(2);let Z=u($);console.log(`${w("ai")} analyze ${I("getting suggestions...")}`);let z=await(await jJ()).messages.create({model:"claude-haiku-4-5-20251001",max_tokens:1024,messages:[{role:"user",content:`Analyze this .faf project context file and provide 3-5 specific suggestions for improvement. Focus on completeness, accuracy, and best practices.
|
|
310
310
|
|
|
311
311
|
${Z}
|
|
312
312
|
|
|
313
|
-
Be concise. One line per suggestion.`}]});console.log(""),console.log(z.content[0].text)}import{existsSync as
|
|
314
|
-
`),console.log(` ${b("faf conductor import <path>")} ${I("— import conductor config into .faf")}`),console.log(` ${b("faf conductor export")} ${I("— generate conductor config from .faf")}`)}function
|
|
313
|
+
Be concise. One line per suggestion.`}]});console.log(""),console.log(z.content[0].text)}import{existsSync as k5,readFileSync as f5,readdirSync as lB}from"fs";import{join as bJ}from"path";d();function xJ($,Z){if($==="import")iB(Z);else if($==="export")nB();else console.log(`${w("conductor")} ${I("— conductor integration")}
|
|
314
|
+
`),console.log(` ${b("faf conductor import <path>")} ${I("— import conductor config into .faf")}`),console.log(` ${b("faf conductor export")} ${I("— generate conductor config from .faf")}`)}function iB($){if(!$)console.error("Usage: faf conductor import <path>"),process.exit(2);if(!k5($))console.error(`Error: path not found: ${$}`),process.exit(2);let Z={faf_version:"2.5.0",project:{}};if(k5($)&&$.endsWith(".json")){let J=JSON.parse(f5($,"utf-8"));if(J.name)Z.project.name=J.name;if(J.description)Z.project.goal=J.description;if(J.language)Z.project.main_language=J.language}else if(k5($)&&($.endsWith(".yml")||$.endsWith(".yaml"))){let J=b6(f5($,"utf-8"));if(J.name)Z.project.name=J.name;if(J.description)Z.project.goal=J.description;if(J.language)Z.project.main_language=J.language}else try{let J=lB($);for(let q of J){let Q=bJ($,q);if(q.endsWith(".json"))try{let Y=JSON.parse(f5(Q,"utf-8"));if(Y.name&&!Z.project.name)Z.project.name=Y.name;if(Y.description&&!Z.project.goal)Z.project.goal=Y.description}catch{}}}catch{console.error(`Error: could not read directory: ${$}`),process.exit(2)}let X=process.cwd(),z=f(X);if(z){let J=m(z);if(!J.project)J.project={};if(Z.project.name&&!J.project.name)J.project.name=Z.project.name;if(Z.project.goal&&!J.project.goal)J.project.goal=Z.project.goal;if(Z.project.main_language&&!J.project.main_language)J.project.main_language=Z.project.main_language;l(z,J),console.log(`${w("◆")} conductor import merged into ${z}`)}else{let J=bJ(X,"project.faf");l(J,Z),console.log(`${w("◆")} conductor import created ${J}`)}}function nB(){let $=f();if(!$)console.error(`Error: project.faf not found
|
|
315
315
|
|
|
316
|
-
Run 'faf init' to create one.`),process.exit(2);let Z=m($),X={name:Z.project?.name??"",description:Z.project?.goal??"",language:Z.project?.main_language??"",stack:Z.stack??{}};console.log(JSON.stringify(X,null,2))}var
|
|
316
|
+
Run 'faf init' to create one.`),process.exit(2);let Z=m($),X={name:Z.project?.name??"",description:Z.project?.goal??"",language:Z.project?.main_language??"",stack:Z.stack??{}};console.log(JSON.stringify(X,null,2))}var kJ="6.0.4",x=new Z7;x.name("faf").description("Foundational AI-Context Format — project DNA for any AI").version(kJ,"-v, --version");x.command("init").description("Create .faf from your project").option("--yolo","Quick init with sensible defaults").option("--quick","Alias for --yolo").option("--force","Overwrite existing project.faf").option("--output <path>","Output path").action(($)=>O4($));x.command("auto").description("Zero to 100% in one command").action(()=>bz());x.command("go").description("Guided interview to gold code").option("--resume","Resume previous session").action(($)=>j9($));x.command("score [file]").description("Score a .faf file").option("--verbose","Show slot breakdown").option("--status","Compact one-liner output").option("--json","Output as JSON").action(($,Z)=>K2($,Z));x.command("sync").description(".faf ↔ CLAUDE.md (bi-sync, mtime auto-direction)").option("--watch","Watch for changes").option("--direction <dir>","Force direction: auto|push|pull","auto").action(($)=>w4($));x.command("compile [file]").description("Compile .faf to .fafb binary").option("--output <path>","Output path").action(($,Z)=>lz($,Z));x.command("decompile <file>").description("Decompile .fafb to JSON").option("--output <path>","Output path").action(($,Z)=>iz($,Z));x.command("git <url>").description("Instant .faf from any GitHub repo").action(($)=>tz($));x.command("export").description("Export context files from .faf").option("--agents","Generate AGENTS.md").option("--cursor","Generate .cursorrules").option("--gemini","Generate GEMINI.md").option("--conductor","Generate conductor config").option("--all","Generate all formats").action(($)=>f6($));x.command("check [file]").description("Validate .faf file").option("--strict","Require 100% score").option("--fix","Auto-fix issues").option("--doctor","Full diagnostic").option("--trust","Verify trust chain").action(($,Z)=>F4($,Z));x.command("info").description("Show version and system info").option("--version","Show version").option("--faq","Show FAQ").option("--index","Show command index").option("--stacks","Show supported stacks").action(($)=>$9($));x.command("formats").description("Show supported formats").action(()=>Z9());x.command("clear").description("Clear cached data").action(()=>X9());x.command("convert").description("Convert .faf to other formats").option("--json","Output as JSON").action(($)=>z9($));x.command("context").description("Generate context output").action(()=>J9());x.command("drift").description("Check context drift").action(()=>Q9());x.command("edit <path> <value>").description("Edit .faf fields").action(($,Z)=>Y9($,Z));x.command("recover").description("Recover .faf from context files").action(()=>G9());x.command("migrate").description("Migrate .faf to latest version").option("--dry-run","Preview changes without writing").action(($)=>U9($));x.command("pro [subcommand]").description("Pro features & licensing").action(($)=>R9($));x.command("share").description("Share .faf via URL").option("--copy","Copy to clipboard").option("--raw","Output encoded string only").action(($)=>A9($));x.command("demo").description("Demo walkthrough").action(()=>S9());x.command("search <query>").description("Search slots and formats").option("--slots","Search slots only").option("--formats","Search formats only").action(($,Z)=>_9($,Z));x.command("taf").description("Test Archive Format receipt").option("--output <path>","Write receipt to file").action(($)=>C9($));x.command("ai [subcommand]").description("AI-powered features (enhance|analyze)").action(($)=>EJ($));x.command("conductor [subcommand] [path]").description("Conductor integration").action(($,Z)=>xJ($,Z));x.command("bi-sync",{hidden:!0}).action(()=>w4());x.command("status",{hidden:!0}).action(()=>K2(void 0,{status:!0}));x.command("agents",{hidden:!0}).action(()=>f6({agents:!0}));x.command("cursor",{hidden:!0}).action(()=>f6({cursor:!0}));x.command("gemini",{hidden:!0}).action(()=>f6({gemini:!0}));x.command("validate",{hidden:!0}).action(($)=>F4($));x.command("yolo",{hidden:!0}).action(()=>O4({yolo:!0}));if(process.argv.length<=2){let{bold:$,dim:Z,fafCyan:X}=await Promise.resolve().then(() => (d(),Mz)),z=process.cwd().replace(process.env.HOME??"","~"),J="\x1B[38;2;150;150;150m",q="\x1B[48;2;150;150;150m",Q="\x1B[38;2;29;29;29m",Y="\x1B[48;2;29;29;29m",G="\x1B[0m";console.log(""),console.log(`\x1B[48;2;29;29;29m ${"\x1B[38;2;150;150;150m"}▄${"\x1B[48;2;150;150;150m"}███████${"\x1B[48;2;29;29;29m"}${"\x1B[38;2;150;150;150m"}▄${"\x1B[0m"}`),console.log(`\x1B[48;2;29;29;29m \x1B[48;2;150;150;150m${"\x1B[38;2;150;150;150m"}█${"\x1B[48;2;29;29;29m"}${"\x1B[38;2;150;150;150m"}▀${"\x1B[48;2;150;150;150m"}███████${"\x1B[0m"} ${X($("faf"))} ${Z(`v${kJ}`)}`);let U="\x1B[38;2;39;174;96m";console.log(`\x1B[48;2;29;29;29m${"\x1B[38;2;150;150;150m"}▀${"\x1B[48;2;150;150;150m"}${"\x1B[38;2;29;29;29m"}▄${"\x1B[48;2;29;29;29m"} \x1B[48;2;150;150;150m${"\x1B[38;2;150;150;150m"}██${"\x1B[48;2;29;29;29m"} \x1B[48;2;150;150;150m${"\x1B[38;2;150;150;150m"}██${"\x1B[48;2;29;29;29m"} \x1B[0m ${Z("Nelly Never Forgets")}`),console.log(`${U}▔▔▔▔▔▔▔▔▔▔▔▔${"\x1B[0m"}`),console.log(`${Z(" "+z)}`),console.log("");try{await K2(void 0,{status:!0})}catch{}console.log(""),x.outputHelp()}else x.parse(process.argv);
|