faf-cli 6.0.13 → 6.0.15
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 +2 -0
- package/dist/cli.js +286 -223
- package/dist/index.js +2 -2
- package/package.json +18 -14
- package/skills/faf/faf-champion/SKILL.md +78 -0
- package/skills/faf/faf-quickstart/SKILL.md +70 -0
- package/skills/faf/faf-sync-master/SKILL.md +85 -0
- package/skills/faf/skills.json +46 -0
- package/skills/faf-expert/SKILL.md +384 -0
package/dist/cli.js
CHANGED
|
@@ -1,181 +1,181 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as
|
|
3
|
-
`)}displayWidth($){return
|
|
4
|
-
`+" ".repeat(
|
|
5
|
-
${
|
|
6
|
-
`)}}function
|
|
2
|
+
import{createRequire as H3}from"node:module";var eY=Object.create;var{getPrototypeOf:$3,defineProperty:IX,getOwnPropertyNames:X3}=Object;var J3=Object.prototype.hasOwnProperty;function Q3($){return this[$]}var q3,Y3,z3=($,X,J)=>{var Q=$!=null&&typeof $==="object";if(Q){var q=X?q3??=new WeakMap:Y3??=new WeakMap,Y=q.get($);if(Y)return Y}J=$!=null?eY($3($)):{};let z=X||!$||!$.__esModule?IX(J,"default",{value:$,enumerable:!0}):J;for(let G of X3($))if(!J3.call(z,G))IX(z,G,{get:Q3.bind($,G),enumerable:!0});if(Q)q.set($,z);return z};var A=($,X)=>()=>(X||$((X={exports:{}}).exports,X),X.exports);var G3=($)=>$;function W3($,X){this[$]=G3.bind(null,X)}var EX=($,X)=>{for(var J in X)IX($,J,{get:X[J],enumerable:!0,configurable:!0,set:W3.bind(X,J)})};var b=($,X)=>()=>($&&(X=$($=0)),X);var W$=H3(import.meta.url);var w6=A((U3)=>{class SX extends Error{constructor($,X,J){super(J);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=X,this.exitCode=$,this.nestedError=void 0}}class C9 extends SX{constructor($){super(1,"commander.invalidArgument",$);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}U3.CommanderError=SX;U3.InvalidArgumentError=C9});var m2=A((N3)=>{var{InvalidArgumentError:K3}=w6();class P9{constructor($,X){switch(this.description=X||"",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($,X){if(X===this.defaultValue||!Array.isArray(X))return[$];return X.push($),X}default($,X){return this.defaultValue=$,this.defaultValueDescription=X,this}argParser($){return this.parseArg=$,this}choices($){return this.argChoices=$.slice(),this.parseArg=(X,J)=>{if(!this.argChoices.includes(X))throw new K3(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(X,J);return X},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function M3($){let X=$.name()+($.variadic===!0?"...":"");return $.required?"<"+X+">":"["+X+"]"}N3.Argument=P9;N3.humanReadableArgName=M3});var jX=A((L3)=>{var{humanReadableArgName:O3}=m2();class b9{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 X=$.commands.filter((Q)=>!Q._hidden),J=$._getHelpCommand();if(J&&!J._hidden)X.push(J);if(this.sortSubcommands)X.sort((Q,q)=>{return Q.name().localeCompare(q.name())});return X}compareOptions($,X){let J=(Q)=>{return Q.short?Q.short.replace(/^-/,""):Q.long.replace(/^--/,"")};return J($).localeCompare(J(X))}visibleOptions($){let X=$.options.filter((Q)=>!Q.hidden),J=$._getHelpOption();if(J&&!J.hidden){let Q=J.short&&$._findOption(J.short),q=J.long&&$._findOption(J.long);if(!Q&&!q)X.push(J);else if(J.long&&!q)X.push($.createOption(J.long,J.description));else if(J.short&&!Q)X.push($.createOption(J.short,J.description))}if(this.sortOptions)X.sort(this.compareOptions);return X}visibleGlobalOptions($){if(!this.showGlobalOptions)return[];let X=[];for(let J=$.parent;J;J=J.parent){let Q=J.options.filter((q)=>!q.hidden);X.push(...Q)}if(this.sortOptions)X.sort(this.compareOptions);return X}visibleArguments($){if($._argsDescription)$.registeredArguments.forEach((X)=>{X.description=X.description||$._argsDescription[X.name()]||""});if($.registeredArguments.find((X)=>X.description))return $.registeredArguments;return[]}subcommandTerm($){let X=$.registeredArguments.map((J)=>O3(J)).join(" ");return $._name+($._aliases[0]?"|"+$._aliases[0]:"")+($.options.length?" [options]":"")+(X?" "+X:"")}optionTerm($){return $.flags}argumentTerm($){return $.name()}longestSubcommandTermLength($,X){return X.visibleCommands($).reduce((J,Q)=>{return Math.max(J,this.displayWidth(X.styleSubcommandTerm(X.subcommandTerm(Q))))},0)}longestOptionTermLength($,X){return X.visibleOptions($).reduce((J,Q)=>{return Math.max(J,this.displayWidth(X.styleOptionTerm(X.optionTerm(Q))))},0)}longestGlobalOptionTermLength($,X){return X.visibleGlobalOptions($).reduce((J,Q)=>{return Math.max(J,this.displayWidth(X.styleOptionTerm(X.optionTerm(Q))))},0)}longestArgumentTermLength($,X){return X.visibleArguments($).reduce((J,Q)=>{return Math.max(J,this.displayWidth(X.styleArgumentTerm(X.argumentTerm(Q))))},0)}commandUsage($){let X=$._name;if($._aliases[0])X=X+"|"+$._aliases[0];let J="";for(let Q=$.parent;Q;Q=Q.parent)J=Q.name()+" "+J;return J+X+" "+$.usage()}commandDescription($){return $.description()}subcommandDescription($){return $.summary()||$.description()}optionDescription($){let X=[];if($.argChoices)X.push(`choices: ${$.argChoices.map((J)=>JSON.stringify(J)).join(", ")}`);if($.defaultValue!==void 0){if($.required||$.optional||$.isBoolean()&&typeof $.defaultValue==="boolean")X.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`)}if($.presetArg!==void 0&&$.optional)X.push(`preset: ${JSON.stringify($.presetArg)}`);if($.envVar!==void 0)X.push(`env: ${$.envVar}`);if(X.length>0){let J=`(${X.join(", ")})`;if($.description)return`${$.description} ${J}`;return J}return $.description}argumentDescription($){let X=[];if($.argChoices)X.push(`choices: ${$.argChoices.map((J)=>JSON.stringify(J)).join(", ")}`);if($.defaultValue!==void 0)X.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`);if(X.length>0){let J=`(${X.join(", ")})`;if($.description)return`${$.description} ${J}`;return J}return $.description}formatItemList($,X,J){if(X.length===0)return[];return[J.styleTitle($),...X,""]}groupItems($,X,J){let Q=new Map;return $.forEach((q)=>{let Y=J(q);if(!Q.has(Y))Q.set(Y,[])}),X.forEach((q)=>{let Y=J(q);if(!Q.has(Y))Q.set(Y,[]);Q.get(Y).push(q)}),Q}formatHelp($,X){let J=X.padWidth($,X),Q=X.helpWidth??80;function q(U,V){return X.formatItem(U,J,V,X)}let Y=[`${X.styleTitle("Usage:")} ${X.styleUsage(X.commandUsage($))}`,""],z=X.commandDescription($);if(z.length>0)Y=Y.concat([X.boxWrap(X.styleCommandDescription(z),Q),""]);let G=X.visibleArguments($).map((U)=>{return q(X.styleArgumentTerm(X.argumentTerm(U)),X.styleArgumentDescription(X.argumentDescription(U)))});if(Y=Y.concat(this.formatItemList("Arguments:",G,X)),this.groupItems($.options,X.visibleOptions($),(U)=>U.helpGroupHeading??"Options:").forEach((U,V)=>{let B=U.map((N)=>{return q(X.styleOptionTerm(X.optionTerm(N)),X.styleOptionDescription(X.optionDescription(N)))});Y=Y.concat(this.formatItemList(V,B,X))}),X.showGlobalOptions){let U=X.visibleGlobalOptions($).map((V)=>{return q(X.styleOptionTerm(X.optionTerm(V)),X.styleOptionDescription(X.optionDescription(V)))});Y=Y.concat(this.formatItemList("Global Options:",U,X))}return this.groupItems($.commands,X.visibleCommands($),(U)=>U.helpGroup()||"Commands:").forEach((U,V)=>{let B=U.map((N)=>{return q(X.styleSubcommandTerm(X.subcommandTerm(N)),X.styleSubcommandDescription(X.subcommandDescription(N)))});Y=Y.concat(this.formatItemList(V,B,X))}),Y.join(`
|
|
3
|
+
`)}displayWidth($){return f9($).length}styleTitle($){return $}styleUsage($){return $.split(" ").map((X)=>{if(X==="[options]")return this.styleOptionText(X);if(X==="[command]")return this.styleSubcommandText(X);if(X[0]==="["||X[0]==="<")return this.styleArgumentText(X);return this.styleCommandText(X)}).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((X)=>{if(X==="[options]")return this.styleOptionText(X);if(X[0]==="["||X[0]==="<")return this.styleArgumentText(X);return this.styleSubcommandText(X)}).join(" ")}styleArgumentTerm($){return this.styleArgumentText($)}styleOptionText($){return $}styleArgumentText($){return $}styleSubcommandText($){return $}styleCommandText($){return $}padWidth($,X){return Math.max(X.longestOptionTermLength($,X),X.longestGlobalOptionTermLength($,X),X.longestSubcommandTermLength($,X),X.longestArgumentTermLength($,X))}preformatted($){return/\n[^\S\r\n]/.test($)}formatItem($,X,J,Q){let Y=" ".repeat(2);if(!J)return Y+$;let z=$.padEnd(X+$.length-Q.displayWidth($)),G=2,H=(this.helpWidth??80)-X-G-2,U;if(H<this.minWidthToWrap||Q.preformatted(J))U=J;else U=Q.boxWrap(J,H).replace(/\n/g,`
|
|
4
|
+
`+" ".repeat(X+G));return Y+z+" ".repeat(G)+U.replace(/\n/g,`
|
|
5
|
+
${Y}`)}boxWrap($,X){if(X<this.minWidthToWrap)return $;let J=$.split(/\r\n|\n/),Q=/[\s]*[^\s]+/g,q=[];return J.forEach((Y)=>{let z=Y.match(Q);if(z===null){q.push("");return}let G=[z.shift()],W=this.displayWidth(G[0]);z.forEach((H)=>{let U=this.displayWidth(H);if(W+U<=X){G.push(H),W+=U;return}q.push(G.join(""));let V=H.trimStart();G=[V],W=this.displayWidth(V)}),q.push(G.join(""))}),q.join(`
|
|
6
|
+
`)}}function f9($){let X=/\x1b\[\d*(;\d*)*m/g;return $.replace(X,"")}L3.Help=b9;L3.stripColor=f9});var TX=A((I3)=>{var{InvalidArgumentError:_3}=w6();class x9{constructor($,X){this.flags=$,this.description=X||"",this.required=$.includes("<"),this.optional=$.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test($),this.mandatory=!1;let J=F3($);if(this.short=J.shortFlag,this.long=J.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($,X){return this.defaultValue=$,this.defaultValueDescription=X,this}preset($){return this.presetArg=$,this}conflicts($){return this.conflictsWith=this.conflictsWith.concat($),this}implies($){let X=$;if(typeof $==="string")X={[$]:!0};return this.implied=Object.assign(this.implied||{},X),this}env($){return this.envVar=$,this}argParser($){return this.parseArg=$,this}makeOptionMandatory($=!0){return this.mandatory=!!$,this}hideHelp($=!0){return this.hidden=!!$,this}_collectValue($,X){if(X===this.defaultValue||!Array.isArray(X))return[$];return X.push($),X}choices($){return this.argChoices=$.slice(),this.parseArg=(X,J)=>{if(!this.argChoices.includes(X))throw new _3(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(X,J);return X},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){if(this.negate)return k9(this.name().replace(/^no-/,""));return k9(this.name())}helpGroup($){return this.helpGroupHeading=$,this}is($){return this.short===$||this.long===$}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class y9{constructor($){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,$.forEach((X)=>{if(X.negate)this.negativeOptions.set(X.attributeName(),X);else this.positiveOptions.set(X.attributeName(),X)}),this.negativeOptions.forEach((X,J)=>{if(this.positiveOptions.has(J))this.dualOptions.add(J)})}valueFromOption($,X){let J=X.attributeName();if(!this.dualOptions.has(J))return!0;let Q=this.negativeOptions.get(J).presetArg,q=Q!==void 0?Q:!1;return X.negate===(q===$)}}function k9($){return $.split("-").reduce((X,J)=>{return X+J[0].toUpperCase()+J.slice(1)})}function F3($){let X,J,Q=/^-[^-]$/,q=/^--[^-]/,Y=$.split(/[ |,]+/).concat("guard");if(Q.test(Y[0]))X=Y.shift();if(q.test(Y[0]))J=Y.shift();if(!X&&Q.test(Y[0]))X=Y.shift();if(!X&&q.test(Y[0]))X=J,J=Y.shift();if(Y[0].startsWith("-")){let z=Y[0],G=`option creation failed due to '${z}' in option flags '${$}'`;if(/^-[^-][^-]/.test(z))throw Error(`${G}
|
|
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
|
-
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(
|
|
10
|
-
- too many short flags`);if(
|
|
11
|
-
- too many long flags`);throw Error(`${
|
|
12
|
-
- unrecognised flag format`)}if(
|
|
13
|
-
(Did you mean one of ${
|
|
14
|
-
(Did you mean ${
|
|
15
|
-
- specify the name in Command constructor or using .name()`);if(
|
|
16
|
-
Expecting one of '${
|
|
17
|
-
- already used by option '${
|
|
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($,
|
|
19
|
-
- if '${
|
|
9
|
+
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(Q.test(z))throw Error(`${G}
|
|
10
|
+
- too many short flags`);if(q.test(z))throw Error(`${G}
|
|
11
|
+
- too many long flags`);throw Error(`${G}
|
|
12
|
+
- unrecognised flag format`)}if(X===void 0&&J===void 0)throw Error(`option creation failed due to no flags found in '${$}'.`);return{shortFlag:X,longFlag:J}}I3.Option=x9;I3.DualOptions=y9});var g9=A((Z3)=>{function j3($,X){if(Math.abs($.length-X.length)>3)return Math.max($.length,X.length);let J=[];for(let Q=0;Q<=$.length;Q++)J[Q]=[Q];for(let Q=0;Q<=X.length;Q++)J[0][Q]=Q;for(let Q=1;Q<=X.length;Q++)for(let q=1;q<=$.length;q++){let Y=1;if($[q-1]===X[Q-1])Y=0;else Y=1;if(J[q][Q]=Math.min(J[q-1][Q]+1,J[q][Q-1]+1,J[q-1][Q-1]+Y),q>1&&Q>1&&$[q-1]===X[Q-2]&&$[q-2]===X[Q-1])J[q][Q]=Math.min(J[q][Q],J[q-2][Q-2]+1)}return J[$.length][X.length]}function T3($,X){if(!X||X.length===0)return"";X=Array.from(new Set(X));let J=$.startsWith("--");if(J)$=$.slice(2),X=X.map((z)=>z.slice(2));let Q=[],q=3,Y=0.4;if(X.forEach((z)=>{if(z.length<=1)return;let G=j3($,z),W=Math.max($.length,z.length);if((W-G)/W>Y){if(G<q)q=G,Q=[z];else if(G===q)Q.push(z)}}),Q.sort((z,G)=>z.localeCompare(G)),J)Q=Q.map((z)=>`--${z}`);if(Q.length>1)return`
|
|
13
|
+
(Did you mean one of ${Q.join(", ")}?)`;if(Q.length===1)return`
|
|
14
|
+
(Did you mean ${Q[0]}?)`;return""}Z3.suggestSimilar=T3});var m9=A((g3)=>{var P3=W$("node:events").EventEmitter,ZX=W$("node:child_process"),q0=W$("node:path"),l2=W$("node:fs"),s=W$("node:process"),{Argument:b3,humanReadableArgName:f3}=m2(),{CommanderError:CX}=w6(),{Help:k3,stripColor:x3}=jX(),{Option:v9,DualOptions:y3}=TX(),{suggestSimilar:h9}=g9();class bX extends P3{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:(X)=>s.stdout.write(X),writeErr:(X)=>s.stderr.write(X),outputError:(X,J)=>J(X),getOutHelpWidth:()=>s.stdout.isTTY?s.stdout.columns:void 0,getErrHelpWidth:()=>s.stderr.isTTY?s.stderr.columns:void 0,getOutHasColors:()=>PX()??(s.stdout.isTTY&&s.stdout.hasColors?.()),getErrHasColors:()=>PX()??(s.stderr.isTTY&&s.stderr.hasColors?.()),stripColor:(X)=>x3(X)},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 X=this;X;X=X.parent)$.push(X);return $}command($,X,J){let Q=X,q=J;if(typeof Q==="object"&&Q!==null)q=Q,Q=null;q=q||{};let[,Y,z]=$.match(/([^ ]+) *(.*)/),G=this.createCommand(Y);if(Q)G.description(Q),G._executableHandler=!0;if(q.isDefault)this._defaultCommandName=G._name;if(G._hidden=!!(q.noHelp||q.hidden),G._executableFile=q.executableFile||null,z)G.arguments(z);if(this._registerCommand(G),G.parent=this,G.copyInheritedSettings(this),Q)return this;return G}createCommand($){return new bX($)}createHelp(){return Object.assign(new k3,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($,X){if(!$._name)throw Error(`Command passed to .addCommand() must have a name
|
|
15
|
+
- specify the name in Command constructor or using .name()`);if(X=X||{},X.isDefault)this._defaultCommandName=$._name;if(X.noHelp||X.hidden)$._hidden=!0;return this._registerCommand($),$.parent=this,$._checkForBrokenPassThrough(),this}createArgument($,X){return new b3($,X)}argument($,X,J,Q){let q=this.createArgument($,X);if(typeof J==="function")q.default(Q).argParser(J);else q.default(J);return this.addArgument(q),this}arguments($){return $.trim().split(/ +/).forEach((X)=>{this.argument(X)}),this}addArgument($){let X=this.registeredArguments.slice(-1)[0];if(X?.variadic)throw Error(`only the last argument can be variadic '${X.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($,X){if(typeof $==="boolean"){if(this._addImplicitHelpCommand=$,$&&this._defaultCommandGroup)this._initCommandGroup(this._getHelpCommand());return this}let J=$??"help [command]",[,Q,q]=J.match(/([^ ]+) *(.*)/),Y=X??"display help for command",z=this.createCommand(Q);if(z.helpOption(!1),q)z.arguments(q);if(Y)z.description(Y);if(this._addImplicitHelpCommand=!0,this._helpCommand=z,$||X)this._initCommandGroup(z);return this}addHelpCommand($,X){if(typeof $!=="object")return this.helpCommand($,X),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($,X){let J=["preSubcommand","preAction","postAction"];if(!J.includes($))throw Error(`Unexpected value for event passed to hook : '${$}'.
|
|
16
|
+
Expecting one of '${J.join("', '")}'`);if(this._lifeCycleHooks[$])this._lifeCycleHooks[$].push(X);else this._lifeCycleHooks[$]=[X];return this}exitOverride($){if($)this._exitCallback=$;else this._exitCallback=(X)=>{if(X.code!=="commander.executeSubCommandAsync")throw X};return this}_exit($,X,J){if(this._exitCallback)this._exitCallback(new CX($,X,J));s.exit($)}action($){let X=(J)=>{let Q=this.registeredArguments.length,q=J.slice(0,Q);if(this._storeOptionsAsProperties)q[Q]=this;else q[Q]=this.opts();return q.push(this),$.apply(this,q)};return this._actionHandler=X,this}createOption($,X){return new v9($,X)}_callParseArg($,X,J,Q){try{return $.parseArg(X,J)}catch(q){if(q.code==="commander.invalidArgument"){let Y=`${Q} ${q.message}`;this.error(Y,{exitCode:q.exitCode,code:q.code})}throw q}}_registerOption($){let X=$.short&&this._findOption($.short)||$.long&&this._findOption($.long);if(X){let J=$.long&&this._findOption($.long)?$.long:$.short;throw Error(`Cannot add option '${$.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${J}'
|
|
17
|
+
- already used by option '${X.flags}'`)}this._initOptionGroup($),this.options.push($)}_registerCommand($){let X=(Q)=>{return[Q.name()].concat(Q.aliases())},J=X($).find((Q)=>this._findCommand(Q));if(J){let Q=X(this._findCommand(J)).join("|"),q=X($).join("|");throw Error(`cannot add command '${q}' as already have command '${Q}'`)}this._initCommandGroup($),this.commands.push($)}addOption($){this._registerOption($);let X=$.name(),J=$.attributeName();if($.negate){let q=$.long.replace(/^--no-/,"--");if(!this._findOption(q))this.setOptionValueWithSource(J,$.defaultValue===void 0?!0:$.defaultValue,"default")}else if($.defaultValue!==void 0)this.setOptionValueWithSource(J,$.defaultValue,"default");let Q=(q,Y,z)=>{if(q==null&&$.presetArg!==void 0)q=$.presetArg;let G=this.getOptionValue(J);if(q!==null&&$.parseArg)q=this._callParseArg($,q,G,Y);else if(q!==null&&$.variadic)q=$._collectValue(q,G);if(q==null)if($.negate)q=!1;else if($.isBoolean()||$.optional)q=!0;else q="";this.setOptionValueWithSource(J,q,z)};if(this.on("option:"+X,(q)=>{let Y=`error: option '${$.flags}' argument '${q}' is invalid.`;Q(q,Y,"cli")}),$.envVar)this.on("optionEnv:"+X,(q)=>{let Y=`error: option '${$.flags}' value '${q}' from env '${$.envVar}' is invalid.`;Q(q,Y,"env")});return this}_optionEx($,X,J,Q,q){if(typeof X==="object"&&X instanceof v9)throw Error("To add an Option object use addOption() instead of option() or requiredOption()");let Y=this.createOption(X,J);if(Y.makeOptionMandatory(!!$.mandatory),typeof Q==="function")Y.default(q).argParser(Q);else if(Q instanceof RegExp){let z=Q;Q=(G,W)=>{let H=z.exec(G);return H?H[0]:W},Y.default(q).argParser(Q)}else Y.default(Q);return this.addOption(Y)}option($,X,J,Q){return this._optionEx({},$,X,J,Q)}requiredOption($,X,J,Q){return this._optionEx({mandatory:!0},$,X,J,Q)}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($,X){return this.setOptionValueWithSource($,X,void 0)}setOptionValueWithSource($,X,J){if(this._storeOptionsAsProperties)this[$]=X;else this._optionValues[$]=X;return this._optionValueSources[$]=J,this}getOptionValueSource($){return this._optionValueSources[$]}getOptionValueSourceWithGlobals($){let X;return this._getCommandAndAncestors().forEach((J)=>{if(J.getOptionValueSource($)!==void 0)X=J.getOptionValueSource($)}),X}_prepareUserArgs($,X){if($!==void 0&&!Array.isArray($))throw Error("first parameter to parse must be array or undefined");if(X=X||{},$===void 0&&X.from===void 0){if(s.versions?.electron)X.from="electron";let Q=s.execArgv??[];if(Q.includes("-e")||Q.includes("--eval")||Q.includes("-p")||Q.includes("--print"))X.from="eval"}if($===void 0)$=s.argv;this.rawArgs=$.slice();let J;switch(X.from){case void 0:case"node":this._scriptPath=$[1],J=$.slice(2);break;case"electron":if(s.defaultApp)this._scriptPath=$[1],J=$.slice(2);else J=$.slice(1);break;case"user":J=$.slice(0);break;case"eval":J=$.slice(1);break;default:throw Error(`unexpected parse option { from: '${X.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);return this._name=this._name||"program",J}parse($,X){this._prepareForParse();let J=this._prepareUserArgs($,X);return this._parseCommand([],J),this}async parseAsync($,X){this._prepareForParse();let J=this._prepareUserArgs($,X);return await this._parseCommand([],J),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($,X,J){if(l2.existsSync($))return;let Q=X?`searched for local subcommand relative to directory '${X}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",q=`'${$}' does not exist
|
|
19
|
+
- if '${J}' 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
|
-
- ${
|
|
21
|
+
- ${Q}`;throw Error(q)}_executeSubCommand($,X){X=X.slice();let J=!1,Q=[".js",".ts",".tsx",".mjs",".cjs"];function q(H,U){let V=q0.resolve(H,U);if(l2.existsSync(V))return V;if(Q.includes(q0.extname(U)))return;let B=Q.find((N)=>l2.existsSync(`${V}${N}`));if(B)return`${V}${B}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let Y=$._executableFile||`${this._name}-${$._name}`,z=this._executableDir||"";if(this._scriptPath){let H;try{H=l2.realpathSync(this._scriptPath)}catch{H=this._scriptPath}z=q0.resolve(q0.dirname(H),z)}if(z){let H=q(z,Y);if(!H&&!$._executableFile&&this._scriptPath){let U=q0.basename(this._scriptPath,q0.extname(this._scriptPath));if(U!==this._name)H=q(z,`${U}-${$._name}`)}Y=H||Y}J=Q.includes(q0.extname(Y));let G;if(s.platform!=="win32")if(J)X.unshift(Y),X=u9(s.execArgv).concat(X),G=ZX.spawn(s.argv[0],X,{stdio:"inherit"});else G=ZX.spawn(Y,X,{stdio:"inherit"});else this._checkForMissingExecutable(Y,z,$._name),X.unshift(Y),X=u9(s.execArgv).concat(X),G=ZX.spawn(s.execPath,X,{stdio:"inherit"});if(!G.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((U)=>{s.on(U,()=>{if(G.killed===!1&&G.exitCode===null)G.kill(U)})});let W=this._exitCallback;G.on("close",(H)=>{if(H=H??1,!W)s.exit(H);else W(new CX(H,"commander.executeSubCommandAsync","(close)"))}),G.on("error",(H)=>{if(H.code==="ENOENT")this._checkForMissingExecutable(Y,z,$._name);else if(H.code==="EACCES")throw Error(`'${Y}' not executable`);if(!W)s.exit(1);else{let U=new CX(1,"commander.executeSubCommandAsync","(error)");U.nestedError=H,W(U)}}),this.runningCommand=G}_dispatchSubcommand($,X,J){let Q=this._findCommand($);if(!Q)this.help({error:!0});Q._prepareForParse();let q;return q=this._chainOrCallSubCommandHook(q,Q,"preSubcommand"),q=this._chainOrCall(q,()=>{if(Q._executableHandler)this._executeSubCommand(Q,X.concat(J));else return Q._parseCommand(X,J)}),q}_dispatchHelpCommand($){if(!$)this.help();let X=this._findCommand($);if(X&&!X._executableHandler)X.help();return this._dispatchSubcommand($,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach(($,X)=>{if($.required&&this.args[X]==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 $=(J,Q,q)=>{let Y=Q;if(Q!==null&&J.parseArg){let z=`error: command-argument value '${Q}' is invalid for argument '${J.name()}'.`;Y=this._callParseArg(J,Q,q,z)}return Y};this._checkNumberOfArguments();let X=[];this.registeredArguments.forEach((J,Q)=>{let q=J.defaultValue;if(J.variadic){if(Q<this.args.length){if(q=this.args.slice(Q),J.parseArg)q=q.reduce((Y,z)=>{return $(J,z,Y)},J.defaultValue)}else if(q===void 0)q=[]}else if(Q<this.args.length){if(q=this.args[Q],J.parseArg)q=$(J,q,J.defaultValue)}X[Q]=q}),this.processedArgs=X}_chainOrCall($,X){if($?.then&&typeof $.then==="function")return $.then(()=>X());return X()}_chainOrCallHooks($,X){let J=$,Q=[];if(this._getCommandAndAncestors().reverse().filter((q)=>q._lifeCycleHooks[X]!==void 0).forEach((q)=>{q._lifeCycleHooks[X].forEach((Y)=>{Q.push({hookedCommand:q,callback:Y})})}),X==="postAction")Q.reverse();return Q.forEach((q)=>{J=this._chainOrCall(J,()=>{return q.callback(q.hookedCommand,this)})}),J}_chainOrCallSubCommandHook($,X,J){let Q=$;if(this._lifeCycleHooks[J]!==void 0)this._lifeCycleHooks[J].forEach((q)=>{Q=this._chainOrCall(Q,()=>{return q(this,X)})});return Q}_parseCommand($,X){let J=this.parseOptions(X);if(this._parseOptionsEnv(),this._parseOptionsImplied(),$=$.concat(J.operands),X=J.unknown,this.args=$.concat(X),$&&this._findCommand($[0]))return this._dispatchSubcommand($[0],$.slice(1),X);if(this._getHelpCommand()&&$[0]===this._getHelpCommand().name())return this._dispatchHelpCommand($[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(X),this._dispatchSubcommand(this._defaultCommandName,$,X);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(J.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let Q=()=>{if(J.unknown.length>0)this.unknownOption(J.unknown[0])},q=`command:${this.name()}`;if(this._actionHandler){Q(),this._processArguments();let Y;if(Y=this._chainOrCallHooks(Y,"preAction"),Y=this._chainOrCall(Y,()=>this._actionHandler(this.processedArgs)),this.parent)Y=this._chainOrCall(Y,()=>{this.parent.emit(q,$,X)});return Y=this._chainOrCallHooks(Y,"postAction"),Y}if(this.parent?.listenerCount(q))Q(),this._processArguments(),this.parent.emit(q,$,X);else if($.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",$,X);if(this.listenerCount("command:*"))this.emit("command:*",$,X);else if(this.commands.length)this.unknownCommand();else Q(),this._processArguments()}else if(this.commands.length)Q(),this.help({error:!0});else Q(),this._processArguments()}_findCommand($){if(!$)return;return this.commands.find((X)=>X._name===$||X._aliases.includes($))}_findOption($){return this.options.find((X)=>X.is($))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(($)=>{$.options.forEach((X)=>{if(X.mandatory&&$.getOptionValue(X.attributeName())===void 0)$.missingMandatoryOptionValue(X)})})}_checkForConflictingLocalOptions(){let $=this.options.filter((J)=>{let Q=J.attributeName();if(this.getOptionValue(Q)===void 0)return!1;return this.getOptionValueSource(Q)!=="default"});$.filter((J)=>J.conflictsWith.length>0).forEach((J)=>{let Q=$.find((q)=>J.conflictsWith.includes(q.attributeName()));if(Q)this._conflictingOption(J,Q)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(($)=>{$._checkForConflictingLocalOptions()})}parseOptions($){let X=[],J=[],Q=X;function q(H){return H.length>1&&H[0]==="-"}let Y=(H)=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(H))return!1;return!this._getCommandAndAncestors().some((U)=>U.options.map((V)=>V.short).some((V)=>/^-\d$/.test(V)))},z=null,G=null,W=0;while(W<$.length||G){let H=G??$[W++];if(G=null,H==="--"){if(Q===J)Q.push(H);Q.push(...$.slice(W));break}if(z&&(!q(H)||Y(H))){this.emit(`option:${z.name()}`,H);continue}if(z=null,q(H)){let U=this._findOption(H);if(U){if(U.required){let V=$[W++];if(V===void 0)this.optionMissingArgument(U);this.emit(`option:${U.name()}`,V)}else if(U.optional){let V=null;if(W<$.length&&(!q($[W])||Y($[W])))V=$[W++];this.emit(`option:${U.name()}`,V)}else this.emit(`option:${U.name()}`);z=U.variadic?U:null;continue}}if(H.length>2&&H[0]==="-"&&H[1]!=="-"){let U=this._findOption(`-${H[1]}`);if(U){if(U.required||U.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${U.name()}`,H.slice(2));else this.emit(`option:${U.name()}`),G=`-${H.slice(2)}`;continue}}if(/^--[^=]+=/.test(H)){let U=H.indexOf("="),V=this._findOption(H.slice(0,U));if(V&&(V.required||V.optional)){this.emit(`option:${V.name()}`,H.slice(U+1));continue}}if(Q===X&&q(H)&&!(this.commands.length===0&&Y(H)))Q=J;if((this._enablePositionalOptions||this._passThroughOptions)&&X.length===0&&J.length===0){if(this._findCommand(H)){X.push(H),J.push(...$.slice(W));break}else if(this._getHelpCommand()&&H===this._getHelpCommand().name()){X.push(H,...$.slice(W));break}else if(this._defaultCommandName){J.push(H,...$.slice(W));break}}if(this._passThroughOptions){Q.push(H,...$.slice(W));break}Q.push(H)}return{operands:X,unknown:J}}opts(){if(this._storeOptionsAsProperties){let $={},X=this.options.length;for(let J=0;J<X;J++){let Q=this.options[J].attributeName();$[Q]=Q===this._versionOptionName?this._version:this[Q]}return $}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(($,X)=>Object.assign($,X.opts()),{})}error($,X){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
|
|
25
|
-
`),this._exit(0,"commander.version",$)}),this}description($,
|
|
26
|
-
Expecting one of '${
|
|
27
|
-
`)}),this}_outputHelpIfRequested($){let
|
|
28
|
-
`)}}
|
|
29
|
-
`)?
|
|
24
|
+
`),this.outputHelp({error:!0});let J=X||{},Q=J.exitCode||1,q=J.code||"commander.error";this._exit(Q,q,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in s.env){let X=$.attributeName();if(this.getOptionValue(X)===void 0||["default","config","env"].includes(this.getOptionValueSource(X)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,s.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new y3(this.options),X=(J)=>{return this.getOptionValue(J)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(J))};this.options.filter((J)=>J.implied!==void 0&&X(J.attributeName())&&$.valueFromOption(this.getOptionValue(J.attributeName()),J)).forEach((J)=>{Object.keys(J.implied).filter((Q)=>!X(Q)).forEach((Q)=>{this.setOptionValueWithSource(Q,J.implied[Q],"implied")})})}missingArgument($){let X=`error: missing required argument '${$}'`;this.error(X,{code:"commander.missingArgument"})}optionMissingArgument($){let X=`error: option '${$.flags}' argument missing`;this.error(X,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue($){let X=`error: required option '${$.flags}' not specified`;this.error(X,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption($,X){let J=(Y)=>{let z=Y.attributeName(),G=this.getOptionValue(z),W=this.options.find((U)=>U.negate&&z===U.attributeName()),H=this.options.find((U)=>!U.negate&&z===U.attributeName());if(W&&(W.presetArg===void 0&&G===!1||W.presetArg!==void 0&&G===W.presetArg))return W;return H||Y},Q=(Y)=>{let z=J(Y),G=z.attributeName();if(this.getOptionValueSource(G)==="env")return`environment variable '${z.envVar}'`;return`option '${z.flags}'`},q=`error: ${Q($)} cannot be used with ${Q(X)}`;this.error(q,{code:"commander.conflictingOption"})}unknownOption($){if(this._allowUnknownOption)return;let X="";if($.startsWith("--")&&this._showSuggestionAfterError){let Q=[],q=this;do{let Y=q.createHelp().visibleOptions(q).filter((z)=>z.long).map((z)=>z.long);Q=Q.concat(Y),q=q.parent}while(q&&!q._enablePositionalOptions);X=h9($,Q)}let J=`error: unknown option '${$}'${X}`;this.error(J,{code:"commander.unknownOption"})}_excessArguments($){if(this._allowExcessArguments)return;let X=this.registeredArguments.length,J=X===1?"":"s",q=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${X} argument${J} but got ${$.length}.`;this.error(q,{code:"commander.excessArguments"})}unknownCommand(){let $=this.args[0],X="";if(this._showSuggestionAfterError){let Q=[];this.createHelp().visibleCommands(this).forEach((q)=>{if(Q.push(q.name()),q.alias())Q.push(q.alias())}),X=h9($,Q)}let J=`error: unknown command '${$}'${X}`;this.error(J,{code:"commander.unknownCommand"})}version($,X,J){if($===void 0)return this._version;this._version=$,X=X||"-V, --version",J=J||"output the version number";let Q=this.createOption(X,J);return this._versionOptionName=Q.attributeName(),this._registerOption(Q),this.on("option:"+Q.name(),()=>{this._outputConfiguration.writeOut(`${$}
|
|
25
|
+
`),this._exit(0,"commander.version",$)}),this}description($,X){if($===void 0&&X===void 0)return this._description;if(this._description=$,X)this._argsDescription=X;return this}summary($){if($===void 0)return this._summary;return this._summary=$,this}alias($){if($===void 0)return this._aliases[0];let X=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)X=this.commands[this.commands.length-1];if($===X._name)throw Error("Command alias can't be the same as its name");let J=this.parent?._findCommand($);if(J){let Q=[J.name()].concat(J.aliases()).join("|");throw Error(`cannot add alias '${$}' to command '${this.name()}' as already have command '${Q}'`)}return X._aliases.push($),this}aliases($){if($===void 0)return this._aliases;return $.forEach((X)=>this.alias(X)),this}usage($){if($===void 0){if(this._usage)return this._usage;let X=this.registeredArguments.map((J)=>{return f3(J)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?X:[]).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=q0.basename($,q0.extname($)),this}executableDir($){if($===void 0)return this._executableDir;return this._executableDir=$,this}helpInformation($){let X=this.createHelp(),J=this._getOutputContext($);X.prepareContext({error:J.error,helpWidth:J.helpWidth,outputHasColors:J.hasColors});let Q=X.formatHelp(this,X);if(J.hasColors)return Q;return this._outputConfiguration.stripColor(Q)}_getOutputContext($){$=$||{};let X=!!$.error,J,Q,q;if(X)J=(z)=>this._outputConfiguration.writeErr(z),Q=this._outputConfiguration.getErrHasColors(),q=this._outputConfiguration.getErrHelpWidth();else J=(z)=>this._outputConfiguration.writeOut(z),Q=this._outputConfiguration.getOutHasColors(),q=this._outputConfiguration.getOutHelpWidth();return{error:X,write:(z)=>{if(!Q)z=this._outputConfiguration.stripColor(z);return J(z)},hasColors:Q,helpWidth:q}}outputHelp($){let X;if(typeof $==="function")X=$,$=void 0;let J=this._getOutputContext($),Q={error:J.error,write:J.write,command:this};this._getCommandAndAncestors().reverse().forEach((Y)=>Y.emit("beforeAllHelp",Q)),this.emit("beforeHelp",Q);let q=this.helpInformation({error:J.error});if(X){if(q=X(q),typeof q!=="string"&&!Buffer.isBuffer(q))throw Error("outputHelp callback must return a string or a Buffer")}if(J.write(q),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",Q),this._getCommandAndAncestors().forEach((Y)=>Y.emit("afterAllHelp",Q))}helpOption($,X){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",X??"display help for command"),$||X)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 X=Number(s.exitCode??0);if(X===0&&$&&typeof $!=="function"&&$.error)X=1;this._exit(X,"commander.help","(outputHelp)")}addHelpText($,X){let J=["beforeAll","before","after","afterAll"];if(!J.includes($))throw Error(`Unexpected value for position to addHelpText.
|
|
26
|
+
Expecting one of '${J.join("', '")}'`);let Q=`${$}Help`;return this.on(Q,(q)=>{let Y;if(typeof X==="function")Y=X({error:q.error,command:q.command});else Y=X;if(Y)q.write(`${Y}
|
|
27
|
+
`)}),this}_outputHelpIfRequested($){let X=this._getHelpOption();if(X&&$.find((Q)=>X.is(Q)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function u9($){return $.map((X)=>{if(!X.startsWith("--inspect"))return X;let J,Q="127.0.0.1",q="9229",Y;if((Y=X.match(/^(--inspect(-brk)?)$/))!==null)J=Y[1];else if((Y=X.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(J=Y[1],/^\d+$/.test(Y[3]))q=Y[3];else Q=Y[3];else if((Y=X.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)J=Y[1],Q=Y[3],q=Y[4];if(J&&q!=="0")return`${J}=${Q}:${parseInt(q)+1}`;return X})}function PX(){if(s.env.NO_COLOR||s.env.FORCE_COLOR==="0"||s.env.FORCE_COLOR==="false")return!1;if(s.env.FORCE_COLOR||s.env.CLICOLOR_FORCE!==void 0)return!0;return}g3.Command=bX;g3.useColor=PX});var p9=A((l3)=>{var{Argument:l9}=m2(),{Command:fX}=m9(),{CommanderError:u3,InvalidArgumentError:c9}=w6(),{Help:m3}=jX(),{Option:d9}=TX();l3.program=new fX;l3.createCommand=($)=>new fX($);l3.createOption=($,X)=>new d9($,X);l3.createArgument=($,X)=>new l9($,X);l3.Command=fX;l3.Option=d9;l3.Argument=l9;l3.Help=m3;l3.CommanderError=u3;l3.InvalidArgumentError=c9;l3.InvalidOptionArgumentError=c9});var i=A((Gz)=>{var kX=Symbol.for("yaml.alias"),n9=Symbol.for("yaml.document"),c2=Symbol.for("yaml.map"),r9=Symbol.for("yaml.pair"),xX=Symbol.for("yaml.scalar"),d2=Symbol.for("yaml.seq"),Y0=Symbol.for("yaml.node.type"),$z=($)=>!!$&&typeof $==="object"&&$[Y0]===kX,Xz=($)=>!!$&&typeof $==="object"&&$[Y0]===n9,Jz=($)=>!!$&&typeof $==="object"&&$[Y0]===c2,Qz=($)=>!!$&&typeof $==="object"&&$[Y0]===r9,a9=($)=>!!$&&typeof $==="object"&&$[Y0]===xX,qz=($)=>!!$&&typeof $==="object"&&$[Y0]===d2;function s9($){if($&&typeof $==="object")switch($[Y0]){case c2:case d2:return!0}return!1}function Yz($){if($&&typeof $==="object")switch($[Y0]){case kX:case c2:case xX:case d2:return!0}return!1}var zz=($)=>(a9($)||s9($))&&!!$.anchor;Gz.ALIAS=kX;Gz.DOC=n9;Gz.MAP=c2;Gz.NODE_TYPE=Y0;Gz.PAIR=r9;Gz.SCALAR=xX;Gz.SEQ=d2;Gz.hasAnchor=zz;Gz.isAlias=$z;Gz.isCollection=s9;Gz.isDocument=Xz;Gz.isMap=Jz;Gz.isNode=Yz;Gz.isPair=Qz;Gz.isScalar=a9;Gz.isSeq=qz});var D6=A((Iz)=>{var D$=i(),E$=Symbol("break visit"),o9=Symbol("skip children"),a$=Symbol("remove node");function p2($,X){let J=t9(X);if(D$.isDocument($)){if(M8(null,$.contents,J,Object.freeze([$]))===a$)$.contents=null}else M8(null,$,J,Object.freeze([]))}p2.BREAK=E$;p2.SKIP=o9;p2.REMOVE=a$;function M8($,X,J,Q){let q=e9($,X,J,Q);if(D$.isNode(q)||D$.isPair(q))return $J($,Q,q),M8($,q,J,Q);if(typeof q!=="symbol"){if(D$.isCollection(X)){Q=Object.freeze(Q.concat(X));for(let Y=0;Y<X.items.length;++Y){let z=M8(Y,X.items[Y],J,Q);if(typeof z==="number")Y=z-1;else if(z===E$)return E$;else if(z===a$)X.items.splice(Y,1),Y-=1}}else if(D$.isPair(X)){Q=Object.freeze(Q.concat(X));let Y=M8("key",X.key,J,Q);if(Y===E$)return E$;else if(Y===a$)X.key=null;let z=M8("value",X.value,J,Q);if(z===E$)return E$;else if(z===a$)X.value=null}}return q}async function i2($,X){let J=t9(X);if(D$.isDocument($)){if(await N8(null,$.contents,J,Object.freeze([$]))===a$)$.contents=null}else await N8(null,$,J,Object.freeze([]))}i2.BREAK=E$;i2.SKIP=o9;i2.REMOVE=a$;async function N8($,X,J,Q){let q=await e9($,X,J,Q);if(D$.isNode(q)||D$.isPair(q))return $J($,Q,q),N8($,q,J,Q);if(typeof q!=="symbol"){if(D$.isCollection(X)){Q=Object.freeze(Q.concat(X));for(let Y=0;Y<X.items.length;++Y){let z=await N8(Y,X.items[Y],J,Q);if(typeof z==="number")Y=z-1;else if(z===E$)return E$;else if(z===a$)X.items.splice(Y,1),Y-=1}}else if(D$.isPair(X)){Q=Object.freeze(Q.concat(X));let Y=await N8("key",X.key,J,Q);if(Y===E$)return E$;else if(Y===a$)X.key=null;let z=await N8("value",X.value,J,Q);if(z===E$)return E$;else if(z===a$)X.value=null}}return q}function t9($){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 e9($,X,J,Q){if(typeof J==="function")return J($,X,Q);if(D$.isMap(X))return J.Map?.($,X,Q);if(D$.isSeq(X))return J.Seq?.($,X,Q);if(D$.isPair(X))return J.Pair?.($,X,Q);if(D$.isScalar(X))return J.Scalar?.($,X,Q);if(D$.isAlias(X))return J.Alias?.($,X,Q);return}function $J($,X,J){let Q=X[X.length-1];if(D$.isCollection(Q))Q.items[$]=J;else if(D$.isPair(Q))if($==="key")Q.key=J;else Q.value=J;else if(D$.isDocument(Q))Q.contents=J;else{let q=D$.isAlias(Q)?"alias":"scalar";throw Error(`Cannot replace node with ${q} parent`)}}Iz.visit=p2;Iz.visitAsync=i2});var yX=A((Cz)=>{var XJ=i(),jz=D6(),Tz={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Zz=($)=>$.replace(/[!,[\]{}]/g,(X)=>Tz[X]);class k${constructor($,X){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},k$.defaultYaml,$),this.tags=Object.assign({},k$.defaultTags,X)}clone(){let $=new k$(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new k$(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:k$.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},k$.defaultTags);break}return $}add($,X){if(this.atNextDocument)this.yaml={explicit:k$.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},k$.defaultTags),this.atNextDocument=!1;let J=$.trim().split(/[ \t]+/),Q=J.shift();switch(Q){case"%TAG":{if(J.length!==2){if(X(0,"%TAG directive should contain exactly two parts"),J.length<2)return!1}let[q,Y]=J;return this.tags[q]=Y,!0}case"%YAML":{if(this.yaml.explicit=!0,J.length!==1)return X(0,"%YAML directive should contain exactly one part"),!1;let[q]=J;if(q==="1.1"||q==="1.2")return this.yaml.version=q,!0;else{let Y=/^\d+\.\d+$/.test(q);return X(6,`Unsupported YAML version ${q}`,Y),!1}}default:return X(0,`Unknown directive ${Q}`,!0),!1}}tagName($,X){if($==="!")return"!";if($[0]!=="!")return X(`Not a valid tag: ${$}`),null;if($[1]==="<"){let Y=$.slice(2,-1);if(Y==="!"||Y==="!!")return X(`Verbatim tags aren't resolved, so ${$} is invalid.`),null;if($[$.length-1]!==">")X("Verbatim tags must end with a >");return Y}let[,J,Q]=$.match(/^(.*!)([^!]*)$/s);if(!Q)X(`The ${$} tag has no suffix`);let q=this.tags[J];if(q)try{return q+decodeURIComponent(Q)}catch(Y){return X(String(Y)),null}if(J==="!")return $;return X(`Could not resolve tag: ${$}`),null}tagString($){for(let[X,J]of Object.entries(this.tags))if($.startsWith(J))return X+Zz($.substring(J.length));return $[0]==="!"?$:`!<${$}>`}toString($){let X=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],J=Object.entries(this.tags),Q;if($&&J.length>0&&XJ.isNode($.contents)){let q={};jz.visit($.contents,(Y,z)=>{if(XJ.isNode(z)&&z.tag)q[z.tag]=!0}),Q=Object.keys(q)}else Q=[];for(let[q,Y]of J){if(q==="!!"&&Y==="tag:yaml.org,2002:")continue;if(!$||Q.some((z)=>z.startsWith(Y)))X.push(`%TAG ${q} ${Y}`)}return X.join(`
|
|
28
|
+
`)}}k$.defaultYaml={explicit:!1,version:"1.2"};k$.defaultTags={"!!":"tag:yaml.org,2002:"};Cz.Directives=k$});var n2=A((xz)=>{var JJ=i(),bz=D6();function fz($){if(/[\x00-\x19\s,[\]{}]/.test($)){let J=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(J)}return!0}function QJ($){let X=new Set;return bz.visit($,{Value(J,Q){if(Q.anchor)X.add(Q.anchor)}}),X}function qJ($,X){for(let J=1;;++J){let Q=`${$}${J}`;if(!X.has(Q))return Q}}function kz($,X){let J=[],Q=new Map,q=null;return{onAnchor:(Y)=>{J.push(Y),q??(q=QJ($));let z=qJ(X,q);return q.add(z),z},setAnchors:()=>{for(let Y of J){let z=Q.get(Y);if(typeof z==="object"&&z.anchor&&(JJ.isScalar(z.node)||JJ.isCollection(z.node)))z.node.anchor=z.anchor;else{let G=Error("Failed to resolve repeated object (this should not happen)");throw G.source=Y,G}}},sourceObjects:Q}}xz.anchorIsValid=fz;xz.anchorNames=QJ;xz.createNodeAnchors=kz;xz.findNewAnchor=qJ});var gX=A((uz)=>{function O6($,X,J,Q){if(Q&&typeof Q==="object")if(Array.isArray(Q))for(let q=0,Y=Q.length;q<Y;++q){let z=Q[q],G=O6($,Q,String(q),z);if(G===void 0)delete Q[q];else if(G!==z)Q[q]=G}else if(Q instanceof Map)for(let q of Array.from(Q.keys())){let Y=Q.get(q),z=O6($,Q,q,Y);if(z===void 0)Q.delete(q);else if(z!==Y)Q.set(q,z)}else if(Q instanceof Set)for(let q of Array.from(Q)){let Y=O6($,Q,q,q);if(Y===void 0)Q.delete(q);else if(Y!==q)Q.delete(q),Q.add(Y)}else for(let[q,Y]of Object.entries(Q)){let z=O6($,Q,q,Y);if(z===void 0)delete Q[q];else if(z!==Y)Q[q]=z}return $.call(X,J,Q)}uz.applyReviver=O6});var D0=A((cz)=>{var lz=i();function YJ($,X,J){if(Array.isArray($))return $.map((Q,q)=>YJ(Q,String(q),J));if($&&typeof $.toJSON==="function"){if(!J||!lz.hasAnchor($))return $.toJSON(X,J);let Q={aliasCount:0,count:1,res:void 0};J.anchors.set($,Q),J.onCreate=(Y)=>{Q.res=Y,delete J.onCreate};let q=$.toJSON(X,J);if(J.onCreate)J.onCreate(q);return q}if(typeof $==="bigint"&&!J?.keep)return Number($);return $}cz.toJS=YJ});var r2=A((nz)=>{var pz=gX(),zJ=i(),iz=D0();class GJ{constructor($){Object.defineProperty(this,zJ.NODE_TYPE,{value:$})}clone(){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)$.range=this.range.slice();return $}toJS($,{mapAsMap:X,maxAliasCount:J,onAnchor:Q,reviver:q}={}){if(!zJ.isDocument($))throw TypeError("A document argument is required");let Y={anchors:new Map,doc:$,keep:!0,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof J==="number"?J:100},z=iz.toJS(this,"",Y);if(typeof Q==="function")for(let{count:G,res:W}of Y.anchors.values())Q(W,G);return typeof q==="function"?pz.applyReviver(q,{"":z},"",z):z}}nz.NodeBase=GJ});var L6=A((ez)=>{var az=n2(),sz=D6(),w8=i(),oz=r2(),tz=D0();class WJ extends oz.NodeBase{constructor($){super(w8.ALIAS);this.source=$,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve($,X){let J;if(X?.aliasResolveCache)J=X.aliasResolveCache;else if(J=[],sz.visit($,{Node:(q,Y)=>{if(w8.isAlias(Y)||w8.hasAnchor(Y))J.push(Y)}}),X)X.aliasResolveCache=J;let Q=void 0;for(let q of J){if(q===this)break;if(q.anchor===this.source)Q=q}return Q}toJSON($,X){if(!X)return{source:this.source};let{anchors:J,doc:Q,maxAliasCount:q}=X,Y=this.resolve(Q,X);if(!Y){let G=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(G)}let z=J.get(Y);if(!z)tz.toJS(Y,null,X),z=J.get(Y);if(z?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(q>=0){if(z.count+=1,z.aliasCount===0)z.aliasCount=a2(Q,Y,J);if(z.count*z.aliasCount>q)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return z.res}toString($,X,J){let Q=`*${this.source}`;if($){if(az.anchorIsValid(this.source),$.options.verifyAliasOrder&&!$.anchors.has(this.source)){let q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(q)}if($.implicitKey)return`${Q} `}return Q}}function a2($,X,J){if(w8.isAlias(X)){let Q=X.resolve($),q=J&&Q&&J.get(Q);return q?q.count*q.aliasCount:0}else if(w8.isCollection(X)){let Q=0;for(let q of X.items){let Y=a2($,q,J);if(Y>Q)Q=Y}return Q}else if(w8.isPair(X)){let Q=a2($,X.key,J),q=a2($,X.value,J);return Math.max(Q,q)}return 1}ez.Alias=WJ});var M$=A((YG)=>{var XG=i(),JG=r2(),QG=D0(),qG=($)=>!$||typeof $!=="function"&&typeof $!=="object";class c0 extends JG.NodeBase{constructor($){super(XG.SCALAR);this.value=$}toJSON($,X){return X?.keep?this.value:QG.toJS(this.value,$,X)}toString(){return String(this.value)}}c0.BLOCK_FOLDED="BLOCK_FOLDED";c0.BLOCK_LITERAL="BLOCK_LITERAL";c0.PLAIN="PLAIN";c0.QUOTE_DOUBLE="QUOTE_DOUBLE";c0.QUOTE_SINGLE="QUOTE_SINGLE";YG.Scalar=c0;YG.isScalarValue=qG});var R6=A((BG)=>{var WG=L6(),d0=i(),HJ=M$(),HG="tag:yaml.org,2002:";function UG($,X,J){if(X){let Q=J.filter((Y)=>Y.tag===X),q=Q.find((Y)=>!Y.format)??Q[0];if(!q)throw Error(`Tag ${X} not found`);return q}return J.find((Q)=>Q.identify?.($)&&!Q.format)}function VG($,X,J){if(d0.isDocument($))$=$.contents;if(d0.isNode($))return $;if(d0.isPair($)){let V=J.schema[d0.MAP].createNode?.(J.schema,null,J);return V.items.push($),V}if($ instanceof String||$ instanceof Number||$ instanceof Boolean||typeof BigInt<"u"&&$ instanceof BigInt)$=$.valueOf();let{aliasDuplicateObjects:Q,onAnchor:q,onTagObj:Y,schema:z,sourceObjects:G}=J,W=void 0;if(Q&&$&&typeof $==="object")if(W=G.get($),W)return W.anchor??(W.anchor=q($)),new WG.Alias(W.anchor);else W={anchor:null,node:null},G.set($,W);if(X?.startsWith("!!"))X=HG+X.slice(2);let H=UG($,X,z.tags);if(!H){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let V=new HJ.Scalar($);if(W)W.node=V;return V}H=$ instanceof Map?z[d0.MAP]:(Symbol.iterator in Object($))?z[d0.SEQ]:z[d0.MAP]}if(Y)Y(H),delete J.onTagObj;let U=H?.createNode?H.createNode(J.schema,$,J):typeof H?.nodeClass?.from==="function"?H.nodeClass.from(J.schema,$,J):new HJ.Scalar($);if(X)U.tag=X;else if(!H.default)U.tag=H.tag;if(W)W.node=U;return U}BG.createNode=VG});var s2=A((wG)=>{var MG=R6(),s$=i(),NG=r2();function vX($,X,J){let Q=J;for(let q=X.length-1;q>=0;--q){let Y=X[q];if(typeof Y==="number"&&Number.isInteger(Y)&&Y>=0){let z=[];z[Y]=Q,Q=z}else Q=new Map([[Y,Q]])}return MG.createNode(Q,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var UJ=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class VJ extends NG.NodeBase{constructor($,X){super($);Object.defineProperty(this,"schema",{value:X,configurable:!0,enumerable:!1,writable:!0})}clone($){let X=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if($)X.schema=$;if(X.items=X.items.map((J)=>s$.isNode(J)||s$.isPair(J)?J.clone($):J),this.range)X.range=this.range.slice();return X}addIn($,X){if(UJ($))this.add(X);else{let[J,...Q]=$,q=this.get(J,!0);if(s$.isCollection(q))q.addIn(Q,X);else if(q===void 0&&this.schema)this.set(J,vX(this.schema,Q,X));else throw Error(`Expected YAML collection at ${J}. Remaining path: ${Q}`)}}deleteIn($){let[X,...J]=$;if(J.length===0)return this.delete(X);let Q=this.get(X,!0);if(s$.isCollection(Q))return Q.deleteIn(J);else throw Error(`Expected YAML collection at ${X}. Remaining path: ${J}`)}getIn($,X){let[J,...Q]=$,q=this.get(J,!0);if(Q.length===0)return!X&&s$.isScalar(q)?q.value:q;else return s$.isCollection(q)?q.getIn(Q,X):void 0}hasAllNullValues($){return this.items.every((X)=>{if(!s$.isPair(X))return!1;let J=X.value;return J==null||$&&s$.isScalar(J)&&J.value==null&&!J.commentBefore&&!J.comment&&!J.tag})}hasIn($){let[X,...J]=$;if(J.length===0)return this.has(X);let Q=this.get(X,!0);return s$.isCollection(Q)?Q.hasIn(J):!1}setIn($,X){let[J,...Q]=$;if(Q.length===0)this.set(J,X);else{let q=this.get(J,!0);if(s$.isCollection(q))q.setIn(Q,X);else if(q===void 0&&this.schema)this.set(J,vX(this.schema,Q,X));else throw Error(`Expected YAML collection at ${J}. Remaining path: ${Q}`)}}}wG.Collection=VJ;wG.collectionFromPath=vX;wG.isEmptyPath=UJ});var A6=A((_G)=>{var RG=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function hX($,X){if(/^\n+$/.test($))return $.substring(1);return X?$.replace(/^(?! *$)/gm,X):$}var AG=($,X,J)=>$.endsWith(`
|
|
29
|
+
`)?hX(J,X):J.includes(`
|
|
30
30
|
`)?`
|
|
31
|
-
`+
|
|
32
|
-
`){if(
|
|
33
|
-
`&&
|
|
34
|
-
`&&
|
|
35
|
-
${
|
|
36
|
-
${
|
|
37
|
-
`);
|
|
38
|
-
`){if(
|
|
39
|
-
|
|
40
|
-
`;while(
|
|
41
|
-
`,
|
|
42
|
-
`)||/[ \t]\n|\n[ \t]/.test($))return
|
|
43
|
-
${
|
|
31
|
+
`+hX(J,X):($.endsWith(" ")?"":" ")+J;_G.indentComment=hX;_G.lineComment=AG;_G.stringifyComment=RG});var KJ=A((jG)=>{function SG($,X,J="flow",{indentAtStart:Q,lineWidth:q=80,minContentWidth:Y=20,onFold:z,onOverflow:G}={}){if(!q||q<0)return $;if(q<Y)Y=0;let W=Math.max(1+Y,1+q-X.length);if($.length<=W)return $;let H=[],U={},V=q-X.length;if(typeof Q==="number")if(Q>q-Math.max(2,Y))H.push(0);else V=q-Q;let B=void 0,N=void 0,R=!1,M=-1,D=-1,F=-1;if(J==="block"){if(M=BJ($,M,X.length),M!==-1)V=M+W}for(let P;P=$[M+=1];){if(J==="quoted"&&P==="\\"){switch(D=M,$[M+1]){case"x":M+=3;break;case"u":M+=5;break;case"U":M+=9;break;default:M+=1}F=M}if(P===`
|
|
32
|
+
`){if(J==="block")M=BJ($,M,X.length);V=M+X.length+W,B=void 0}else{if(P===" "&&N&&N!==" "&&N!==`
|
|
33
|
+
`&&N!=="\t"){let f=$[M+1];if(f&&f!==" "&&f!==`
|
|
34
|
+
`&&f!=="\t")B=M}if(M>=V)if(B)H.push(B),V=B+W,B=void 0;else if(J==="quoted"){while(N===" "||N==="\t")N=P,P=$[M+=1],R=!0;let f=M>F+1?M-2:D-1;if(U[f])return $;H.push(f),U[f]=!0,V=f+W,B=void 0}else R=!0}N=P}if(R&&G)G();if(H.length===0)return $;if(z)z();let T=$.slice(0,H[0]);for(let P=0;P<H.length;++P){let f=H[P],g=H[P+1]||$.length;if(f===0)T=`
|
|
35
|
+
${X}${$.slice(0,g)}`;else{if(J==="quoted"&&U[f])T+=`${$[f]}\\`;T+=`
|
|
36
|
+
${X}${$.slice(f+1,g)}`}}return T}function BJ($,X,J){let Q=X,q=X+1,Y=$[q];while(Y===" "||Y==="\t")if(X<q+J)Y=$[++X];else{do Y=$[++X];while(Y&&Y!==`
|
|
37
|
+
`);Q=X,q=X+1,Y=$[q]}return Q}jG.FOLD_BLOCK="block";jG.FOLD_FLOW="flow";jG.FOLD_QUOTED="quoted";jG.foldFlowLines=SG});var F6=A((xG)=>{var v$=M$(),O0=KJ(),t2=($,X)=>({indentAtStart:X?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),e2=($)=>/^(%|---|\.\.\.)/m.test($);function bG($,X,J){if(!X||X<0)return!1;let Q=X-J,q=$.length;if(q<=Q)return!1;for(let Y=0,z=0;Y<q;++Y)if($[Y]===`
|
|
38
|
+
`){if(Y-z>Q)return!0;if(z=Y+1,q-z<=Q)return!1}return!0}function _6($,X){let J=JSON.stringify($);if(X.options.doubleQuotedAsJSON)return J;let{implicitKey:Q}=X,q=X.options.doubleQuotedMinMultiLineLength,Y=X.indent||(e2($)?" ":""),z="",G=0;for(let W=0,H=J[W];H;H=J[++W]){if(H===" "&&J[W+1]==="\\"&&J[W+2]==="n")z+=J.slice(G,W)+"\\ ",W+=1,G=W,H="\\";if(H==="\\")switch(J[W+1]){case"u":{z+=J.slice(G,W);let U=J.substr(W+2,4);switch(U){case"0000":z+="\\0";break;case"0007":z+="\\a";break;case"000b":z+="\\v";break;case"001b":z+="\\e";break;case"0085":z+="\\N";break;case"00a0":z+="\\_";break;case"2028":z+="\\L";break;case"2029":z+="\\P";break;default:if(U.substr(0,2)==="00")z+="\\x"+U.substr(2);else z+=J.substr(W,6)}W+=5,G=W+1}break;case"n":if(Q||J[W+2]==='"'||J.length<q)W+=1;else{z+=J.slice(G,W)+`
|
|
39
|
+
|
|
40
|
+
`;while(J[W+2]==="\\"&&J[W+3]==="n"&&J[W+4]!=='"')z+=`
|
|
41
|
+
`,W+=2;if(z+=Y,J[W+2]===" ")z+="\\";W+=1,G=W+1}break;default:W+=1}}return z=G?z+J.slice(G):J,Q?z:O0.foldFlowLines(z,Y,O0.FOLD_QUOTED,t2(X,!1))}function uX($,X){if(X.options.singleQuote===!1||X.implicitKey&&$.includes(`
|
|
42
|
+
`)||/[ \t]\n|\n[ \t]/.test($))return _6($,X);let J=X.indent||(e2($)?" ":""),Q="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
43
|
+
${J}`)+"'";return X.implicitKey?Q:O0.foldFlowLines(Q,J,O0.FOLD_FLOW,t2(X,!1))}function D8($,X){let{singleQuote:J}=X.options,Q;if(J===!1)Q=_6;else{let q=$.includes('"'),Y=$.includes("'");if(q&&!Y)Q=uX;else if(Y&&!q)Q=_6;else Q=J?uX:_6}return Q($,X)}var mX;try{mX=new RegExp(`(^|(?<!
|
|
44
44
|
))
|
|
45
45
|
+(?!
|
|
46
|
-
|$)`,"g")}catch{
|
|
46
|
+
|$)`,"g")}catch{mX=/\n+(?!\n|$)/g}function o2({comment:$,type:X,value:J},Q,q,Y){let{blockQuote:z,commentString:G,lineWidth:W}=Q.options;if(!z||/\n[\t ]+$/.test(J))return D8(J,Q);let H=Q.indent||(Q.forceBlockIndent||e2(J)?" ":""),U=z==="literal"?!0:z==="folded"||X===v$.Scalar.BLOCK_FOLDED?!1:X===v$.Scalar.BLOCK_LITERAL?!0:!bG(J,W,H.length);if(!J)return U?`|
|
|
47
47
|
`:`>
|
|
48
|
-
`;let
|
|
49
|
-
`&&
|
|
50
|
-
`);if(
|
|
51
|
-
`)
|
|
52
|
-
`)
|
|
53
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${
|
|
54
|
-
${
|
|
55
|
-
${
|
|
56
|
-
`)||
|
|
57
|
-
`)?
|
|
58
|
-
`))return
|
|
59
|
-
${
|
|
60
|
-
${
|
|
61
|
-
${
|
|
62
|
-
`:"",
|
|
63
|
-
${
|
|
64
|
-
`&&P)
|
|
65
|
-
|
|
66
|
-
`}else
|
|
67
|
-
${
|
|
68
|
-
`),
|
|
69
|
-
${
|
|
70
|
-
`)
|
|
71
|
-
${
|
|
72
|
-
`}}if($){if(
|
|
73
|
-
`+
|
|
74
|
-
`)))
|
|
75
|
-
${
|
|
76
|
-
`;return`${
|
|
77
|
-
${
|
|
78
|
-
`:" ")}return
|
|
79
|
-
${
|
|
80
|
-
${q.comment}`:z.comment}z=J}$.items[X]=Z2.isPair(z)?z:new gZ.Pair(z)}else Z("Expected a sequence for this tag");return $}function WX($,Z,X){let{replacer:z}=X,J=new y3.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(gZ.createPair(Y,G,X))}return J}var f3={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:UX,createNode:WX};g3.createPairs=WX;g3.pairs=f3;g3.resolvePairs=UX});var vZ=I((c3)=>{var VX=f(),hZ=l0(),E6=a0(),m3=o0(),HX=X2();class N$ extends m3.YAMLSeq{constructor(){super();this.add=E6.YAMLMap.prototype.add.bind(this),this.delete=E6.YAMLMap.prototype.delete.bind(this),this.get=E6.YAMLMap.prototype.get.bind(this),this.has=E6.YAMLMap.prototype.has.bind(this),this.set=E6.YAMLMap.prototype.set.bind(this),this.tag=N$.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(VX.isPair(z))J=hZ.toJS(z.key,"",Z),q=hZ.toJS(z.value,J,Z);else J=hZ.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=HX.createPairs($,Z,X),J=new this;return J.items=z.items,J}}N$.tag="tag:yaml.org,2002:omap";var d3={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:N$,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let X=HX.resolvePairs($,Z),z=[];for(let{key:J}of X.items)if(VX.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 N$,X)},createNode:($,Z,X)=>N$.from($,Z,X)};c3.YAMLOMap=N$;c3.omap=d3});var LX=I((i3)=>{var KX=z0();function BX({value:$,source:Z},X){if(Z&&($?DX:NX).test.test(Z))return Z;return $?X.options.trueStr:X.options.falseStr}var DX={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new KX.Scalar(!0),stringify:BX},NX={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new KX.Scalar(!1),stringify:BX};i3.falseTag=NX;i3.trueTag=DX});var IX=I((e3)=>{var r3=z0(),uZ=y$(),a3={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:uZ.stringifyNumber},o3={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():uZ.stringifyNumber($)}},t3={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new r3.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:uZ.stringifyNumber};e3.float=t3;e3.floatExp=o3;e3.floatNaN=a3});var OX=I((YG)=>{var TX=y$(),S6=($)=>typeof $==="bigint"||Number.isInteger($);function z2($,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 mZ($,Z,X){let{value:z}=$;if(S6(z)){let J=z.toString(Z);return z<0?"-"+X+J.substr(1):X+J}return TX.stringifyNumber($)}var zG={identify:S6,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,X)=>z2($,2,2,X),stringify:($)=>mZ($,2,"0b")},JG={identify:S6,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,X)=>z2($,1,8,X),stringify:($)=>mZ($,8,"0")},qG={identify:S6,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,X)=>z2($,0,10,X),stringify:TX.stringifyNumber},QG={identify:S6,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,X)=>z2($,2,16,X),stringify:($)=>mZ($,16,"0x")};YG.int=qG;YG.intBin=zG;YG.intHex=QG;YG.intOct=JG});var dZ=I((KG)=>{var Q2=f(),J2=s0(),q2=a0();class L$ extends q2.YAMLMap{constructor($){super($);this.tag=L$.tag}add($){let Z;if(Q2.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new J2.Pair($.key,null);else Z=new J2.Pair($,null);if(!q2.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let X=q2.findPair(this.items,$);return!Z&&Q2.isPair(X)?Q2.isScalar(X.key)?X.key.value:X.key:X}set($,Z){if(typeof Z!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Z}`);let X=q2.findPair(this.items,$);if(X&&!Z)this.items.splice(this.items.indexOf(X),1);else if(!X&&Z)this.items.push(new J2.Pair($))}toJSON($,Z){return super.toJSON($,Z,Set)}toString($,Z,X){if(!$)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},$,{allNullValues:!0}),Z,X);else throw Error("Set items must all have null values")}static from($,Z,X){let{replacer:z}=X,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(J2.createPair(q,null,X))}return J}}L$.tag="tag:yaml.org,2002:set";var HG={collection:"map",identify:($)=>$ instanceof Set,nodeClass:L$,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,X)=>L$.from($,Z,X),resolve($,Z){if(Q2.isMap($))if($.hasAllNullValues(!0))return Object.assign(new L$,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};KG.YAMLSet=L$;KG.set=HG});var pZ=I((TG)=>{var NG=y$();function cZ($,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 MX($){let{value:Z}=$,X=(Q)=>Q;if(typeof Z==="bigint")X=(Q)=>BigInt(Q);else if(isNaN(Z)||!isFinite(Z))return NG.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 LG={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})=>cZ($,X),stringify:MX},IG={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:($)=>cZ($,!1),stringify:MX},wX={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(wX.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=cZ(W,!1);if(Math.abs(H)<30)H*=60;U-=60000*H}return new Date(U)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};TG.floatTime=IG;TG.intTime=LG;TG.timestamp=wX});var FX=I((xG)=>{var RG=x$(),FG=t8(),AG=k$(),PG=_6(),_G=fZ(),RX=LX(),lZ=IX(),Y2=OX(),CG=p8(),EG=vZ(),SG=X2(),jG=dZ(),iZ=pZ(),bG=[RG.map,AG.seq,PG.string,FG.nullTag,RX.trueTag,RX.falseTag,Y2.intBin,Y2.intOct,Y2.int,Y2.intHex,lZ.floatNaN,lZ.floatExp,lZ.float,_G.binary,CG.merge,EG.omap,SG.pairs,jG.set,iZ.intTime,iZ.floatTime,iZ.timestamp];xG.schema=bG});var kX=I((dG)=>{var CX=x$(),yG=t8(),EX=k$(),fG=_6(),gG=CZ(),nZ=SZ(),sZ=bZ(),hG=QX(),vG=GX(),SX=fZ(),j6=p8(),jX=vZ(),bX=X2(),AX=FX(),xX=dZ(),G2=pZ(),PX=new Map([["core",hG.schema],["failsafe",[CX.map,EX.seq,fG.string]],["json",vG.schema],["yaml11",AX.schema],["yaml-1.1",AX.schema]]),_X={binary:SX.binary,bool:gG.boolTag,float:nZ.float,floatExp:nZ.floatExp,floatNaN:nZ.floatNaN,floatTime:G2.floatTime,int:sZ.int,intHex:sZ.intHex,intOct:sZ.intOct,intTime:G2.intTime,map:CX.map,merge:j6.merge,null:yG.nullTag,omap:jX.omap,pairs:bX.pairs,seq:EX.seq,set:xX.set,timestamp:G2.timestamp},uG={"tag:yaml.org,2002:binary":SX.binary,"tag:yaml.org,2002:merge":j6.merge,"tag:yaml.org,2002:omap":jX.omap,"tag:yaml.org,2002:pairs":bX.pairs,"tag:yaml.org,2002:set":xX.set,"tag:yaml.org,2002:timestamp":G2.timestamp};function mG($,Z,X){let z=PX.get(Z);if(z&&!$)return X&&!z.includes(j6.merge)?z.concat(j6.merge):z.slice();let J=z;if(!J)if(Array.isArray($))J=[];else{let q=Array.from(PX.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(j6.merge);return J.reduce((q,Q)=>{let Y=typeof Q==="string"?_X[Q]:Q;if(!Y){let G=JSON.stringify(Q),U=Object.keys(_X).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},[])}dG.coreKnownTags=uG;dG.getTags=mG});var oZ=I((rG)=>{var rZ=f(),lG=x$(),iG=k$(),nG=_6(),U2=kX(),sG=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class aZ{constructor({compat:$,customTags:Z,merge:X,resolveKnownTags:z,schema:J,sortMapEntries:q,toStringDefaults:Q}){this.compat=Array.isArray($)?U2.getTags($,"compat"):$?U2.getTags(null,$):null,this.name=typeof J==="string"&&J||"core",this.knownTags=z?U2.coreKnownTags:{},this.tags=U2.getTags(Z,this.name,X),this.toStringOptions=Q??null,Object.defineProperty(this,rZ.MAP,{value:lG.map}),Object.defineProperty(this,rZ.SCALAR,{value:nG.string}),Object.defineProperty(this,rZ.SEQ,{value:iG.seq}),this.sortMapEntries=typeof q==="function"?q:q===!0?sG:null}clone(){let $=Object.create(aZ.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}rG.Schema=aZ});var yX=I((eG)=>{var oG=f(),tZ=R6(),b6=O6();function tG($,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=tZ.createStringifyContext($,Z),{commentString:q}=J.options;if($.commentBefore){if(X.length!==1)X.unshift("");let G=q($.commentBefore);X.unshift(b6.indentComment(G,""))}let Q=!1,Y=null;if($.contents){if(oG.isNode($.contents)){if($.contents.spaceBefore&&z)X.push("");if($.contents.commentBefore){let W=q($.contents.commentBefore);X.push(b6.indentComment(W,""))}J.forceBlockIndent=!!$.comment,Y=$.contents.comment}let G=Y?void 0:()=>Q=!0,U=tZ.stringify($.contents,J,()=>Y=null,G);if(Y)U+=b6.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(tZ.stringify($.contents,J));if($.directives?.docEnd)if($.comment){let G=q($.comment);if(G.includes(`
|
|
81
|
-
`))
|
|
48
|
+
`;let V,B;for(B=J.length;B>0;--B){let g=J[B-1];if(g!==`
|
|
49
|
+
`&&g!=="\t"&&g!==" ")break}let N=J.substring(B),R=N.indexOf(`
|
|
50
|
+
`);if(R===-1)V="-";else if(J===N||R!==N.length-1){if(V="+",Y)Y()}else V="";if(N){if(J=J.slice(0,-N.length),N[N.length-1]===`
|
|
51
|
+
`)N=N.slice(0,-1);N=N.replace(mX,`$&${H}`)}let M=!1,D,F=-1;for(D=0;D<J.length;++D){let g=J[D];if(g===" ")M=!0;else if(g===`
|
|
52
|
+
`)F=D;else break}let T=J.substring(0,F<D?F+1:D);if(T)J=J.substring(T.length),T=T.replace(/\n+/g,`$&${H}`);let f=(M?H?"2":"1":"")+V;if($){if(f+=" "+G($.replace(/ ?[\r\n]+/g," ")),q)q()}if(!U){let g=J.replace(/\n+/g,`
|
|
53
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${H}`),x=!1,a=t2(Q,!0);if(z!=="folded"&&X!==v$.Scalar.BLOCK_FOLDED)a.onOverflow=()=>{x=!0};let S=O0.foldFlowLines(`${T}${g}${N}`,H,O0.FOLD_BLOCK,a);if(!x)return`>${f}
|
|
54
|
+
${H}${S}`}return J=J.replace(/\n+/g,`$&${H}`),`|${f}
|
|
55
|
+
${H}${T}${J}${N}`}function fG($,X,J,Q){let{type:q,value:Y}=$,{actualString:z,implicitKey:G,indent:W,indentStep:H,inFlow:U}=X;if(G&&Y.includes(`
|
|
56
|
+
`)||U&&/[[\]{},]/.test(Y))return D8(Y,X);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Y))return G||U||!Y.includes(`
|
|
57
|
+
`)?D8(Y,X):o2($,X,J,Q);if(!G&&!U&&q!==v$.Scalar.PLAIN&&Y.includes(`
|
|
58
|
+
`))return o2($,X,J,Q);if(e2(Y)){if(W==="")return X.forceBlockIndent=!0,o2($,X,J,Q);else if(G&&W===H)return D8(Y,X)}let V=Y.replace(/\n+/g,`$&
|
|
59
|
+
${W}`);if(z){let B=(M)=>M.default&&M.tag!=="tag:yaml.org,2002:str"&&M.test?.test(V),{compat:N,tags:R}=X.doc.schema;if(R.some(B)||N?.some(B))return D8(Y,X)}return G?V:O0.foldFlowLines(V,W,O0.FOLD_FLOW,t2(X,!1))}function kG($,X,J,Q){let{implicitKey:q,inFlow:Y}=X,z=typeof $.value==="string"?$:Object.assign({},$,{value:String($.value)}),{type:G}=$;if(G!==v$.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(z.value))G=v$.Scalar.QUOTE_DOUBLE}let W=(U)=>{switch(U){case v$.Scalar.BLOCK_FOLDED:case v$.Scalar.BLOCK_LITERAL:return q||Y?D8(z.value,X):o2(z,X,J,Q);case v$.Scalar.QUOTE_DOUBLE:return _6(z.value,X);case v$.Scalar.QUOTE_SINGLE:return uX(z.value,X);case v$.Scalar.PLAIN:return fG(z,X,J,Q);default:return null}},H=W(G);if(H===null){let{defaultKeyType:U,defaultStringType:V}=X.options,B=q&&U||V;if(H=W(B),H===null)throw Error(`Unsupported default string type ${B}`)}return H}xG.stringifyString=kG});var I6=A((dG)=>{var gG=n2(),L0=i(),vG=A6(),hG=F6();function uG($,X){let J=Object.assign({blockQuote:!0,commentString:vG.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},$.schema.toStringOptions,X),Q;switch(J.collectionStyle){case"block":Q=!1;break;case"flow":Q=!0;break;default:Q=null}return{anchors:new Set,doc:$,flowCollectionPadding:J.flowCollectionPadding?" ":"",indent:"",indentStep:typeof J.indent==="number"?" ".repeat(J.indent):" ",inFlow:Q,options:J}}function mG($,X){if(X.tag){let q=$.filter((Y)=>Y.tag===X.tag);if(q.length>0)return q.find((Y)=>Y.format===X.format)??q[0]}let J=void 0,Q;if(L0.isScalar(X)){Q=X.value;let q=$.filter((Y)=>Y.identify?.(Q));if(q.length>1){let Y=q.filter((z)=>z.test);if(Y.length>0)q=Y}J=q.find((Y)=>Y.format===X.format)??q.find((Y)=>!Y.format)}else Q=X,J=$.find((q)=>q.nodeClass&&Q instanceof q.nodeClass);if(!J){let q=Q?.constructor?.name??(Q===null?"null":typeof Q);throw Error(`Tag not resolved for ${q} value`)}return J}function lG($,X,{anchors:J,doc:Q}){if(!Q.directives)return"";let q=[],Y=(L0.isScalar($)||L0.isCollection($))&&$.anchor;if(Y&&gG.anchorIsValid(Y))J.add(Y),q.push(`&${Y}`);let z=$.tag??(X.default?null:X.tag);if(z)q.push(Q.directives.tagString(z));return q.join(" ")}function cG($,X,J,Q){if(L0.isPair($))return $.toString(X,J,Q);if(L0.isAlias($)){if(X.doc.directives)return $.toString(X);if(X.resolvedAliases?.has($))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(X.resolvedAliases)X.resolvedAliases.add($);else X.resolvedAliases=new Set([$]);$=$.resolve(X.doc)}}let q=void 0,Y=L0.isNode($)?$:X.doc.createNode($,{onTagObj:(W)=>q=W});q??(q=mG(X.doc.schema.tags,Y));let z=lG(Y,q,X);if(z.length>0)X.indentAtStart=(X.indentAtStart??0)+z.length+1;let G=typeof q.stringify==="function"?q.stringify(Y,X,J,Q):L0.isScalar(Y)?hG.stringifyString(Y,X,J,Q):Y.toString(X,J,Q);if(!z)return G;return L0.isScalar(Y)||G[0]==="{"||G[0]==="["?`${z} ${G}`:`${z}
|
|
60
|
+
${X.indent}${G}`}dG.createStringifyContext=uG;dG.stringify=cG});var wJ=A((rG)=>{var z0=i(),MJ=M$(),NJ=I6(),E6=A6();function nG({key:$,value:X},J,Q,q){let{allNullValues:Y,doc:z,indent:G,indentStep:W,options:{commentString:H,indentSeq:U,simpleKeys:V}}=J,B=z0.isNode($)&&$.comment||null;if(V){if(B)throw Error("With simple keys, key nodes cannot have comments");if(z0.isCollection($)||!z0.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let N=!V&&(!$||B&&X==null&&!J.inFlow||z0.isCollection($)||(z0.isScalar($)?$.type===MJ.Scalar.BLOCK_FOLDED||$.type===MJ.Scalar.BLOCK_LITERAL:typeof $==="object"));J=Object.assign({},J,{allNullValues:!1,implicitKey:!N&&(V||!Y),indent:G+W});let R=!1,M=!1,D=NJ.stringify($,J,()=>R=!0,()=>M=!0);if(!N&&!J.inFlow&&D.length>1024){if(V)throw Error("With simple keys, single line scalar must not span more than 1024 characters");N=!0}if(J.inFlow){if(Y||X==null){if(R&&Q)Q();return D===""?"?":N?`? ${D}`:D}}else if(Y&&!V||X==null&&N){if(D=`? ${D}`,B&&!R)D+=E6.lineComment(D,J.indent,H(B));else if(M&&q)q();return D}if(R)B=null;if(N){if(B)D+=E6.lineComment(D,J.indent,H(B));D=`? ${D}
|
|
61
|
+
${G}:`}else if(D=`${D}:`,B)D+=E6.lineComment(D,J.indent,H(B));let F,T,P;if(z0.isNode(X))F=!!X.spaceBefore,T=X.commentBefore,P=X.comment;else if(F=!1,T=null,P=null,X&&typeof X==="object")X=z.createNode(X);if(J.implicitKey=!1,!N&&!B&&z0.isScalar(X))J.indentAtStart=D.length+1;if(M=!1,!U&&W.length>=2&&!J.inFlow&&!N&&z0.isSeq(X)&&!X.flow&&!X.tag&&!X.anchor)J.indent=J.indent.substring(2);let f=!1,g=NJ.stringify(X,J,()=>f=!0,()=>M=!0),x=" ";if(B||F||T){if(x=F?`
|
|
62
|
+
`:"",T){let a=H(T);x+=`
|
|
63
|
+
${E6.indentComment(a,J.indent)}`}if(g===""&&!J.inFlow){if(x===`
|
|
64
|
+
`&&P)x=`
|
|
65
|
+
|
|
66
|
+
`}else x+=`
|
|
67
|
+
${J.indent}`}else if(!N&&z0.isCollection(X)){let a=g[0],S=g.indexOf(`
|
|
68
|
+
`),G$=S!==-1,r$=J.inFlow??X.flow??X.items.length===0;if(G$||!r$){let p=!1;if(G$&&(a==="&"||a==="!")){let V$=g.indexOf(" ");if(a==="&"&&V$!==-1&&V$<S&&g[V$+1]==="!")V$=g.indexOf(" ",V$+1);if(V$===-1||S<V$)p=!0}if(!p)x=`
|
|
69
|
+
${J.indent}`}}else if(g===""||g[0]===`
|
|
70
|
+
`)x="";if(D+=x+g,J.inFlow){if(f&&Q)Q()}else if(P&&!f)D+=E6.lineComment(D,J.indent,H(P));else if(M&&q)q();return D}rG.stringifyPair=nG});var lX=A((tG)=>{var DJ=W$("process");function sG($,...X){if($==="debug")console.log(...X)}function oG($,X){if($==="debug"||$==="warn")if(typeof DJ.emitWarning==="function")DJ.emitWarning(X);else console.warn(X)}tG.debug=sG;tG.warn=oG});var J5=A((JW)=>{var S6=i(),OJ=M$(),$5="<<",X5={identify:($)=>$===$5||typeof $==="symbol"&&$.description===$5,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new OJ.Scalar(Symbol($5)),{addToJSMap:LJ}),stringify:()=>$5},XW=($,X)=>(X5.identify(X)||S6.isScalar(X)&&(!X.type||X.type===OJ.Scalar.PLAIN)&&X5.identify(X.value))&&$?.doc.schema.tags.some((J)=>J.tag===X5.tag&&J.default);function LJ($,X,J){if(J=$&&S6.isAlias(J)?J.resolve($.doc):J,S6.isSeq(J))for(let Q of J.items)cX($,X,Q);else if(Array.isArray(J))for(let Q of J)cX($,X,Q);else cX($,X,J)}function cX($,X,J){let Q=$&&S6.isAlias(J)?J.resolve($.doc):J;if(!S6.isMap(Q))throw Error("Merge sources must be maps or map aliases");let q=Q.toJSON(null,$,Map);for(let[Y,z]of q)if(X instanceof Map){if(!X.has(Y))X.set(Y,z)}else if(X instanceof Set)X.add(Y);else if(!Object.prototype.hasOwnProperty.call(X,Y))Object.defineProperty(X,Y,{value:z,writable:!0,enumerable:!0,configurable:!0});return X}JW.addMergeToJSMap=LJ;JW.isMergeKey=XW;JW.merge=X5});var pX=A((UW)=>{var zW=lX(),RJ=J5(),GW=I6(),AJ=i(),dX=D0();function WW($,X,{key:J,value:Q}){if(AJ.isNode(J)&&J.addToJSMap)J.addToJSMap($,X,Q);else if(RJ.isMergeKey($,J))RJ.addMergeToJSMap($,X,Q);else{let q=dX.toJS(J,"",$);if(X instanceof Map)X.set(q,dX.toJS(Q,q,$));else if(X instanceof Set)X.add(q);else{let Y=HW(J,q,$),z=dX.toJS(Q,Y,$);if(Y in X)Object.defineProperty(X,Y,{value:z,writable:!0,enumerable:!0,configurable:!0});else X[Y]=z}}return X}function HW($,X,J){if(X===null)return"";if(typeof X!=="object")return String(X);if(AJ.isNode($)&&J?.doc){let Q=GW.createStringifyContext(J.doc,{});Q.anchors=new Set;for(let Y of J.anchors.keys())Q.anchors.add(Y.anchor);Q.inFlow=!0,Q.inStringifyKey=!0;let q=$.toString(Q);if(!J.mapKeyWarned){let Y=JSON.stringify(q);if(Y.length>40)Y=Y.substring(0,36)+'..."';zW.warn(J.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${Y}. Set mapAsMap: true to use object keys.`),J.mapKeyWarned=!0}return q}return JSON.stringify(X)}UW.addPairToJSMap=WW});var R0=A((NW)=>{var _J=R6(),BW=wJ(),KW=pX(),Q5=i();function MW($,X,J){let Q=_J.createNode($,void 0,J),q=_J.createNode(X,void 0,J);return new q5(Q,q)}class q5{constructor($,X=null){Object.defineProperty(this,Q5.NODE_TYPE,{value:Q5.PAIR}),this.key=$,this.value=X}clone($){let{key:X,value:J}=this;if(Q5.isNode(X))X=X.clone($);if(Q5.isNode(J))J=J.clone($);return new q5(X,J)}toJSON($,X){let J=X?.mapAsMap?new Map:{};return KW.addPairToJSMap(X,J,this)}toString($,X,J){return $?.doc?BW.stringifyPair(this,$,X,J):JSON.stringify(this)}}NW.Pair=q5;NW.createPair=MW});var iX=A((AW)=>{var p0=i(),FJ=I6(),Y5=A6();function OW($,X,J){return(X.inFlow??$.flow?RW:LW)($,X,J)}function LW({comment:$,items:X},J,{blockItemPrefix:Q,flowChars:q,itemIndent:Y,onChompKeep:z,onComment:G}){let{indent:W,options:{commentString:H}}=J,U=Object.assign({},J,{indent:Y,type:null}),V=!1,B=[];for(let R=0;R<X.length;++R){let M=X[R],D=null;if(p0.isNode(M)){if(!V&&M.spaceBefore)B.push("");if(z5(J,B,M.commentBefore,V),M.comment)D=M.comment}else if(p0.isPair(M)){let T=p0.isNode(M.key)?M.key:null;if(T){if(!V&&T.spaceBefore)B.push("");z5(J,B,T.commentBefore,V)}}V=!1;let F=FJ.stringify(M,U,()=>D=null,()=>V=!0);if(D)F+=Y5.lineComment(F,Y,H(D));if(V&&D)V=!1;B.push(Q+F)}let N;if(B.length===0)N=q.start+q.end;else{N=B[0];for(let R=1;R<B.length;++R){let M=B[R];N+=M?`
|
|
71
|
+
${W}${M}`:`
|
|
72
|
+
`}}if($){if(N+=`
|
|
73
|
+
`+Y5.indentComment(H($),W),G)G()}else if(V&&z)z();return N}function RW({items:$},X,{flowChars:J,itemIndent:Q}){let{indent:q,indentStep:Y,flowCollectionPadding:z,options:{commentString:G}}=X;Q+=Y;let W=Object.assign({},X,{indent:Q,inFlow:!0,type:null}),H=!1,U=0,V=[];for(let R=0;R<$.length;++R){let M=$[R],D=null;if(p0.isNode(M)){if(M.spaceBefore)V.push("");if(z5(X,V,M.commentBefore,!1),M.comment)D=M.comment}else if(p0.isPair(M)){let T=p0.isNode(M.key)?M.key:null;if(T){if(T.spaceBefore)V.push("");if(z5(X,V,T.commentBefore,!1),T.comment)H=!0}let P=p0.isNode(M.value)?M.value:null;if(P){if(P.comment)D=P.comment;if(P.commentBefore)H=!0}else if(M.value==null&&T?.comment)D=T.comment}if(D)H=!0;let F=FJ.stringify(M,W,()=>D=null);if(H||(H=V.length>U||F.includes(`
|
|
74
|
+
`)),R<$.length-1)F+=",";else if(X.options.trailingComma){if(X.options.lineWidth>0)H||(H=V.reduce((T,P)=>T+P.length+2,2)+(F.length+2)>X.options.lineWidth);if(H)F+=","}if(D)F+=Y5.lineComment(F,Q,G(D));V.push(F),U=V.length}let{start:B,end:N}=J;if(V.length===0)return B+N;else{if(!H){let R=V.reduce((M,D)=>M+D.length+2,2);H=X.options.lineWidth>0&&R>X.options.lineWidth}if(H){let R=B;for(let M of V)R+=M?`
|
|
75
|
+
${Y}${q}${M}`:`
|
|
76
|
+
`;return`${R}
|
|
77
|
+
${q}${N}`}else return`${B}${z}${V.join(" ")}${z}${N}`}}function z5({indent:$,options:{commentString:X}},J,Q,q){if(Q&&q)Q=Q.replace(/^\n+/,"");if(Q){let Y=Y5.indentComment(X(Q),$);J.push(Y.trimStart())}}AW.stringifyCollection=OW});var _0=A((jW)=>{var FW=iX(),IW=pX(),EW=s2(),A0=i(),G5=R0(),SW=M$();function j6($,X){let J=A0.isScalar(X)?X.value:X;for(let Q of $)if(A0.isPair(Q)){if(Q.key===X||Q.key===J)return Q;if(A0.isScalar(Q.key)&&Q.key.value===J)return Q}return}class IJ extends EW.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor($){super(A0.MAP,$);this.items=[]}static from($,X,J){let{keepUndefined:Q,replacer:q}=J,Y=new this($),z=(G,W)=>{if(typeof q==="function")W=q.call(X,G,W);else if(Array.isArray(q)&&!q.includes(G))return;if(W!==void 0||Q)Y.items.push(G5.createPair(G,W,J))};if(X instanceof Map)for(let[G,W]of X)z(G,W);else if(X&&typeof X==="object")for(let G of Object.keys(X))z(G,X[G]);if(typeof $.sortMapEntries==="function")Y.items.sort($.sortMapEntries);return Y}add($,X){let J;if(A0.isPair($))J=$;else if(!$||typeof $!=="object"||!("key"in $))J=new G5.Pair($,$?.value);else J=new G5.Pair($.key,$.value);let Q=j6(this.items,J.key),q=this.schema?.sortMapEntries;if(Q){if(!X)throw Error(`Key ${J.key} already set`);if(A0.isScalar(Q.value)&&SW.isScalarValue(J.value))Q.value.value=J.value;else Q.value=J.value}else if(q){let Y=this.items.findIndex((z)=>q(J,z)<0);if(Y===-1)this.items.push(J);else this.items.splice(Y,0,J)}else this.items.push(J)}delete($){let X=j6(this.items,$);if(!X)return!1;return this.items.splice(this.items.indexOf(X),1).length>0}get($,X){let Q=j6(this.items,$)?.value;return(!X&&A0.isScalar(Q)?Q.value:Q)??void 0}has($){return!!j6(this.items,$)}set($,X){this.add(new G5.Pair($,X),!0)}toJSON($,X,J){let Q=J?new J:X?.mapAsMap?new Map:{};if(X?.onCreate)X.onCreate(Q);for(let q of this.items)IW.addPairToJSMap(X,Q,q);return Q}toString($,X,J){if(!$)return JSON.stringify(this);for(let Q of this.items)if(!A0.isPair(Q))throw Error(`Map items must all be pairs; found ${JSON.stringify(Q)} instead`);if(!$.allNullValues&&this.hasAllNullValues(!1))$=Object.assign({},$,{allNullValues:!0});return FW.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:J,onComment:X})}}jW.YAMLMap=IJ;jW.findPair=j6});var O8=A((bW)=>{var CW=i(),EJ=_0(),PW={collection:"map",default:!0,nodeClass:EJ.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,X){if(!CW.isMap($))X("Expected a mapping for this tag");return $},createNode:($,X,J)=>EJ.YAMLMap.from($,X,J)};bW.map=PW});var F0=A((hW)=>{var kW=R6(),xW=iX(),yW=s2(),H5=i(),gW=M$(),vW=D0();class SJ extends yW.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(H5.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let X=W5($);if(typeof X!=="number")return!1;return this.items.splice(X,1).length>0}get($,X){let J=W5($);if(typeof J!=="number")return;let Q=this.items[J];return!X&&H5.isScalar(Q)?Q.value:Q}has($){let X=W5($);return typeof X==="number"&&X<this.items.length}set($,X){let J=W5($);if(typeof J!=="number")throw Error(`Expected a valid index, not ${$}.`);let Q=this.items[J];if(H5.isScalar(Q)&&gW.isScalarValue(X))Q.value=X;else this.items[J]=X}toJSON($,X){let J=[];if(X?.onCreate)X.onCreate(J);let Q=0;for(let q of this.items)J.push(vW.toJS(q,String(Q++),X));return J}toString($,X,J){if(!$)return JSON.stringify(this);return xW.stringifyCollection(this,$,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:($.indent||"")+" ",onChompKeep:J,onComment:X})}static from($,X,J){let{replacer:Q}=J,q=new this($);if(X&&Symbol.iterator in Object(X)){let Y=0;for(let z of X){if(typeof Q==="function"){let G=X instanceof Set?z:String(Y++);z=Q.call(X,G,z)}q.items.push(kW.createNode(z,void 0,J))}}return q}}function W5($){let X=H5.isScalar($)?$.value:$;if(X&&typeof X==="string")X=Number(X);return typeof X==="number"&&Number.isInteger(X)&&X>=0?X:null}hW.YAMLSeq=SJ});var L8=A((cW)=>{var mW=i(),jJ=F0(),lW={collection:"seq",default:!0,nodeClass:jJ.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,X){if(!mW.isSeq($))X("Expected a sequence for this tag");return $},createNode:($,X,J)=>jJ.YAMLSeq.from($,X,J)};cW.seq=lW});var T6=A((nW)=>{var pW=F6(),iW={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,X,J,Q){return X=Object.assign({actualString:!0},X),pW.stringifyString($,X,J,Q)}};nW.string=iW});var U5=A((aW)=>{var TJ=M$(),ZJ={identify:($)=>$==null,createNode:()=>new TJ.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new TJ.Scalar(null),stringify:({source:$},X)=>typeof $==="string"&&ZJ.test.test($)?$:X.options.nullStr};aW.nullTag=ZJ});var nX=A((tW)=>{var oW=M$(),CJ={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new oW.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:X},J){if($&&CJ.test.test($)){let Q=$[0]==="t"||$[0]==="T";if(X===Q)return $}return X?J.options.trueStr:J.options.falseStr}};tW.boolTag=CJ});var R8=A((XH)=>{function $H({format:$,minFractionDigits:X,tag:J,value:Q}){if(typeof Q==="bigint")return String(Q);let q=typeof Q==="number"?Q:Number(Q);if(!isFinite(q))return isNaN(q)?".nan":q<0?"-.inf":".inf";let Y=Object.is(Q,-0)?"-0":JSON.stringify(Q);if(!$&&X&&(!J||J==="tag:yaml.org,2002:float")&&/^\d/.test(Y)){let z=Y.indexOf(".");if(z<0)z=Y.length,Y+=".";let G=X-(Y.length-z-1);while(G-- >0)Y+="0"}return Y}XH.stringifyNumber=$H});var aX=A((GH)=>{var QH=M$(),rX=R8(),qH={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:rX.stringifyNumber},YH={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 X=Number($.value);return isFinite(X)?X.toExponential():rX.stringifyNumber($)}},zH={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let X=new QH.Scalar(parseFloat($)),J=$.indexOf(".");if(J!==-1&&$[$.length-1]==="0")X.minFractionDigits=$.length-J-1;return X},stringify:rX.stringifyNumber};GH.float=zH;GH.floatExp=YH;GH.floatNaN=qH});var oX=A((MH)=>{var PJ=R8(),V5=($)=>typeof $==="bigint"||Number.isInteger($),sX=($,X,J,{intAsBigInt:Q})=>Q?BigInt($):parseInt($.substring(X),J);function bJ($,X,J){let{value:Q}=$;if(V5(Q)&&Q>=0)return J+Q.toString(X);return PJ.stringifyNumber($)}var VH={identify:($)=>V5($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,X,J)=>sX($,2,8,J),stringify:($)=>bJ($,8,"0o")},BH={identify:V5,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,X,J)=>sX($,0,10,J),stringify:PJ.stringifyNumber},KH={identify:($)=>V5($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,X,J)=>sX($,2,16,J),stringify:($)=>bJ($,16,"0x")};MH.int=BH;MH.intHex=KH;MH.intOct=VH});var fJ=A((IH)=>{var OH=O8(),LH=U5(),RH=L8(),AH=T6(),_H=nX(),tX=aX(),eX=oX(),FH=[OH.map,RH.seq,AH.string,LH.nullTag,_H.boolTag,eX.intOct,eX.int,eX.intHex,tX.floatNaN,tX.floatExp,tX.float];IH.schema=FH});var xJ=A((bH)=>{var SH=M$(),jH=O8(),TH=L8();function kJ($){return typeof $==="bigint"||Number.isInteger($)}var B5=({value:$})=>JSON.stringify($),ZH=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:B5},{identify:($)=>$==null,createNode:()=>new SH.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:B5},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:B5},{identify:kJ,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,X,{intAsBigInt:J})=>J?BigInt($):parseInt($,10),stringify:({value:$})=>kJ($)?$.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:B5}],CH={default:!0,tag:"",test:/^/,resolve($,X){return X(`Unresolved plain scalar ${JSON.stringify($)}`),$}},PH=[jH.map,TH.seq].concat(ZH,CH);bH.schema=PH});var X4=A((yH)=>{var Z6=W$("buffer"),$4=M$(),kH=F6(),xH={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,X){if(typeof Z6.Buffer==="function")return Z6.Buffer.from($,"base64");else if(typeof atob==="function"){let J=atob($.replace(/[\n\r]/g,"")),Q=new Uint8Array(J.length);for(let q=0;q<J.length;++q)Q[q]=J.charCodeAt(q);return Q}else return X("This environment does not support reading binary tags; either Buffer or atob is required"),$},stringify({comment:$,type:X,value:J},Q,q,Y){if(!J)return"";let z=J,G;if(typeof Z6.Buffer==="function")G=z instanceof Z6.Buffer?z.toString("base64"):Z6.Buffer.from(z.buffer).toString("base64");else if(typeof btoa==="function"){let W="";for(let H=0;H<z.length;++H)W+=String.fromCharCode(z[H]);G=btoa(W)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(X??(X=$4.Scalar.BLOCK_LITERAL),X!==$4.Scalar.QUOTE_DOUBLE){let W=Math.max(Q.options.lineWidth-Q.indent.length,Q.options.minContentWidth),H=Math.ceil(G.length/W),U=Array(H);for(let V=0,B=0;V<H;++V,B+=W)U[V]=G.substr(B,W);G=U.join(X===$4.Scalar.BLOCK_LITERAL?`
|
|
78
|
+
`:" ")}return kH.stringifyString({comment:$,type:X,value:G},Q,q,Y)}};yH.binary=xH});var M5=A((mH)=>{var K5=i(),J4=R0(),vH=M$(),hH=F0();function yJ($,X){if(K5.isSeq($))for(let J=0;J<$.items.length;++J){let Q=$.items[J];if(K5.isPair(Q))continue;else if(K5.isMap(Q)){if(Q.items.length>1)X("Each pair must have its own sequence indicator");let q=Q.items[0]||new J4.Pair(new vH.Scalar(null));if(Q.commentBefore)q.key.commentBefore=q.key.commentBefore?`${Q.commentBefore}
|
|
79
|
+
${q.key.commentBefore}`:Q.commentBefore;if(Q.comment){let Y=q.value??q.key;Y.comment=Y.comment?`${Q.comment}
|
|
80
|
+
${Y.comment}`:Q.comment}Q=q}$.items[J]=K5.isPair(Q)?Q:new J4.Pair(Q)}else X("Expected a sequence for this tag");return $}function gJ($,X,J){let{replacer:Q}=J,q=new hH.YAMLSeq($);q.tag="tag:yaml.org,2002:pairs";let Y=0;if(X&&Symbol.iterator in Object(X))for(let z of X){if(typeof Q==="function")z=Q.call(X,String(Y++),z);let G,W;if(Array.isArray(z))if(z.length===2)G=z[0],W=z[1];else throw TypeError(`Expected [key, value] tuple: ${z}`);else if(z&&z instanceof Object){let H=Object.keys(z);if(H.length===1)G=H[0],W=z[G];else throw TypeError(`Expected tuple with one key, not ${H.length} keys`)}else G=z;q.items.push(J4.createPair(G,W,J))}return q}var uH={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:yJ,createNode:gJ};mH.createPairs=gJ;mH.pairs=uH;mH.resolvePairs=yJ});var q4=A((nH)=>{var vJ=i(),Q4=D0(),C6=_0(),pH=F0(),hJ=M5();class i0 extends pH.YAMLSeq{constructor(){super();this.add=C6.YAMLMap.prototype.add.bind(this),this.delete=C6.YAMLMap.prototype.delete.bind(this),this.get=C6.YAMLMap.prototype.get.bind(this),this.has=C6.YAMLMap.prototype.has.bind(this),this.set=C6.YAMLMap.prototype.set.bind(this),this.tag=i0.tag}toJSON($,X){if(!X)return super.toJSON($);let J=new Map;if(X?.onCreate)X.onCreate(J);for(let Q of this.items){let q,Y;if(vJ.isPair(Q))q=Q4.toJS(Q.key,"",X),Y=Q4.toJS(Q.value,q,X);else q=Q4.toJS(Q,"",X);if(J.has(q))throw Error("Ordered maps must not include duplicate keys");J.set(q,Y)}return J}static from($,X,J){let Q=hJ.createPairs($,X,J),q=new this;return q.items=Q.items,q}}i0.tag="tag:yaml.org,2002:omap";var iH={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:i0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,X){let J=hJ.resolvePairs($,X),Q=[];for(let{key:q}of J.items)if(vJ.isScalar(q))if(Q.includes(q.value))X(`Ordered maps must not include duplicate keys: ${q.value}`);else Q.push(q.value);return Object.assign(new i0,J)},createNode:($,X,J)=>i0.from($,X,J)};nH.YAMLOMap=i0;nH.omap=iH});var dJ=A((sH)=>{var uJ=M$();function mJ({value:$,source:X},J){if(X&&($?lJ:cJ).test.test(X))return X;return $?J.options.trueStr:J.options.falseStr}var lJ={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new uJ.Scalar(!0),stringify:mJ},cJ={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new uJ.Scalar(!1),stringify:mJ};sH.falseTag=cJ;sH.trueTag=lJ});var pJ=A((QU)=>{var eH=M$(),Y4=R8(),$U={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Y4.stringifyNumber},XU={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 X=Number($.value);return isFinite(X)?X.toExponential():Y4.stringifyNumber($)}},JU={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let X=new eH.Scalar(parseFloat($.replace(/_/g,""))),J=$.indexOf(".");if(J!==-1){let Q=$.substring(J+1).replace(/_/g,"");if(Q[Q.length-1]==="0")X.minFractionDigits=Q.length}return X},stringify:Y4.stringifyNumber};QU.float=JU;QU.floatExp=XU;QU.floatNaN=$U});var nJ=A((VU)=>{var iJ=R8(),P6=($)=>typeof $==="bigint"||Number.isInteger($);function N5($,X,J,{intAsBigInt:Q}){let q=$[0];if(q==="-"||q==="+")X+=1;if($=$.substring(X).replace(/_/g,""),Q){switch(J){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let z=BigInt($);return q==="-"?BigInt(-1)*z:z}let Y=parseInt($,J);return q==="-"?-1*Y:Y}function z4($,X,J){let{value:Q}=$;if(P6(Q)){let q=Q.toString(X);return Q<0?"-"+J+q.substr(1):J+q}return iJ.stringifyNumber($)}var GU={identify:P6,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,X,J)=>N5($,2,2,J),stringify:($)=>z4($,2,"0b")},WU={identify:P6,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,X,J)=>N5($,1,8,J),stringify:($)=>z4($,8,"0")},HU={identify:P6,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,X,J)=>N5($,0,10,J),stringify:iJ.stringifyNumber},UU={identify:P6,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,X,J)=>N5($,2,16,J),stringify:($)=>z4($,16,"0x")};VU.int=HU;VU.intBin=GU;VU.intHex=UU;VU.intOct=WU});var G4=A((DU)=>{var O5=i(),w5=R0(),D5=_0();class n0 extends D5.YAMLMap{constructor($){super($);this.tag=n0.tag}add($){let X;if(O5.isPair($))X=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)X=new w5.Pair($.key,null);else X=new w5.Pair($,null);if(!D5.findPair(this.items,X.key))this.items.push(X)}get($,X){let J=D5.findPair(this.items,$);return!X&&O5.isPair(J)?O5.isScalar(J.key)?J.key.value:J.key:J}set($,X){if(typeof X!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof X}`);let J=D5.findPair(this.items,$);if(J&&!X)this.items.splice(this.items.indexOf(J),1);else if(!J&&X)this.items.push(new w5.Pair($))}toJSON($,X){return super.toJSON($,X,Set)}toString($,X,J){if(!$)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},$,{allNullValues:!0}),X,J);else throw Error("Set items must all have null values")}static from($,X,J){let{replacer:Q}=J,q=new this($);if(X&&Symbol.iterator in Object(X))for(let Y of X){if(typeof Q==="function")Y=Q.call(X,Y,Y);q.items.push(w5.createPair(Y,null,J))}return q}}n0.tag="tag:yaml.org,2002:set";var wU={collection:"map",identify:($)=>$ instanceof Set,nodeClass:n0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,X,J)=>n0.from($,X,J),resolve($,X){if(O5.isMap($))if($.hasAllNullValues(!0))return Object.assign(new n0,$);else X("Set items must all have null values");else X("Expected a mapping for this tag");return $}};DU.YAMLSet=n0;DU.set=wU});var H4=A((FU)=>{var RU=R8();function W4($,X){let J=$[0],Q=J==="-"||J==="+"?$.substring(1):$,q=(z)=>X?BigInt(z):Number(z),Y=Q.replace(/_/g,"").split(":").reduce((z,G)=>z*q(60)+q(G),q(0));return J==="-"?q(-1)*Y:Y}function rJ($){let{value:X}=$,J=(z)=>z;if(typeof X==="bigint")J=(z)=>BigInt(z);else if(isNaN(X)||!isFinite(X))return RU.stringifyNumber($);let Q="";if(X<0)Q="-",X*=J(-1);let q=J(60),Y=[X%q];if(X<60)Y.unshift(0);else if(X=(X-Y[0])/q,Y.unshift(X%q),X>=60)X=(X-Y[0])/q,Y.unshift(X);return Q+Y.map((z)=>String(z).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var AU={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:($,X,{intAsBigInt:J})=>W4($,J),stringify:rJ},_U={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:($)=>W4($,!1),stringify:rJ},aJ={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 X=$.match(aJ.test);if(!X)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,J,Q,q,Y,z,G]=X.map(Number),W=X[7]?Number((X[7]+"00").substr(1,3)):0,H=Date.UTC(J,Q-1,q,Y||0,z||0,G||0,W),U=X[8];if(U&&U!=="Z"){let V=W4(U,!1);if(Math.abs(V)<30)V*=60;H-=60000*V}return new Date(H)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};FU.floatTime=_U;FU.intTime=AU;FU.timestamp=aJ});var oJ=A((gU)=>{var jU=O8(),TU=U5(),ZU=L8(),CU=T6(),PU=X4(),sJ=dJ(),U4=pJ(),L5=nJ(),bU=J5(),fU=q4(),kU=M5(),xU=G4(),V4=H4(),yU=[jU.map,ZU.seq,CU.string,TU.nullTag,sJ.trueTag,sJ.falseTag,L5.intBin,L5.intOct,L5.int,L5.intHex,U4.floatNaN,U4.floatExp,U4.float,PU.binary,bU.merge,fU.omap,kU.pairs,xU.set,V4.intTime,V4.floatTime,V4.timestamp];gU.schema=yU});var G1=A((iU)=>{var X1=O8(),hU=U5(),J1=L8(),uU=T6(),mU=nX(),B4=aX(),K4=oX(),lU=fJ(),cU=xJ(),Q1=X4(),b6=J5(),q1=q4(),Y1=M5(),tJ=oJ(),z1=G4(),R5=H4(),eJ=new Map([["core",lU.schema],["failsafe",[X1.map,J1.seq,uU.string]],["json",cU.schema],["yaml11",tJ.schema],["yaml-1.1",tJ.schema]]),$1={binary:Q1.binary,bool:mU.boolTag,float:B4.float,floatExp:B4.floatExp,floatNaN:B4.floatNaN,floatTime:R5.floatTime,int:K4.int,intHex:K4.intHex,intOct:K4.intOct,intTime:R5.intTime,map:X1.map,merge:b6.merge,null:hU.nullTag,omap:q1.omap,pairs:Y1.pairs,seq:J1.seq,set:z1.set,timestamp:R5.timestamp},dU={"tag:yaml.org,2002:binary":Q1.binary,"tag:yaml.org,2002:merge":b6.merge,"tag:yaml.org,2002:omap":q1.omap,"tag:yaml.org,2002:pairs":Y1.pairs,"tag:yaml.org,2002:set":z1.set,"tag:yaml.org,2002:timestamp":R5.timestamp};function pU($,X,J){let Q=eJ.get(X);if(Q&&!$)return J&&!Q.includes(b6.merge)?Q.concat(b6.merge):Q.slice();let q=Q;if(!q)if(Array.isArray($))q=[];else{let Y=Array.from(eJ.keys()).filter((z)=>z!=="yaml11").map((z)=>JSON.stringify(z)).join(", ");throw Error(`Unknown schema "${X}"; use one of ${Y} or define customTags array`)}if(Array.isArray($))for(let Y of $)q=q.concat(Y);else if(typeof $==="function")q=$(q.slice());if(J)q=q.concat(b6.merge);return q.reduce((Y,z)=>{let G=typeof z==="string"?$1[z]:z;if(!G){let W=JSON.stringify(z),H=Object.keys($1).map((U)=>JSON.stringify(U)).join(", ");throw Error(`Unknown custom tag ${W}; use one of ${H}`)}if(!Y.includes(G))Y.push(G);return Y},[])}iU.coreKnownTags=dU;iU.getTags=pU});var w4=A((eU)=>{var M4=i(),aU=O8(),sU=L8(),oU=T6(),A5=G1(),tU=($,X)=>$.key<X.key?-1:$.key>X.key?1:0;class N4{constructor({compat:$,customTags:X,merge:J,resolveKnownTags:Q,schema:q,sortMapEntries:Y,toStringDefaults:z}){this.compat=Array.isArray($)?A5.getTags($,"compat"):$?A5.getTags(null,$):null,this.name=typeof q==="string"&&q||"core",this.knownTags=Q?A5.coreKnownTags:{},this.tags=A5.getTags(X,this.name,J),this.toStringOptions=z??null,Object.defineProperty(this,M4.MAP,{value:aU.map}),Object.defineProperty(this,M4.SCALAR,{value:oU.string}),Object.defineProperty(this,M4.SEQ,{value:sU.seq}),this.sortMapEntries=typeof Y==="function"?Y:Y===!0?tU:null}clone(){let $=Object.create(N4.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}eU.Schema=N4});var W1=A((QV)=>{var XV=i(),D4=I6(),f6=A6();function JV($,X){let J=[],Q=X.directives===!0;if(X.directives!==!1&&$.directives){let W=$.directives.toString($);if(W)J.push(W),Q=!0;else if($.directives.docStart)Q=!0}if(Q)J.push("---");let q=D4.createStringifyContext($,X),{commentString:Y}=q.options;if($.commentBefore){if(J.length!==1)J.unshift("");let W=Y($.commentBefore);J.unshift(f6.indentComment(W,""))}let z=!1,G=null;if($.contents){if(XV.isNode($.contents)){if($.contents.spaceBefore&&Q)J.push("");if($.contents.commentBefore){let U=Y($.contents.commentBefore);J.push(f6.indentComment(U,""))}q.forceBlockIndent=!!$.comment,G=$.contents.comment}let W=G?void 0:()=>z=!0,H=D4.stringify($.contents,q,()=>G=null,W);if(G)H+=f6.lineComment(H,"",Y(G));if((H[0]==="|"||H[0]===">")&&J[J.length-1]==="---")J[J.length-1]=`--- ${H}`;else J.push(H)}else J.push(D4.stringify($.contents,q));if($.directives?.docEnd)if($.comment){let W=Y($.comment);if(W.includes(`
|
|
81
|
+
`))J.push("..."),J.push(f6.indentComment(W,""));else J.push(`... ${W}`)}else J.push("...");else{let W=$.comment;if(W&&z)W=W.replace(/^\n+/,"");if(W){if((!z||G)&&J[J.length-1]!=="")J.push("");J.push(f6.indentComment(Y(W),""))}}return J.join(`
|
|
82
82
|
`)+`
|
|
83
|
-
`}
|
|
84
|
-
`;
|
|
85
|
-
|
|
86
|
-
${
|
|
87
|
-
${
|
|
88
|
-
`}};
|
|
89
|
-
`))return!0;if($.end){for(let
|
|
90
|
-
`+
|
|
91
|
-
`+P.comment;else
|
|
92
|
-
`+
|
|
93
|
-
`+
|
|
94
|
-
`+
|
|
95
|
-
`+
|
|
96
|
-
`.repeat(Math.max(1,
|
|
97
|
-
`;for(let
|
|
98
|
-
`;else if(
|
|
99
|
-
`;else if(!
|
|
100
|
-
`)
|
|
101
|
-
|
|
102
|
-
`;
|
|
103
|
-
`,
|
|
104
|
-
`)
|
|
105
|
-
`;else
|
|
106
|
-
`;else
|
|
107
|
-
`+
|
|
108
|
-
`)
|
|
109
|
-
`;break;default:
|
|
110
|
-
`}let
|
|
111
|
-
`,"sy"),
|
|
112
|
-
`,"sy")}catch{
|
|
113
|
-
`)
|
|
114
|
-
`;else
|
|
115
|
-
`)continue;if(
|
|
116
|
-
`){let{fold:
|
|
117
|
-
`){
|
|
118
|
-
`){
|
|
119
|
-
`&&!(
|
|
120
|
-
`))
|
|
121
|
-
`||
|
|
122
|
-
`)break;if(
|
|
123
|
-
`)
|
|
124
|
-
`;
|
|
125
|
-
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function
|
|
83
|
+
`}QV.stringifyDocument=JV});var k6=A((BV)=>{var YV=L6(),A8=s2(),x$=i(),zV=R0(),GV=D0(),WV=w4(),HV=W1(),O4=n2(),UV=gX(),VV=R6(),L4=yX();class R4{constructor($,X,J){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,x$.NODE_TYPE,{value:x$.DOC});let Q=null;if(typeof X==="function"||Array.isArray(X))Q=X;else if(J===void 0&&X)J=X,X=void 0;let q=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},J);this.options=q;let{version:Y}=q;if(J?._directives){if(this.directives=J._directives.atDocument(),this.directives.yaml.explicit)Y=this.directives.yaml.version}else this.directives=new L4.Directives({version:Y});this.setSchema(Y,J),this.contents=$===void 0?null:this.createNode($,Q,J)}clone(){let $=Object.create(R4.prototype,{[x$.NODE_TYPE]:{value:x$.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=x$.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(_8(this.contents))this.contents.add($)}addIn($,X){if(_8(this.contents))this.contents.addIn($,X)}createAlias($,X){if(!$.anchor){let J=O4.anchorNames(this);$.anchor=!X||J.has(X)?O4.findNewAnchor(X||"a",J):X}return new YV.Alias($.anchor)}createNode($,X,J){let Q=void 0;if(typeof X==="function")$=X.call({"":$},"",$),Q=X;else if(Array.isArray(X)){let M=(F)=>typeof F==="number"||F instanceof String||F instanceof Number,D=X.filter(M).map(String);if(D.length>0)X=X.concat(D);Q=X}else if(J===void 0&&X)J=X,X=void 0;let{aliasDuplicateObjects:q,anchorPrefix:Y,flow:z,keepUndefined:G,onTagObj:W,tag:H}=J??{},{onAnchor:U,setAnchors:V,sourceObjects:B}=O4.createNodeAnchors(this,Y||"a"),N={aliasDuplicateObjects:q??!0,keepUndefined:G??!1,onAnchor:U,onTagObj:W,replacer:Q,schema:this.schema,sourceObjects:B},R=VV.createNode($,H,N);if(z&&x$.isCollection(R))R.flow=!0;return V(),R}createPair($,X,J={}){let Q=this.createNode($,null,J),q=this.createNode(X,null,J);return new zV.Pair(Q,q)}delete($){return _8(this.contents)?this.contents.delete($):!1}deleteIn($){if(A8.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return _8(this.contents)?this.contents.deleteIn($):!1}get($,X){return x$.isCollection(this.contents)?this.contents.get($,X):void 0}getIn($,X){if(A8.isEmptyPath($))return!X&&x$.isScalar(this.contents)?this.contents.value:this.contents;return x$.isCollection(this.contents)?this.contents.getIn($,X):void 0}has($){return x$.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(A8.isEmptyPath($))return this.contents!==void 0;return x$.isCollection(this.contents)?this.contents.hasIn($):!1}set($,X){if(this.contents==null)this.contents=A8.collectionFromPath(this.schema,[$],X);else if(_8(this.contents))this.contents.set($,X)}setIn($,X){if(A8.isEmptyPath($))this.contents=X;else if(this.contents==null)this.contents=A8.collectionFromPath(this.schema,Array.from($),X);else if(_8(this.contents))this.contents.setIn($,X)}setSchema($,X={}){if(typeof $==="number")$=String($);let J;switch($){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new L4.Directives({version:"1.1"});J={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=$;else this.directives=new L4.Directives({version:$});J={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;J=null;break;default:{let Q=JSON.stringify($);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${Q}`)}}if(X.schema instanceof Object)this.schema=X.schema;else if(J)this.schema=new WV.Schema(Object.assign(J,X));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:$,jsonArg:X,mapAsMap:J,maxAliasCount:Q,onAnchor:q,reviver:Y}={}){let z={anchors:new Map,doc:this,keep:!$,mapAsMap:J===!0,mapKeyWarned:!1,maxAliasCount:typeof Q==="number"?Q:100},G=GV.toJS(this.contents,X??"",z);if(typeof q==="function")for(let{count:W,res:H}of z.anchors.values())q(H,W);return typeof Y==="function"?UV.applyReviver(Y,{"":G},"",G):G}toJSON($,X){return this.toJS({json:!0,jsonArg:$,mapAsMap:!1,onAnchor:X})}toString($={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in $&&(!Number.isInteger($.indent)||Number($.indent)<=0)){let X=JSON.stringify($.indent);throw Error(`"indent" option must be a positive integer, not ${X}`)}return HV.stringifyDocument(this,$)}}function _8($){if(x$.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}BV.Document=R4});var x6=A((NV)=>{class _5 extends Error{constructor($,X,J,Q){super();this.name=$,this.code=J,this.message=Q,this.pos=X}}class H1 extends _5{constructor($,X,J){super("YAMLParseError",$,X,J)}}class U1 extends _5{constructor($,X,J){super("YAMLWarning",$,X,J)}}var MV=($,X)=>(J)=>{if(J.pos[0]===-1)return;J.linePos=J.pos.map((G)=>X.linePos(G));let{line:Q,col:q}=J.linePos[0];J.message+=` at line ${Q}, column ${q}`;let Y=q-1,z=$.substring(X.lineStarts[Q-1],X.lineStarts[Q]).replace(/[\n\r]+$/,"");if(Y>=60&&z.length>80){let G=Math.min(Y-39,z.length-79);z="…"+z.substring(G),Y-=G-1}if(z.length>80)z=z.substring(0,79)+"…";if(Q>1&&/^ *$/.test(z.substring(0,Y))){let G=$.substring(X.lineStarts[Q-2],X.lineStarts[Q-1]);if(G.length>80)G=G.substring(0,79)+`…
|
|
84
|
+
`;z=G+z}if(/[^ ]/.test(z)){let G=1,W=J.linePos[1];if(W?.line===Q&&W.col>q)G=Math.max(1,Math.min(W.col-q,80-Y));let H=" ".repeat(Y)+"^".repeat(G);J.message+=`:
|
|
85
|
+
|
|
86
|
+
${z}
|
|
87
|
+
${H}
|
|
88
|
+
`}};NV.YAMLError=_5;NV.YAMLParseError=H1;NV.YAMLWarning=U1;NV.prettifyError=MV});var y6=A((AV)=>{function RV($,{flow:X,indicator:J,next:Q,offset:q,onError:Y,parentIndent:z,startOnNewline:G}){let W=!1,H=G,U=G,V="",B="",N=!1,R=!1,M=null,D=null,F=null,T=null,P=null,f=null,g=null;for(let S of $){if(R){if(S.type!=="space"&&S.type!=="newline"&&S.type!=="comma")Y(S.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");R=!1}if(M){if(H&&S.type!=="comment"&&S.type!=="newline")Y(M,"TAB_AS_INDENT","Tabs are not allowed as indentation");M=null}switch(S.type){case"space":if(!X&&(J!=="doc-start"||Q?.type!=="flow-collection")&&S.source.includes("\t"))M=S;U=!0;break;case"comment":{if(!U)Y(S,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let G$=S.source.substring(1)||" ";if(!V)V=G$;else V+=B+G$;B="",H=!1;break}case"newline":if(H){if(V)V+=S.source;else if(!f||J!=="seq-item-ind")W=!0}else B+=S.source;if(H=!0,N=!0,D||F)T=S;U=!0;break;case"anchor":if(D)Y(S,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(S.source.endsWith(":"))Y(S.offset+S.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);D=S,g??(g=S.offset),H=!1,U=!1,R=!0;break;case"tag":{if(F)Y(S,"MULTIPLE_TAGS","A node can have at most one tag");F=S,g??(g=S.offset),H=!1,U=!1,R=!0;break}case J:if(D||F)Y(S,"BAD_PROP_ORDER",`Anchors and tags must be after the ${S.source} indicator`);if(f)Y(S,"UNEXPECTED_TOKEN",`Unexpected ${S.source} in ${X??"collection"}`);f=S,H=J==="seq-item-ind"||J==="explicit-key-ind",U=!1;break;case"comma":if(X){if(P)Y(S,"UNEXPECTED_TOKEN",`Unexpected , in ${X}`);P=S,H=!1,U=!1;break}default:Y(S,"UNEXPECTED_TOKEN",`Unexpected ${S.type} token`),H=!1,U=!1}}let x=$[$.length-1],a=x?x.offset+x.source.length:q;if(R&&Q&&Q.type!=="space"&&Q.type!=="newline"&&Q.type!=="comma"&&(Q.type!=="scalar"||Q.source!==""))Y(Q.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(M&&(H&&M.indent<=z||Q?.type==="block-map"||Q?.type==="block-seq"))Y(M,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:P,found:f,spaceBefore:W,comment:V,hasNewline:N,anchor:D,tag:F,newlineAfterProp:T,end:a,start:g??a}}AV.resolveProps=RV});var F5=A((FV)=>{function A4($){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 X of $.end)if(X.type==="newline")return!0}return!1;case"flow-collection":for(let X of $.items){for(let J of X.start)if(J.type==="newline")return!0;if(X.sep){for(let J of X.sep)if(J.type==="newline")return!0}if(A4(X.key)||A4(X.value))return!0}return!1;default:return!0}}FV.containsNewline=A4});var _4=A((jV)=>{var EV=F5();function SV($,X,J){if(X?.type==="flow-collection"){let Q=X.end[0];if(Q.indent===$&&(Q.source==="]"||Q.source==="}")&&EV.containsNewline(X))J(Q,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}jV.flowIndentCheck=SV});var F4=A((CV)=>{var V1=i();function ZV($,X,J){let{uniqueKeys:Q}=$.options;if(Q===!1)return!1;let q=typeof Q==="function"?Q:(Y,z)=>Y===z||V1.isScalar(Y)&&V1.isScalar(z)&&Y.value===z.value;return X.some((Y)=>q(Y.key,J))}CV.mapIncludes=ZV});var w1=A((yV)=>{var B1=R0(),bV=_0(),K1=y6(),fV=F5(),M1=_4(),kV=F4(),N1="All mapping items must start at the same column";function xV({composeNode:$,composeEmptyNode:X},J,Q,q,Y){let G=new(Y?.nodeClass??bV.YAMLMap)(J.schema);if(J.atRoot)J.atRoot=!1;let W=Q.offset,H=null;for(let U of Q.items){let{start:V,key:B,sep:N,value:R}=U,M=K1.resolveProps(V,{indicator:"explicit-key-ind",next:B??N?.[0],offset:W,onError:q,parentIndent:Q.indent,startOnNewline:!0}),D=!M.found;if(D){if(B){if(B.type==="block-seq")q(W,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in B&&B.indent!==Q.indent)q(W,"BAD_INDENT",N1)}if(!M.anchor&&!M.tag&&!N){if(H=M.end,M.comment)if(G.comment)G.comment+=`
|
|
90
|
+
`+M.comment;else G.comment=M.comment;continue}if(M.newlineAfterProp||fV.containsNewline(B))q(B??V[V.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(M.found?.indent!==Q.indent)q(W,"BAD_INDENT",N1);J.atKey=!0;let F=M.end,T=B?$(J,B,M,q):X(J,F,V,null,M,q);if(J.schema.compat)M1.flowIndentCheck(Q.indent,B,q);if(J.atKey=!1,kV.mapIncludes(J,G.items,T))q(F,"DUPLICATE_KEY","Map keys must be unique");let P=K1.resolveProps(N??[],{indicator:"map-value-ind",next:R,offset:T.range[2],onError:q,parentIndent:Q.indent,startOnNewline:!B||B.type==="block-scalar"});if(W=P.end,P.found){if(D){if(R?.type==="block-map"&&!P.hasNewline)q(W,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(J.options.strict&&M.start<P.found.offset-1024)q(T.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let f=R?$(J,R,P,q):X(J,W,N,null,P,q);if(J.schema.compat)M1.flowIndentCheck(Q.indent,R,q);W=f.range[2];let g=new B1.Pair(T,f);if(J.options.keepSourceTokens)g.srcToken=U;G.items.push(g)}else{if(D)q(T.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(P.comment)if(T.comment)T.comment+=`
|
|
91
|
+
`+P.comment;else T.comment=P.comment;let f=new B1.Pair(T);if(J.options.keepSourceTokens)f.srcToken=U;G.items.push(f)}}if(H&&H<W)q(H,"IMPOSSIBLE","Map comment with trailing content");return G.range=[Q.offset,W,H??W],G}yV.resolveBlockMap=xV});var D1=A((lV)=>{var vV=F0(),hV=y6(),uV=_4();function mV({composeNode:$,composeEmptyNode:X},J,Q,q,Y){let G=new(Y?.nodeClass??vV.YAMLSeq)(J.schema);if(J.atRoot)J.atRoot=!1;if(J.atKey)J.atKey=!1;let W=Q.offset,H=null;for(let{start:U,value:V}of Q.items){let B=hV.resolveProps(U,{indicator:"seq-item-ind",next:V,offset:W,onError:q,parentIndent:Q.indent,startOnNewline:!0});if(!B.found)if(B.anchor||B.tag||V)if(V?.type==="block-seq")q(B.end,"BAD_INDENT","All sequence items must start at the same column");else q(W,"MISSING_CHAR","Sequence item without - indicator");else{if(H=B.end,B.comment)G.comment=B.comment;continue}let N=V?$(J,V,B,q):X(J,B.end,U,null,B,q);if(J.schema.compat)uV.flowIndentCheck(Q.indent,V,q);W=N.range[2],G.items.push(N)}return G.range=[Q.offset,W,H??W],G}lV.resolveBlockSeq=mV});var F8=A((pV)=>{function dV($,X,J,Q){let q="";if($){let Y=!1,z="";for(let G of $){let{source:W,type:H}=G;switch(H){case"space":Y=!0;break;case"comment":{if(J&&!Y)Q(G,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let U=W.substring(1)||" ";if(!q)q=U;else q+=z+U;z="";break}case"newline":if(q)z+=W;Y=!0;break;default:Q(G,"UNEXPECTED_TOKEN",`Unexpected ${H} at node end`)}X+=W.length}}return{comment:q,offset:X}}pV.resolveEnd=dV});var R1=A(($B)=>{var nV=i(),rV=R0(),O1=_0(),aV=F0(),sV=F8(),L1=y6(),oV=F5(),tV=F4(),I4="Block collections are not allowed within flow collections",E4=($)=>$&&($.type==="block-map"||$.type==="block-seq");function eV({composeNode:$,composeEmptyNode:X},J,Q,q,Y){let z=Q.start.source==="{",G=z?"flow map":"flow sequence",H=new(Y?.nodeClass??(z?O1.YAMLMap:aV.YAMLSeq))(J.schema);H.flow=!0;let U=J.atRoot;if(U)J.atRoot=!1;if(J.atKey)J.atKey=!1;let V=Q.offset+Q.start.source.length;for(let D=0;D<Q.items.length;++D){let F=Q.items[D],{start:T,key:P,sep:f,value:g}=F,x=L1.resolveProps(T,{flow:G,indicator:"explicit-key-ind",next:P??f?.[0],offset:V,onError:q,parentIndent:Q.indent,startOnNewline:!1});if(!x.found){if(!x.anchor&&!x.tag&&!f&&!g){if(D===0&&x.comma)q(x.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${G}`);else if(D<Q.items.length-1)q(x.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${G}`);if(x.comment)if(H.comment)H.comment+=`
|
|
92
|
+
`+x.comment;else H.comment=x.comment;V=x.end;continue}if(!z&&J.options.strict&&oV.containsNewline(P))q(P,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(D===0){if(x.comma)q(x.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${G}`)}else{if(!x.comma)q(x.start,"MISSING_CHAR",`Missing , between ${G} items`);if(x.comment){let a="";$:for(let S of T)switch(S.type){case"comma":case"space":break;case"comment":a=S.source.substring(1);break $;default:break $}if(a){let S=H.items[H.items.length-1];if(nV.isPair(S))S=S.value??S.key;if(S.comment)S.comment+=`
|
|
93
|
+
`+a;else S.comment=a;x.comment=x.comment.substring(a.length+1)}}}if(!z&&!f&&!x.found){let a=g?$(J,g,x,q):X(J,x.end,f,null,x,q);if(H.items.push(a),V=a.range[2],E4(g))q(a.range,"BLOCK_IN_FLOW",I4)}else{J.atKey=!0;let a=x.end,S=P?$(J,P,x,q):X(J,a,T,null,x,q);if(E4(P))q(S.range,"BLOCK_IN_FLOW",I4);J.atKey=!1;let G$=L1.resolveProps(f??[],{flow:G,indicator:"map-value-ind",next:g,offset:S.range[2],onError:q,parentIndent:Q.indent,startOnNewline:!1});if(G$.found){if(!z&&!x.found&&J.options.strict){if(f)for(let V$ of f){if(V$===G$.found)break;if(V$.type==="newline"){q(V$,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(x.start<G$.found.offset-1024)q(G$.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(g)if("source"in g&&g.source?.[0]===":")q(g,"MISSING_CHAR",`Missing space after : in ${G}`);else q(G$.start,"MISSING_CHAR",`Missing , or : between ${G} items`);let r$=g?$(J,g,G$,q):G$.found?X(J,G$.end,f,null,G$,q):null;if(r$){if(E4(g))q(r$.range,"BLOCK_IN_FLOW",I4)}else if(G$.comment)if(S.comment)S.comment+=`
|
|
94
|
+
`+G$.comment;else S.comment=G$.comment;let p=new rV.Pair(S,r$);if(J.options.keepSourceTokens)p.srcToken=F;if(z){let V$=H;if(tV.mapIncludes(J,V$.items,S))q(a,"DUPLICATE_KEY","Map keys must be unique");V$.items.push(p)}else{let V$=new O1.YAMLMap(J.schema);V$.flow=!0,V$.items.push(p);let B8=(r$??S).range;V$.range=[S.range[0],B8[1],B8[2]],H.items.push(V$)}V=r$?r$.range[2]:G$.end}}let B=z?"}":"]",[N,...R]=Q.end,M=V;if(N?.source===B)M=N.offset+N.source.length;else{let D=G[0].toUpperCase()+G.substring(1),F=U?`${D} must end with a ${B}`:`${D} in block collection must be sufficiently indented and end with a ${B}`;if(q(V,U?"MISSING_CHAR":"BAD_INDENT",F),N&&N.source.length!==1)R.unshift(N)}if(R.length>0){let D=sV.resolveEnd(R,M,J.options.strict,q);if(D.comment)if(H.comment)H.comment+=`
|
|
95
|
+
`+D.comment;else H.comment=D.comment;H.range=[Q.offset,M,D.offset]}else H.range=[Q.offset,M,M];return H}$B.resolveFlowCollection=eV});var A1=A((UB)=>{var JB=i(),QB=M$(),qB=_0(),YB=F0(),zB=w1(),GB=D1(),WB=R1();function S4($,X,J,Q,q,Y){let z=J.type==="block-map"?zB.resolveBlockMap($,X,J,Q,Y):J.type==="block-seq"?GB.resolveBlockSeq($,X,J,Q,Y):WB.resolveFlowCollection($,X,J,Q,Y),G=z.constructor;if(q==="!"||q===G.tagName)return z.tag=G.tagName,z;if(q)z.tag=q;return z}function HB($,X,J,Q,q){let Y=Q.tag,z=!Y?null:X.directives.tagName(Y.source,(B)=>q(Y,"TAG_RESOLVE_FAILED",B));if(J.type==="block-seq"){let{anchor:B,newlineAfterProp:N}=Q,R=B&&Y?B.offset>Y.offset?B:Y:B??Y;if(R&&(!N||N.offset<R.offset))q(R,"MISSING_CHAR","Missing newline after block sequence props")}let G=J.type==="block-map"?"map":J.type==="block-seq"?"seq":J.start.source==="{"?"map":"seq";if(!Y||!z||z==="!"||z===qB.YAMLMap.tagName&&G==="map"||z===YB.YAMLSeq.tagName&&G==="seq")return S4($,X,J,q,z);let W=X.schema.tags.find((B)=>B.tag===z&&B.collection===G);if(!W){let B=X.schema.knownTags[z];if(B?.collection===G)X.schema.tags.push(Object.assign({},B,{default:!1})),W=B;else{if(B)q(Y,"BAD_COLLECTION_TYPE",`${B.tag} used for ${G} collection, but expects ${B.collection??"scalar"}`,!0);else q(Y,"TAG_RESOLVE_FAILED",`Unresolved tag: ${z}`,!0);return S4($,X,J,q,z)}}let H=S4($,X,J,q,z,W),U=W.resolve?.(H,(B)=>q(Y,"TAG_RESOLVE_FAILED",B),X.options)??H,V=JB.isNode(U)?U:new QB.Scalar(U);if(V.range=H.range,V.tag=z,W?.format)V.format=W.format;return V}UB.composeCollection=HB});var T4=A((NB)=>{var j4=M$();function BB($,X,J){let Q=X.offset,q=KB(X,$.options.strict,J);if(!q)return{value:"",type:null,comment:"",range:[Q,Q,Q]};let Y=q.mode===">"?j4.Scalar.BLOCK_FOLDED:j4.Scalar.BLOCK_LITERAL,z=X.source?MB(X.source):[],G=z.length;for(let M=z.length-1;M>=0;--M){let D=z[M][1];if(D===""||D==="\r")G=M;else break}if(G===0){let M=q.chomp==="+"&&z.length>0?`
|
|
96
|
+
`.repeat(Math.max(1,z.length-1)):"",D=Q+q.length;if(X.source)D+=X.source.length;return{value:M,type:Y,comment:q.comment,range:[Q,D,D]}}let W=X.indent+q.indent,H=X.offset+q.length,U=0;for(let M=0;M<G;++M){let[D,F]=z[M];if(F===""||F==="\r"){if(q.indent===0&&D.length>W)W=D.length}else{if(D.length<W)J(H+D.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(q.indent===0)W=D.length;if(U=M,W===0&&!$.atRoot)J(H,"BAD_INDENT","Block scalar values in collections must be indented");break}H+=D.length+F.length+1}for(let M=z.length-1;M>=G;--M)if(z[M][0].length>W)G=M+1;let V="",B="",N=!1;for(let M=0;M<U;++M)V+=z[M][0].slice(W)+`
|
|
97
|
+
`;for(let M=U;M<G;++M){let[D,F]=z[M];H+=D.length+F.length+1;let T=F[F.length-1]==="\r";if(T)F=F.slice(0,-1);if(F&&D.length<W){let f=`Block scalar lines must not be less indented than their ${q.indent?"explicit indentation indicator":"first line"}`;J(H-F.length-(T?2:1),"BAD_INDENT",f),D=""}if(Y===j4.Scalar.BLOCK_LITERAL)V+=B+D.slice(W)+F,B=`
|
|
98
|
+
`;else if(D.length>W||F[0]==="\t"){if(B===" ")B=`
|
|
99
|
+
`;else if(!N&&B===`
|
|
100
|
+
`)B=`
|
|
101
|
+
|
|
102
|
+
`;V+=B+D.slice(W)+F,B=`
|
|
103
|
+
`,N=!0}else if(F==="")if(B===`
|
|
104
|
+
`)V+=`
|
|
105
|
+
`;else B=`
|
|
106
|
+
`;else V+=B+F,B=" ",N=!1}switch(q.chomp){case"-":break;case"+":for(let M=G;M<z.length;++M)V+=`
|
|
107
|
+
`+z[M][0].slice(W);if(V[V.length-1]!==`
|
|
108
|
+
`)V+=`
|
|
109
|
+
`;break;default:V+=`
|
|
110
|
+
`}let R=Q+q.length+X.source.length;return{value:V,type:Y,comment:q.comment,range:[Q,R,R]}}function KB({offset:$,props:X},J,Q){if(X[0].type!=="block-scalar-header")return Q(X[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:q}=X[0],Y=q[0],z=0,G="",W=-1;for(let B=1;B<q.length;++B){let N=q[B];if(!G&&(N==="-"||N==="+"))G=N;else{let R=Number(N);if(!z&&R)z=R;else if(W===-1)W=$+B}}if(W!==-1)Q(W,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${q}`);let H=!1,U="",V=q.length;for(let B=1;B<X.length;++B){let N=X[B];switch(N.type){case"space":H=!0;case"newline":V+=N.source.length;break;case"comment":if(J&&!H)Q(N,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");V+=N.source.length,U=N.source.substring(1);break;case"error":Q(N,"UNEXPECTED_TOKEN",N.message),V+=N.source.length;break;default:{let R=`Unexpected token in block scalar header: ${N.type}`;Q(N,"UNEXPECTED_TOKEN",R);let M=N.source;if(M&&typeof M==="string")V+=M.length}}}return{mode:Y,indent:z,chomp:G,comment:U,length:V}}function MB($){let X=$.split(/\n( *)/),J=X[0],Q=J.match(/^( *)/),Y=[Q?.[1]?[Q[1],J.slice(Q[1].length)]:["",J]];for(let z=1;z<X.length;z+=2)Y.push([X[z],X[z+1]]);return Y}NB.resolveBlockScalar=BB});var C4=A((EB)=>{var Z4=M$(),DB=F8();function OB($,X,J){let{offset:Q,type:q,source:Y,end:z}=$,G,W,H=(B,N,R)=>J(Q+B,N,R);switch(q){case"scalar":G=Z4.Scalar.PLAIN,W=LB(Y,H);break;case"single-quoted-scalar":G=Z4.Scalar.QUOTE_SINGLE,W=RB(Y,H);break;case"double-quoted-scalar":G=Z4.Scalar.QUOTE_DOUBLE,W=AB(Y,H);break;default:return J($,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${q}`),{value:"",type:null,comment:"",range:[Q,Q+Y.length,Q+Y.length]}}let U=Q+Y.length,V=DB.resolveEnd(z,U,X,J);return{value:W,type:G,comment:V.comment,range:[Q,U,V.offset]}}function LB($,X){let J="";switch($[0]){case"\t":J="a tab character";break;case",":J="flow indicator character ,";break;case"%":J="directive indicator character %";break;case"|":case">":{J=`block scalar indicator ${$[0]}`;break}case"@":case"`":{J=`reserved character ${$[0]}`;break}}if(J)X(0,"BAD_SCALAR_START",`Plain value cannot start with ${J}`);return _1($)}function RB($,X){if($[$.length-1]!=="'"||$.length===1)X($.length,"MISSING_CHAR","Missing closing 'quote");return _1($.slice(1,-1)).replace(/''/g,"'")}function _1($){let X,J;try{X=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
111
|
+
`,"sy"),J=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
112
|
+
`,"sy")}catch{X=/(.*?)[ \t]*\r?\n/sy,J=/[ \t]*(.*?)[ \t]*\r?\n/sy}let Q=X.exec($);if(!Q)return $;let q=Q[1],Y=" ",z=X.lastIndex;J.lastIndex=z;while(Q=J.exec($)){if(Q[1]==="")if(Y===`
|
|
113
|
+
`)q+=Y;else Y=`
|
|
114
|
+
`;else q+=Y+Q[1],Y=" ";z=J.lastIndex}let G=/[ \t]*(.*)/sy;return G.lastIndex=z,Q=G.exec($),q+Y+(Q?.[1]??"")}function AB($,X){let J="";for(let Q=1;Q<$.length-1;++Q){let q=$[Q];if(q==="\r"&&$[Q+1]===`
|
|
115
|
+
`)continue;if(q===`
|
|
116
|
+
`){let{fold:Y,offset:z}=_B($,Q);J+=Y,Q=z}else if(q==="\\"){let Y=$[++Q],z=FB[Y];if(z)J+=z;else if(Y===`
|
|
117
|
+
`){Y=$[Q+1];while(Y===" "||Y==="\t")Y=$[++Q+1]}else if(Y==="\r"&&$[Q+1]===`
|
|
118
|
+
`){Y=$[++Q+1];while(Y===" "||Y==="\t")Y=$[++Q+1]}else if(Y==="x"||Y==="u"||Y==="U"){let G={x:2,u:4,U:8}[Y];J+=IB($,Q+1,G,X),Q+=G}else{let G=$.substr(Q-1,2);X(Q-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${G}`),J+=G}}else if(q===" "||q==="\t"){let Y=Q,z=$[Q+1];while(z===" "||z==="\t")z=$[++Q+1];if(z!==`
|
|
119
|
+
`&&!(z==="\r"&&$[Q+2]===`
|
|
120
|
+
`))J+=Q>Y?$.slice(Y,Q+1):q}else J+=q}if($[$.length-1]!=='"'||$.length===1)X($.length,"MISSING_CHAR",'Missing closing "quote');return J}function _B($,X){let J="",Q=$[X+1];while(Q===" "||Q==="\t"||Q===`
|
|
121
|
+
`||Q==="\r"){if(Q==="\r"&&$[X+2]!==`
|
|
122
|
+
`)break;if(Q===`
|
|
123
|
+
`)J+=`
|
|
124
|
+
`;X+=1,Q=$[X+1]}if(!J)J=" ";return{fold:J,offset:X}}var FB={"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 IB($,X,J,Q){let q=$.substr(X,J),z=q.length===J&&/^[0-9a-fA-F]+$/.test(q)?parseInt(q,16):NaN;if(isNaN(z)){let G=$.substr(X-2,J+2);return Q(X-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${G}`),G}return String.fromCodePoint(z)}EB.resolveFlowScalar=OB});var I1=A((bB)=>{var r0=i(),F1=M$(),jB=T4(),TB=C4();function ZB($,X,J,Q){let{value:q,type:Y,comment:z,range:G}=X.type==="block-scalar"?jB.resolveBlockScalar($,X,Q):TB.resolveFlowScalar(X,$.options.strict,Q),W=J?$.directives.tagName(J.source,(V)=>Q(J,"TAG_RESOLVE_FAILED",V)):null,H;if($.options.stringKeys&&$.atKey)H=$.schema[r0.SCALAR];else if(W)H=CB($.schema,q,W,J,Q);else if(X.type==="scalar")H=PB($,q,X,Q);else H=$.schema[r0.SCALAR];let U;try{let V=H.resolve(q,(B)=>Q(J??X,"TAG_RESOLVE_FAILED",B),$.options);U=r0.isScalar(V)?V:new F1.Scalar(V)}catch(V){let B=V instanceof Error?V.message:String(V);Q(J??X,"TAG_RESOLVE_FAILED",B),U=new F1.Scalar(q)}if(U.range=G,U.source=q,Y)U.type=Y;if(W)U.tag=W;if(H.format)U.format=H.format;if(z)U.comment=z;return U}function CB($,X,J,Q,q){if(J==="!")return $[r0.SCALAR];let Y=[];for(let G of $.tags)if(!G.collection&&G.tag===J)if(G.default&&G.test)Y.push(G);else return G;for(let G of Y)if(G.test?.test(X))return G;let z=$.knownTags[J];if(z&&!z.collection)return $.tags.push(Object.assign({},z,{default:!1,test:void 0})),z;return q(Q,"TAG_RESOLVE_FAILED",`Unresolved tag: ${J}`,J!=="tag:yaml.org,2002:str"),$[r0.SCALAR]}function PB({atKey:$,directives:X,schema:J},Q,q,Y){let z=J.tags.find((G)=>(G.default===!0||$&&G.default==="key")&&G.test?.test(Q))||J[r0.SCALAR];if(J.compat){let G=J.compat.find((W)=>W.default&&W.test?.test(Q))??J[r0.SCALAR];if(z.tag!==G.tag){let W=X.tagString(z.tag),H=X.tagString(G.tag),U=`Value may be parsed as either ${W} or ${H}`;Y(q,"TAG_RESOLVE_FAILED",U,!0)}}return z}bB.composeScalar=ZB});var E1=A((xB)=>{function kB($,X,J){if(X){J??(J=X.length);for(let Q=J-1;Q>=0;--Q){let q=X[Q];switch(q.type){case"space":case"comment":case"newline":$-=q.source.length;continue}q=X[++Q];while(q?.type==="space")$+=q.source.length,q=X[++Q];break}}return $}xB.emptyScalarPosition=kB});var T1=A((dB)=>{var gB=L6(),vB=i(),hB=A1(),S1=I1(),uB=F8(),mB=E1(),lB={composeNode:j1,composeEmptyNode:P4};function j1($,X,J,Q){let q=$.atKey,{spaceBefore:Y,comment:z,anchor:G,tag:W}=J,H,U=!0;switch(X.type){case"alias":if(H=cB($,X,Q),G||W)Q(X,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(H=S1.composeScalar($,X,W,Q),G)H.anchor=G.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":try{if(H=hB.composeCollection(lB,$,X,J,Q),G)H.anchor=G.source.substring(1)}catch(V){let B=V instanceof Error?V.message:String(V);Q(X,"RESOURCE_EXHAUSTION",B)}break;default:{let V=X.type==="error"?X.message:`Unsupported token (type: ${X.type})`;Q(X,"UNEXPECTED_TOKEN",V),U=!1}}if(H??(H=P4($,X.offset,void 0,null,J,Q)),G&&H.anchor==="")Q(G,"BAD_ALIAS","Anchor cannot be an empty string");if(q&&$.options.stringKeys&&(!vB.isScalar(H)||typeof H.value!=="string"||H.tag&&H.tag!=="tag:yaml.org,2002:str"))Q(W??X,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(Y)H.spaceBefore=!0;if(z)if(X.type==="scalar"&&X.source==="")H.comment=z;else H.commentBefore=z;if($.options.keepSourceTokens&&U)H.srcToken=X;return H}function P4($,X,J,Q,{spaceBefore:q,comment:Y,anchor:z,tag:G,end:W},H){let U={type:"scalar",offset:mB.emptyScalarPosition(X,J,Q),indent:-1,source:""},V=S1.composeScalar($,U,G,H);if(z){if(V.anchor=z.source.substring(1),V.anchor==="")H(z,"BAD_ALIAS","Anchor cannot be an empty string")}if(q)V.spaceBefore=!0;if(Y)V.comment=Y,V.range[2]=W;return V}function cB({options:$},{offset:X,source:J,end:Q},q){let Y=new gB.Alias(J.substring(1));if(Y.source==="")q(X,"BAD_ALIAS","Alias cannot be an empty string");if(Y.source.endsWith(":"))q(X+J.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let z=X+J.length,G=uB.resolveEnd(Q,z,$.strict,q);if(Y.range=[X,z,G.offset],G.comment)Y.comment=G.comment;return Y}dB.composeEmptyNode=P4;dB.composeNode=j1});var C1=A((oB)=>{var nB=k6(),Z1=T1(),rB=F8(),aB=y6();function sB($,X,{offset:J,start:Q,value:q,end:Y},z){let G=Object.assign({_directives:X},$),W=new nB.Document(void 0,G),H={atKey:!1,atRoot:!0,directives:W.directives,options:W.options,schema:W.schema},U=aB.resolveProps(Q,{indicator:"doc-start",next:q??Y?.[0],offset:J,onError:z,parentIndent:0,startOnNewline:!0});if(U.found){if(W.directives.docStart=!0,q&&(q.type==="block-map"||q.type==="block-seq")&&!U.hasNewline)z(U.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}W.contents=q?Z1.composeNode(H,q,U,z):Z1.composeEmptyNode(H,U.end,Q,null,U,z);let V=W.contents.range[2],B=rB.resolveEnd(Y,V,!1,z);if(B.comment)W.comment=B.comment;return W.range=[J,V,B.offset],W}oB.composeDoc=sB});var b4=A((qK)=>{var eB=W$("process"),$K=yX(),XK=k6(),g6=x6(),P1=i(),JK=C1(),QK=F8();function v6($){if(typeof $==="number")return[$,$+1];if(Array.isArray($))return $.length===2?$:[$[0],$[1]];let{offset:X,source:J}=$;return[X,X+(typeof J==="string"?J.length:1)]}function b1($){let X="",J=!1,Q=!1;for(let q=0;q<$.length;++q){let Y=$[q];switch(Y[0]){case"#":X+=(X===""?"":Q?`
|
|
126
126
|
|
|
127
127
|
`:`
|
|
128
|
-
`)+(
|
|
129
|
-
${
|
|
130
|
-
${
|
|
131
|
-
${
|
|
132
|
-
${
|
|
133
|
-
`}];switch(
|
|
134
|
-
`),
|
|
135
|
-
`,
|
|
136
|
-
`});return{type:"block-scalar",offset:
|
|
137
|
-
`),
|
|
138
|
-
`;if($.type==="block-scalar"){let
|
|
139
|
-
`});for(let
|
|
140
|
-
`};delete $.items,Object.assign($,{type:
|
|
128
|
+
`)+(Y.substring(1)||" "),J=!0,Q=!1;break;case"%":if($[q+1]?.[0]!=="#")q+=1;J=!1;break;default:if(!J)Q=!0;J=!1}}return{comment:X,afterEmptyLine:Q}}class f1{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(X,J,Q,q)=>{let Y=v6(X);if(q)this.warnings.push(new g6.YAMLWarning(Y,J,Q));else this.errors.push(new g6.YAMLParseError(Y,J,Q))},this.directives=new $K.Directives({version:$.version||"1.2"}),this.options=$}decorate($,X){let{comment:J,afterEmptyLine:Q}=b1(this.prelude);if(J){let q=$.contents;if(X)$.comment=$.comment?`${$.comment}
|
|
129
|
+
${J}`:J;else if(Q||$.directives.docStart||!q)$.commentBefore=J;else if(P1.isCollection(q)&&!q.flow&&q.items.length>0){let Y=q.items[0];if(P1.isPair(Y))Y=Y.key;let z=Y.commentBefore;Y.commentBefore=z?`${J}
|
|
130
|
+
${z}`:J}else{let Y=q.commentBefore;q.commentBefore=Y?`${J}
|
|
131
|
+
${Y}`:J}}if(X)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:b1(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose($,X=!1,J=-1){for(let Q of $)yield*this.next(Q);yield*this.end(X,J)}*next($){if(eB.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(X,J,Q)=>{let q=v6($);q[0]+=X,this.onError(q,"BAD_DIRECTIVE",J,Q)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let X=JK.composeDoc(this.options,this.directives,$,this.onError);if(this.atDirectives&&!X.directives.docStart)this.onError($,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(X,!1),this.doc)yield this.doc;this.doc=X,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push($.source);break;case"error":{let X=$.source?`${$.message}: ${JSON.stringify($.source)}`:$.message,J=new g6.YAMLParseError(v6($),"UNEXPECTED_TOKEN",X);if(this.atDirectives||!this.doc)this.errors.push(J);else this.doc.errors.push(J);break}case"doc-end":{if(!this.doc){this.errors.push(new g6.YAMLParseError(v6($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let X=QK.resolveEnd($.end,$.offset+$.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),X.comment){let J=this.doc.comment;this.doc.comment=J?`${J}
|
|
132
|
+
${X.comment}`:X.comment}this.doc.range[2]=X.offset;break}default:this.errors.push(new g6.YAMLParseError(v6($),"UNEXPECTED_TOKEN",`Unsupported token ${$.type}`))}}*end($=!1,X=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if($){let J=Object.assign({_directives:this.directives},this.options),Q=new XK.Document(void 0,J);if(this.atDirectives)this.onError(X,"MISSING_CHAR","Missing directives-end indicator line");Q.range=[0,X,X],this.decorate(Q,!1),yield Q}}}qK.Composer=f1});var y1=A((KK)=>{var zK=T4(),GK=C4(),WK=x6(),k1=F6();function HK($,X=!0,J){if($){let Q=(q,Y,z)=>{let G=typeof q==="number"?q:Array.isArray(q)?q[0]:q.offset;if(J)J(G,Y,z);else throw new WK.YAMLParseError([G,G+1],Y,z)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return GK.resolveFlowScalar($,X,Q);case"block-scalar":return zK.resolveBlockScalar({options:{strict:X}},$,Q)}}return null}function UK($,X){let{implicitKey:J=!1,indent:Q,inFlow:q=!1,offset:Y=-1,type:z="PLAIN"}=X,G=k1.stringifyString({type:z,value:$},{implicitKey:J,indent:Q>0?" ".repeat(Q):"",inFlow:q,options:{blockQuote:!0,lineWidth:-1}}),W=X.end??[{type:"newline",offset:-1,indent:Q,source:`
|
|
133
|
+
`}];switch(G[0]){case"|":case">":{let H=G.indexOf(`
|
|
134
|
+
`),U=G.substring(0,H),V=G.substring(H+1)+`
|
|
135
|
+
`,B=[{type:"block-scalar-header",offset:Y,indent:Q,source:U}];if(!x1(B,W))B.push({type:"newline",offset:-1,indent:Q,source:`
|
|
136
|
+
`});return{type:"block-scalar",offset:Y,indent:Q,props:B,source:V}}case'"':return{type:"double-quoted-scalar",offset:Y,indent:Q,source:G,end:W};case"'":return{type:"single-quoted-scalar",offset:Y,indent:Q,source:G,end:W};default:return{type:"scalar",offset:Y,indent:Q,source:G,end:W}}}function VK($,X,J={}){let{afterKey:Q=!1,implicitKey:q=!1,inFlow:Y=!1,type:z}=J,G="indent"in $?$.indent:null;if(Q&&typeof G==="number")G+=2;if(!z)switch($.type){case"single-quoted-scalar":z="QUOTE_SINGLE";break;case"double-quoted-scalar":z="QUOTE_DOUBLE";break;case"block-scalar":{let H=$.props[0];if(H.type!=="block-scalar-header")throw Error("Invalid block scalar header");z=H.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:z="PLAIN"}let W=k1.stringifyString({type:z,value:X},{implicitKey:q||G===null,indent:G!==null&&G>0?" ".repeat(G):"",inFlow:Y,options:{blockQuote:!0,lineWidth:-1}});switch(W[0]){case"|":case">":BK($,W);break;case'"':f4($,W,"double-quoted-scalar");break;case"'":f4($,W,"single-quoted-scalar");break;default:f4($,W,"scalar")}}function BK($,X){let J=X.indexOf(`
|
|
137
|
+
`),Q=X.substring(0,J),q=X.substring(J+1)+`
|
|
138
|
+
`;if($.type==="block-scalar"){let Y=$.props[0];if(Y.type!=="block-scalar-header")throw Error("Invalid block scalar header");Y.source=Q,$.source=q}else{let{offset:Y}=$,z="indent"in $?$.indent:-1,G=[{type:"block-scalar-header",offset:Y,indent:z,source:Q}];if(!x1(G,"end"in $?$.end:void 0))G.push({type:"newline",offset:-1,indent:z,source:`
|
|
139
|
+
`});for(let W of Object.keys($))if(W!=="type"&&W!=="offset")delete $[W];Object.assign($,{type:"block-scalar",indent:z,props:G,source:q})}}function x1($,X){if(X)for(let J of X)switch(J.type){case"space":case"comment":$.push(J);break;case"newline":return $.push(J),!0}return!1}function f4($,X,J){switch($.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":$.type=J,$.source=X;break;case"block-scalar":{let Q=$.props.slice(1),q=X.length;if($.props[0].type==="block-scalar-header")q-=$.props[0].source.length;for(let Y of Q)Y.offset+=q;delete $.props,Object.assign($,{type:J,source:X,end:Q});break}case"block-map":case"block-seq":{let q={type:"newline",offset:$.offset+X.length,indent:$.indent,source:`
|
|
140
|
+
`};delete $.items,Object.assign($,{type:J,source:X,end:[q]});break}default:{let Q="indent"in $?$.indent:-1,q="end"in $&&Array.isArray($.end)?$.end.filter((Y)=>Y.type==="space"||Y.type==="comment"||Y.type==="newline"):[];for(let Y of Object.keys($))if(Y!=="type"&&Y!=="offset")delete $[Y];Object.assign($,{type:J,indent:Q,source:X,end:q})}}}KK.createScalarToken=UK;KK.resolveAsScalar=HK;KK.setScalarValue=VK});var g1=A((OK)=>{var DK=($)=>("type"in $)?E5($):I5($);function E5($){switch($.type){case"block-scalar":{let X="";for(let J of $.props)X+=E5(J);return X+$.source}case"block-map":case"block-seq":{let X="";for(let J of $.items)X+=I5(J);return X}case"flow-collection":{let X=$.start.source;for(let J of $.items)X+=I5(J);for(let J of $.end)X+=J.source;return X}case"document":{let X=I5($);if($.end)for(let J of $.end)X+=J.source;return X}default:{let X=$.source;if("end"in $&&$.end)for(let J of $.end)X+=J.source;return X}}}function I5({start:$,key:X,sep:J,value:Q}){let q="";for(let Y of $)q+=Y.source;if(X)q+=E5(X);if(J)for(let Y of J)q+=Y.source;if(Q)q+=E5(Q);return q}OK.stringify=DK});var u1=A((AK)=>{var k4=Symbol("break visit"),RK=Symbol("skip children"),v1=Symbol("remove item");function a0($,X){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};h1(Object.freeze([]),$,X)}a0.BREAK=k4;a0.SKIP=RK;a0.REMOVE=v1;a0.itemAtPath=($,X)=>{let J=$;for(let[Q,q]of X){let Y=J?.[Q];if(Y&&"items"in Y)J=Y.items[q];else return}return J};a0.parentCollection=($,X)=>{let J=a0.itemAtPath($,X.slice(0,-1)),Q=X[X.length-1][0],q=J?.[Q];if(q&&"items"in q)return q;throw Error("Parent collection not found")};function h1($,X,J){let Q=J(X,$);if(typeof Q==="symbol")return Q;for(let q of["key","value"]){let Y=X[q];if(Y&&"items"in Y){for(let z=0;z<Y.items.length;++z){let G=h1(Object.freeze($.concat([[q,z]])),Y.items[z],J);if(typeof G==="number")z=G-1;else if(G===k4)return k4;else if(G===v1)Y.items.splice(z,1),z-=1}if(typeof Q==="function"&&q==="key")Q=Q(X,$)}}return typeof Q==="function"?Q(X,$):Q}AK.visit=a0});var S5=A((ZK)=>{var x4=y1(),FK=g1(),IK=u1(),y4="\uFEFF",g4="\x02",v4="\x18",h4="\x1F",EK=($)=>!!$&&("items"in $),SK=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function jK($){switch($){case y4:return"<BOM>";case g4:return"<DOC>";case v4:return"<FLOW_END>";case h4:return"<SCALAR>";default:return JSON.stringify($)}}function TK($){switch($){case y4:return"byte-order-mark";case g4:return"doc-mode";case v4:return"flow-error-end";case h4: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 `),
|
|
145
|
-
`)return!0;if(
|
|
146
|
-
`;return!1}charAt($){return this.buffer[this.pos+$]}continueScalar($){let
|
|
147
|
-
`||!
|
|
148
|
-
`||
|
|
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]===h6.BOM)yield*this.pushCount(1),$=$.substring(1);if($[0]==="%"){let
|
|
150
|
-
`,this.pos);if(
|
|
151
|
-
`,
|
|
152
|
-
`:$=
|
|
153
|
-
`)break}default:break $}if(!
|
|
154
|
-
`,
|
|
155
|
-
`)
|
|
156
|
-
`&&
|
|
157
|
-
`)
|
|
158
|
-
`,
|
|
159
|
-
`){let
|
|
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}ZK.createScalarToken=x4.createScalarToken;ZK.resolveAsScalar=x4.resolveAsScalar;ZK.setScalarValue=x4.setScalarValue;ZK.stringify=FK.stringify;ZK.visit=IK.visit;ZK.BOM=y4;ZK.DOCUMENT=g4;ZK.FLOW_END=v4;ZK.SCALAR=h4;ZK.isCollection=EK;ZK.isScalar=SK;ZK.prettyToken=jK;ZK.tokenType=TK});var m4=A((pK)=>{var h6=S5();function h$($){switch($){case void 0:case" ":case`
|
|
143
|
+
`:case"\r":case"\t":return!0;default:return!1}}var m1=new Set("0123456789ABCDEFabcdef"),cK=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),j5=new Set(",[]{}"),dK=new Set(` ,[]{}
|
|
144
|
+
\r `),u4=($)=>!$||dK.has($);class l1{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($,X=!1){if($){if(typeof $!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+$:$,this.lineEndPos=null}this.atEnd=!X;let J=this.next??"stream";while(J&&(X||this.hasChars(1)))J=yield*this.parseNext(J)}atLineEnd(){let $=this.pos,X=this.buffer[$];while(X===" "||X==="\t")X=this.buffer[++$];if(!X||X==="#"||X===`
|
|
145
|
+
`)return!0;if(X==="\r")return this.buffer[$+1]===`
|
|
146
|
+
`;return!1}charAt($){return this.buffer[this.pos+$]}continueScalar($){let X=this.buffer[$];if(this.indentNext>0){let J=0;while(X===" ")X=this.buffer[++J+$];if(X==="\r"){let Q=this.buffer[J+$+1];if(Q===`
|
|
147
|
+
`||!Q&&!this.atEnd)return $+J+1}return X===`
|
|
148
|
+
`||J>=this.indentNext||!X&&!this.atEnd?$+J:-1}if(X==="-"||X==="."){let J=this.buffer.substr($,3);if((J==="---"||J==="...")&&h$(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]===h6.BOM)yield*this.pushCount(1),$=$.substring(1);if($[0]==="%"){let X=$.length,J=$.indexOf("#");while(J!==-1){let q=$[J-1];if(q===" "||q==="\t"){X=J-1;break}else J=$.indexOf("#",J+1)}while(!0){let q=$[X-1];if(q===" "||q==="\t")X-=1;else break}let Q=(yield*this.pushCount(X))+(yield*this.pushSpaces(!0));return yield*this.pushCount($.length-Q),this.pushNewline(),"stream"}if(this.atLineEnd()){let X=yield*this.pushSpaces(!0);return yield*this.pushCount($.length-X),yield*this.pushNewline(),"stream"}return yield h6.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 X=this.peek(3);if((X==="---"||X==="...")&&h$(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,X==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!h$(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[$,X]=this.peek(2);if(!X&&!this.atEnd)return this.setNext("block-start");if(($==="-"||$==="?"||$===":")&&h$(X)){let J=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=J,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let $=this.getLine();if($===null)return this.setNext("doc");let X=yield*this.pushIndicators();switch($[X]){case"#":yield*this.pushCount($.length-X);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(u4),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return X+=yield*this.parseBlockScalarHeader(),X+=yield*this.pushSpaces(!0),yield*this.pushCount($.length-X),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let $,X,J=-1;do{if($=yield*this.pushNewline(),$>0)X=yield*this.pushSpaces(!1),this.indentValue=J=X;else X=0;X+=yield*this.pushSpaces(!0)}while($+X>0);let Q=this.getLine();if(Q===null)return this.setNext("flow");if(J!==-1&&J<this.indentNext&&Q[0]!=="#"||J===0&&(Q.startsWith("---")||Q.startsWith("..."))&&h$(Q[3])){if(!(J===this.indentNext-1&&this.flowLevel===1&&(Q[0]==="]"||Q[0]==="}")))return this.flowLevel=0,yield h6.FLOW_END,yield*this.parseLineStart()}let q=0;while(Q[q]===",")q+=yield*this.pushCount(1),q+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(q+=yield*this.pushIndicators(),Q[q]){case void 0:return"flow";case"#":return yield*this.pushCount(Q.length-q),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(u4),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let Y=this.charAt(1);if(this.flowKey||h$(Y)||Y===",")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),X=this.buffer.indexOf($,this.pos+1);if($==="'")while(X!==-1&&this.buffer[X+1]==="'")X=this.buffer.indexOf("'",X+2);else while(X!==-1){let q=0;while(this.buffer[X-1-q]==="\\")q+=1;if(q%2===0)break;X=this.buffer.indexOf('"',X+1)}let J=this.buffer.substring(0,X),Q=J.indexOf(`
|
|
150
|
+
`,this.pos);if(Q!==-1){while(Q!==-1){let q=this.continueScalar(Q+1);if(q===-1)break;Q=J.indexOf(`
|
|
151
|
+
`,q)}if(Q!==-1)X=Q-(J[Q-1]==="\r"?2:1)}if(X===-1){if(!this.atEnd)return this.setNext("quoted-scalar");X=this.buffer.length}return yield*this.pushToIndex(X+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let X=this.buffer[++$];if(X==="+")this.blockScalarKeep=!0;else if(X>"0"&&X<="9")this.blockScalarIndent=Number(X)-1;else if(X!=="-")break}return yield*this.pushUntil((X)=>h$(X)||X==="#")}*parseBlockScalar(){let $=this.pos-1,X=0,J;$:for(let q=this.pos;J=this.buffer[q];++q)switch(J){case" ":X+=1;break;case`
|
|
152
|
+
`:$=q,X=0;break;case"\r":{let Y=this.buffer[q+1];if(!Y&&!this.atEnd)return this.setNext("block-scalar");if(Y===`
|
|
153
|
+
`)break}default:break $}if(!J&&!this.atEnd)return this.setNext("block-scalar");if(X>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=X;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let q=this.continueScalar($+1);if(q===-1)break;$=this.buffer.indexOf(`
|
|
154
|
+
`,q)}while($!==-1);if($===-1){if(!this.atEnd)return this.setNext("block-scalar");$=this.buffer.length}}let Q=$+1;J=this.buffer[Q];while(J===" ")J=this.buffer[++Q];if(J==="\t"){while(J==="\t"||J===" "||J==="\r"||J===`
|
|
155
|
+
`)J=this.buffer[++Q];$=Q-1}else if(!this.blockScalarKeep)do{let q=$-1,Y=this.buffer[q];if(Y==="\r")Y=this.buffer[--q];let z=q;while(Y===" ")Y=this.buffer[--q];if(Y===`
|
|
156
|
+
`&&q>=this.pos&&q+1+X>z)$=q;else break}while(!0);return yield h6.SCALAR,yield*this.pushToIndex($+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let $=this.flowLevel>0,X=this.pos-1,J=this.pos-1,Q;while(Q=this.buffer[++J])if(Q===":"){let q=this.buffer[J+1];if(h$(q)||$&&j5.has(q))break;X=J}else if(h$(Q)){let q=this.buffer[J+1];if(Q==="\r")if(q===`
|
|
157
|
+
`)J+=1,Q=`
|
|
158
|
+
`,q=this.buffer[J+1];else X=J;if(q==="#"||$&&j5.has(q))break;if(Q===`
|
|
159
|
+
`){let Y=this.continueScalar(J+1);if(Y===-1)break;J=Math.max(J,Y-2)}}else{if($&&j5.has(Q))break;X=J}if(!Q&&!this.atEnd)return this.setNext("plain-scalar");return yield h6.SCALAR,yield*this.pushToIndex(X+1,!0),$?"flow":"doc"}*pushCount($){if($>0)return yield this.buffer.substr(this.pos,$),this.pos+=$,$;return 0}*pushToIndex($,X){let J=this.buffer.slice(this.pos,$);if(J)return yield J,this.pos+=J.length,J.length;else if(X)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(u4))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,X=this.charAt(1);if(h$(X)||$&&j5.has(X)){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,X=this.buffer[$];while(!h$(X)&&X!==">")X=this.buffer[++$];return yield*this.pushToIndex(X===">"?$+1:$,!1)}else{let $=this.pos+1,X=this.buffer[$];while(X)if(cK.has(X))X=this.buffer[++$];else if(X==="%"&&m1.has(this.buffer[$+1])&&m1.has(this.buffer[$+2]))X=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
|
|
162
|
-
`)+1;while(
|
|
163
|
-
`,
|
|
164
|
-
`)+1;while(
|
|
165
|
-
`,
|
|
161
|
+
`)return yield*this.pushCount(2);else return 0}*pushSpaces($){let X=this.pos-1,J;do J=this.buffer[++X];while(J===" "||$&&J==="\t");let Q=X-this.pos;if(Q>0)yield this.buffer.substr(this.pos,Q),this.pos=X;return Q}*pushUntil($){let X=this.pos,J=this.buffer[X];while(!$(J))J=this.buffer[++X];return yield*this.pushToIndex(X,!1)}}pK.Lexer=l1});var l4=A((nK)=>{class c1{constructor(){this.lineStarts=[],this.addNewLine=($)=>this.lineStarts.push($),this.linePos=($)=>{let X=0,J=this.lineStarts.length;while(X<J){let q=X+J>>1;if(this.lineStarts[q]<$)X=q+1;else J=q}if(this.lineStarts[X]===$)return{line:X+1,col:1};if(X===0)return{line:0,col:$};let Q=this.lineStarts[X-1];return{line:X,col:$-Q+1}}}}nK.LineCounter=c1});var c4=A((oK)=>{var aK=W$("process"),d1=S5(),sK=m4();function I0($,X){for(let J=0;J<$.length;++J)if($[J].type===X)return!0;return!1}function p1($){for(let X=0;X<$.length;++X)switch($[X].type){case"space":case"comment":case"newline":break;default:return X}return-1}function n1($){switch($?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function T5($){switch($.type){case"document":return $.start;case"block-map":{let X=$.items[$.items.length-1];return X.sep??X.start}case"block-seq":return $.items[$.items.length-1].start;default:return[]}}function I8($){if($.length===0)return[];let X=$.length;$:while(--X>=0)switch($[X].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break $}while($[++X]?.type==="space");return $.splice(X,$.length)}function i1($){if($.start.type==="flow-seq-start"){for(let X of $.items)if(X.sep&&!X.value&&!I0(X.start,"explicit-key-ind")&&!I0(X.sep,"map-value-ind")){if(X.key)X.value=X.key;if(delete X.key,n1(X.value))if(X.value.end)Array.prototype.push.apply(X.value.end,X.sep);else X.value.end=X.sep;else Array.prototype.push.apply(X.start,X.sep);delete X.sep}}}class r1{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 sK.Lexer,this.onNewLine=$}*parse($,X=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let J of this.lexer.lex($,X))yield*this.next(J);if(!X)yield*this.end()}*next($){if(this.source=$,aK.env.LOG_TOKENS)console.log("|",d1.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let X=d1.tokenType($);if(!X){let J=`Not a YAML token: ${$}`;yield*this.pop({type:"error",offset:this.offset,message:J,source:$}),this.offset+=$.length}else if(X==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=X,yield*this.step(),X){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 X=$??this.stack.pop();if(!X)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield X;else{let J=this.peek(1);if(X.type==="block-scalar")X.indent="indent"in J?J.indent:0;else if(X.type==="flow-collection"&&J.type==="document")X.indent=0;if(X.type==="flow-collection")i1(X);switch(J.type){case"document":J.value=X;break;case"block-scalar":J.props.push(X);break;case"block-map":{let Q=J.items[J.items.length-1];if(Q.value){J.items.push({start:[],key:X,sep:[]}),this.onKeyLine=!0;return}else if(Q.sep)Q.value=X;else{Object.assign(Q,{key:X,sep:[]}),this.onKeyLine=!Q.explicitKey;return}break}case"block-seq":{let Q=J.items[J.items.length-1];if(Q.value)J.items.push({start:[],value:X});else Q.value=X;break}case"flow-collection":{let Q=J.items[J.items.length-1];if(!Q||Q.value)J.items.push({start:[],key:X,sep:[]});else if(Q.sep)Q.value=X;else Object.assign(Q,{key:X,sep:[]});return}default:yield*this.pop(),yield*this.pop(X)}if((J.type==="document"||J.type==="block-map"||J.type==="block-seq")&&(X.type==="block-map"||X.type==="block-seq")){let Q=X.items[X.items.length-1];if(Q&&!Q.sep&&!Q.value&&Q.start.length>0&&p1(Q.start)===-1&&(X.indent===0||Q.start.every((q)=>q.type!=="comment"||q.indent<X.indent))){if(J.type==="document")J.end=Q.start;else J.items.push({start:Q.start});X.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(p1($.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 X=this.startBlockValue($);if(X)this.stack.push(X);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 X=T5(this.peek(2)),J=I8(X),Q;if($.end)Q=$.end,Q.push(this.sourceToken),delete $.end;else Q=[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($)}*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 X=this.source.indexOf(`
|
|
162
|
+
`)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(`
|
|
163
|
+
`,X)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap($){let X=$.items[$.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,X.value){let J="end"in X.value?X.value.end:void 0;if((Array.isArray(J)?J[J.length-1]:void 0)?.type==="comment")J?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)$.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else{if(this.atIndentedComment(X.start,$.indent)){let Q=$.items[$.items.length-2]?.value?.end;if(Array.isArray(Q)){Array.prototype.push.apply(Q,X.start),Q.push(this.sourceToken),$.items.pop();return}}X.start.push(this.sourceToken)}return}if(this.indent>=$.indent){let J=!this.onKeyLine&&this.indent===$.indent,Q=J&&(X.sep||X.explicitKey)&&this.type!=="seq-item-ind",q=[];if(Q&&X.sep&&!X.value){let Y=[];for(let z=0;z<X.sep.length;++z){let G=X.sep[z];switch(G.type){case"newline":Y.push(z);break;case"space":break;case"comment":if(G.indent>$.indent)Y.length=0;break;default:Y.length=0}}if(Y.length>=2)q=X.sep.splice(Y[1])}switch(this.type){case"anchor":case"tag":if(Q||X.value)q.push(this.sourceToken),$.items.push({start:q}),this.onKeyLine=!0;else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"explicit-key-ind":if(!X.sep&&!X.explicitKey)X.start.push(this.sourceToken),X.explicitKey=!0;else if(Q||X.value)q.push(this.sourceToken),$.items.push({start:q,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if(X.explicitKey)if(!X.sep)if(I0(X.start,"newline"))Object.assign(X,{key:null,sep:[this.sourceToken]});else{let Y=I8(X.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Y,key:null,sep:[this.sourceToken]}]})}else if(X.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(I0(X.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]});else if(n1(X.key)&&!I0(X.sep,"newline")){let Y=I8(X.start),z=X.key,G=X.sep;G.push(this.sourceToken),delete X.key,delete X.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Y,key:z,sep:G}]})}else if(q.length>0)X.sep=X.sep.concat(q,this.sourceToken);else X.sep.push(this.sourceToken);else if(!X.sep)Object.assign(X,{key:null,sep:[this.sourceToken]});else if(X.value||Q)$.items.push({start:q,key:null,sep:[this.sourceToken]});else if(I0(X.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else X.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Y=this.flowScalar(this.type);if(Q||X.value)$.items.push({start:q,key:Y,sep:[]}),this.onKeyLine=!0;else if(X.sep)this.stack.push(Y);else Object.assign(X,{key:Y,sep:[]}),this.onKeyLine=!0;return}default:{let Y=this.startBlockValue($);if(Y){if(Y.type==="block-seq"){if(!X.explicitKey&&X.sep&&!I0(X.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(J)$.items.push({start:q});this.stack.push(Y);return}}}}yield*this.pop(),yield*this.step()}*blockSequence($){let X=$.items[$.items.length-1];switch(this.type){case"newline":if(X.value){let J="end"in X.value?X.value.end:void 0;if((Array.isArray(J)?J[J.length-1]:void 0)?.type==="comment")J?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)$.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(X.start,$.indent)){let Q=$.items[$.items.length-2]?.value?.end;if(Array.isArray(Q)){Array.prototype.push.apply(Q,X.start),Q.push(this.sourceToken),$.items.pop();return}}X.start.push(this.sourceToken)}return;case"anchor":case"tag":if(X.value||this.indent<=$.indent)break;X.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==$.indent)break;if(X.value||I0(X.start,"seq-item-ind"))$.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return}if(this.indent>$.indent){let J=this.startBlockValue($);if(J){this.stack.push(J);return}}yield*this.pop(),yield*this.step()}*flowCollection($){let X=$.items[$.items.length-1];if(this.type==="flow-error-end"){let J;do yield*this.pop(),J=this.peek(1);while(J?.type==="flow-collection")}else if($.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!X||X.sep)$.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return;case"map-value-ind":if(!X||X.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else Object.assign(X,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!X||X.value)$.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Q=this.flowScalar(this.type);if(!X||X.value)$.items.push({start:[],key:Q,sep:[]});else if(X.sep)this.stack.push(Q);else Object.assign(X,{key:Q,sep:[]});return}case"flow-map-end":case"flow-seq-end":$.end.push(this.sourceToken);return}let J=this.startBlockValue($);if(J)this.stack.push(J);else yield*this.pop(),yield*this.step()}else{let J=this.peek(2);if(J.type==="block-map"&&(this.type==="map-value-ind"&&J.indent===$.indent||this.type==="newline"&&!J.items[J.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&J.type!=="flow-collection"){let Q=T5(J),q=I8(Q);i1($);let Y=$.end.splice(1,$.end.length);Y.push(this.sourceToken);let z={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:q,key:$,sep:Y}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=z}else yield*this.lineEnd($)}}flowScalar($){if(this.onNewLine){let X=this.source.indexOf(`
|
|
164
|
+
`)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(`
|
|
165
|
+
`,X)+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 X=T5($),J=I8(X);return J.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:J,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let X=T5($),J=I8(X);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:J,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment($,X){if(this.type!=="comment")return!1;if(this.indent<=X)return!1;return $.every((J)=>J.type==="newline"||J.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()}}}oK.Parser=r1});var e1=A((zM)=>{var a1=b4(),eK=k6(),u6=x6(),$M=lX(),XM=i(),JM=l4(),s1=c4();function o1($){let X=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||X&&new JM.LineCounter||null,prettyErrors:X}}function QM($,X={}){let{lineCounter:J,prettyErrors:Q}=o1(X),q=new s1.Parser(J?.addNewLine),Y=new a1.Composer(X),z=Array.from(Y.compose(q.parse($)));if(Q&&J)for(let G of z)G.errors.forEach(u6.prettifyError($,J)),G.warnings.forEach(u6.prettifyError($,J));if(z.length>0)return z;return Object.assign([],{empty:!0},Y.streamInfo())}function t1($,X={}){let{lineCounter:J,prettyErrors:Q}=o1(X),q=new s1.Parser(J?.addNewLine),Y=new a1.Composer(X),z=null;for(let G of Y.compose(q.parse($),!0,$.length))if(!z)z=G;else if(z.options.logLevel!=="silent"){z.errors.push(new u6.YAMLParseError(G.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(Q&&J)z.errors.forEach(u6.prettifyError($,J)),z.warnings.forEach(u6.prettifyError($,J));return z}function qM($,X,J){let Q=void 0;if(typeof X==="function")Q=X;else if(J===void 0&&X&&typeof X==="object")J=X;let q=t1($,J);if(!q)return null;if(q.warnings.forEach((Y)=>$M.warn(q.options.logLevel,Y)),q.errors.length>0)if(q.options.logLevel!=="silent")throw q.errors[0];else q.errors=[];return q.toJS(Object.assign({reviver:Q},J))}function YM($,X,J){let Q=null;if(typeof X==="function"||Array.isArray(X))Q=X;else if(J===void 0&&X)J=X;if(typeof J==="string")J=J.length;if(typeof J==="number"){let q=Math.round(J);J=q<1?void 0:q>8?{indent:8}:{indent:q}}if($===void 0){let{keepUndefined:q}=J??X??{};if(!q)return}if(XM.isDocument($)&&!Q)return $.toString(J);return new eK.Document($,Q,J).toString(J)}zM.parse=qM;zM.parseAllDocuments=QM;zM.parseDocument=t1;zM.stringify=YM});var VM,BM,KM,d4,MM,E0,NM,wM,DM,OM,_R,LM,RM,AM,Z5,$Q,_M,FM,IM,EM,SM,jM,TM,ZM,CM,PM,bM,fM,kM,xM,yM,gM,vM,hM,uM,mM,lM,cM,m6,dM,pM,p4,iM,nM;var i4=b(()=>{VM=b4(),BM=k6(),KM=w4(),d4=x6(),MM=L6(),E0=i(),NM=R0(),wM=M$(),DM=_0(),OM=F0(),_R=S5(),LM=m4(),RM=l4(),AM=c4(),Z5=e1(),$Q=D6();_M=VM.Composer,FM=BM.Document,IM=KM.Schema,EM=d4.YAMLError,SM=d4.YAMLParseError,jM=d4.YAMLWarning,TM=MM.Alias,ZM=E0.isAlias,CM=E0.isCollection,PM=E0.isDocument,bM=E0.isMap,fM=E0.isNode,kM=E0.isPair,xM=E0.isScalar,yM=E0.isSeq,gM=NM.Pair,vM=wM.Scalar,hM=DM.YAMLMap,uM=OM.YAMLSeq,mM=LM.Lexer,lM=RM.LineCounter,cM=AM.Parser,m6=Z5.parse,dM=Z5.parseAllDocuments,pM=Z5.parseDocument,p4=Z5.stringify,iM=$Q.visit,nM=$Q.visitAsync});import{readFileSync as JQ,writeFileSync as rM,existsSync as XQ}from"fs";function $$($){let X=JQ($,"utf-8");return m6(X)}function Q$($,X){let J=p4(X,{lineWidth:0});rM($,J,"utf-8")}function e($){return JQ($,"utf-8")}function n($=process.cwd()){let X=["project.faf",".faf"];for(let Q of X){let q=`${$}/${Q}`;if(XQ(q))return q}let J=$.replace(/\/[^/]+$/,"");if(J!==$)for(let Q of X){let q=`${J}/${Q}`;if(XQ(q))return q}return null}var B$=b(()=>{i4()});var zQ=A(($N,YQ)=>{var __dirname="/Users/wolfejam/FAF/cli/node_modules/faf-scoring-kernel",QQ={};QQ.__wbindgen_placeholder__=$N;var C5=null;function E8(){if(C5===null||C5.byteLength===0)C5=new Uint8Array(o.memory.buffer);return C5}var qQ=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});qQ.decode();function aM($,X){return qQ.decode(E8().subarray($,$+X))}function s0($,X){return $=$>>>0,aM($,X)}$N.sdk_version=function(){let $,X;try{let J=o.sdk_version();return $=J[0],X=J[1],s0(J[0],J[1])}finally{o.__wbindgen_free($,X,1)}};var o$=0,l6=new TextEncoder;if(!("encodeInto"in l6))l6.encodeInto=function($,X){let J=l6.encode($);return X.set(J),{read:$.length,written:J.length}};function P5($,X,J){if(J===void 0){let G=l6.encode($),W=X(G.length,1)>>>0;return E8().subarray(W,W+G.length).set(G),o$=G.length,W}let Q=$.length,q=X(Q,1)>>>0,Y=E8(),z=0;for(;z<Q;z++){let G=$.charCodeAt(z);if(G>127)break;Y[q+z]=G}if(z!==Q){if(z!==0)$=$.slice(z);q=J(q,Q,Q=z+$.length*3,1)>>>0;let G=E8().subarray(q+z,q+Q),W=l6.encodeInto($,G);z+=W.written,q=J(q,Q,z,1)>>>0}return o$=z,q}function S8($){let X=o.__wbindgen_externrefs.get($);return o.__externref_table_dealloc($),X}$N.score_faf_enterprise=function($){let X,J;try{let Y=P5($,o.__wbindgen_malloc,o.__wbindgen_realloc),z=o$,G=o.score_faf_enterprise(Y,z);var Q=G[0],q=G[1];if(G[3])throw Q=0,q=0,S8(G[2]);return X=Q,J=q,s0(Q,q)}finally{o.__wbindgen_free(X,J,1)}};$N.score_faf=function($){let X,J;try{let Y=P5($,o.__wbindgen_malloc,o.__wbindgen_realloc),z=o$,G=o.score_faf(Y,z);var Q=G[0],q=G[1];if(G[3])throw Q=0,q=0,S8(G[2]);return X=Q,J=q,s0(Q,q)}finally{o.__wbindgen_free(X,J,1)}};function n4($,X){let J=X($.length*1,1)>>>0;return E8().set($,J/1),o$=$.length,J}$N.decompile_fafb=function($){let X,J;try{let Y=n4($,o.__wbindgen_malloc),z=o$,G=o.decompile_fafb(Y,z);var Q=G[0],q=G[1];if(G[3])throw Q=0,q=0,S8(G[2]);return X=Q,J=q,s0(Q,q)}finally{o.__wbindgen_free(X,J,1)}};$N.score_fafb=function($){let X,J;try{let Y=n4($,o.__wbindgen_malloc),z=o$,G=o.score_fafb(Y,z);var Q=G[0],q=G[1];if(G[3])throw Q=0,q=0,S8(G[2]);return X=Q,J=q,s0(Q,q)}finally{o.__wbindgen_free(X,J,1)}};$N.validate_faf=function($){let X=P5($,o.__wbindgen_malloc,o.__wbindgen_realloc),J=o$;return o.validate_faf(X,J)!==0};function sM($,X){return $=$>>>0,E8().subarray($/1,$/1+X)}$N.compile_fafb=function($){let X=P5($,o.__wbindgen_malloc,o.__wbindgen_realloc),J=o$,Q=o.compile_fafb(X,J);if(Q[3])throw S8(Q[2]);var q=sM(Q[0],Q[1]).slice();return o.__wbindgen_free(Q[0],Q[1]*1,1),q};$N.fafb_info=function($){let X,J;try{let Y=n4($,o.__wbindgen_malloc),z=o$,G=o.fafb_info(Y,z);var Q=G[0],q=G[1];if(G[3])throw Q=0,q=0,S8(G[2]);return X=Q,J=q,s0(Q,q)}finally{o.__wbindgen_free(X,J,1)}};$N.__wbindgen_cast_2241b6af4c4b2941=function($,X){return s0($,X)};$N.__wbindgen_init_externref_table=function(){let $=o.__wbindgen_externrefs,X=$.grow(4);$.set(0,void 0),$.set(X+0,void 0),$.set(X+1,null),$.set(X+2,!0),$.set(X+3,!1)};var oM=`${__dirname}/faf_wasm_sdk_bg.wasm`,tM=W$("fs").readFileSync(oM),eM=new WebAssembly.Module(tM),o=$N.__wasm=new WebAssembly.Instance(eM,QQ).exports;o.__wbindgen_start()});function c6(){if(!r4)try{r4=zQ()}catch{throw Error(`faf-scoring-kernel not installed.
|
|
166
166
|
|
|
167
167
|
Run: npm install faf-scoring-kernel
|
|
168
|
-
`)}return E5}function t($){return JSON.parse(d6().score_faf($))}function kz($){return d6().validate_faf($)}function yz($){return d6().compile_fafb($)}function fz($){return JSON.parse(d6().decompile_fafb($))}function gz(){return d6().sdk_version()}var E5=null;var hz={};QZ(hz,{orange:()=>$$,italic:()=>YK,fafCyan:()=>M,dim:()=>L,bold:()=>b});var S5=($)=>(Z)=>`\x1B[${$}m${Z}\x1B[0m`,b,L,YK,M=($)=>`\x1B[38;2;0;212;212m${$}\x1B[0m`,$$=($)=>`\x1B[38;5;208m${$}\x1B[0m`;var l=_(()=>{b=S5("1"),L=S5("2"),YK=S5("3")});function O2($){return $.indicator}function vz($){for(let Z of j5)if($>=Z.threshold)return Z;return j5[j5.length-1]}var j5;var M2=_(()=>{l();j5=[{name:"TROPHY",indicator:`${$$("\uD83C\uDFC6")} ${$$("TROPHY")}`,threshold:100},{name:"GOLD",indicator:`${$$(b("★"))} ${$$("GOLD")}`,threshold:99},{name:"SILVER",indicator:`${M("◆")} ${M("SILVER")}`,threshold:95},{name:"BRONZE",indicator:`${M("◇")} ${M("BRONZE")}`,threshold:85},{name:"GREEN",indicator:`${b("●")} GREEN`,threshold:70},{name:"YELLOW",indicator:`${L("●")} YELLOW`,threshold:55},{name:"RED",indicator:`${L("○")} RED`,threshold:1},{name:"WHITE",indicator:`${L("♡")}`,threshold:0}]});function e($){return{score:$.score,tier:vz($.score),populated:$.populated,empty:$.empty,ignored:$.ignored,active:$.active,total:$.total,slots:$.slots}}var P0=_(()=>{M2()});function J0($,Z,X=!1){let z=O2($.tier),J=b(`${$.score}%`);if(console.log(`${z} ${J} ${L(`${$.populated}/${$.active} slots`)} ${L("—")} ${Z}`),$.tier.name!=="TROPHY"&&$.empty>0)console.log(L(` ${$.empty} empty`));if(X)console.log(""),GK($)}function GK($){for(let[Z,X]of Object.entries($.slots)){let z=X==="populated"?M("●"):X==="slotignored"?L("—"):L("○");console.log(` ${z} ${X==="slotignored"?L(Z):Z}`)}}var b0=_(()=>{M2();l()});function d$($){if($===null||$===void 0||$==="")return!0;if(typeof $==="string")return UK.has($.toLowerCase().trim());if(Array.isArray($)&&$.length===0)return!0;if(typeof $==="object"&&Object.keys($).length===0)return!0;return!1}var V0,TL,OL,UK,c$;var h0=_(()=>{V0=[{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"}],TL=new Map(V0.map(($)=>[$.path,$])),OL=V0.filter(($)=>$.index<=21),UK=new Set(["describe your project goal","development teams","cloud platform","null","none","unknown","n/a","not applicable"]);c$={cli:["project","human"],library:["project","human"],mcp:["project","backend","universal","human"],backend:["project","backend","universal","human"],"data-science":["project","backend","human"],frontend:["project","frontend","human"],fullstack:["project","frontend","backend","universal","human"],svelte:["project","frontend","backend","universal","human"],framework:["project","frontend","backend","universal","human"],enterprise:["project","frontend","backend","universal","human","enterprise_infra","enterprise_app","enterprise_ops"]}});var uz;var mz=_(()=>{uz=[{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"},{type:"devDependency",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:"Vercel (SvelteKit)",slug:"adapter-vercel",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-vercel"},{type:"devDependency",key:"@sveltejs/adapter-vercel"}]},{name:"Node (SvelteKit)",slug:"adapter-node",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-node"},{type:"devDependency",key:"@sveltejs/adapter-node"}]},{name:"Static (SvelteKit)",slug:"adapter-static",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-static"},{type:"devDependency",key:"@sveltejs/adapter-static"}]},{name:"Cloudflare (SvelteKit)",slug:"adapter-cloudflare",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-cloudflare"},{type:"devDependency",key:"@sveltejs/adapter-cloudflare"}]},{name:"Netlify (SvelteKit)",slug:"adapter-netlify",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-netlify"},{type:"devDependency",key:"@sveltejs/adapter-netlify"}]},{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:"FastAPI",slug:"fastapi",category:"backend",signals:[{type:"dependency",key:"fastapi"}]},{name:"Django",slug:"django",category:"backend",signals:[{type:"dependency",key:"django"},{type:"file",pattern:"manage.py"}]},{name:"Flask",slug:"flask",category:"backend",signals:[{type:"dependency",key:"flask"},{type:"file",pattern:"app.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:"SQLAlchemy",slug:"sqlalchemy",category:"database",signals:[{type:"dependency",key:"sqlalchemy"}]},{name:"Tortoise ORM",slug:"tortoise",category:"database",signals:[{type:"dependency",key:"tortoise-orm"}]},{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 (TS)",slug:"mcp-sdk-ts",category:"mcp",signals:[{type:"dependency",key:"@modelcontextprotocol/sdk"}]},{name:"FastMCP",slug:"fastmcp",category:"mcp",signals:[{type:"dependency",key:"fastmcp"}]},{name:"MCP SDK (Python)",slug:"mcp-sdk-py",category:"mcp",signals:[{type:"dependency",key:"mcp"}]},{name:"rmcp",slug:"rmcp",category:"mcp",signals:[{type:"dependency",key:"rmcp"}]},{name:"MCP Go",slug:"mcp-go",category:"mcp",signals:[{type:"dependency",key:"github.com/mark3labs/mcp-go"}]},{name:"MCP .NET",slug:"mcp-dotnet",category:"mcp",signals:[{type:"dependency",key:"ModelContextProtocol"}]},{name:"FastMCP (TS)",slug:"fastmcp-ts",category:"mcp",signals:[{type:"dependency",key:"@fastmcp/server"}]},{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"}]}]});import{existsSync as k,readFileSync as p$,readdirSync as dz}from"fs";import{join as x}from"path";function Z$($){let Z=x($,"package.json");if(!k(Z))return null;try{return JSON.parse(p$(Z,"utf-8"))}catch{return null}}function cz($){let Z=Z$($);if(Z?.name)return{name:Z.name,description:Z.description};let X=x($,"pyproject.toml");if(k(X))try{let J=p$(X,"utf-8"),q=J.match(/^\s*name\s*=\s*"([^"]+)"/m),Q=J.match(/^\s*description\s*=\s*"([^"]+)"/m);if(q)return{name:q[1],description:Q?.[1]}}catch{}let z=x($,"Cargo.toml");if(k(z))try{let J=p$(z,"utf-8"),q=J.match(/^\s*name\s*=\s*"([^"]+)"/m),Q=J.match(/^\s*description\s*=\s*"([^"]+)"/m);if(q)return{name:q[1],description:Q?.[1]}}catch{}return null}function WK($,Z){if(!Z.includes("*"))return k(x($,Z));let X=Z.split("/");if(X.length===1){let Y=Z.split("*")[0];try{return dz($).some((G)=>G.startsWith(Y))}catch{return!1}}let z=x($,...X.slice(0,-1)),J=X[X.length-1],q=J.split("*")[0],Q=J.split("*")[1]||"";try{return dz(z).some((Y)=>Y.startsWith(q)&&Y.endsWith(Q))}catch{return!1}}function VK($,Z,X){switch($.type){case"dependency":return!!Z?.dependencies?.[$.key];case"devDependency":return!!Z?.devDependencies?.[$.key];case"file":return WK(X,$.pattern);default:return!1}}function HK($){let Z=x($,"pyproject.toml");if(!k(Z))return{};try{let X=p$(Z,"utf-8"),z={},J=X.match(/dependencies\s*=\s*\[([\s\S]*)\]/);if(J){let q=J[1].match(/"([^"]+)"/g)||[];for(let Q of q){let Y=Q.replace(/"/g,"").replace(/\[.*/,"").split(/[>=<]/)[0].trim().toLowerCase();if(Y)z[Y]="*"}}return z}catch{return{}}}function KK($){let Z=x($,"Cargo.toml");if(!k(Z))return{};try{let X=p$(Z,"utf-8"),z={},J=X.match(/\[dependencies\]([\s\S]*?)(?:\[|$)/);if(J){let q=J[1].split(`
|
|
169
|
-
`);for(let
|
|
170
|
-
run ${b("'faf go'")} to reach 100%`))}function $9($,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]=$9(X[z]??{},J);return X}var f5=_(()=>{w2();Z0();P0();b0();l();h0()});var I9=I((JT,uK)=>{uK.exports={name:"faf-cli",version:"6.0.13",description:"Persistent AI Context Standard — project DNA for 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-eslint/eslint-plugin":"^8.41.0","@typescript-eslint/parser":"^8.41.0",eslint:"^9.39.2",prettier:"^3.2.5",typescript:"^5.3.3","typescript-eslint":"^8.57.2"},engines:{node:">=18.0.0"},publishConfig:{access:"public"}}});var i5=I((dT,S9)=>{var E9=G0("fs"),l5;function rK(){try{return E9.statSync("/.dockerenv"),!0}catch($){return!1}}function aK(){try{return E9.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch($){return!1}}S9.exports=()=>{if(l5===void 0)l5=rK()||aK();return l5}});var x9=I((cT,n5)=>{var oK=G0("os"),tK=G0("fs"),j9=i5(),b9=()=>{if(process.platform!=="linux")return!1;if(oK.release().toLowerCase().includes("microsoft")){if(j9())return!1;return!0}try{return tK.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!j9():!1}catch($){return!1}};if(process.env.__IS_WSL_TEST__)n5.exports=b9;else n5.exports=b9()});var y9=I((pT,k9)=>{k9.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 d9=I((lT,m9)=>{var __dirname="/Users/wolfejam/FAF/cli/node_modules/open",eK=G0("path"),$B=G0("child_process"),{promises:_2,constants:u9}=G0("fs"),P2=x9(),ZB=i5(),r5=y9(),f9=eK.join(__dirname,"xdg-open"),{platform:n$,arch:g9}=process,XB=()=>{try{return _2.statSync("/run/.containerenv"),!0}catch{return!1}},s5;function zB(){if(s5===void 0)s5=XB()||ZB();return s5}var JB=(()=>{let Z;return async function(){if(Z)return Z;let X="/etc/wsl.conf",z=!1;try{await _2.access(X,u9.F_OK),z=!0}catch{}if(!z)return"/mnt/";let J=await _2.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}})(),h9=async($,Z)=>{let X;for(let z of $)try{return await Z(z)}catch(J){X=J}throw X},C2=async($)=>{if($={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...$},Array.isArray($.app))return h9($.app,(Y)=>C2({...$,app:Y}));let{name:Z,arguments:X=[]}=$.app||{};if(X=[...X],Array.isArray(Z))return h9(Z,(Y)=>C2({...$,app:{name:Y,arguments:X}}));let z,J=[],q={};if(n$==="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(n$==="win32"||P2&&!zB()&&!Z){let Y=await JB();if(z=P2?`${Y}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`:`${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\powershell`,J.push("-NoProfile","-NonInteractive","–ExecutionPolicy","Bypass","-EncodedCommand"),!P2)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 _2.access(f9,u9.X_OK),G=!0}catch{}z=process.versions.electron||n$==="android"||Y||!G?"xdg-open":f9}if(X.length>0)J.push(...X);if(!$.wait)q.stdio="ignore",q.detached=!0}if($.target)J.push($.target);if(n$==="darwin"&&X.length>0)J.push("--args",...X);let Q=$B.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},a5=($,Z)=>{if(typeof $!=="string")throw TypeError("Expected a `target`");return C2({...Z,target:$})},qB=($,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 C2({...Z,app:{name:$,arguments:X}})};function v9($){if(typeof $==="string"||Array.isArray($))return $;let{[g9]:Z}=$;if(!Z)throw Error(`${g9} is not supported`);return Z}function o5({[n$]:$},{wsl:Z}){if(Z&&P2)return v9(Z);if(!$)throw Error(`${n$} is not supported`);return v9($)}var E2={};r5(E2,"chrome",()=>o5({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"]}}));r5(E2,"firefox",()=>o5({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));r5(E2,"edge",()=>o5({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));a5.apps=E2;a5.openApp=qB;m9.exports=a5});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 v0=()=>{};var t5=function(){let{crypto:$}=globalThis;if($?.randomUUID)return t5=$.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 u0($){return typeof $==="object"&&$!==null&&(("name"in $)&&$.name==="AbortError"||("message"in $)&&String($.message).includes("FetchRequestCanceledException"))}var n6=($)=>{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 F,q0,W0,z$,s$,r$,a$,o$,t$,e$,$6,Z6,X6;var B0=_(()=>{F=class F extends Error{};q0=class q0 extends F{constructor($,Z,X,z){super(`${q0.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 z$({message:X,cause:n6(Z)});let J=Z;if($===400)return new r$($,J,X,z);if($===401)return new a$($,J,X,z);if($===403)return new o$($,J,X,z);if($===404)return new t$($,J,X,z);if($===409)return new e$($,J,X,z);if($===422)return new $6($,J,X,z);if($===429)return new Z6($,J,X,z);if($>=500)return new X6($,J,X,z);return new q0($,J,X,z)}};W0=class W0 extends q0{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}};z$=class z$ extends q0{constructor({message:$,cause:Z}){super(void 0,void 0,$||"Connection error.",void 0);if(Z)this.cause=Z}};s$=class s$ extends z${constructor({message:$}={}){super({message:$??"Request timed out."})}};r$=class r$ extends q0{};a$=class a$ extends q0{};o$=class o$ extends q0{};t$=class t$ extends q0{};e$=class e$ extends q0{};$6=class $6 extends q0{};Z6=class Z6 extends q0{};X6=class X6 extends q0{}});function S2($){if(typeof $!=="object")return{};return $??{}}function t9($){if(!$)return!0;for(let Z in $)return!1;return!0}function e9($,Z){return Object.prototype.hasOwnProperty.call($,Z)}var FB,o9=($)=>{return FB.test($)},e5=($)=>(e5=Array.isArray,e5($)),$4,$J=($,Z)=>{if(typeof Z!=="number"||!Number.isInteger(Z))throw new F(`${$} must be an integer`);if(Z<0)throw new F(`${$} must be a positive integer`);return Z},j2=($)=>{try{return JSON.parse($)}catch(Z){return}};var w$=_(()=>{B0();FB=/^[a-z][a-z0-9+.-]*:/i,$4=e5});var ZJ=($)=>new Promise((Z)=>setTimeout(Z,$));var J$="0.74.0";function AB(){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 _B(){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 qJ=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},PB=()=>{let $=AB();if($==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":J$,"X-Stainless-OS":zJ(Deno.build.os),"X-Stainless-Arch":XJ(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":J$,"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":J$,"X-Stainless-OS":zJ(globalThis.process.platform??"unknown"),"X-Stainless-Arch":XJ(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let Z=_B();if(Z)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":J$,"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":J$,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}},XJ=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},zJ=($)=>{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"},JJ,QJ=()=>{return JJ??(JJ=PB())};var Z4=()=>{};function YJ(){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 X4(...$){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 b2($){let Z=Symbol.asyncIterator in $?$[Symbol.asyncIterator]():$[Symbol.iterator]();return X4({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 s6($){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 GJ($){if($===null||typeof $!=="object")return;if($[Symbol.asyncIterator]){await $[Symbol.asyncIterator]().return?.();return}let Z=$.getReader(),X=Z.cancel();Z.releaseLock(),await X}var UJ=({headers:$,body:Z})=>{return{bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(Z)}};function HJ($){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 r6($){let Z;return(WJ??(Z=new globalThis.TextEncoder,WJ=Z.encode.bind(Z)))($)}function z4($){let Z;return(VJ??(Z=new globalThis.TextDecoder,VJ=Z.decode.bind(Z)))($)}var WJ,VJ;class q${constructor(){D0.set(this,void 0),N0.set(this,void 0),O(this,D0,new Uint8Array,"f"),O(this,N0,null,"f")}decode($){if($==null)return[];let Z=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?r6($):$;O(this,D0,HJ([K(this,D0,"f"),Z]),"f");let X=[],z;while((z=SB(K(this,D0,"f"),K(this,N0,"f")))!=null){if(z.carriage&&K(this,N0,"f")==null){O(this,N0,z.index,"f");continue}if(K(this,N0,"f")!=null&&(z.index!==K(this,N0,"f")+1||z.carriage)){X.push(z4(K(this,D0,"f").subarray(0,K(this,N0,"f")-1))),O(this,D0,K(this,D0,"f").subarray(K(this,N0,"f")),"f"),O(this,N0,null,"f");continue}let J=K(this,N0,"f")!==null?z.preceding-1:z.preceding,q=z4(K(this,D0,"f").subarray(0,J));X.push(q),O(this,D0,K(this,D0,"f").subarray(z.index),"f"),O(this,N0,null,"f")}return X}flush(){if(!K(this,D0,"f").length)return[];return this.decode(`
|
|
171
|
-
`)}}function
|
|
172
|
-
`,"\r"]);
|
|
173
|
-
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],
|
|
174
|
-
`);
|
|
175
|
-
${
|
|
168
|
+
`)}return r4}function H$($){return JSON.parse(c6().score_faf($))}function GQ($){return c6().validate_faf($)}function WQ($){return c6().compile_fafb($)}function HQ($){return JSON.parse(c6().decompile_fafb($))}function UQ(){return c6().sdk_version()}var r4=null;var a4=($)=>(X)=>`\x1B[${$}m${X}\x1B[0m`,C,w,TR,L=($)=>`\x1B[38;2;0;212;212m${$}\x1B[0m`,o0=($)=>`\x1B[38;5;208m${$}\x1B[0m`;var t=b(()=>{C=a4("1"),w=a4("2"),TR=a4("3")});function b5($){return $.indicator}function VQ($){for(let X of s4)if($>=X.threshold)return X;return s4[s4.length-1]}var s4;var f5=b(()=>{t();s4=[{name:"TROPHY",indicator:`${o0("\uD83C\uDFC6")} ${o0("TROPHY")}`,threshold:100},{name:"GOLD",indicator:`${o0(C("★"))} ${o0("GOLD")}`,threshold:99},{name:"SILVER",indicator:`${L("◆")} ${L("SILVER")}`,threshold:95},{name:"BRONZE",indicator:`${L("◇")} ${L("BRONZE")}`,threshold:85},{name:"GREEN",indicator:`${C("●")} GREEN`,threshold:70},{name:"YELLOW",indicator:`${w("●")} YELLOW`,threshold:55},{name:"RED",indicator:`${w("○")} RED`,threshold:1},{name:"WHITE",indicator:`${w("♡")}`,threshold:0}]});function U$($){return{score:$.score,tier:VQ($.score),populated:$.populated,empty:$.empty,ignored:$.ignored,active:$.active,total:$.total,slots:$.slots}}var u$=b(()=>{f5()});function N$($,X,J=!1){let Q=b5($.tier),q=C(`${$.score}%`);if(console.log(`${Q} ${q} ${w(`${$.populated}/${$.active} slots`)} ${w("—")} ${X}`),$.tier.name!=="TROPHY"&&$.empty>0)console.log(w(` ${$.empty} empty`));if(J)console.log(""),VN($)}function VN($){for(let[X,J]of Object.entries($.slots)){let Q=J==="populated"?L("●"):J==="slotignored"?w("—"):w("○");console.log(` ${Q} ${J==="slotignored"?w(X):X}`)}}var t$=b(()=>{f5();t()});function j8($){if($===null||$===void 0||$==="")return!0;if(typeof $==="string")return BN.has($.toLowerCase().trim());if(Array.isArray($)&&$.length===0)return!0;if(typeof $==="object"&&Object.keys($).length===0)return!0;return!1}var I$,dR,pR,BN,T8;var G0=b(()=>{I$=[{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"}],dR=new Map(I$.map(($)=>[$.path,$])),pR=I$.filter(($)=>$.index<=21),BN=new Set(["describe your project goal","development teams","cloud platform","null","none","unknown","n/a","not applicable"]);T8={cli:["project","human"],library:["project","human"],"static-site":["project","frontend","human"],mcp:["project","backend","universal","human"],backend:["project","backend","universal","human"],"data-science":["project","backend","human"],frontend:["project","frontend","human"],fullstack:["project","frontend","backend","universal","human"],svelte:["project","frontend","backend","universal","human"],framework:["project","frontend","backend","universal","human"],enterprise:["project","frontend","backend","universal","human","enterprise_infra","enterprise_app","enterprise_ops"]}});var BQ;var KQ=b(()=>{BQ=[{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"},{type:"devDependency",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:"Vercel (SvelteKit)",slug:"adapter-vercel",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-vercel"},{type:"devDependency",key:"@sveltejs/adapter-vercel"}]},{name:"Node (SvelteKit)",slug:"adapter-node",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-node"},{type:"devDependency",key:"@sveltejs/adapter-node"}]},{name:"Static (SvelteKit)",slug:"adapter-static",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-static"},{type:"devDependency",key:"@sveltejs/adapter-static"}]},{name:"Cloudflare (SvelteKit)",slug:"adapter-cloudflare",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-cloudflare"},{type:"devDependency",key:"@sveltejs/adapter-cloudflare"}]},{name:"Netlify (SvelteKit)",slug:"adapter-netlify",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-netlify"},{type:"devDependency",key:"@sveltejs/adapter-netlify"}]},{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:"FastAPI",slug:"fastapi",category:"backend",signals:[{type:"dependency",key:"fastapi"}]},{name:"Django",slug:"django",category:"backend",signals:[{type:"dependency",key:"django"},{type:"file",pattern:"manage.py"}]},{name:"Flask",slug:"flask",category:"backend",signals:[{type:"dependency",key:"flask"},{type:"file",pattern:"app.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:"SQLAlchemy",slug:"sqlalchemy",category:"database",signals:[{type:"dependency",key:"sqlalchemy"}]},{name:"Tortoise ORM",slug:"tortoise",category:"database",signals:[{type:"dependency",key:"tortoise-orm"}]},{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 (TS)",slug:"mcp-sdk-ts",category:"mcp",signals:[{type:"dependency",key:"@modelcontextprotocol/sdk"}]},{name:"FastMCP",slug:"fastmcp",category:"mcp",signals:[{type:"dependency",key:"fastmcp"}]},{name:"MCP SDK (Python)",slug:"mcp-sdk-py",category:"mcp",signals:[{type:"dependency",key:"mcp"}]},{name:"rmcp",slug:"rmcp",category:"mcp",signals:[{type:"dependency",key:"rmcp"}]},{name:"MCP Go",slug:"mcp-go",category:"mcp",signals:[{type:"dependency",key:"github.com/mark3labs/mcp-go"}]},{name:"MCP .NET",slug:"mcp-dotnet",category:"mcp",signals:[{type:"dependency",key:"ModelContextProtocol"}]},{name:"FastMCP (TS)",slug:"fastmcp-ts",category:"mcp",signals:[{type:"dependency",key:"@fastmcp/server"}]},{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"}]}]});import{existsSync as u,readFileSync as Z8,readdirSync as MQ}from"fs";import{join as v}from"path";function S0($){let X=v($,"package.json");if(!u(X))return null;try{return JSON.parse(Z8(X,"utf-8"))}catch{return null}}function NQ($){let X=S0($);if(X?.name)return{name:X.name,description:X.description};let J=v($,"pyproject.toml");if(u(J))try{let q=Z8(J,"utf-8"),Y=q.match(/^\s*name\s*=\s*"([^"]+)"/m),z=q.match(/^\s*description\s*=\s*"([^"]+)"/m);if(Y)return{name:Y[1],description:z?.[1]}}catch{}let Q=v($,"Cargo.toml");if(u(Q))try{let q=Z8(Q,"utf-8"),Y=q.match(/^\s*name\s*=\s*"([^"]+)"/m),z=q.match(/^\s*description\s*=\s*"([^"]+)"/m);if(Y)return{name:Y[1],description:z?.[1]}}catch{}return null}function KN($,X){if(!X.includes("*"))return u(v($,X));let J=X.split("/");if(J.length===1){let G=X.split("*")[0];try{return MQ($).some((W)=>W.startsWith(G))}catch{return!1}}let Q=v($,...J.slice(0,-1)),q=J[J.length-1],Y=q.split("*")[0],z=q.split("*")[1]||"";try{return MQ(Q).some((G)=>G.startsWith(Y)&&G.endsWith(z))}catch{return!1}}function MN($,X,J){switch($.type){case"dependency":return!!X?.dependencies?.[$.key];case"devDependency":return!!X?.devDependencies?.[$.key];case"file":return KN(J,$.pattern);default:return!1}}function NN($){let X=v($,"pyproject.toml");if(!u(X))return{};try{let J=Z8(X,"utf-8"),Q={},q=J.match(/dependencies\s*=\s*\[([\s\S]*)\]/);if(q){let Y=q[1].match(/"([^"]+)"/g)||[];for(let z of Y){let G=z.replace(/"/g,"").replace(/\[.*/,"").split(/[>=<]/)[0].trim().toLowerCase();if(G)Q[G]="*"}}return Q}catch{return{}}}function wN($){let X=v($,"Cargo.toml");if(!u(X))return{};try{let J=Z8(X,"utf-8"),Q={},q=J.match(/\[dependencies\]([\s\S]*?)(?:\[|$)/);if(q){let Y=q[1].split(`
|
|
169
|
+
`);for(let z of Y){let G=z.match(/^\s*([a-zA-Z_-]+)\s*=/);if(G)Q[G[1].toLowerCase()]="*"}}return Q}catch{return{}}}function o4($){let X=S0($),J=NN($),Q=wN($),q={...J,...Q},Y=X?{...X,dependencies:{...X.dependencies,...q}}:Object.keys(q).length>0?{dependencies:q}:null,z=BQ.map((H)=>{let V=H.signals.filter((B)=>MN(B,Y,$)).length/H.signals.length;return{name:H.name,slug:H.slug,category:H.category,confidence:V}}).filter((H)=>H.confidence>0).sort((H,U)=>U.confidence-H.confidence),G=new Set(z.map((H)=>H.slug)),W=new Set;if(G.has("nextjs"))W.add("react");if(G.has("nuxt"))W.add("vue");if(G.has("sveltekit"))W.add("svelte");return z.filter((H)=>!W.has(H.slug))}function wQ($){let X=S0($);if(X?.devDependencies?.typescript||X?.dependencies?.typescript)return"TypeScript";if(u(v($,"tsconfig.json")))return"TypeScript";if(u(v($,"index.html"))||u(v($,"index.htm")))return"HTML";if(u(v($,"Cargo.toml")))return"Rust";if(u(v($,"go.mod")))return"Go";if(u(v($,"pyproject.toml"))||u(v($,"setup.py")))return"Python";if(u(v($,"Gemfile")))return"Ruby";if(u(v($,"pom.xml"))||u(v($,"build.gradle")))return"Java";if(u(v($,"Package.swift")))return"Swift";if(u(v($,"build.zig")))return"Zig";if(X)return"JavaScript";return"Unknown"}function DQ($){let X=S0($),J=o4($);if(J.some((V)=>V.category==="mcp"))return"mcp";if(X?.bin)return"cli";let q=J.some((V)=>V.slug==="svelte"||V.slug==="sveltekit");if(X?.private===!0&&(u(v($,"pnpm-workspace.yaml"))||X?.workspaces!==void 0)&&q)return"framework";if(q)return"svelte";if(J.some((V)=>V.slug==="nextjs"||V.slug==="nuxt"))return"fullstack";let G=u(v($,"index.html"))||u(v($,"index.htm")),W=u(v($,"404.html"))||u(v($,"about.html"))||u(v($,"contact.html")),H=J.some((V)=>V.category==="frontend"),U=J.some((V)=>V.category==="backend");if(H&&U)return"fullstack";if((G||W)&&!U)return"static-site";if(H)return"frontend";if(U)return"backend";if(X?.main&&!X?.bin)return"library";return"library"}function OQ($){if(u(v($,"bunfig.toml")))return"Bun";if(u(v($,"deno.json"))||u(v($,"deno.jsonc")))return"Deno";if(S0($))return"Node.js";if(u(v($,"Cargo.toml")))return"Rust";if(u(v($,"go.mod")))return"Go";return"Unknown"}function LQ($){if(u(v($,"bun.lockb"))||u(v($,"bun.lock")))return"bun";if(u(v($,"pnpm-lock.yaml")))return"pnpm";if(u(v($,"yarn.lock")))return"yarn";if(u(v($,"package-lock.json")))return"npm";return"npm"}function RQ($){if(u(v($,".github/workflows")))return"GitHub Actions";if(u(v($,".gitlab-ci.yml")))return"GitLab CI";if(u(v($,".circleci")))return"CircleCI";if(u(v($,"Jenkinsfile")))return"Jenkins";return null}function AQ($){if(u(v($,"vercel.json")))return"Vercel";if(u(v($,"netlify.toml")))return"Netlify";if(u(v($,"wrangler.toml")))return"Cloudflare";if(u(v($,"Dockerfile")))return"Docker";if(u(v($,"fly.toml")))return"Fly.io";if(u(v($,"render.yaml")))return"Render";return null}function _Q($){let X=v($,"svelte.config.js");if(!u(X))return null;try{let Q=Z8(X,"utf-8").match(/@sveltejs\/adapter-(\w+)/);if(Q){let q=Q[1];switch(q){case"vercel":return"Vercel";case"node":return"Node";case"static":return"Static";case"cloudflare":return"Cloudflare";case"netlify":return"Netlify";case"auto":return"Auto";default:return q}}return null}catch{return null}}function FQ($){let X=S0($);if(X?.devDependencies?.vite||X?.dependencies?.vite)return"Vite";if(X?.devDependencies?.webpack||X?.dependencies?.webpack)return"webpack";if(X?.devDependencies?.esbuild||X?.dependencies?.esbuild)return"esbuild";if(u(v($,"tsconfig.json"))&&X?.devDependencies?.typescript)return"TypeScript (tsc)";return null}var IQ=b(()=>{KQ()});function C8($){let X=S0($),J=o4($),Q=wQ($),q=DQ($),Y=OQ($),z=LQ($),G=RQ($),W=AQ($),H=FQ($),U=J.find((X$)=>X$.category==="frontend"),V=J.find((X$)=>X$.category==="css"),B=J.find((X$)=>X$.category==="ui"),N=J.find((X$)=>X$.category==="state"),R=J.find((X$)=>X$.category==="backend"),M=J.find((X$)=>X$.category==="database"),D=T8[q]||T8.library,F=q==="framework",T=J.some((X$)=>X$.slug==="svelte"||X$.slug==="sveltekit"),P=F&&T?"svelte":F?null:null,f=q==="mcp",g=f?J.find((X$)=>X$.category==="mcp"):null,x=g?.slug??null,a=q==="svelte"||P==="svelte",S=a?_Q($):null,G$=a&&J.some((X$)=>X$.slug==="sveltekit"),r$=new Set(["css_framework","ui_library","database","connection","hosting"]),p={},V$=I$.filter((X$)=>X$.path.startsWith("stack."));for(let X$ of V$){let r=X$.path.replace("stack.","");if(!D.includes(X$.category)){p[r]="slotignored";continue}if(F&&r$.has(r)){p[r]="slotignored";continue}switch(r){case"frontend":if(q==="static-site")p[r]="Vanilla HTML";else p[r]=U?.name??(q==="cli"?"CLI":"");break;case"css_framework":if(q==="static-site")p[r]="Vanilla CSS";else p[r]=V?.name??"";break;case"ui_library":if(q==="static-site")p[r]="Vanilla JS";else p[r]=B?.name??"";break;case"state_management":p[r]=a?N?.name??"Runes":N?.name??"";break;case"backend":if(f&&g)p[r]=g.name;else if(q==="static-site")p[r]="Static";else if(a)p[r]=G$?"SvelteKit":R?.name??"";else p[r]=R?.name??"";break;case"api_type":if(f)p[r]="MCP (stdio/SSE)";else if(G$)p[r]="Server Routes";else p[r]="";break;case"runtime":if(q==="static-site")p[r]="Browser";else p[r]=Y!=="Unknown"?Y:"";break;case"database":p[r]=M?.name??"";break;case"connection":p[r]=M?.name??"";break;case"hosting":if(a&&S)p[r]=S;else if(q==="static-site"&&W)p[r]=`${W} (detected)`;else p[r]=W??"";break;case"build":p[r]=a?"Vite":H??"";break;case"cicd":if(q==="static-site"&&G)p[r]=`${G} (detected)`;else p[r]=G??"";break;case"package_manager":p[r]=z;break;default:p[r]="";break}}let B8={},tY=I$.filter((X$)=>X$.path.startsWith("monorepo."));for(let X$ of tY){let r=X$.path.replace("monorepo.","");if(!D.includes(X$.category))B8[r]="slotignored";else B8[r]=""}let Z9=NQ($),FX={name:Z9?.name??$.split("/").pop()??"project",goal:Z9?.description??"",main_language:Q,type:q};if(F&&P)FX.framework=P;if(f&&x)FX.framework=x;return{faf_version:"3.0",project:FX,stack:p,human_context:{who:"",what:X?.description??"",why:"",where:"",when:"",how:""},monorepo:B8}}var k5=b(()=>{G0();IQ()});var jQ={};EX(jQ,{autoCommand:()=>t4});import{existsSync as ON}from"fs";import{join as LN}from"path";function t4(){let $=process.cwd(),X=LN($,"project.faf"),J=C8($);if(ON(X)){let Y=$$(X),z=SQ(Y,J);Q$(X,z),console.log(`${L("updated")} ${X}`)}else{let Y=J.project?.type??"library",z=T8[Y]||T8.library;for(let G of I$)if(!z.includes(G.category)){let[W,H]=G.path.split(".");if(W==="stack"&&J.stack)J.stack[H]="slotignored";if(W==="monorepo"&&J.monorepo)J.monorepo[H]="slotignored"}Q$(X,J),console.log(`${L("created")} ${X}`)}let Q=e(X),q=U$(H$(Q));if(N$(q,X),q.score<100)console.log(w(`
|
|
170
|
+
run ${C("'faf go'")} to reach 100%`))}function SQ($,X){let J={...$};for(let[Q,q]of Object.entries(X))if(!(Q in J)||J[Q]===null||J[Q]===void 0)J[Q]=q;else if(typeof q==="object"&&q!==null&&!Array.isArray(q))J[Q]=SQ(J[Q]??{},q);return J}var e4=b(()=>{k5();B$();u$();t$();t();G0()});var dQ=A((Z_,cN)=>{cN.exports={name:"faf-cli",version:"6.0.15",description:"51,582+ downloads | Claude Code Skills | Persistent AI Context Standard — project DNA for 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/**/*","skills/**/*","README.md","LICENSE","project.faf"],scripts:{dev:"bun run 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","test:coverage":"bun test --coverage",typecheck:"bun --bun tsc --noEmit"},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:"git+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.3","faf-scoring-kernel":"^2.0.3",open:"8.4.2",yaml:"^2.8.3",zod:"^3.25.76"},optionalDependencies:{"@anthropic-ai/sdk":"^0.74.0"},devDependencies:{"@types/node":"^22.19.17","@typescript-eslint/eslint-plugin":"^8.58.0","@typescript-eslint/parser":"^8.58.0",eslint:"^9.39.4",prettier:"^3.8.1",typescript:"^5.9.3","typescript-eslint":"^8.58.0"},engines:{node:">=18.0.0"},publishConfig:{access:"public"}}});var W7=A((KF,Jq)=>{var Xq=W$("fs"),G7;function tN(){try{return Xq.statSync("/.dockerenv"),!0}catch($){return!1}}function eN(){try{return Xq.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch($){return!1}}Jq.exports=()=>{if(G7===void 0)G7=tN()||eN();return G7}});var Yq=A((MF,H7)=>{var $w=W$("os"),Xw=W$("fs"),Qq=W7(),qq=()=>{if(process.platform!=="linux")return!1;if($w.release().toLowerCase().includes("microsoft")){if(Qq())return!1;return!0}try{return Xw.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!Qq():!1}catch($){return!1}};if(process.env.__IS_WSL_TEST__)H7.exports=qq;else H7.exports=qq()});var Gq=A((NF,zq)=>{zq.exports=($,X,J)=>{let Q=(q)=>Object.defineProperty($,X,{value:q,enumerable:!0,writable:!0});return Object.defineProperty($,X,{configurable:!0,enumerable:!0,get(){let q=J();return Q(q),q},set(q){Q(q)}}),$}});var Mq=A((wF,Kq)=>{var __dirname="/Users/wolfejam/FAF/cli/node_modules/open",Jw=W$("path"),Qw=W$("child_process"),{promises:h5,constants:Bq}=W$("fs"),v5=Yq(),qw=W7(),V7=Gq(),Wq=Jw.join(__dirname,"xdg-open"),{platform:b8,arch:Hq}=process,Yw=()=>{try{return h5.statSync("/run/.containerenv"),!0}catch{return!1}},U7;function zw(){if(U7===void 0)U7=Yw()||qw();return U7}var Gw=(()=>{let X;return async function(){if(X)return X;let J="/etc/wsl.conf",Q=!1;try{await h5.access(J,Bq.F_OK),Q=!0}catch{}if(!Q)return"/mnt/";let q=await h5.readFile(J,{encoding:"utf8"}),Y=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(q);if(!Y)return"/mnt/";return X=Y.groups.mountPoint.trim(),X=X.endsWith("/")?X:`${X}/`,X}})(),Uq=async($,X)=>{let J;for(let Q of $)try{return await X(Q)}catch(q){J=q}throw J},u5=async($)=>{if($={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...$},Array.isArray($.app))return Uq($.app,(G)=>u5({...$,app:G}));let{name:X,arguments:J=[]}=$.app||{};if(J=[...J],Array.isArray(X))return Uq(X,(G)=>u5({...$,app:{name:G,arguments:J}}));let Q,q=[],Y={};if(b8==="darwin"){if(Q="open",$.wait)q.push("--wait-apps");if($.background)q.push("--background");if($.newInstance)q.push("--new");if(X)q.push("-a",X)}else if(b8==="win32"||v5&&!zw()&&!X){let G=await Gw();if(Q=v5?`${G}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`:`${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\powershell`,q.push("-NoProfile","-NonInteractive","–ExecutionPolicy","Bypass","-EncodedCommand"),!v5)Y.windowsVerbatimArguments=!0;let W=["Start"];if($.wait)W.push("-Wait");if(X){if(W.push(`"\`"${X}\`""`,"-ArgumentList"),$.target)J.unshift($.target)}else if($.target)W.push(`"${$.target}"`);if(J.length>0)J=J.map((H)=>`"\`"${H}\`""`),W.push(J.join(","));$.target=Buffer.from(W.join(" "),"utf16le").toString("base64")}else{if(X)Q=X;else{let G=!__dirname||__dirname==="/",W=!1;try{await h5.access(Wq,Bq.X_OK),W=!0}catch{}Q=process.versions.electron||b8==="android"||G||!W?"xdg-open":Wq}if(J.length>0)q.push(...J);if(!$.wait)Y.stdio="ignore",Y.detached=!0}if($.target)q.push($.target);if(b8==="darwin"&&J.length>0)q.push("--args",...J);let z=Qw.spawn(Q,q,Y);if($.wait)return new Promise((G,W)=>{z.once("error",W),z.once("close",(H)=>{if(!$.allowNonzeroExitCode&&H>0){W(Error(`Exited with code ${H}`));return}G(z)})});return z.unref(),z},B7=($,X)=>{if(typeof $!=="string")throw TypeError("Expected a `target`");return u5({...X,target:$})},Ww=($,X)=>{if(typeof $!=="string")throw TypeError("Expected a `name`");let{arguments:J=[]}=X||{};if(J!==void 0&&J!==null&&!Array.isArray(J))throw TypeError("Expected `appArguments` as Array type");return u5({...X,app:{name:$,arguments:J}})};function Vq($){if(typeof $==="string"||Array.isArray($))return $;let{[Hq]:X}=$;if(!X)throw Error(`${Hq} is not supported`);return X}function K7({[b8]:$},{wsl:X}){if(X&&v5)return Vq(X);if(!$)throw Error(`${b8} is not supported`);return Vq($)}var m5={};V7(m5,"chrome",()=>K7({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"]}}));V7(m5,"firefox",()=>K7({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));V7(m5,"edge",()=>K7({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));B7.apps=m5;B7.openApp=Ww;Kq.exports=B7});function I($,X,J,Q,q){if(Q==="m")throw TypeError("Private method is not writable");if(Q==="a"&&!q)throw TypeError("Private accessor was defined without a setter");if(typeof X==="function"?$!==X||!q:!X.has($))throw TypeError("Cannot write private member to an object whose class did not declare it");return Q==="a"?q.call($,J):q?q.value=J:X.set($,J),J}function K($,X,J,Q){if(J==="a"&&!Q)throw TypeError("Private accessor was defined without a getter");if(typeof X==="function"?$!==X||!Q:!X.has($))throw TypeError("Cannot read private member from an object whose class did not declare it");return J==="m"?Q:J==="a"?Q.call($):Q?Q.value:X.get($)}var W0=()=>{};var M7=function(){let{crypto:$}=globalThis;if($?.randomUUID)return M7=$.randomUUID.bind($),$.randomUUID();let X=new Uint8Array(1),J=$?()=>$.getRandomValues(X)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(Q)=>(+Q^J()&15>>+Q/4).toString(16))};function H0($){return typeof $==="object"&&$!==null&&(("name"in $)&&$.name==="AbortError"||("message"in $)&&String($.message).includes("FetchRequestCanceledException"))}var o6=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null){try{if(Object.prototype.toString.call($)==="[object Error]"){let X=Error($.message,$.cause?{cause:$.cause}:{});if($.stack)X.stack=$.stack;if($.cause&&!X.cause)X.cause=$.cause;if($.name)X.name=$.name;return X}}catch{}try{return Error(JSON.stringify($))}catch{}}return Error($)};var j,w$,A$,T0,f8,k8,x8,y8,g8,v8,h8,u8,m8;var T$=b(()=>{j=class j extends Error{};w$=class w$ extends j{constructor($,X,J,Q){super(`${w$.makeMessage($,X,J)}`);this.status=$,this.headers=Q,this.requestID=Q?.get("request-id"),this.error=X}static makeMessage($,X,J){let Q=X?.message?typeof X.message==="string"?X.message:JSON.stringify(X.message):X?JSON.stringify(X):J;if($&&Q)return`${$} ${Q}`;if($)return`${$} status code (no body)`;if(Q)return Q;return"(no status code or body)"}static generate($,X,J,Q){if(!$||!Q)return new T0({message:J,cause:o6(X)});let q=X;if($===400)return new k8($,q,J,Q);if($===401)return new x8($,q,J,Q);if($===403)return new y8($,q,J,Q);if($===404)return new g8($,q,J,Q);if($===409)return new v8($,q,J,Q);if($===422)return new h8($,q,J,Q);if($===429)return new u8($,q,J,Q);if($>=500)return new m8($,q,J,Q);return new w$($,q,J,Q)}};A$=class A$ extends w${constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}};T0=class T0 extends w${constructor({message:$,cause:X}){super(void 0,void 0,$||"Connection error.",void 0);if(X)this.cause=X}};f8=class f8 extends T0{constructor({message:$}={}){super({message:$??"Request timed out."})}};k8=class k8 extends w${};x8=class x8 extends w${};y8=class y8 extends w${};g8=class g8 extends w${};v8=class v8 extends w${};h8=class h8 extends w${};u8=class u8 extends w${};m8=class m8 extends w${}});function l5($){if(typeof $!=="object")return{};return $??{}}function Iq($){if(!$)return!0;for(let X in $)return!1;return!0}function Eq($,X){return Object.prototype.hasOwnProperty.call($,X)}var jw,Fq=($)=>{return jw.test($)},N7=($)=>(N7=Array.isArray,N7($)),w7,Sq=($,X)=>{if(typeof X!=="number"||!Number.isInteger(X))throw new j(`${$} must be an integer`);if(X<0)throw new j(`${$} must be a positive integer`);return X},c5=($)=>{try{return JSON.parse($)}catch(X){return}};var e0=b(()=>{T$();jw=/^[a-z][a-z0-9+.-]*:/i,w7=N7});var jq=($)=>new Promise((X)=>setTimeout(X,$));var Z0="0.74.0";function Tw(){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 Cw(){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:X,pattern:J}of $){let Q=J.exec(navigator.userAgent);if(Q){let q=Q[1]||0,Y=Q[2]||0,z=Q[3]||0;return{browser:X,version:`${q}.${Y}.${z}`}}}return null}var Pq=()=>{return typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u"},Zw=()=>{let $=Tw();if($==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":Z0,"X-Stainless-OS":Zq(Deno.build.os),"X-Stainless-Arch":Tq(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":Z0,"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":Z0,"X-Stainless-OS":Zq(globalThis.process.platform??"unknown"),"X-Stainless-Arch":Tq(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let X=Cw();if(X)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":Z0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${X.browser}`,"X-Stainless-Runtime-Version":X.version};return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":Z0,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}},Tq=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},Zq=($)=>{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"},Cq,bq=()=>{return Cq??(Cq=Zw())};var D7=()=>{};function fq(){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 O7(...$){let X=globalThis.ReadableStream;if(typeof X>"u")throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new X(...$)}function d5($){let X=Symbol.asyncIterator in $?$[Symbol.asyncIterator]():$[Symbol.iterator]();return O7({start(){},async pull(J){let{done:Q,value:q}=await X.next();if(Q)J.close();else J.enqueue(q)},async cancel(){await X.return?.()}})}function t6($){if($[Symbol.asyncIterator])return $;let X=$.getReader();return{async next(){try{let J=await X.read();if(J?.done)X.releaseLock();return J}catch(J){throw X.releaseLock(),J}},async return(){let J=X.cancel();return X.releaseLock(),await J,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function kq($){if($===null||typeof $!=="object")return;if($[Symbol.asyncIterator]){await $[Symbol.asyncIterator]().return?.();return}let X=$.getReader(),J=X.cancel();X.releaseLock(),await J}var xq=({headers:$,body:X})=>{return{bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(X)}};function vq($){let X=0;for(let q of $)X+=q.length;let J=new Uint8Array(X),Q=0;for(let q of $)J.set(q,Q),Q+=q.length;return J}function e6($){let X;return(yq??(X=new globalThis.TextEncoder,yq=X.encode.bind(X)))($)}function L7($){let X;return(gq??(X=new globalThis.TextDecoder,gq=X.decode.bind(X)))($)}var yq,gq;class C0{constructor(){Z$.set(this,void 0),C$.set(this,void 0),I(this,Z$,new Uint8Array,"f"),I(this,C$,null,"f")}decode($){if($==null)return[];let X=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?e6($):$;I(this,Z$,vq([K(this,Z$,"f"),X]),"f");let J=[],Q;while((Q=fw(K(this,Z$,"f"),K(this,C$,"f")))!=null){if(Q.carriage&&K(this,C$,"f")==null){I(this,C$,Q.index,"f");continue}if(K(this,C$,"f")!=null&&(Q.index!==K(this,C$,"f")+1||Q.carriage)){J.push(L7(K(this,Z$,"f").subarray(0,K(this,C$,"f")-1))),I(this,Z$,K(this,Z$,"f").subarray(K(this,C$,"f")),"f"),I(this,C$,null,"f");continue}let q=K(this,C$,"f")!==null?Q.preceding-1:Q.preceding,Y=L7(K(this,Z$,"f").subarray(0,q));J.push(Y),I(this,Z$,K(this,Z$,"f").subarray(Q.index),"f"),I(this,C$,null,"f")}return J}flush(){if(!K(this,Z$,"f").length)return[];return this.decode(`
|
|
171
|
+
`)}}function fw($,X){for(let q=X??0;q<$.length;q++){if($[q]===10)return{preceding:q,index:q+1,carriage:!1};if($[q]===13)return{preceding:q,index:q+1,carriage:!0}}return null}function hq($){for(let Q=0;Q<$.length-1;Q++){if($[Q]===10&&$[Q+1]===10)return Q+2;if($[Q]===13&&$[Q+1]===13)return Q+2;if($[Q]===13&&$[Q+1]===10&&Q+3<$.length&&$[Q+2]===13&&$[Q+3]===10)return Q+4}return-1}var Z$,C$;var R7=b(()=>{W0();Z$=new WeakMap,C$=new WeakMap;C0.NEWLINE_CHARS=new Set([`
|
|
172
|
+
`,"\r"]);C0.NEWLINE_REGEXP=/\r\n|[\n\r]/g});function $2(){}function p5($,X,J){if(!X||i5[$]>i5[J])return $2;else return X[$].bind(X)}function L$($){let X=$.logger,J=$.logLevel??"off";if(!X)return kw;let Q=uq.get(X);if(Q&&Q[0]===J)return Q[1];let q={error:p5("error",X,J),warn:p5("warn",X,J),info:p5("info",X,J),debug:p5("debug",X,J)};return uq.set(X,[J,q]),q}var i5,A7=($,X,J)=>{if(!$)return;if(Eq(i5,$))return $;L$(J).warn(`${X} was set to ${JSON.stringify($)}, expected one of ${JSON.stringify(Object.keys(i5))}`);return},kw,uq,U0=($)=>{if($.options)$.options={...$.options},delete $.options.headers;if($.headers)$.headers=Object.fromEntries(($.headers instanceof Headers?[...$.headers]:Object.entries($.headers)).map(([X,J])=>[X,X.toLowerCase()==="x-api-key"||X.toLowerCase()==="authorization"||X.toLowerCase()==="cookie"||X.toLowerCase()==="set-cookie"?"***":J]));if("retryOfRequestLogID"in $){if($.retryOfRequestLogID)$.retryOf=$.retryOfRequestLogID;delete $.retryOfRequestLogID}return $};var n5=b(()=>{e0();i5={off:0,error:200,warn:300,info:400,debug:500};kw={error:$2,warn:$2,info:$2,debug:$2},uq=new WeakMap});async function*xw($,X){if(!$.body){if(X.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative")throw new j("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 j("Attempted to iterate over a response with no body")}let J=new mq,Q=new C0,q=t6($.body);for await(let Y of yw(q))for(let z of Q.decode(Y)){let G=J.decode(z);if(G)yield G}for(let Y of Q.flush()){let z=J.decode(Y);if(z)yield z}}async function*yw($){let X=new Uint8Array;for await(let J of $){if(J==null)continue;let Q=J instanceof ArrayBuffer?new Uint8Array(J):typeof J==="string"?e6(J):J,q=new Uint8Array(X.length+Q.length);q.set(X),q.set(Q,X.length),X=q;let Y;while((Y=hq(X))!==-1)yield X.slice(0,Y),X=X.slice(Y)}if(X.length>0)yield X}class mq{constructor(){this.event=null,this.data=[],this.chunks=[]}decode($){if($.endsWith("\r"))$=$.substring(0,$.length-1);if(!$){if(!this.event&&!this.data.length)return null;let q={event:this.event,data:this.data.join(`
|
|
173
|
+
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],q}if(this.chunks.push($),$.startsWith(":"))return null;let[X,J,Q]=gw($,":");if(Q.startsWith(" "))Q=Q.substring(1);if(X==="event")this.event=Q;else if(X==="data")this.data.push(Q);return null}}function gw($,X){let J=$.indexOf(X);if(J!==-1)return[$.substring(0,J),X,$.substring(J+X.length)];return[$,"",""]}var X2,P$;var _7=b(()=>{W0();T$();R7();e0();n5();T$();P$=class P${constructor($,X,J){this.iterator=$,X2.set(this,void 0),this.controller=X,I(this,X2,J,"f")}static fromSSEResponse($,X,J){let Q=!1,q=J?L$(J):console;async function*Y(){if(Q)throw new j("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");Q=!0;let z=!1;try{for await(let G of xw($,X)){if(G.event==="completion")try{yield JSON.parse(G.data)}catch(W){throw q.error("Could not parse message into JSON:",G.data),q.error("From chunk:",G.raw),W}if(G.event==="message_start"||G.event==="message_delta"||G.event==="message_stop"||G.event==="content_block_start"||G.event==="content_block_delta"||G.event==="content_block_stop")try{yield JSON.parse(G.data)}catch(W){throw q.error("Could not parse message into JSON:",G.data),q.error("From chunk:",G.raw),W}if(G.event==="ping")continue;if(G.event==="error")throw new w$(void 0,c5(G.data)??G.data,void 0,$.headers)}z=!0}catch(G){if(H0(G))return;throw G}finally{if(!z)X.abort()}}return new P$(Y,X,J)}static fromReadableStream($,X,J){let Q=!1;async function*q(){let z=new C0,G=t6($);for await(let W of G)for(let H of z.decode(W))yield H;for(let W of z.flush())yield W}async function*Y(){if(Q)throw new j("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");Q=!0;let z=!1;try{for await(let G of q()){if(z)continue;if(G)yield JSON.parse(G)}z=!0}catch(G){if(H0(G))return;throw G}finally{if(!z)X.abort()}}return new P$(Y,X,J)}[(X2=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let $=[],X=[],J=this.iterator(),Q=(q)=>{return{next:()=>{if(q.length===0){let Y=J.next();$.push(Y),X.push(Y)}return q.shift()}}};return[new P$(()=>Q($),this.controller,K(this,X2,"f")),new P$(()=>Q(X),this.controller,K(this,X2,"f"))]}toReadableStream(){let $=this,X;return O7({async start(){X=$[Symbol.asyncIterator]()},async pull(J){try{let{value:Q,done:q}=await X.next();if(q)return J.close();let Y=e6(JSON.stringify(Q)+`
|
|
174
|
+
`);J.enqueue(Y)}catch(Q){J.error(Q)}},async cancel(){await X.return?.()}})}}});async function r5($,X){let{response:J,requestLogID:Q,retryOfRequestLogID:q,startTime:Y}=X,z=await(async()=>{if(X.options.stream){if(L$($).debug("response",J.status,J.url,J.headers,J.body),X.options.__streamClass)return X.options.__streamClass.fromSSEResponse(J,X.controller);return P$.fromSSEResponse(J,X.controller)}if(J.status===204)return null;if(X.options.__binaryResponse)return J;let W=J.headers.get("content-type")?.split(";")[0]?.trim();if(W?.includes("application/json")||W?.endsWith("+json")){if(J.headers.get("content-length")==="0")return;let B=await J.json();return F7(B,J)}return await J.text()})();return L$($).debug(`[${Q}] response parsed`,U0({retryOfRequestLogID:q,url:J.url,status:J.status,body:z,durationMs:Date.now()-Y})),z}function F7($,X){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:X.headers.get("request-id"),enumerable:!1})}var I7=b(()=>{_7();n5()});var J2,P0;var a5=b(()=>{W0();I7();P0=class P0 extends Promise{constructor($,X,J=r5){super((Q)=>{Q(null)});this.responsePromise=X,this.parseResponse=J,J2.set(this,void 0),I(this,J2,$,"f")}_thenUnwrap($){return new P0(K(this,J2,"f"),this.responsePromise,async(X,J)=>F7($(await this.parseResponse(X,J),J),J.response))}asResponse(){return this.responsePromise.then(($)=>$.response)}async withResponse(){let[$,X]=await Promise.all([this.parse(),this.asResponse()]);return{data:$,response:X,request_id:X.headers.get("request-id")}}parse(){if(!this.parsedPromise)this.parsedPromise=this.responsePromise.then(($)=>this.parseResponse(K(this,J2,"f"),$));return this.parsedPromise}then($,X){return this.parse().then($,X)}catch($){return this.parse().catch($)}finally($){return this.parse().finally($)}};J2=new WeakMap});var s5,E7,Q2,m$,q2;var e$=b(()=>{W0();T$();I7();a5();e0();E7=class E7{constructor($,X,J,Q){s5.set(this,void 0),I(this,s5,$,"f"),this.options=Q,this.response=X,this.body=J}hasNextPage(){if(!this.getPaginatedItems().length)return!1;return this.nextPageRequestOptions()!=null}async getNextPage(){let $=this.nextPageRequestOptions();if(!$)throw new j("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");return await K(this,s5,"f").requestAPIList(this.constructor,$)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(s5=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let X of $.getPaginatedItems())yield X}};Q2=class Q2 extends P0{constructor($,X,J){super($,X,async(Q,q)=>new J(Q,q.response,await r5(Q,q),q.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let X of $)yield X}};m$=class m$ extends E7{constructor($,X,J,Q){super($,X,J,Q);this.data=J.data||[],this.has_more=J.has_more||!1,this.first_id=J.first_id||null,this.last_id=J.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 X=this.first_id;if(!X)return null;return{...this.options,query:{...l5(this.options.query),before_id:X}}}let $=this.last_id;if(!$)return null;return{...this.options,query:{...l5(this.options.query),after_id:$}}}};q2=class q2 extends E7{constructor($,X,J,Q){super($,X,J,Q);this.data=J.data||[],this.has_more=J.has_more||!1,this.next_page=J.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:{...l5(this.options.query),page:$}}}}});function $8($,X,J){return j7(),new File($,X??"unknown_file",J)}function Y2($,X){let J=typeof $==="object"&&$!==null&&(("name"in $)&&$.name&&String($.name)||("url"in $)&&$.url&&String($.url)||("filename"in $)&&$.filename&&String($.filename)||("path"in $)&&$.path&&String($.path))||"";return X?J.split(/[\\/]/).pop()||void 0:J}function hw($){let X=typeof $==="function"?$:$.fetch,J=lq.get(X);if(J)return J;let Q=(async()=>{try{let q="Response"in X?X.Response:(await X("data:,")).constructor,Y=new FormData;if(Y.toString()===await new q(Y).text())return!1;return!0}catch{return!0}})();return lq.set(X,Q),Q}var j7=()=>{if(typeof File>"u"){let{process:$}=globalThis,X=typeof $?.versions?.node==="string"&&parseInt($.versions.node.split("."))<20;throw Error("`File` is not defined as a global, which is required for file uploads."+(X?" Update to Node 20 LTS or newer, or set `globalThis.File` to `import('node:buffer').File`.":""))}},T7=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function",l8=async($,X,J=!0)=>{return{...$,body:await uw($.body,X,J)}},lq,uw=async($,X,J=!0)=>{if(!await hw(X))throw TypeError("The provided fetch function does not support file uploads with the current global FormData class.");let Q=new FormData;return await Promise.all(Object.entries($||{}).map(([q,Y])=>S7(Q,q,Y,J))),Q},mw=($)=>$ instanceof Blob&&("name"in $),S7=async($,X,J,Q)=>{if(J===void 0)return;if(J==null)throw TypeError(`Received null for "${X}"; to pass null in FormData, you must use the string 'null'`);if(typeof J==="string"||typeof J==="number"||typeof J==="boolean")$.append(X,String(J));else if(J instanceof Response){let q={},Y=J.headers.get("Content-Type");if(Y)q={type:Y};$.append(X,$8([await J.blob()],Y2(J,Q),q))}else if(T7(J))$.append(X,$8([await new Response(d5(J)).blob()],Y2(J,Q)));else if(mw(J))$.append(X,$8([J],Y2(J,Q),{type:J.type}));else if(Array.isArray(J))await Promise.all(J.map((q)=>S7($,X+"[]",q,Q)));else if(typeof J==="object")await Promise.all(Object.entries(J).map(([q,Y])=>S7($,`${X}[${q}]`,Y,Q)));else throw TypeError(`Invalid value given to form, expected a string, number, boolean, object, Array, File or Blob but got ${J} instead`)};var c8=b(()=>{lq=new WeakMap});async function z2($,X,J){if(j7(),$=await $,X||(X=Y2($,!0)),lw($)){if($ instanceof File&&X==null&&J==null)return $;return $8([await $.arrayBuffer()],X??$.name,{type:$.type,lastModified:$.lastModified,...J})}if(cw($)){let q=await $.blob();return X||(X=new URL($.url).pathname.split(/[\\/]/).pop()),$8(await Z7(q),X,J)}let Q=await Z7($);if(!J?.type){let q=Q.find((Y)=>typeof Y==="object"&&("type"in Y)&&Y.type);if(typeof q==="string")J={...J,type:q}}return $8(Q,X,J)}async function Z7($){let X=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)X.push($);else if(cq($))X.push($ instanceof Blob?$:await $.arrayBuffer());else if(T7($))for await(let J of $)X.push(...await Z7(J));else{let J=$?.constructor?.name;throw Error(`Unexpected data type: ${typeof $}${J?`; constructor: ${J}`:""}${dw($)}`)}return X}function dw($){if(typeof $!=="object"||$===null)return"";return`; props: [${Object.getOwnPropertyNames($).map((J)=>`"${J}"`).join(", ")}]`}var cq=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function",lw=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&cq($),cw=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function";var dq=b(()=>{c8();c8()});var C7=b(()=>{dq()});var pq=()=>{};class q${constructor($){this._client=$}}function*iw($){if(!$)return;if(iq in $){let{values:Q,nulls:q}=$;yield*Q.entries();for(let Y of q)yield[Y,null];return}let X=!1,J;if($ instanceof Headers)J=$.entries();else if(w7($))J=$;else X=!0,J=Object.entries($??{});for(let Q of J){let q=Q[0];if(typeof q!=="string")throw TypeError("expected header name to be a string");let Y=w7(Q[1])?Q[1]:[Q[1]],z=!1;for(let G of Y){if(G===void 0)continue;if(X&&!z)z=!0,yield[q,null];yield[q,G]}}}var iq,h=($)=>{let X=new Headers,J=new Set;for(let Q of $){let q=new Set;for(let[Y,z]of iw(Q)){let G=Y.toLowerCase();if(!q.has(G))X.delete(Y),q.add(G);if(z===null)X.delete(Y),J.add(G);else X.append(Y,z),J.delete(G)}}return{[iq]:!0,values:X,nulls:J}};var b$=b(()=>{e0();iq=Symbol.for("brand.privateNullableHeaders")});function o5($){return typeof $==="object"&&$!==null&&G2 in $}function P7($,X){let J=new Set;if($){for(let Q of $)if(o5(Q))J.add(Q[G2])}if(X)for(let Q of X){if(o5(Q))J.add(Q[G2]);if(Array.isArray(Q.content)){for(let q of Q.content)if(o5(q))J.add(q[G2])}}return Array.from(J)}function t5($,X){let J=P7($,X);if(J.length===0)return{};return{"x-stainless-helper":J.join(", ")}}function nq($){if(o5($))return{"x-stainless-helper":$[G2]};return{}}var G2;var W2=b(()=>{G2=Symbol("anthropic.sdk.stainlessHelper")});function aq($){return $.replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/g,encodeURIComponent)}var rq,nw=($=aq)=>function(J,...Q){if(J.length===1)return J[0];let q=!1,Y=[],z=J.reduce((U,V,B)=>{if(/[?#]/.test(V))q=!0;let N=Q[B],R=(q?encodeURIComponent:$)(""+N);if(B!==Q.length&&(N==null||typeof N==="object"&&N.toString===Object.getPrototypeOf(Object.getPrototypeOf(N.hasOwnProperty??rq)??rq)?.toString))R=N+"",Y.push({start:U.length+V.length,length:R.length,error:`Value of type ${Object.prototype.toString.call(N).slice(8,-1)} is not a valid path parameter`});return U+V+(B===Q.length?"":R)},""),G=z.split(/[?#]/,1)[0],W=/(?<=^|\/)(?:\.|%2e){1,2}(?=\/|$)/gi,H;while((H=W.exec(G))!==null)Y.push({start:H.index,length:H[0].length,error:`Value "${H[0]}" can't be safely passed as a path parameter`});if(Y.sort((U,V)=>U.start-V.start),Y.length>0){let U=0,V=Y.reduce((B,N)=>{let R=" ".repeat(N.start-U),M="^".repeat(N.length);return U=N.start+N.length,B+R+M},"");throw new j(`Path parameters result in path with invalid segments:
|
|
175
|
+
${Y.map((B)=>B.error).join(`
|
|
176
176
|
`)}
|
|
177
|
-
${
|
|
178
|
-
${H}`)}return Q},n;var Y$=_(()=>{B0();wJ=Object.freeze(Object.create(null)),n=pB(RJ)});var q8;var N4=_(()=>{x0();I0();J8();J6();Y$();q8=class q8 extends r{list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/files",_0,{query:z,...Z,headers:j([{"anthropic-beta":[...X??[],"files-api-2025-04-14"].toString()},Z?.headers])})}delete($,Z={},X){let{betas:z}=Z??{};return this._client.delete(n`/v1/files/${$}`,{...X,headers:j([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString()},X?.headers])})}download($,Z={},X){let{betas:z}=Z??{};return this._client.get(n`/v1/files/${$}/content`,{...X,headers:j([{"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(n`/v1/files/${$}`,{...X,headers:j([{"anthropic-beta":[...z??[],"files-api-2025-04-14"].toString()},X?.headers])})}upload($,Z){let{betas:X,...z}=$;return this._client.post("/v1/files",z6({body:z,...Z,headers:j([{"anthropic-beta":[...X??[],"files-api-2025-04-14"].toString()},MJ(z.file),Z?.headers])},this._client))}}});var Q8;var L4=_(()=>{x0();I0();Y$();Q8=class Q8 extends r{retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(n`/v1/models/${$}?beta=true`,{...X,headers:j([{...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",_0,{query:z,...Z,headers:j([{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0},Z?.headers])})}}});var q6=_(()=>{B0()});var m2;var I4=_(()=>{m2={"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 FJ($){return $?.output_format??$?.output_config?.format}function T4($,Z,X){let z=FJ(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 O4($,Z,X)}function O4($,Z,X){let z=null,J=$.content.map((q)=>{if(q.type==="text"){let Q=nB(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 nB($,Z){let X=FJ($);if(X?.type!=="json_schema")return null;try{if("parse"in X)return X.parse(Z);return JSON.parse(Z)}catch(z){throw new F(`Failed to parse structured output: ${z}`)}}var M4=_(()=>{B0()});var sB=($)=>{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},Q6=($)=>{if($.length===0)return $;let Z=$[$.length-1];switch(Z.type){case"separator":return $=$.slice(0,$.length-1),Q6($);break;case"number":let X=Z.value[Z.value.length-1];if(X==="."||X==="-")return $=$.slice(0,$.length-1),Q6($);case"string":let z=$[$.length-2];if(z?.type==="delimiter")return $=$.slice(0,$.length-1),Q6($);else if(z?.type==="brace"&&z.value==="{")return $=$.slice(0,$.length-1),Q6($);break;case"delimiter":return $=$.slice(0,$.length-1),Q6($);break}return $},rB=($)=>{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 $},aB=($)=>{let Z="";return $.map((X)=>{switch(X.type){case"string":Z+='"'+X.value+'"';break;default:Z+=X.value;break}}),Z},d2=($)=>JSON.parse(aB(rB(Q6(sB($)))));var w4=()=>{};var R4=_(()=>{Q4()});function CJ($){return $.type==="tool_use"||$.type==="server_tool_use"||$.type==="mcp_tool_use"}function EJ($){}var w0,G$,Y6,Y8,c2,G8,U8,p2,W8,d0,V8,l2,i2,F$,n2,s2,H8,F4,AJ,r2,A4,P4,_4,PJ,_J="__json_buf",K8;var SJ=_(()=>{v0();w4();q6();R4();M4();K8=class K8{constructor($,Z){w0.add(this),this.messages=[],this.receivedMessages=[],G$.set(this,void 0),Y6.set(this,null),this.controller=new AbortController,Y8.set(this,void 0),c2.set(this,()=>{}),G8.set(this,()=>{}),U8.set(this,void 0),p2.set(this,()=>{}),W8.set(this,()=>{}),d0.set(this,{}),V8.set(this,!1),l2.set(this,!1),i2.set(this,!1),F$.set(this,!1),n2.set(this,void 0),s2.set(this,void 0),H8.set(this,void 0),r2.set(this,(X)=>{if(O(this,l2,!0,"f"),u0(X))X=new W0;if(X instanceof W0)return O(this,i2,!0,"f"),this._emit("abort",X);if(X instanceof F)return this._emit("error",X);if(X instanceof Error){let z=new F(X.message);return z.cause=X,this._emit("error",z)}return this._emit("error",new F(String(X)))}),O(this,Y8,new Promise((X,z)=>{O(this,c2,X,"f"),O(this,G8,z,"f")}),"f"),O(this,U8,new Promise((X,z)=>{O(this,p2,X,"f"),O(this,W8,z,"f")}),"f"),K(this,Y8,"f").catch(()=>{}),K(this,U8,"f").catch(()=>{}),O(this,Y6,$,"f"),O(this,H8,Z?.logger??console,"f")}get response(){return K(this,n2,"f")}get request_id(){return K(this,s2,"f")}async withResponse(){O(this,F$,!0,"f");let $=await K(this,Y8,"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 K8(null);return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X,{logger:z}={}){let J=new K8(Z,{logger:z});for(let q of Z.messages)J._addMessageParam(q);return O(J,Y6,{...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,r2,"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,w0,"m",A4).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,w0,"m",P4).call(this,Y);if(Q.controller.signal?.aborted)throw new W0;K(this,w0,"m",_4).call(this)}finally{if(z&&J)z.removeEventListener("abort",J)}}_connected($){if(this.ended)return;O(this,n2,$,"f"),O(this,s2,$?.headers.get("request-id"),"f"),K(this,c2,"f").call(this,$),this._emit("connect")}get ended(){return K(this,V8,"f")}get errored(){return K(this,l2,"f")}get aborted(){return K(this,i2,"f")}abort(){this.controller.abort()}on($,Z){return(K(this,d0,"f")[$]||(K(this,d0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=K(this,d0,"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,d0,"f")[$]||(K(this,d0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(O(this,F$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){O(this,F$,!0,"f"),await K(this,U8,"f")}get currentMessage(){return K(this,G$,"f")}async finalMessage(){return await this.done(),K(this,w0,"m",F4).call(this)}async finalText(){return await this.done(),K(this,w0,"m",AJ).call(this)}_emit($,...Z){if(K(this,V8,"f"))return;if($==="end")O(this,V8,!0,"f"),K(this,p2,"f").call(this);let X=K(this,d0,"f")[$];if(X)K(this,d0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!K(this,F$,"f")&&!X?.length)Promise.reject(z);K(this,G8,"f").call(this,z),K(this,W8,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!K(this,F$,"f")&&!X?.length)Promise.reject(z);K(this,G8,"f").call(this,z),K(this,W8,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,w0,"m",F4).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,w0,"m",A4).call(this),this._connected(null);let J=L0.fromReadableStream($,this.controller);for await(let q of J)K(this,w0,"m",P4).call(this,q);if(J.controller.signal?.aborted)throw new W0;K(this,w0,"m",_4).call(this)}finally{if(X&&z)X.removeEventListener("abort",z)}}[(G$=new WeakMap,Y6=new WeakMap,Y8=new WeakMap,c2=new WeakMap,G8=new WeakMap,U8=new WeakMap,p2=new WeakMap,W8=new WeakMap,d0=new WeakMap,V8=new WeakMap,l2=new WeakMap,i2=new WeakMap,F$=new WeakMap,n2=new WeakMap,s2=new WeakMap,H8=new WeakMap,r2=new WeakMap,w0=new WeakSet,F4=function(){if(this.receivedMessages.length===0)throw new F("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},AJ=function(){if(this.receivedMessages.length===0)throw new F("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 F("stream ended without producing a content block with type=text");return Z.join(" ")},A4=function(){if(this.ended)return;O(this,G$,void 0,"f")},P4=function(Z){if(this.ended)return;let X=K(this,w0,"m",PJ).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(CJ(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:EJ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(T4(X,K(this,Y6,"f"),{logger:K(this,H8,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{O(this,G$,X,"f");break}case"content_block_start":case"message_delta":break}},_4=function(){if(this.ended)throw new F("stream has ended, this shouldn't happen");let Z=K(this,G$,"f");if(!Z)throw new F("request ended without sending any chunks");return O(this,G$,void 0,"f"),T4(Z,K(this,Y6,"f"),{logger:K(this,H8,"f")})},PJ=function(Z){let X=K(this,G$,"f");if(Z.type==="message_start"){if(X)throw new F(`Unexpected event order, got ${Z.type} before receiving "message_stop"`);return Z.message}if(!X)throw new F(`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&&CJ(z)){let J=z[_J]||"";J+=Z.delta.partial_json;let q={...z};if(Object.defineProperty(q,_J,{value:J,enumerable:!1,writable:!0}),J)try{q.input=d2(J)}catch(Q){let Y=new F(`Unable to parse tool parameter JSON from model. Please retry your request or adjust your prompt. Error: ${Q}. JSON: ${J}`);K(this,r2,"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:EJ(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 L0(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var G6;var a2=_(()=>{G6=class G6 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 jJ=1e5,bJ=`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:
|
|
177
|
+
${z}
|
|
178
|
+
${V}`)}return z},J$;var b0=b(()=>{T$();rq=Object.freeze(Object.create(null)),J$=nw(aq)});var H2;var b7=b(()=>{e$();b$();W2();c8();b0();H2=class H2 extends q${list($={},X){let{betas:J,...Q}=$??{};return this._client.getAPIList("/v1/files",m$,{query:Q,...X,headers:h([{"anthropic-beta":[...J??[],"files-api-2025-04-14"].toString()},X?.headers])})}delete($,X={},J){let{betas:Q}=X??{};return this._client.delete(J$`/v1/files/${$}`,{...J,headers:h([{"anthropic-beta":[...Q??[],"files-api-2025-04-14"].toString()},J?.headers])})}download($,X={},J){let{betas:Q}=X??{};return this._client.get(J$`/v1/files/${$}/content`,{...J,headers:h([{"anthropic-beta":[...Q??[],"files-api-2025-04-14"].toString(),Accept:"application/binary"},J?.headers]),__binaryResponse:!0})}retrieveMetadata($,X={},J){let{betas:Q}=X??{};return this._client.get(J$`/v1/files/${$}`,{...J,headers:h([{"anthropic-beta":[...Q??[],"files-api-2025-04-14"].toString()},J?.headers])})}upload($,X){let{betas:J,...Q}=$;return this._client.post("/v1/files",l8({body:Q,...X,headers:h([{"anthropic-beta":[...J??[],"files-api-2025-04-14"].toString()},nq(Q.file),X?.headers])},this._client))}}});var U2;var f7=b(()=>{e$();b$();b0();U2=class U2 extends q${retrieve($,X={},J){let{betas:Q}=X??{};return this._client.get(J$`/v1/models/${$}?beta=true`,{...J,headers:h([{...Q?.toString()!=null?{"anthropic-beta":Q?.toString()}:void 0},J?.headers])})}list($={},X){let{betas:J,...Q}=$??{};return this._client.getAPIList("/v1/models?beta=true",m$,{query:Q,...X,headers:h([{...J?.toString()!=null?{"anthropic-beta":J?.toString()}:void 0},X?.headers])})}}});var d8=b(()=>{T$()});var e5;var k7=b(()=>{e5={"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 sq($){return $?.output_format??$?.output_config?.format}function x7($,X,J){let Q=sq(X);if(!X||!("parse"in(Q??{})))return{...$,content:$.content.map((q)=>{if(q.type==="text"){let Y=Object.defineProperty({...q},"parsed_output",{value:null,enumerable:!1});return Object.defineProperty(Y,"parsed",{get(){return J.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),null},enumerable:!1})}return q}),parsed_output:null};return y7($,X,J)}function y7($,X,J){let Q=null,q=$.content.map((Y)=>{if(Y.type==="text"){let z=sw(X,Y.text);if(Q===null)Q=z;let G=Object.defineProperty({...Y},"parsed_output",{value:z,enumerable:!1});return Object.defineProperty(G,"parsed",{get(){return J.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),z},enumerable:!1})}return Y});return{...$,content:q,parsed_output:Q}}function sw($,X){let J=sq($);if(J?.type!=="json_schema")return null;try{if("parse"in J)return J.parse(X);return JSON.parse(X)}catch(Q){throw new j(`Failed to parse structured output: ${Q}`)}}var g7=b(()=>{T$()});var ow=($)=>{let X=0,J=[];while(X<$.length){let Q=$[X];if(Q==="\\"){X++;continue}if(Q==="{"){J.push({type:"brace",value:"{"}),X++;continue}if(Q==="}"){J.push({type:"brace",value:"}"}),X++;continue}if(Q==="["){J.push({type:"paren",value:"["}),X++;continue}if(Q==="]"){J.push({type:"paren",value:"]"}),X++;continue}if(Q===":"){J.push({type:"separator",value:":"}),X++;continue}if(Q===","){J.push({type:"delimiter",value:","}),X++;continue}if(Q==='"'){let G="",W=!1;Q=$[++X];while(Q!=='"'){if(X===$.length){W=!0;break}if(Q==="\\"){if(X++,X===$.length){W=!0;break}G+=Q+$[X],Q=$[++X]}else G+=Q,Q=$[++X]}if(Q=$[++X],!W)J.push({type:"string",value:G});continue}if(Q&&/\s/.test(Q)){X++;continue}let Y=/[0-9]/;if(Q&&Y.test(Q)||Q==="-"||Q==="."){let G="";if(Q==="-")G+=Q,Q=$[++X];while(Q&&Y.test(Q)||Q===".")G+=Q,Q=$[++X];J.push({type:"number",value:G});continue}let z=/[a-z]/i;if(Q&&z.test(Q)){let G="";while(Q&&z.test(Q)){if(X===$.length)break;G+=Q,Q=$[++X]}if(G=="true"||G=="false"||G==="null")J.push({type:"name",value:G});else{X++;continue}continue}X++}return J},p8=($)=>{if($.length===0)return $;let X=$[$.length-1];switch(X.type){case"separator":return $=$.slice(0,$.length-1),p8($);break;case"number":let J=X.value[X.value.length-1];if(J==="."||J==="-")return $=$.slice(0,$.length-1),p8($);case"string":let Q=$[$.length-2];if(Q?.type==="delimiter")return $=$.slice(0,$.length-1),p8($);else if(Q?.type==="brace"&&Q.value==="{")return $=$.slice(0,$.length-1),p8($);break;case"delimiter":return $=$.slice(0,$.length-1),p8($);break}return $},tw=($)=>{let X=[];if($.map((J)=>{if(J.type==="brace")if(J.value==="{")X.push("}");else X.splice(X.lastIndexOf("}"),1);if(J.type==="paren")if(J.value==="[")X.push("]");else X.splice(X.lastIndexOf("]"),1)}),X.length>0)X.reverse().map((J)=>{if(J==="}")$.push({type:"brace",value:"}"});else if(J==="]")$.push({type:"paren",value:"]"})});return $},ew=($)=>{let X="";return $.map((J)=>{switch(J.type){case"string":X+='"'+J.value+'"';break;default:X+=J.value;break}}),X},$X=($)=>JSON.parse(ew(tw(p8(ow($)))));var v7=()=>{};var h7=b(()=>{_7()});function $Y($){return $.type==="tool_use"||$.type==="server_tool_use"||$.type==="mcp_tool_use"}function XY($){}var y$,f0,i8,V2,XX,B2,K2,JX,M2,V0,N2,QX,qX,X8,YX,zX,w2,u7,oq,GX,m7,l7,c7,tq,eq="__json_buf",D2;var JY=b(()=>{W0();v7();d8();h7();g7();D2=class D2{constructor($,X){y$.add(this),this.messages=[],this.receivedMessages=[],f0.set(this,void 0),i8.set(this,null),this.controller=new AbortController,V2.set(this,void 0),XX.set(this,()=>{}),B2.set(this,()=>{}),K2.set(this,void 0),JX.set(this,()=>{}),M2.set(this,()=>{}),V0.set(this,{}),N2.set(this,!1),QX.set(this,!1),qX.set(this,!1),X8.set(this,!1),YX.set(this,void 0),zX.set(this,void 0),w2.set(this,void 0),GX.set(this,(J)=>{if(I(this,QX,!0,"f"),H0(J))J=new A$;if(J instanceof A$)return I(this,qX,!0,"f"),this._emit("abort",J);if(J instanceof j)return this._emit("error",J);if(J instanceof Error){let Q=new j(J.message);return Q.cause=J,this._emit("error",Q)}return this._emit("error",new j(String(J)))}),I(this,V2,new Promise((J,Q)=>{I(this,XX,J,"f"),I(this,B2,Q,"f")}),"f"),I(this,K2,new Promise((J,Q)=>{I(this,JX,J,"f"),I(this,M2,Q,"f")}),"f"),K(this,V2,"f").catch(()=>{}),K(this,K2,"f").catch(()=>{}),I(this,i8,$,"f"),I(this,w2,X?.logger??console,"f")}get response(){return K(this,YX,"f")}get request_id(){return K(this,zX,"f")}async withResponse(){I(this,X8,!0,"f");let $=await K(this,V2,"f");if(!$)throw Error("Could not resolve a `Response` object");return{data:this,response:$,request_id:$.headers.get("request-id")}}static fromReadableStream($){let X=new D2(null);return X._run(()=>X._fromReadableStream($)),X}static createMessage($,X,J,{logger:Q}={}){let q=new D2(X,{logger:Q});for(let Y of X.messages)q._addMessageParam(Y);return I(q,i8,{...X,stream:!0},"f"),q._run(()=>q._createMessage($,{...X,stream:!0},{...J,headers:{...J?.headers,"X-Stainless-Helper-Method":"stream"}})),q}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},K(this,GX,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,X=!0){if(this.receivedMessages.push($),X)this._emit("message",$)}async _createMessage($,X,J){let Q=J?.signal,q;if(Q){if(Q.aborted)this.controller.abort();q=this.controller.abort.bind(this.controller),Q.addEventListener("abort",q)}try{K(this,y$,"m",m7).call(this);let{response:Y,data:z}=await $.create({...X,stream:!0},{...J,signal:this.controller.signal}).withResponse();this._connected(Y);for await(let G of z)K(this,y$,"m",l7).call(this,G);if(z.controller.signal?.aborted)throw new A$;K(this,y$,"m",c7).call(this)}finally{if(Q&&q)Q.removeEventListener("abort",q)}}_connected($){if(this.ended)return;I(this,YX,$,"f"),I(this,zX,$?.headers.get("request-id"),"f"),K(this,XX,"f").call(this,$),this._emit("connect")}get ended(){return K(this,N2,"f")}get errored(){return K(this,QX,"f")}get aborted(){return K(this,qX,"f")}abort(){this.controller.abort()}on($,X){return(K(this,V0,"f")[$]||(K(this,V0,"f")[$]=[])).push({listener:X}),this}off($,X){let J=K(this,V0,"f")[$];if(!J)return this;let Q=J.findIndex((q)=>q.listener===X);if(Q>=0)J.splice(Q,1);return this}once($,X){return(K(this,V0,"f")[$]||(K(this,V0,"f")[$]=[])).push({listener:X,once:!0}),this}emitted($){return new Promise((X,J)=>{if(I(this,X8,!0,"f"),$!=="error")this.once("error",J);this.once($,X)})}async done(){I(this,X8,!0,"f"),await K(this,K2,"f")}get currentMessage(){return K(this,f0,"f")}async finalMessage(){return await this.done(),K(this,y$,"m",u7).call(this)}async finalText(){return await this.done(),K(this,y$,"m",oq).call(this)}_emit($,...X){if(K(this,N2,"f"))return;if($==="end")I(this,N2,!0,"f"),K(this,JX,"f").call(this);let J=K(this,V0,"f")[$];if(J)K(this,V0,"f")[$]=J.filter((Q)=>!Q.once),J.forEach(({listener:Q})=>Q(...X));if($==="abort"){let Q=X[0];if(!K(this,X8,"f")&&!J?.length)Promise.reject(Q);K(this,B2,"f").call(this,Q),K(this,M2,"f").call(this,Q),this._emit("end");return}if($==="error"){let Q=X[0];if(!K(this,X8,"f")&&!J?.length)Promise.reject(Q);K(this,B2,"f").call(this,Q),K(this,M2,"f").call(this,Q),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,y$,"m",u7).call(this))}async _fromReadableStream($,X){let J=X?.signal,Q;if(J){if(J.aborted)this.controller.abort();Q=this.controller.abort.bind(this.controller),J.addEventListener("abort",Q)}try{K(this,y$,"m",m7).call(this),this._connected(null);let q=P$.fromReadableStream($,this.controller);for await(let Y of q)K(this,y$,"m",l7).call(this,Y);if(q.controller.signal?.aborted)throw new A$;K(this,y$,"m",c7).call(this)}finally{if(J&&Q)J.removeEventListener("abort",Q)}}[(f0=new WeakMap,i8=new WeakMap,V2=new WeakMap,XX=new WeakMap,B2=new WeakMap,K2=new WeakMap,JX=new WeakMap,M2=new WeakMap,V0=new WeakMap,N2=new WeakMap,QX=new WeakMap,qX=new WeakMap,X8=new WeakMap,YX=new WeakMap,zX=new WeakMap,w2=new WeakMap,GX=new WeakMap,y$=new WeakSet,u7=function(){if(this.receivedMessages.length===0)throw new j("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},oq=function(){if(this.receivedMessages.length===0)throw new j("stream ended without producing a Message with role=assistant");let X=this.receivedMessages.at(-1).content.filter((J)=>J.type==="text").map((J)=>J.text);if(X.length===0)throw new j("stream ended without producing a content block with type=text");return X.join(" ")},m7=function(){if(this.ended)return;I(this,f0,void 0,"f")},l7=function(X){if(this.ended)return;let J=K(this,y$,"m",tq).call(this,X);switch(this._emit("streamEvent",X,J),X.type){case"content_block_delta":{let Q=J.content.at(-1);switch(X.delta.type){case"text_delta":{if(Q.type==="text")this._emit("text",X.delta.text,Q.text||"");break}case"citations_delta":{if(Q.type==="text")this._emit("citation",X.delta.citation,Q.citations??[]);break}case"input_json_delta":{if($Y(Q)&&Q.input)this._emit("inputJson",X.delta.partial_json,Q.input);break}case"thinking_delta":{if(Q.type==="thinking")this._emit("thinking",X.delta.thinking,Q.thinking);break}case"signature_delta":{if(Q.type==="thinking")this._emit("signature",Q.signature);break}case"compaction_delta":{if(Q.type==="compaction"&&Q.content)this._emit("compaction",Q.content);break}default:XY(X.delta)}break}case"message_stop":{this._addMessageParam(J),this._addMessage(x7(J,K(this,i8,"f"),{logger:K(this,w2,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",J.content.at(-1));break}case"message_start":{I(this,f0,J,"f");break}case"content_block_start":case"message_delta":break}},c7=function(){if(this.ended)throw new j("stream has ended, this shouldn't happen");let X=K(this,f0,"f");if(!X)throw new j("request ended without sending any chunks");return I(this,f0,void 0,"f"),x7(X,K(this,i8,"f"),{logger:K(this,w2,"f")})},tq=function(X){let J=K(this,f0,"f");if(X.type==="message_start"){if(J)throw new j(`Unexpected event order, got ${X.type} before receiving "message_stop"`);return X.message}if(!J)throw new j(`Unexpected event order, got ${X.type} before "message_start"`);switch(X.type){case"message_stop":return J;case"message_delta":if(J.container=X.delta.container,J.stop_reason=X.delta.stop_reason,J.stop_sequence=X.delta.stop_sequence,J.usage.output_tokens=X.usage.output_tokens,J.context_management=X.context_management,X.usage.input_tokens!=null)J.usage.input_tokens=X.usage.input_tokens;if(X.usage.cache_creation_input_tokens!=null)J.usage.cache_creation_input_tokens=X.usage.cache_creation_input_tokens;if(X.usage.cache_read_input_tokens!=null)J.usage.cache_read_input_tokens=X.usage.cache_read_input_tokens;if(X.usage.server_tool_use!=null)J.usage.server_tool_use=X.usage.server_tool_use;if(X.usage.iterations!=null)J.usage.iterations=X.usage.iterations;return J;case"content_block_start":return J.content.push(X.content_block),J;case"content_block_delta":{let Q=J.content.at(X.index);switch(X.delta.type){case"text_delta":{if(Q?.type==="text")J.content[X.index]={...Q,text:(Q.text||"")+X.delta.text};break}case"citations_delta":{if(Q?.type==="text")J.content[X.index]={...Q,citations:[...Q.citations??[],X.delta.citation]};break}case"input_json_delta":{if(Q&&$Y(Q)){let q=Q[eq]||"";q+=X.delta.partial_json;let Y={...Q};if(Object.defineProperty(Y,eq,{value:q,enumerable:!1,writable:!0}),q)try{Y.input=$X(q)}catch(z){let G=new j(`Unable to parse tool parameter JSON from model. Please retry your request or adjust your prompt. Error: ${z}. JSON: ${q}`);K(this,GX,"f").call(this,G)}J.content[X.index]=Y}break}case"thinking_delta":{if(Q?.type==="thinking")J.content[X.index]={...Q,thinking:Q.thinking+X.delta.thinking};break}case"signature_delta":{if(Q?.type==="thinking")J.content[X.index]={...Q,signature:X.delta.signature};break}case"compaction_delta":{if(Q?.type==="compaction")J.content[X.index]={...Q,content:(Q.content||"")+X.delta.content};break}default:XY(X.delta)}return J}case"content_block_stop":return J}},Symbol.asyncIterator)](){let $=[],X=[],J=!1;return this.on("streamEvent",(Q)=>{let q=X.shift();if(q)q.resolve(Q);else $.push(Q)}),this.on("end",()=>{J=!0;for(let Q of X)Q.resolve(void 0);X.length=0}),this.on("abort",(Q)=>{J=!0;for(let q of X)q.reject(Q);X.length=0}),this.on("error",(Q)=>{J=!0;for(let q of X)q.reject(Q);X.length=0}),{next:async()=>{if(!$.length){if(J)return{value:void 0,done:!0};return new Promise((q,Y)=>X.push({resolve:q,reject:Y})).then((q)=>q?{value:q,done:!1}:{value:void 0,done:!0})}return{value:$.shift(),done:!1}},return:async()=>{return this.abort(),{value:void 0,done:!0}}}}toReadableStream(){return new P$(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var n8;var WX=b(()=>{n8=class n8 extends Error{constructor($){let X=typeof $==="string"?$:$.map((J)=>{if(J.type==="text")return J.text;return`[${J.type}]`}).join(" ");super(X);this.name="ToolError",this.content=$}}});var QY=1e5,qY=`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:
|
|
179
179
|
1. Task Overview
|
|
180
180
|
The user's core request and success criteria
|
|
181
181
|
Any clarifications or constraints they specified
|
|
@@ -197,65 +197,65 @@ User preferences or style requirements
|
|
|
197
197
|
Domain-specific details that aren't obvious
|
|
198
198
|
Any promises made to the user
|
|
199
199
|
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.
|
|
200
|
-
Wrap your summary in <summary></summary> tags.`;function
|
|
201
|
-
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if(J.model in eB&&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=m2[J.model]??void 0;q=this._client.calculateNonstreamingTimeout(J.max_tokens,Y)}let Q=u2(J.tools,J.messages);return this._client.post("/v1/messages?beta=true",{body:J,timeout:q??600000,...Z,headers:j([{...z?.toString()!=null?{"anthropic-beta":z?.toString()}:void 0},Q,Z?.headers]),stream:X.stream??!1})}parse($,Z){return Z={...Z,headers:j([{"anthropic-beta":[...$.betas??[],"structured-outputs-2025-12-15"].toString()},Z?.headers])},this.create($,Z).then((X)=>O4(X,$,{logger:this._client.logger??console}))}stream($,Z){return K8.createMessage(this,$,Z)}countTokens($,Z){let X=fJ($),{betas:z,...J}=X;return this._client.post("/v1/messages/count_tokens?beta=true",{body:J,...Z,headers:j([{"anthropic-beta":[...z??[],"token-counting-2024-11-01"].toString()},Z?.headers])})}toolRunner($,Z){return new L8(this._client,$,Z)}};W$.Batches=I8;W$.BetaToolRunner=L8;W$.ToolError=G6});var T8;var x4=_(()=>{x0();I0();J6();Y$();T8=class T8 extends r{create($,Z={},X){let{betas:z,...J}=Z??{};return this._client.post(n`/v1/skills/${$}/versions?beta=true`,z6({body:J,...X,headers:j([{"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(n`/v1/skills/${z}/versions/${$}?beta=true`,{...X,headers:j([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])})}list($,Z={},X){let{betas:z,...J}=Z??{};return this._client.getAPIList(n`/v1/skills/${$}/versions?beta=true`,$8,{query:J,...X,headers:j([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}delete($,Z,X){let{skill_id:z,betas:J}=Z;return this._client.delete(n`/v1/skills/${z}/versions/${$}?beta=true`,{...X,headers:j([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])})}}});var V6;var k4=_(()=>{x4();x4();x0();I0();J6();Y$();V6=class V6 extends r{constructor(){super(...arguments);this.versions=new T8(this._client)}create($={},Z){let{betas:X,...z}=$??{};return this._client.post("/v1/skills?beta=true",z6({body:z,...Z,headers:j([{"anthropic-beta":[...X??[],"skills-2025-10-02"].toString()},Z?.headers])},this._client,!1))}retrieve($,Z={},X){let{betas:z}=Z??{};return this._client.get(n`/v1/skills/${$}?beta=true`,{...X,headers:j([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}list($={},Z){let{betas:X,...z}=$??{};return this._client.getAPIList("/v1/skills?beta=true",$8,{query:z,...Z,headers:j([{"anthropic-beta":[...X??[],"skills-2025-10-02"].toString()},Z?.headers])})}delete($,Z={},X){let{betas:z}=Z??{};return this._client.delete(n`/v1/skills/${$}?beta=true`,{...X,headers:j([{"anthropic-beta":[...z??[],"skills-2025-10-02"].toString()},X?.headers])})}};V6.Versions=T8});var k0;var y4=_(()=>{N4();N4();L4();L4();b4();b4();k4();k4();k0=class k0 extends r{constructor(){super(...arguments);this.models=new Q8(this._client),this.messages=new W$(this._client),this.files=new q8(this._client),this.skills=new V6(this._client)}};k0.Models=Q8;k0.Messages=W$;k0.Files=q8;k0.Skills=V6});var H6;var f4=_(()=>{I0();H6=class H6 extends r{create($,Z){let{betas:X,...z}=$;return this._client.post("/v1/complete",{body:z,timeout:this._client._options.timeout??600000,...Z,headers:j([{...X?.toString()!=null?{"anthropic-beta":X?.toString()}:void 0},Z?.headers]),stream:$.stream??!1})}}});function gJ($){return $?.output_config?.format}function g4($,Z,X){let z=gJ(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 h4($,Z,X)}function h4($,Z,X){let z=null,J=$.content.map((q)=>{if(q.type==="text"){let Q=zD(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 zD($,Z){let X=gJ($);if(X?.type!=="json_schema")return null;try{if("parse"in X)return X.parse(Z);return JSON.parse(Z)}catch(z){throw new F(`Failed to parse structured output: ${z}`)}}var v4=_(()=>{B0()});function mJ($){return $.type==="tool_use"||$.type==="server_tool_use"}function dJ($){}var R0,V$,K6,O8,o2,M8,w8,t2,R8,p0,F8,e2,$Z,P$,ZZ,XZ,A8,u4,hJ,m4,d4,c4,p4,vJ,uJ="__json_buf",P8;var cJ=_(()=>{v0();q6();R4();w4();v4();P8=class P8{constructor($,Z){R0.add(this),this.messages=[],this.receivedMessages=[],V$.set(this,void 0),K6.set(this,null),this.controller=new AbortController,O8.set(this,void 0),o2.set(this,()=>{}),M8.set(this,()=>{}),w8.set(this,void 0),t2.set(this,()=>{}),R8.set(this,()=>{}),p0.set(this,{}),F8.set(this,!1),e2.set(this,!1),$Z.set(this,!1),P$.set(this,!1),ZZ.set(this,void 0),XZ.set(this,void 0),A8.set(this,void 0),m4.set(this,(X)=>{if(O(this,e2,!0,"f"),u0(X))X=new W0;if(X instanceof W0)return O(this,$Z,!0,"f"),this._emit("abort",X);if(X instanceof F)return this._emit("error",X);if(X instanceof Error){let z=new F(X.message);return z.cause=X,this._emit("error",z)}return this._emit("error",new F(String(X)))}),O(this,O8,new Promise((X,z)=>{O(this,o2,X,"f"),O(this,M8,z,"f")}),"f"),O(this,w8,new Promise((X,z)=>{O(this,t2,X,"f"),O(this,R8,z,"f")}),"f"),K(this,O8,"f").catch(()=>{}),K(this,w8,"f").catch(()=>{}),O(this,K6,$,"f"),O(this,A8,Z?.logger??console,"f")}get response(){return K(this,ZZ,"f")}get request_id(){return K(this,XZ,"f")}async withResponse(){O(this,P$,!0,"f");let $=await K(this,O8,"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 P8(null);return Z._run(()=>Z._fromReadableStream($)),Z}static createMessage($,Z,X,{logger:z}={}){let J=new P8(Z,{logger:z});for(let q of Z.messages)J._addMessageParam(q);return O(J,K6,{...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,m4,"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,R0,"m",d4).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,R0,"m",c4).call(this,Y);if(Q.controller.signal?.aborted)throw new W0;K(this,R0,"m",p4).call(this)}finally{if(z&&J)z.removeEventListener("abort",J)}}_connected($){if(this.ended)return;O(this,ZZ,$,"f"),O(this,XZ,$?.headers.get("request-id"),"f"),K(this,o2,"f").call(this,$),this._emit("connect")}get ended(){return K(this,F8,"f")}get errored(){return K(this,e2,"f")}get aborted(){return K(this,$Z,"f")}abort(){this.controller.abort()}on($,Z){return(K(this,p0,"f")[$]||(K(this,p0,"f")[$]=[])).push({listener:Z}),this}off($,Z){let X=K(this,p0,"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,p0,"f")[$]||(K(this,p0,"f")[$]=[])).push({listener:Z,once:!0}),this}emitted($){return new Promise((Z,X)=>{if(O(this,P$,!0,"f"),$!=="error")this.once("error",X);this.once($,Z)})}async done(){O(this,P$,!0,"f"),await K(this,w8,"f")}get currentMessage(){return K(this,V$,"f")}async finalMessage(){return await this.done(),K(this,R0,"m",u4).call(this)}async finalText(){return await this.done(),K(this,R0,"m",hJ).call(this)}_emit($,...Z){if(K(this,F8,"f"))return;if($==="end")O(this,F8,!0,"f"),K(this,t2,"f").call(this);let X=K(this,p0,"f")[$];if(X)K(this,p0,"f")[$]=X.filter((z)=>!z.once),X.forEach(({listener:z})=>z(...Z));if($==="abort"){let z=Z[0];if(!K(this,P$,"f")&&!X?.length)Promise.reject(z);K(this,M8,"f").call(this,z),K(this,R8,"f").call(this,z),this._emit("end");return}if($==="error"){let z=Z[0];if(!K(this,P$,"f")&&!X?.length)Promise.reject(z);K(this,M8,"f").call(this,z),K(this,R8,"f").call(this,z),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,R0,"m",u4).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,R0,"m",d4).call(this),this._connected(null);let J=L0.fromReadableStream($,this.controller);for await(let q of J)K(this,R0,"m",c4).call(this,q);if(J.controller.signal?.aborted)throw new W0;K(this,R0,"m",p4).call(this)}finally{if(X&&z)X.removeEventListener("abort",z)}}[(V$=new WeakMap,K6=new WeakMap,O8=new WeakMap,o2=new WeakMap,M8=new WeakMap,w8=new WeakMap,t2=new WeakMap,R8=new WeakMap,p0=new WeakMap,F8=new WeakMap,e2=new WeakMap,$Z=new WeakMap,P$=new WeakMap,ZZ=new WeakMap,XZ=new WeakMap,A8=new WeakMap,m4=new WeakMap,R0=new WeakSet,u4=function(){if(this.receivedMessages.length===0)throw new F("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},hJ=function(){if(this.receivedMessages.length===0)throw new F("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 F("stream ended without producing a content block with type=text");return Z.join(" ")},d4=function(){if(this.ended)return;O(this,V$,void 0,"f")},c4=function(Z){if(this.ended)return;let X=K(this,R0,"m",vJ).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(mJ(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:dJ(Z.delta)}break}case"message_stop":{this._addMessageParam(X),this._addMessage(g4(X,K(this,K6,"f"),{logger:K(this,A8,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",X.content.at(-1));break}case"message_start":{O(this,V$,X,"f");break}case"content_block_start":case"message_delta":break}},p4=function(){if(this.ended)throw new F("stream has ended, this shouldn't happen");let Z=K(this,V$,"f");if(!Z)throw new F("request ended without sending any chunks");return O(this,V$,void 0,"f"),g4(Z,K(this,K6,"f"),{logger:K(this,A8,"f")})},vJ=function(Z){let X=K(this,V$,"f");if(Z.type==="message_start"){if(X)throw new F(`Unexpected event order, got ${Z.type} before receiving "message_stop"`);return Z.message}if(!X)throw new F(`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&&mJ(z)){let J=z[uJ]||"";J+=Z.delta.partial_json;let q={...z};if(Object.defineProperty(q,uJ,{value:J,enumerable:!1,writable:!0}),J)q.input=d2(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:dJ(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 L0(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var _8;var l4=_(()=>{x0();I0();S4();q6();Y$();_8=class _8 extends r{create($,Z){return this._client.post("/v1/messages/batches",{body:$,...Z})}retrieve($,Z){return this._client.get(n`/v1/messages/batches/${$}`,Z)}list($={},Z){return this._client.getAPIList("/v1/messages/batches",_0,{query:$,...Z})}delete($,Z){return this._client.delete(n`/v1/messages/batches/${$}`,Z)}cancel($,Z){return this._client.post(n`/v1/messages/batches/${$}/cancel`,Z)}async results($,Z){let X=await this.retrieve($);if(!X.results_url)throw new F(`No batch \`results_url\`; Has it finished processing? ${X.processing_status} - ${X.id}`);return this._client.get(X.results_url,{...Z,headers:j([{Accept:"application/binary"},Z?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((z,J)=>W6.fromResponse(J.response,J.controller))}}});var _$,pJ,qD;var i4=_(()=>{I0();J8();cJ();v4();l4();l4();I4();_$=class _$ extends r{constructor(){super(...arguments);this.batches=new _8(this._client)}create($,Z){if($.model in pJ)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${pJ[$.model]}
|
|
202
|
-
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if($.model in
|
|
200
|
+
Wrap your summary in <summary></summary> tags.`;function zY(){let $,X;return{promise:new Promise((Q,q)=>{$=Q,X=q}),resolve:$,reject:X}}async function $D($,X=$.messages.at(-1)){if(!X||X.role!=="assistant"||!X.content||typeof X.content==="string")return null;let J=X.content.filter((q)=>q.type==="tool_use");if(J.length===0)return null;return{role:"user",content:await Promise.all(J.map(async(q)=>{let Y=$.tools.find((z)=>("name"in z?z.name:z.mcp_server_name)===q.name);if(!Y||!("run"in Y))return{type:"tool_result",tool_use_id:q.id,content:`Error: Tool '${q.name}' not found`,is_error:!0};try{let z=q.input;if("parse"in Y&&Y.parse)z=Y.parse(z);let G=await Y.run(z);return{type:"tool_result",tool_use_id:q.id,content:G}}catch(z){return{type:"tool_result",tool_use_id:q.id,content:z instanceof n8?z.content:`Error: ${z instanceof Error?z.message:String(z)}`,is_error:!0}}}))}}var O2,r8,J8,O$,L2,f$,B0,k0,R2,YY,d7,A2;var p7=b(()=>{W0();WX();T$();b$();W2();A2=class A2{constructor($,X,J){O2.add(this),this.client=$,r8.set(this,!1),J8.set(this,!1),O$.set(this,void 0),L2.set(this,void 0),f$.set(this,void 0),B0.set(this,void 0),k0.set(this,void 0),R2.set(this,0),I(this,O$,{params:{...X,messages:structuredClone(X.messages)}},"f");let q=["BetaToolRunner",...P7(X.tools,X.messages)].join(", ");I(this,L2,{...J,headers:h([{"x-stainless-helper":q},J?.headers])},"f"),I(this,k0,zY(),"f")}async*[(r8=new WeakMap,J8=new WeakMap,O$=new WeakMap,L2=new WeakMap,f$=new WeakMap,B0=new WeakMap,k0=new WeakMap,R2=new WeakMap,O2=new WeakSet,YY=async function(){let X=K(this,O$,"f").params.compactionControl;if(!X||!X.enabled)return!1;let J=0;if(K(this,f$,"f")!==void 0)try{let W=await K(this,f$,"f");J=W.usage.input_tokens+(W.usage.cache_creation_input_tokens??0)+(W.usage.cache_read_input_tokens??0)+W.usage.output_tokens}catch{return!1}let Q=X.contextTokenThreshold??QY;if(J<Q)return!1;let q=X.model??K(this,O$,"f").params.model,Y=X.summaryPrompt??qY,z=K(this,O$,"f").params.messages;if(z[z.length-1].role==="assistant"){let W=z[z.length-1];if(Array.isArray(W.content)){let H=W.content.filter((U)=>U.type!=="tool_use");if(H.length===0)z.pop();else W.content=H}}let G=await this.client.beta.messages.create({model:q,messages:[...z,{role:"user",content:[{type:"text",text:Y}]}],max_tokens:K(this,O$,"f").params.max_tokens},{headers:{"x-stainless-helper":"compaction"}});if(G.content[0]?.type!=="text")throw new j("Expected text response for compaction");return K(this,O$,"f").params.messages=[{role:"user",content:G.content}],!0},Symbol.asyncIterator)](){var $;if(K(this,r8,"f"))throw new j("Cannot iterate over a consumed stream");I(this,r8,!0,"f"),I(this,J8,!0,"f"),I(this,B0,void 0,"f");try{while(!0){let X;try{if(K(this,O$,"f").params.max_iterations&&K(this,R2,"f")>=K(this,O$,"f").params.max_iterations)break;I(this,J8,!1,"f"),I(this,B0,void 0,"f"),I(this,R2,($=K(this,R2,"f"),$++,$),"f"),I(this,f$,void 0,"f");let{max_iterations:J,compactionControl:Q,...q}=K(this,O$,"f").params;if(q.stream)X=this.client.beta.messages.stream({...q},K(this,L2,"f")),I(this,f$,X.finalMessage(),"f"),K(this,f$,"f").catch(()=>{}),yield X;else I(this,f$,this.client.beta.messages.create({...q,stream:!1},K(this,L2,"f")),"f"),yield K(this,f$,"f");if(!await K(this,O2,"m",YY).call(this)){if(!K(this,J8,"f")){let{role:G,content:W}=await K(this,f$,"f");K(this,O$,"f").params.messages.push({role:G,content:W})}let z=await K(this,O2,"m",d7).call(this,K(this,O$,"f").params.messages.at(-1));if(z)K(this,O$,"f").params.messages.push(z);else if(!K(this,J8,"f"))break}}finally{if(X)X.abort()}}if(!K(this,f$,"f"))throw new j("ToolRunner concluded without a message from the server");K(this,k0,"f").resolve(await K(this,f$,"f"))}catch(X){throw I(this,r8,!1,"f"),K(this,k0,"f").promise.catch(()=>{}),K(this,k0,"f").reject(X),I(this,k0,zY(),"f"),X}}setMessagesParams($){if(typeof $==="function")K(this,O$,"f").params=$(K(this,O$,"f").params);else K(this,O$,"f").params=$;I(this,J8,!0,"f"),I(this,B0,void 0,"f")}async generateToolResponse(){let $=await K(this,f$,"f")??this.params.messages.at(-1);if(!$)return null;return K(this,O2,"m",d7).call(this,$)}done(){return K(this,k0,"f").promise}async runUntilDone(){if(!K(this,r8,"f"))for await(let $ of this);return this.done()}get params(){return K(this,O$,"f").params}pushMessages(...$){this.setMessagesParams((X)=>({...X,messages:[...X.messages,...$]}))}then($,X){return this.runUntilDone().then($,X)}};d7=async function(X){if(K(this,B0,"f")!==void 0)return K(this,B0,"f");return I(this,B0,$D(K(this,O$,"f").params,X),"f"),K(this,B0,"f")}});var a8;var i7=b(()=>{T$();R7();a8=class a8{constructor($,X){this.iterator=$,this.controller=X}async*decoder(){let $=new C0;for await(let X of this.iterator)for(let J of $.decode(X))yield JSON.parse(J);for(let X of $.flush())yield JSON.parse(X)}[Symbol.asyncIterator](){return this.decoder()}static fromResponse($,X){if(!$.body){if(X.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative")throw new j("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 j("Attempted to iterate over a response with no body")}return new a8(t6($.body),X)}}});var _2;var n7=b(()=>{e$();b$();i7();d8();b0();_2=class _2 extends q${create($,X){let{betas:J,...Q}=$;return this._client.post("/v1/messages/batches?beta=true",{body:Q,...X,headers:h([{"anthropic-beta":[...J??[],"message-batches-2024-09-24"].toString()},X?.headers])})}retrieve($,X={},J){let{betas:Q}=X??{};return this._client.get(J$`/v1/messages/batches/${$}?beta=true`,{...J,headers:h([{"anthropic-beta":[...Q??[],"message-batches-2024-09-24"].toString()},J?.headers])})}list($={},X){let{betas:J,...Q}=$??{};return this._client.getAPIList("/v1/messages/batches?beta=true",m$,{query:Q,...X,headers:h([{"anthropic-beta":[...J??[],"message-batches-2024-09-24"].toString()},X?.headers])})}delete($,X={},J){let{betas:Q}=X??{};return this._client.delete(J$`/v1/messages/batches/${$}?beta=true`,{...J,headers:h([{"anthropic-beta":[...Q??[],"message-batches-2024-09-24"].toString()},J?.headers])})}cancel($,X={},J){let{betas:Q}=X??{};return this._client.post(J$`/v1/messages/batches/${$}/cancel?beta=true`,{...J,headers:h([{"anthropic-beta":[...Q??[],"message-batches-2024-09-24"].toString()},J?.headers])})}async results($,X={},J){let Q=await this.retrieve($);if(!Q.results_url)throw new j(`No batch \`results_url\`; Has it finished processing? ${Q.processing_status} - ${Q.id}`);let{betas:q}=X??{};return this._client.get(Q.results_url,{...J,headers:h([{"anthropic-beta":[...q??[],"message-batches-2024-09-24"].toString(),Accept:"application/binary"},J?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((Y,z)=>a8.fromResponse(z.response,z.controller))}}});function WY($){if(!$.output_format)return $;if($.output_config?.format)throw new j("Both output_format and output_config.format were provided. Please use only output_config.format (output_format is deprecated).");let{output_format:X,...J}=$;return{...J,output_config:{...$.output_config,format:X}}}var GY,JD,x0;var r7=b(()=>{d8();k7();b$();W2();g7();JY();p7();WX();n7();n7();p7();WX();GY={"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"},JD=["claude-opus-4-6"];x0=class x0 extends q${constructor(){super(...arguments);this.batches=new _2(this._client)}create($,X){let J=WY($),{betas:Q,...q}=J;if(q.model in GY)console.warn(`The model '${q.model}' is deprecated and will reach end-of-life on ${GY[q.model]}
|
|
201
|
+
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if(q.model in JD&&q.thinking&&q.thinking.type==="enabled")console.warn(`Using Claude with ${q.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 Y=this._client._options.timeout;if(!q.stream&&Y==null){let G=e5[q.model]??void 0;Y=this._client.calculateNonstreamingTimeout(q.max_tokens,G)}let z=t5(q.tools,q.messages);return this._client.post("/v1/messages?beta=true",{body:q,timeout:Y??600000,...X,headers:h([{...Q?.toString()!=null?{"anthropic-beta":Q?.toString()}:void 0},z,X?.headers]),stream:J.stream??!1})}parse($,X){return X={...X,headers:h([{"anthropic-beta":[...$.betas??[],"structured-outputs-2025-12-15"].toString()},X?.headers])},this.create($,X).then((J)=>y7(J,$,{logger:this._client.logger??console}))}stream($,X){return D2.createMessage(this,$,X)}countTokens($,X){let J=WY($),{betas:Q,...q}=J;return this._client.post("/v1/messages/count_tokens?beta=true",{body:q,...X,headers:h([{"anthropic-beta":[...Q??[],"token-counting-2024-11-01"].toString()},X?.headers])})}toolRunner($,X){return new A2(this._client,$,X)}};x0.Batches=_2;x0.BetaToolRunner=A2;x0.ToolError=n8});var F2;var a7=b(()=>{e$();b$();c8();b0();F2=class F2 extends q${create($,X={},J){let{betas:Q,...q}=X??{};return this._client.post(J$`/v1/skills/${$}/versions?beta=true`,l8({body:q,...J,headers:h([{"anthropic-beta":[...Q??[],"skills-2025-10-02"].toString()},J?.headers])},this._client))}retrieve($,X,J){let{skill_id:Q,betas:q}=X;return this._client.get(J$`/v1/skills/${Q}/versions/${$}?beta=true`,{...J,headers:h([{"anthropic-beta":[...q??[],"skills-2025-10-02"].toString()},J?.headers])})}list($,X={},J){let{betas:Q,...q}=X??{};return this._client.getAPIList(J$`/v1/skills/${$}/versions?beta=true`,q2,{query:q,...J,headers:h([{"anthropic-beta":[...Q??[],"skills-2025-10-02"].toString()},J?.headers])})}delete($,X,J){let{skill_id:Q,betas:q}=X;return this._client.delete(J$`/v1/skills/${Q}/versions/${$}?beta=true`,{...J,headers:h([{"anthropic-beta":[...q??[],"skills-2025-10-02"].toString()},J?.headers])})}}});var s8;var s7=b(()=>{a7();a7();e$();b$();c8();b0();s8=class s8 extends q${constructor(){super(...arguments);this.versions=new F2(this._client)}create($={},X){let{betas:J,...Q}=$??{};return this._client.post("/v1/skills?beta=true",l8({body:Q,...X,headers:h([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])},this._client,!1))}retrieve($,X={},J){let{betas:Q}=X??{};return this._client.get(J$`/v1/skills/${$}?beta=true`,{...J,headers:h([{"anthropic-beta":[...Q??[],"skills-2025-10-02"].toString()},J?.headers])})}list($={},X){let{betas:J,...Q}=$??{};return this._client.getAPIList("/v1/skills?beta=true",q2,{query:Q,...X,headers:h([{"anthropic-beta":[...J??[],"skills-2025-10-02"].toString()},X?.headers])})}delete($,X={},J){let{betas:Q}=X??{};return this._client.delete(J$`/v1/skills/${$}?beta=true`,{...J,headers:h([{"anthropic-beta":[...Q??[],"skills-2025-10-02"].toString()},J?.headers])})}};s8.Versions=F2});var $0;var o7=b(()=>{b7();b7();f7();f7();r7();r7();s7();s7();$0=class $0 extends q${constructor(){super(...arguments);this.models=new U2(this._client),this.messages=new x0(this._client),this.files=new H2(this._client),this.skills=new s8(this._client)}};$0.Models=U2;$0.Messages=x0;$0.Files=H2;$0.Skills=s8});var o8;var t7=b(()=>{b$();o8=class o8 extends q${create($,X){let{betas:J,...Q}=$;return this._client.post("/v1/complete",{body:Q,timeout:this._client._options.timeout??600000,...X,headers:h([{...J?.toString()!=null?{"anthropic-beta":J?.toString()}:void 0},X?.headers]),stream:$.stream??!1})}}});function HY($){return $?.output_config?.format}function e7($,X,J){let Q=HY(X);if(!X||!("parse"in(Q??{})))return{...$,content:$.content.map((q)=>{if(q.type==="text")return Object.defineProperty({...q},"parsed_output",{value:null,enumerable:!1});return q}),parsed_output:null};return $9($,X,J)}function $9($,X,J){let Q=null,q=$.content.map((Y)=>{if(Y.type==="text"){let z=zD(X,Y.text);if(Q===null)Q=z;return Object.defineProperty({...Y},"parsed_output",{value:z,enumerable:!1})}return Y});return{...$,content:q,parsed_output:Q}}function zD($,X){let J=HY($);if(J?.type!=="json_schema")return null;try{if("parse"in J)return J.parse(X);return JSON.parse(X)}catch(Q){throw new j(`Failed to parse structured output: ${Q}`)}}var X9=b(()=>{T$()});function KY($){return $.type==="tool_use"||$.type==="server_tool_use"}function MY($){}var g$,y0,t8,I2,HX,E2,S2,UX,j2,K0,T2,VX,BX,Q8,KX,MX,Z2,J9,UY,Q9,q9,Y9,z9,VY,BY="__json_buf",C2;var NY=b(()=>{W0();d8();h7();v7();X9();C2=class C2{constructor($,X){g$.add(this),this.messages=[],this.receivedMessages=[],y0.set(this,void 0),t8.set(this,null),this.controller=new AbortController,I2.set(this,void 0),HX.set(this,()=>{}),E2.set(this,()=>{}),S2.set(this,void 0),UX.set(this,()=>{}),j2.set(this,()=>{}),K0.set(this,{}),T2.set(this,!1),VX.set(this,!1),BX.set(this,!1),Q8.set(this,!1),KX.set(this,void 0),MX.set(this,void 0),Z2.set(this,void 0),Q9.set(this,(J)=>{if(I(this,VX,!0,"f"),H0(J))J=new A$;if(J instanceof A$)return I(this,BX,!0,"f"),this._emit("abort",J);if(J instanceof j)return this._emit("error",J);if(J instanceof Error){let Q=new j(J.message);return Q.cause=J,this._emit("error",Q)}return this._emit("error",new j(String(J)))}),I(this,I2,new Promise((J,Q)=>{I(this,HX,J,"f"),I(this,E2,Q,"f")}),"f"),I(this,S2,new Promise((J,Q)=>{I(this,UX,J,"f"),I(this,j2,Q,"f")}),"f"),K(this,I2,"f").catch(()=>{}),K(this,S2,"f").catch(()=>{}),I(this,t8,$,"f"),I(this,Z2,X?.logger??console,"f")}get response(){return K(this,KX,"f")}get request_id(){return K(this,MX,"f")}async withResponse(){I(this,Q8,!0,"f");let $=await K(this,I2,"f");if(!$)throw Error("Could not resolve a `Response` object");return{data:this,response:$,request_id:$.headers.get("request-id")}}static fromReadableStream($){let X=new C2(null);return X._run(()=>X._fromReadableStream($)),X}static createMessage($,X,J,{logger:Q}={}){let q=new C2(X,{logger:Q});for(let Y of X.messages)q._addMessageParam(Y);return I(q,t8,{...X,stream:!0},"f"),q._run(()=>q._createMessage($,{...X,stream:!0},{...J,headers:{...J?.headers,"X-Stainless-Helper-Method":"stream"}})),q}_run($){$().then(()=>{this._emitFinal(),this._emit("end")},K(this,Q9,"f"))}_addMessageParam($){this.messages.push($)}_addMessage($,X=!0){if(this.receivedMessages.push($),X)this._emit("message",$)}async _createMessage($,X,J){let Q=J?.signal,q;if(Q){if(Q.aborted)this.controller.abort();q=this.controller.abort.bind(this.controller),Q.addEventListener("abort",q)}try{K(this,g$,"m",q9).call(this);let{response:Y,data:z}=await $.create({...X,stream:!0},{...J,signal:this.controller.signal}).withResponse();this._connected(Y);for await(let G of z)K(this,g$,"m",Y9).call(this,G);if(z.controller.signal?.aborted)throw new A$;K(this,g$,"m",z9).call(this)}finally{if(Q&&q)Q.removeEventListener("abort",q)}}_connected($){if(this.ended)return;I(this,KX,$,"f"),I(this,MX,$?.headers.get("request-id"),"f"),K(this,HX,"f").call(this,$),this._emit("connect")}get ended(){return K(this,T2,"f")}get errored(){return K(this,VX,"f")}get aborted(){return K(this,BX,"f")}abort(){this.controller.abort()}on($,X){return(K(this,K0,"f")[$]||(K(this,K0,"f")[$]=[])).push({listener:X}),this}off($,X){let J=K(this,K0,"f")[$];if(!J)return this;let Q=J.findIndex((q)=>q.listener===X);if(Q>=0)J.splice(Q,1);return this}once($,X){return(K(this,K0,"f")[$]||(K(this,K0,"f")[$]=[])).push({listener:X,once:!0}),this}emitted($){return new Promise((X,J)=>{if(I(this,Q8,!0,"f"),$!=="error")this.once("error",J);this.once($,X)})}async done(){I(this,Q8,!0,"f"),await K(this,S2,"f")}get currentMessage(){return K(this,y0,"f")}async finalMessage(){return await this.done(),K(this,g$,"m",J9).call(this)}async finalText(){return await this.done(),K(this,g$,"m",UY).call(this)}_emit($,...X){if(K(this,T2,"f"))return;if($==="end")I(this,T2,!0,"f"),K(this,UX,"f").call(this);let J=K(this,K0,"f")[$];if(J)K(this,K0,"f")[$]=J.filter((Q)=>!Q.once),J.forEach(({listener:Q})=>Q(...X));if($==="abort"){let Q=X[0];if(!K(this,Q8,"f")&&!J?.length)Promise.reject(Q);K(this,E2,"f").call(this,Q),K(this,j2,"f").call(this,Q),this._emit("end");return}if($==="error"){let Q=X[0];if(!K(this,Q8,"f")&&!J?.length)Promise.reject(Q);K(this,E2,"f").call(this,Q),K(this,j2,"f").call(this,Q),this._emit("end")}}_emitFinal(){if(this.receivedMessages.at(-1))this._emit("finalMessage",K(this,g$,"m",J9).call(this))}async _fromReadableStream($,X){let J=X?.signal,Q;if(J){if(J.aborted)this.controller.abort();Q=this.controller.abort.bind(this.controller),J.addEventListener("abort",Q)}try{K(this,g$,"m",q9).call(this),this._connected(null);let q=P$.fromReadableStream($,this.controller);for await(let Y of q)K(this,g$,"m",Y9).call(this,Y);if(q.controller.signal?.aborted)throw new A$;K(this,g$,"m",z9).call(this)}finally{if(J&&Q)J.removeEventListener("abort",Q)}}[(y0=new WeakMap,t8=new WeakMap,I2=new WeakMap,HX=new WeakMap,E2=new WeakMap,S2=new WeakMap,UX=new WeakMap,j2=new WeakMap,K0=new WeakMap,T2=new WeakMap,VX=new WeakMap,BX=new WeakMap,Q8=new WeakMap,KX=new WeakMap,MX=new WeakMap,Z2=new WeakMap,Q9=new WeakMap,g$=new WeakSet,J9=function(){if(this.receivedMessages.length===0)throw new j("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},UY=function(){if(this.receivedMessages.length===0)throw new j("stream ended without producing a Message with role=assistant");let X=this.receivedMessages.at(-1).content.filter((J)=>J.type==="text").map((J)=>J.text);if(X.length===0)throw new j("stream ended without producing a content block with type=text");return X.join(" ")},q9=function(){if(this.ended)return;I(this,y0,void 0,"f")},Y9=function(X){if(this.ended)return;let J=K(this,g$,"m",VY).call(this,X);switch(this._emit("streamEvent",X,J),X.type){case"content_block_delta":{let Q=J.content.at(-1);switch(X.delta.type){case"text_delta":{if(Q.type==="text")this._emit("text",X.delta.text,Q.text||"");break}case"citations_delta":{if(Q.type==="text")this._emit("citation",X.delta.citation,Q.citations??[]);break}case"input_json_delta":{if(KY(Q)&&Q.input)this._emit("inputJson",X.delta.partial_json,Q.input);break}case"thinking_delta":{if(Q.type==="thinking")this._emit("thinking",X.delta.thinking,Q.thinking);break}case"signature_delta":{if(Q.type==="thinking")this._emit("signature",Q.signature);break}default:MY(X.delta)}break}case"message_stop":{this._addMessageParam(J),this._addMessage(e7(J,K(this,t8,"f"),{logger:K(this,Z2,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",J.content.at(-1));break}case"message_start":{I(this,y0,J,"f");break}case"content_block_start":case"message_delta":break}},z9=function(){if(this.ended)throw new j("stream has ended, this shouldn't happen");let X=K(this,y0,"f");if(!X)throw new j("request ended without sending any chunks");return I(this,y0,void 0,"f"),e7(X,K(this,t8,"f"),{logger:K(this,Z2,"f")})},VY=function(X){let J=K(this,y0,"f");if(X.type==="message_start"){if(J)throw new j(`Unexpected event order, got ${X.type} before receiving "message_stop"`);return X.message}if(!J)throw new j(`Unexpected event order, got ${X.type} before "message_start"`);switch(X.type){case"message_stop":return J;case"message_delta":if(J.stop_reason=X.delta.stop_reason,J.stop_sequence=X.delta.stop_sequence,J.usage.output_tokens=X.usage.output_tokens,X.usage.input_tokens!=null)J.usage.input_tokens=X.usage.input_tokens;if(X.usage.cache_creation_input_tokens!=null)J.usage.cache_creation_input_tokens=X.usage.cache_creation_input_tokens;if(X.usage.cache_read_input_tokens!=null)J.usage.cache_read_input_tokens=X.usage.cache_read_input_tokens;if(X.usage.server_tool_use!=null)J.usage.server_tool_use=X.usage.server_tool_use;return J;case"content_block_start":return J.content.push({...X.content_block}),J;case"content_block_delta":{let Q=J.content.at(X.index);switch(X.delta.type){case"text_delta":{if(Q?.type==="text")J.content[X.index]={...Q,text:(Q.text||"")+X.delta.text};break}case"citations_delta":{if(Q?.type==="text")J.content[X.index]={...Q,citations:[...Q.citations??[],X.delta.citation]};break}case"input_json_delta":{if(Q&&KY(Q)){let q=Q[BY]||"";q+=X.delta.partial_json;let Y={...Q};if(Object.defineProperty(Y,BY,{value:q,enumerable:!1,writable:!0}),q)Y.input=$X(q);J.content[X.index]=Y}break}case"thinking_delta":{if(Q?.type==="thinking")J.content[X.index]={...Q,thinking:Q.thinking+X.delta.thinking};break}case"signature_delta":{if(Q?.type==="thinking")J.content[X.index]={...Q,signature:X.delta.signature};break}default:MY(X.delta)}return J}case"content_block_stop":return J}},Symbol.asyncIterator)](){let $=[],X=[],J=!1;return this.on("streamEvent",(Q)=>{let q=X.shift();if(q)q.resolve(Q);else $.push(Q)}),this.on("end",()=>{J=!0;for(let Q of X)Q.resolve(void 0);X.length=0}),this.on("abort",(Q)=>{J=!0;for(let q of X)q.reject(Q);X.length=0}),this.on("error",(Q)=>{J=!0;for(let q of X)q.reject(Q);X.length=0}),{next:async()=>{if(!$.length){if(J)return{value:void 0,done:!0};return new Promise((q,Y)=>X.push({resolve:q,reject:Y})).then((q)=>q?{value:q,done:!1}:{value:void 0,done:!0})}return{value:$.shift(),done:!1}},return:async()=>{return this.abort(),{value:void 0,done:!0}}}}toReadableStream(){return new P$(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}});var P2;var G9=b(()=>{e$();b$();i7();d8();b0();P2=class P2 extends q${create($,X){return this._client.post("/v1/messages/batches",{body:$,...X})}retrieve($,X){return this._client.get(J$`/v1/messages/batches/${$}`,X)}list($={},X){return this._client.getAPIList("/v1/messages/batches",m$,{query:$,...X})}delete($,X){return this._client.delete(J$`/v1/messages/batches/${$}`,X)}cancel($,X){return this._client.post(J$`/v1/messages/batches/${$}/cancel`,X)}async results($,X){let J=await this.retrieve($);if(!J.results_url)throw new j(`No batch \`results_url\`; Has it finished processing? ${J.processing_status} - ${J.id}`);return this._client.get(J.results_url,{...X,headers:h([{Accept:"application/binary"},X?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((Q,q)=>a8.fromResponse(q.response,q.controller))}}});var q8,wY,WD;var W9=b(()=>{b$();W2();NY();X9();G9();G9();k7();q8=class q8 extends q${constructor(){super(...arguments);this.batches=new P2(this._client)}create($,X){if($.model in wY)console.warn(`The model '${$.model}' is deprecated and will reach end-of-life on ${wY[$.model]}
|
|
202
|
+
Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`);if($.model in WD&&$.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 J=this._client._options.timeout;if(!$.stream&&J==null){let q=e5[$.model]??void 0;J=this._client.calculateNonstreamingTimeout($.max_tokens,q)}let Q=t5($.tools,$.messages);return this._client.post("/v1/messages",{body:$,timeout:J??600000,...X,headers:h([Q,X?.headers]),stream:$.stream??!1})}parse($,X){return this.create($,X).then((J)=>$9(J,$,{logger:this._client.logger??console}))}stream($,X){return C2.createMessage(this,$,X,{logger:this._client.logger??console})}countTokens($,X){return this._client.post("/v1/messages/count_tokens",{body:$,...X})}};wY={"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"},WD=["claude-opus-4-6"];q8.Batches=P2});var e8;var H9=b(()=>{e$();b$();b0();e8=class e8 extends q${retrieve($,X={},J){let{betas:Q}=X??{};return this._client.get(J$`/v1/models/${$}`,{...J,headers:h([{...Q?.toString()!=null?{"anthropic-beta":Q?.toString()}:void 0},J?.headers])})}list($={},X){let{betas:J,...Q}=$??{};return this._client.getAPIList("/v1/models",m$,{query:Q,...X,headers:h([{...J?.toString()!=null?{"anthropic-beta":J?.toString()}:void 0},X?.headers])})}}});var DY=b(()=>{o7();t7();W9();H9();pq()});var b2=($)=>{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 Y${constructor({baseURL:$=b2("ANTHROPIC_BASE_URL"),apiKey:X=b2("ANTHROPIC_API_KEY")??null,authToken:J=b2("ANTHROPIC_AUTH_TOKEN")??null,...Q}={}){U9.add(this),NX.set(this,void 0);let q={apiKey:X,authToken:J,...Q,baseURL:$||"https://api.anthropic.com"};if(!q.dangerouslyAllowBrowser&&Pq())throw new j(`It looks like you're running in a browser-like environment.
|
|
203
203
|
|
|
204
204
|
This is disabled by default, as it risks exposing your secret API credentials to attackers.
|
|
205
205
|
If you understand the risks and have appropriate mitigations in place,
|
|
206
206
|
you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
|
|
207
207
|
|
|
208
208
|
new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
|
|
209
|
-
`);this.baseURL=J.baseURL,this.timeout=J.timeout??r4.DEFAULT_TIMEOUT,this.logger=J.logger??console;let q="warn";this.logLevel=q,this.logLevel=q4(J.logLevel,"ClientOptions.logLevel",this)??q4(C8("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??q,this.fetchOptions=J.fetchOptions,this.maxRetries=J.maxRetries??2,this.fetch=J.fetch??YJ(),O(this,zZ,UJ,"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 j([await this.apiKeyAuth($),await this.bearerAuth($)])}async apiKeyAuth($){if(this.apiKey==null)return;return j([{"X-Api-Key":this.apiKey}])}async bearerAuth($){if(this.authToken==null)return;return j([{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 F(`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 ${J$}`}defaultIdempotencyKey(){return`stainless-node-retry-${t5()}`}makeStatusError($,Z,X,z){return q0.generate($,Z,X,z)}buildURL($,Z,X){let z=!K(this,s4,"m",iJ).call(this)&&X||this.baseURL,J=o9($)?new URL($):new URL(z+(z.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),q=this.defaultQuery();if(!t9(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 F("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 Q$(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(U0(this).debug(`[${G}] sending request`,m0({retryOfRequestLogID:X,method:z.method,url:Q,options:z,headers:q.headers})),z.signal?.aborted)throw new W0;let H=new AbortController,V=await this.fetchWithTimeout(Q,q,Y,H).catch(n6),D=Date.now();if(V instanceof globalThis.Error){let N=`retrying, ${Z} attempts remaining`;if(z.signal?.aborted)throw new W0;let w=u0(V)||/timed? ?out/i.test(String(V)+("cause"in V?String(V.cause):""));if(Z)return U0(this).info(`[${G}] connection ${w?"timed out":"failed"} - ${N}`),U0(this).debug(`[${G}] connection ${w?"timed out":"failed"} (${N})`,m0({retryOfRequestLogID:X,url:Q,durationMs:D-W,message:V.message})),this.retryRequest(z,Z,X??G);if(U0(this).info(`[${G}] connection ${w?"timed out":"failed"} - error; no more retries left`),U0(this).debug(`[${G}] connection ${w?"timed out":"failed"} (error; no more retries left)`,m0({retryOfRequestLogID:X,url:Q,durationMs:D-W,message:V.message})),w)throw new s$;throw new z$({cause:V})}let T=[...V.headers.entries()].filter(([N])=>N==="request-id").map(([N,w])=>", "+N+": "+JSON.stringify(w)).join(""),B=`[${G}${U}${T}] ${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 E=`retrying, ${Z} attempts remaining`;return await GJ(V.body),U0(this).info(`${B} - ${E}`),U0(this).debug(`[${G}] response error (${E})`,m0({retryOfRequestLogID:X,url:V.url,status:V.status,headers:V.headers,durationMs:D-W})),this.retryRequest(z,Z,X??G,V.headers)}let w=N?"error; no more retries left":"error; not retryable";U0(this).info(`${B} - ${w}`);let A=await V.text().catch((E)=>n6(E).message),P=j2(A),C=P?void 0:A;throw U0(this).debug(`[${G}] response error (${w})`,m0({retryOfRequestLogID:X,url:V.url,status:V.status,headers:V.headers,message:C,durationMs:Date.now()-W})),this.makeStatusError(V.status,P,C,V.headers)}return U0(this).info(B),U0(this).debug(`[${G}] response start`,m0({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 e6(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 ZJ(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 F("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)$J("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=j([J,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(z),...$.timeout?{"X-Stainless-Timeout":String(Math.trunc($.timeout/1000))}:{},...QJ(),...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=j([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:b2($)};else return K(this,zZ,"f").call(this,{body:$,headers:X})}}var s4,r4,zZ,iJ,a4="\\n\\nHuman:",o4="\\n\\nAssistant:",H$;var t4=_(()=>{v0();w$();Z4();B0();x0();B4();lJ();g2();f4();n4();y4();i4();Z4();I0();y2();w$();r4=a,zZ=new WeakMap,s4=new WeakSet,iJ=function(){return this.baseURL!=="https://api.anthropic.com"};a.Anthropic=r4;a.HUMAN_PROMPT=a4;a.AI_PROMPT=o4;a.DEFAULT_TIMEOUT=600000;a.AnthropicError=F;a.APIError=q0;a.APIConnectionError=z$;a.APIConnectionTimeoutError=s$;a.APIUserAbortError=W0;a.NotFoundError=t$;a.ConflictError=e$;a.RateLimitError=Z6;a.BadRequestError=r$;a.AuthenticationError=a$;a.InternalServerError=X6;a.PermissionDeniedError=o$;a.UnprocessableEntityError=$6;a.toFile=X8;H$=class H$ extends a{constructor(){super(...arguments);this.completions=new H6(this),this.messages=new _$(this),this.models=new B6(this),this.beta=new k0(this)}};H$.Completions=H6;H$.Messages=_$;H$.Models=B6;H$.Beta=k0});var nJ={};QZ(nJ,{toFile:()=>X8,default:()=>H$,UnprocessableEntityError:()=>$6,RateLimitError:()=>Z6,PermissionDeniedError:()=>o$,PagePromise:()=>e6,NotFoundError:()=>t$,InternalServerError:()=>X6,HUMAN_PROMPT:()=>a4,ConflictError:()=>e$,BaseAnthropic:()=>a,BadRequestError:()=>r$,AuthenticationError:()=>a$,AnthropicError:()=>F,Anthropic:()=>H$,APIUserAbortError:()=>W0,APIPromise:()=>Q$,APIError:()=>q0,APIConnectionTimeoutError:()=>s$,APIConnectionError:()=>z$,AI_PROMPT:()=>o4});var sJ=_(()=>{t4();B4();g2();t4();x0();B0()});var I7=Jq(L7(),1),{program:AD,createCommand:PD,createArgument:_D,createOption:CD,CommanderError:ED,InvalidArgumentError:SD,InvalidOptionArgumentError:jD,Command:T7,Argument:bD,Option:xD,Help:kD}=I7.default;Z0();P0();b0();M2();l();function b5($,Z={}){let X=$??g();if(!X)console.error(`Error: project.faf not found
|
|
209
|
+
`);this.baseURL=q.baseURL,this.timeout=q.timeout??V9.DEFAULT_TIMEOUT,this.logger=q.logger??console;let Y="warn";this.logLevel=Y,this.logLevel=A7(q.logLevel,"ClientOptions.logLevel",this)??A7(b2("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??Y,this.fetchOptions=q.fetchOptions,this.maxRetries=q.maxRetries??2,this.fetch=q.fetch??fq(),I(this,NX,xq,"f"),this._options=q,this.apiKey=typeof X==="string"?X:null,this.authToken=J}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:X}){if($.get("x-api-key")||$.get("authorization"))return;if(this.apiKey&&$.get("x-api-key"))return;if(X.has("x-api-key"))return;if(this.authToken&&$.get("authorization"))return;if(X.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 h([await this.apiKeyAuth($),await this.bearerAuth($)])}async apiKeyAuth($){if(this.apiKey==null)return;return h([{"X-Api-Key":this.apiKey}])}async bearerAuth($){if(this.authToken==null)return;return h([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery($){return Object.entries($).filter(([X,J])=>typeof J<"u").map(([X,J])=>{if(typeof J==="string"||typeof J==="number"||typeof J==="boolean")return`${encodeURIComponent(X)}=${encodeURIComponent(J)}`;if(J===null)return`${encodeURIComponent(X)}=`;throw new j(`Cannot stringify type ${typeof J}; 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 ${Z0}`}defaultIdempotencyKey(){return`stainless-node-retry-${M7()}`}makeStatusError($,X,J,Q){return w$.generate($,X,J,Q)}buildURL($,X,J){let Q=!K(this,U9,"m",OY).call(this)&&J||this.baseURL,q=Fq($)?new URL($):new URL(Q+(Q.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),Y=this.defaultQuery();if(!Iq(Y))X={...Y,...X};if(typeof X==="object"&&X&&!Array.isArray(X))q.search=this.stringifyQuery(X);return q.toString()}_calculateNonstreamingTimeout($){if(3600*$/128000>600)throw new j("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:X,options:J}){}get($,X){return this.methodRequest("get",$,X)}post($,X){return this.methodRequest("post",$,X)}patch($,X){return this.methodRequest("patch",$,X)}put($,X){return this.methodRequest("put",$,X)}delete($,X){return this.methodRequest("delete",$,X)}methodRequest($,X,J){return this.request(Promise.resolve(J).then((Q)=>{return{method:$,path:X,...Q}}))}request($,X=null){return new P0(this,this.makeRequest($,X,void 0))}async makeRequest($,X,J){let Q=await $,q=Q.maxRetries??this.maxRetries;if(X==null)X=q;await this.prepareOptions(Q);let{req:Y,url:z,timeout:G}=await this.buildRequest(Q,{retryCount:q-X});await this.prepareRequest(Y,{url:z,options:Q});let W="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),H=J===void 0?"":`, retryOf: ${J}`,U=Date.now();if(L$(this).debug(`[${W}] sending request`,U0({retryOfRequestLogID:J,method:Q.method,url:z,options:Q,headers:Y.headers})),Q.signal?.aborted)throw new A$;let V=new AbortController,B=await this.fetchWithTimeout(z,Y,G,V).catch(o6),N=Date.now();if(B instanceof globalThis.Error){let D=`retrying, ${X} attempts remaining`;if(Q.signal?.aborted)throw new A$;let F=H0(B)||/timed? ?out/i.test(String(B)+("cause"in B?String(B.cause):""));if(X)return L$(this).info(`[${W}] connection ${F?"timed out":"failed"} - ${D}`),L$(this).debug(`[${W}] connection ${F?"timed out":"failed"} (${D})`,U0({retryOfRequestLogID:J,url:z,durationMs:N-U,message:B.message})),this.retryRequest(Q,X,J??W);if(L$(this).info(`[${W}] connection ${F?"timed out":"failed"} - error; no more retries left`),L$(this).debug(`[${W}] connection ${F?"timed out":"failed"} (error; no more retries left)`,U0({retryOfRequestLogID:J,url:z,durationMs:N-U,message:B.message})),F)throw new f8;throw new T0({cause:B})}let R=[...B.headers.entries()].filter(([D])=>D==="request-id").map(([D,F])=>", "+D+": "+JSON.stringify(F)).join(""),M=`[${W}${H}${R}] ${Y.method} ${z} ${B.ok?"succeeded":"failed"} with status ${B.status} in ${N-U}ms`;if(!B.ok){let D=await this.shouldRetry(B);if(X&&D){let x=`retrying, ${X} attempts remaining`;return await kq(B.body),L$(this).info(`${M} - ${x}`),L$(this).debug(`[${W}] response error (${x})`,U0({retryOfRequestLogID:J,url:B.url,status:B.status,headers:B.headers,durationMs:N-U})),this.retryRequest(Q,X,J??W,B.headers)}let F=D?"error; no more retries left":"error; not retryable";L$(this).info(`${M} - ${F}`);let T=await B.text().catch((x)=>o6(x).message),P=c5(T),f=P?void 0:T;throw L$(this).debug(`[${W}] response error (${F})`,U0({retryOfRequestLogID:J,url:B.url,status:B.status,headers:B.headers,message:f,durationMs:Date.now()-U})),this.makeStatusError(B.status,P,f,B.headers)}return L$(this).info(M),L$(this).debug(`[${W}] response start`,U0({retryOfRequestLogID:J,url:B.url,status:B.status,headers:B.headers,durationMs:N-U})),{response:B,options:Q,controller:V,requestLogID:W,retryOfRequestLogID:J,startTime:U}}getAPIList($,X,J){return this.requestAPIList(X,J&&"then"in J?J.then((Q)=>({method:"get",path:$,...Q})):{method:"get",path:$,...J})}requestAPIList($,X){let J=this.makeRequest(X,null,void 0);return new Q2(this,J,$)}async fetchWithTimeout($,X,J,Q){let{signal:q,method:Y,...z}=X||{},G=this._makeAbort(Q);if(q)q.addEventListener("abort",G,{once:!0});let W=setTimeout(G,J),H=globalThis.ReadableStream&&z.body instanceof globalThis.ReadableStream||typeof z.body==="object"&&z.body!==null&&Symbol.asyncIterator in z.body,U={signal:Q.signal,...H?{duplex:"half"}:{},method:"GET",...z};if(Y)U.method=Y.toUpperCase();try{return await this.fetch.call(void 0,$,U)}finally{clearTimeout(W)}}async shouldRetry($){let X=$.headers.get("x-should-retry");if(X==="true")return!0;if(X==="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($,X,J,Q){let q,Y=Q?.get("retry-after-ms");if(Y){let G=parseFloat(Y);if(!Number.isNaN(G))q=G}let z=Q?.get("retry-after");if(z&&!q){let G=parseFloat(z);if(!Number.isNaN(G))q=G*1000;else q=Date.parse(z)-Date.now()}if(!(q&&0<=q&&q<60000)){let G=$.maxRetries??this.maxRetries;q=this.calculateDefaultRetryTimeoutMillis(X,G)}return await jq(q),this.makeRequest($,X-1,J)}calculateDefaultRetryTimeoutMillis($,X){let q=X-$,Y=Math.min(0.5*Math.pow(2,q),8),z=1-Math.random()*0.25;return Y*z*1000}calculateNonstreamingTimeout($,X){if(3600000*$/128000>600000||X!=null&&$>X)throw new j("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:X=0}={}){let J={...$},{method:Q,path:q,query:Y,defaultBaseURL:z}=J,G=this.buildURL(q,Y,z);if("timeout"in J)Sq("timeout",J.timeout);J.timeout=J.timeout??this.timeout;let{bodyHeaders:W,body:H}=this.buildBody({options:J}),U=await this.buildHeaders({options:$,method:Q,bodyHeaders:W,retryCount:X});return{req:{method:Q,headers:U,...J.signal&&{signal:J.signal},...globalThis.ReadableStream&&H instanceof globalThis.ReadableStream&&{duplex:"half"},...H&&{body:H},...this.fetchOptions??{},...J.fetchOptions??{}},url:G,timeout:J.timeout}}async buildHeaders({options:$,method:X,bodyHeaders:J,retryCount:Q}){let q={};if(this.idempotencyHeader&&X!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();q[this.idempotencyHeader]=$.idempotencyKey}let Y=h([q,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(Q),...$.timeout?{"X-Stainless-Timeout":String(Math.trunc($.timeout/1000))}:{},...bq(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders($),this._options.defaultHeaders,J,$.headers]);return this.validateHeaders(Y),Y.values}_makeAbort($){return()=>$.abort()}buildBody({options:{body:$,headers:X}}){if(!$)return{bodyHeaders:void 0,body:void 0};let J=h([X]);if(ArrayBuffer.isView($)||$ instanceof ArrayBuffer||$ instanceof DataView||typeof $==="string"&&J.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:d5($)};else return K(this,NX,"f").call(this,{body:$,headers:J})}}var U9,V9,NX,OY,B9="\\n\\nHuman:",K9="\\n\\nAssistant:",g0;var M9=b(()=>{W0();e0();D7();T$();e$();C7();DY();a5();t7();H9();o7();W9();D7();b$();n5();e0();V9=Y$,NX=new WeakMap,U9=new WeakSet,OY=function(){return this.baseURL!=="https://api.anthropic.com"};Y$.Anthropic=V9;Y$.HUMAN_PROMPT=B9;Y$.AI_PROMPT=K9;Y$.DEFAULT_TIMEOUT=600000;Y$.AnthropicError=j;Y$.APIError=w$;Y$.APIConnectionError=T0;Y$.APIConnectionTimeoutError=f8;Y$.APIUserAbortError=A$;Y$.NotFoundError=g8;Y$.ConflictError=v8;Y$.RateLimitError=u8;Y$.BadRequestError=k8;Y$.AuthenticationError=x8;Y$.InternalServerError=m8;Y$.PermissionDeniedError=y8;Y$.UnprocessableEntityError=h8;Y$.toFile=z2;g0=class g0 extends Y${constructor(){super(...arguments);this.completions=new o8(this),this.messages=new q8(this),this.models=new e8(this),this.beta=new $0(this)}};g0.Completions=o8;g0.Messages=q8;g0.Models=e8;g0.Beta=$0});var LY={};EX(LY,{toFile:()=>z2,default:()=>g0,UnprocessableEntityError:()=>h8,RateLimitError:()=>u8,PermissionDeniedError:()=>y8,PagePromise:()=>Q2,NotFoundError:()=>g8,InternalServerError:()=>m8,HUMAN_PROMPT:()=>B9,ConflictError:()=>v8,BaseAnthropic:()=>Y$,BadRequestError:()=>k8,AuthenticationError:()=>x8,AnthropicError:()=>j,Anthropic:()=>g0,APIUserAbortError:()=>A$,APIPromise:()=>P0,APIError:()=>w$,APIConnectionTimeoutError:()=>f8,APIConnectionError:()=>T0,AI_PROMPT:()=>K9});var RY=b(()=>{M9();C7();a5();M9();e$();T$()});var i9=z3(p9(),1),{program:rO,createCommand:aO,createArgument:sO,createOption:oO,CommanderError:tO,InvalidArgumentError:eO,InvalidOptionArgumentError:$L,Command:K8,Argument:XL,Option:JL,Help:QL}=i9.default;B$();u$();t$();f5();t();function d6($,X={}){let J=$??n();if(!J)console.error(`Error: project.faf not found
|
|
210
210
|
|
|
211
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
212
|
-
run ${
|
|
213
|
-
`)}function
|
|
214
|
-
`);if(
|
|
215
|
-
`),changed:!0}}return{content:`${
|
|
211
|
+
Run 'faf init' to create one.`),process.exit(2);let Q=e(J),q=H$(Q),Y=U$(q);if(X.json){console.log(JSON.stringify(Y,null,2));return}if(X.status){console.log(`${b5(Y.tier)} ${C(`${Y.score}%`)}`);return}N$(Y,J,X.verbose)}k5();B$();u$();t$();t();import{existsSync as DN}from"fs";import{join as EQ}from"path";function p6($={}){let X=process.cwd(),J=$.output?$.output.endsWith(".faf")?$.output:EQ(X,$.output):EQ(X,"project.faf");if(DN(J)&&!$.force)console.error(`project.faf already exists. Use ${C("--force")} to overwrite.`),process.exit(1);let Q=C8(X);Q$(J,Q);let q=e(J),Y=U$(H$(q));if(console.log(`${L("created")} ${J}`),N$(Y,J),Y.score<100)console.log(w(`
|
|
212
|
+
run ${C("'faf go'")} to fill empty slots`))}e4();B$();import{existsSync as t0,statSync as y5}from"fs";import{join as J7}from"path";import{readFileSync as RN,writeFileSync as AN,existsSync as _N,statSync as OA}from"fs";import{join as TQ}from"path";var ZQ="CLAUDE.md",FN="STATUS: BI-SYNC ACTIVE";function $7($){let X=TQ($,ZQ);if(!_N(X))return null;return RN(X,"utf-8")}function X7($,X){let J=TQ($,ZQ);AN(J,X,"utf-8")}function j0($){return`<!-- faf: ${[$.project?.name,$.project?.main_language,$.project?.goal].filter(Boolean).map((J)=>String(J).trim()).join(" | ")} -->`}function CQ($){let X=[],J=$.project?.name??"Project",Q=$.project?.main_language??"",q=$.project?.goal??"";if(X.push(j0($)),X.push(""),X.push(`# CLAUDE.md — ${J}`),X.push(""),q)X.push("## What This Is"),X.push(""),X.push(q),X.push("");let Y=$.stack??{},z=[];if(Q)z.push(`**Language:** ${Q}`);for(let[H,U]of Object.entries(Y))if(U&&U!=="slotignored"&&String(U).trim()){let V=H.replace(/_/g," ").replace(/\b\w/g,(B)=>B.toUpperCase());z.push(`**${V}:** ${U}`)}if(z.length>0){X.push("## Stack"),X.push("");for(let H of z)X.push(`- ${H}`);X.push("")}let G=$.human_context??{},W=[["Who",G.who],["What",G.what],["Why",G.why],["Where",G.where],["When",G.when],["How",G.how]].filter(([H,U])=>U&&String(U).trim());if(W.length>0){X.push("## Context"),X.push("");for(let[H,U]of W)X.push(`- **${H}:** ${U}`);X.push("")}return X.push("---"),X.push(""),X.push(`*${FN} — ${new Date().toISOString()}*`),X.push(""),X.join(`
|
|
213
|
+
`)}function PQ($,X){let J=j0(X),Q=$.split(`
|
|
214
|
+
`);if(Q[0]?.startsWith("<!-- faf:")){if(Q[0]===J)return{content:$,changed:!1};return Q[0]=J,{content:Q.join(`
|
|
215
|
+
`),changed:!0}}return{content:`${J}
|
|
216
216
|
|
|
217
|
-
${$}`,changed:!0}}function
|
|
217
|
+
${$}`,changed:!0}}function x5($){let X={project:{}},J=$.match(/^# CLAUDE\.md\s*[—–-]\s*(.+)$/m);if(J)X.project.name=J[1].trim();if(!X.project.name){let Y=$.match(/\*\*Name:\*\*\s*(.+)/);if(Y)X.project.name=Y[1].trim()}let Q=$.match(/## What This Is\s*\n\s*\n(.+)/);if(Q)X.project.goal=Q[1].trim();if(!X.project.goal){let Y=$.match(/\*\*What Building:\*\*\s*(.+)/);if(Y)X.project.goal=Y[1].trim()}let q=$.match(/\*\*Language:\*\*\s*(.+)/);if(q)X.project.main_language=q[1].trim();if(!X.project.main_language){let Y=$.match(/\*\*Main Language:\*\*\s*(.+)/);if(Y)X.project.main_language=Y[1].trim()}return X}import{readFileSync as _A,writeFileSync as IN,existsSync as FA}from"fs";import{join as EN}from"path";function bQ($,X){IN(EN($,"MEMORY.md"),X,"utf-8")}u$();t$();t();function P8(){return process.env.FAF_PRO==="1"||process.env.FAF_PRO==="true"}function i6($={}){let X=process.cwd(),J=n(X);if(!J)console.error(`Error: project.faf not found
|
|
218
218
|
|
|
219
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
219
|
+
Run 'faf init' to create one.`),process.exit(2);let Q=J7(X,"CLAUDE.md"),q=J7(X,"MEMORY.md"),Y=$.direction??"auto";if(Y==="auto")fQ(J,Q,X);else if(Y==="push")kQ(J,X);else if(Y==="pull")Q7(J,Q);if(P8())xQ(J,q,X);if($.watch)console.log(w("watching for changes... (Ctrl+C to stop)")),jN(J,Q,q,X)}function fQ($,X,J){let Q=y5($).mtimeMs,q=t0(X)?y5(X).mtimeMs:0;if(!t0(X)||Q>q)kQ($,J);else Q7($,X)}function kQ($,X){let J=J7(X,"CLAUDE.md"),Q=$$($);if(t0(J)){let z=$7(X);if(z){let{content:G,changed:W}=PQ(z,Q);if(W)X7(X,G),console.log(`${L("◆")} sync .faf → CLAUDE.md (stamped) ${w("← bi-sync")}`);else console.log(`${L("◆")} sync CLAUDE.md up-to-date ${w("← bi-sync")}`)}Q7($,J);return}let q=CQ(Q);X7(X,q),console.log(`${L("◆")} sync .faf → CLAUDE.md (created) ${w("← bi-sync")}`);let Y=U$(H$(e($)));N$(Y,$)}function Q7($,X){let J=$7(X.replace("/CLAUDE.md",""));if(!J){console.error("CLAUDE.md not found.");return}let Q=x5(J),q=$$($);if(Q.project?.name)q.project={...q.project,name:Q.project.name};if(Q.project?.goal)q.project={...q.project,goal:Q.project.goal};if(Q.project?.main_language)q.project={...q.project,main_language:Q.project.main_language};Q$($,q),console.log(`${L("◆")} sync CLAUDE.md → .faf ${w("← bi-sync")}`);let Y=U$(H$(e($)));N$(Y,$)}function xQ($,X,J){let Q=$$($),q=y5($).mtimeMs,Y=t0(X)?y5(X).mtimeMs:0;if(!t0(X)||q>Y){let z=SN(Q);bQ(J,z),console.log(`${L("◆")} sync .faf → MEMORY.md ${w("← tri-sync")}`)}else console.log(`${L("◆")} sync MEMORY.md → .faf ${w("← tri-sync")}`)}function SN($){let X=$.project??{},J=[`# ${X.name??"Project"} — Memory Topics`,"","> Generated by faf sync (tri-sync)",""];if(X.name)J.push(`- **Project:** ${X.name}`);if(X.goal)J.push(`- **Goal:** ${X.goal}`);if(X.main_language)J.push(`- **Language:** ${X.main_language}`);if(X.type)J.push(`- **Type:** ${X.type}`);return`${J.join(`
|
|
220
220
|
`)}
|
|
221
|
-
`}function
|
|
221
|
+
`}function jN($,X,J,Q){let{watch:q}=W$("fs"),Y=null,z=()=>{if(Y)clearTimeout(Y);Y=setTimeout(()=>{if(console.log(w("change detected...")),fQ($,X,Q),P8())xQ($,J,Q)},200)};if(q($,z),t0(X))q(X,z);if(P8()&&t0(J))q(J,z)}B$();t();import{writeFileSync as TN}from"fs";function yQ($,X={}){let J=$??n();if(!J)console.error(`Error: project.faf not found
|
|
222
222
|
|
|
223
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
223
|
+
Run 'faf init' to create one.`),process.exit(2);let Q=e(J),q=WQ(Q),Y=X.output??J.replace(/\.faf$/,".fafb");TN(Y,q),console.log(`${L("compiled")} ${Y} ${w(`(${q.length} bytes)`)}`)}import{readFileSync as ZN}from"fs";function gQ($,X={}){if(!$)console.error("Error: Please specify a .fafb file to decompile."),process.exit(1);let J=new Uint8Array(ZN($));if(String.fromCharCode(J[0],J[1],J[2],J[3])!=="FAFB")console.error("Error: Not a valid .fafb file (missing FAFB magic bytes)."),process.exit(3);let Q=HQ(J);console.log(JSON.stringify(Q,null,2))}B$();function vQ($){let X=[];if(!$||typeof $!=="object")return X.push("File is not a valid YAML mapping"),{valid:!1,errors:X};let J=$;if(!J.faf_version)X.push("Missing required field: faf_version");if(!J.project?.name)X.push("Missing required field: project.name");return{valid:X.length===0,errors:X}}u$();t$();t();function q7($,X={}){let J=$??n();if(!J)console.error(`Error: project.faf not found
|
|
224
224
|
|
|
225
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
226
|
-
--strict requires 100%`)),process.exit(1)}
|
|
227
|
-
`)}function
|
|
228
|
-
`)}function
|
|
229
|
-
`)}function
|
|
225
|
+
Run 'faf init' to create one.`),process.exit(2);let Q=$$(J),q=vQ(Q);if(!q.valid){console.log(`${C("invalid")} ${J}`);for(let G of q.errors)console.log(` ${w("x")} ${G}`);process.exit(3)}let Y=e(J);if(!GQ(Y))console.log(`${C("invalid yaml")} ${J}`),process.exit(3);console.log(`${L("valid")} ${J}`);let z=U$(H$(Y));if(N$(z,J),X.strict&&z.score<100)console.log(w(`
|
|
226
|
+
--strict requires 100%`)),process.exit(1)}B$();import{writeFileSync as CN}from"fs";import{join as PN}from"path";function bN($){let X=[];if(X.push(j0($)),X.push(""),X.push(`# AGENTS.md — ${$.project?.name??"Project"}`),X.push(""),X.push("> Auto-generated from project.faf — do not edit directly"),X.push(""),X.push("## Project Context"),X.push(""),$.project?.name)X.push(`- **Name:** ${$.project.name}`);if($.project?.goal)X.push(`- **Goal:** ${$.project.goal}`);if($.project?.main_language)X.push(`- **Language:** ${$.project.main_language}`);if(X.push(""),X.push("## Stack"),X.push(""),$.stack){for(let[J,Q]of Object.entries($.stack))if(Q&&Q!=="slotignored"&&Q!=="")X.push(`- **${J}:** ${Q}`)}if($.human_context){X.push(""),X.push("## Human Context"),X.push("");for(let[J,Q]of Object.entries($.human_context))if(Q&&Q!=="")X.push(`- **${J}:** ${Q}`)}return X.push(""),X.join(`
|
|
227
|
+
`)}function hQ($,X){CN(PN($,"AGENTS.md"),bN(X),"utf-8")}import{writeFileSync as fN}from"fs";import{join as kN}from"path";function xN($){let X=[];if(X.push(j0($)),X.push(""),X.push("# .cursorrules"),X.push(`# Auto-generated from project.faf — ${$.project?.name??"Project"}`),X.push(""),$.project?.main_language)X.push(`language: ${$.project.main_language}`);if($.stack){X.push(""),X.push("# Stack");for(let[J,Q]of Object.entries($.stack))if(Q&&Q!=="slotignored"&&Q!=="")X.push(`# ${J}: ${Q}`)}return X.push(""),X.join(`
|
|
228
|
+
`)}function uQ($,X){fN(kN($,".cursorrules"),xN(X),"utf-8")}import{writeFileSync as yN}from"fs";import{join as gN}from"path";function vN($){let X=[];if(X.push(j0($)),X.push(""),X.push(`# GEMINI.md — ${$.project?.name??"Project"}`),X.push(""),X.push("> Auto-generated from project.faf"),X.push(""),$.project?.name)X.push(`Project: ${$.project.name}`);if($.project?.goal)X.push(`Goal: ${$.project.goal}`);if($.project?.main_language)X.push(`Language: ${$.project.main_language}`);if($.stack){X.push(""),X.push("## Stack");for(let[J,Q]of Object.entries($.stack))if(Q&&Q!=="slotignored"&&Q!=="")X.push(`- ${J}: ${Q}`)}return X.push(""),X.join(`
|
|
229
|
+
`)}function mQ($,X){yN(gN($,"GEMINI.md"),vN(X),"utf-8")}t();function n6($={}){let X=n();if(!X)console.error(`Error: project.faf not found
|
|
230
230
|
|
|
231
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
231
|
+
Run 'faf init' to create one.`),process.exit(2);let J=process.cwd(),Q=$$(X),q=$.all||!$.agents&&!$.cursor&&!$.gemini&&!$.conductor;if(q||$.agents)hQ(J,Q),console.log(" AGENTS.md");if(q||$.cursor)uQ(J,Q),console.log(" .cursorrules");if(q||$.gemini)mQ(J,Q),console.log(" GEMINI.md");console.log(`${L("exported")} ${w(`from ${X}`)}`)}k5();B$();u$();t$();t();import{mkdirSync as hN,rmSync as uN}from"fs";import{join as lQ}from"path";import{execSync as mN}from"child_process";import{tmpdir as lN}from"os";function cQ($){if(!$)console.error(`Error: Please provide a GitHub URL.
|
|
232
232
|
|
|
233
|
-
Usage: faf git <url>`),process.exit(1);let
|
|
234
|
-
`);let $=new Map;for(let
|
|
233
|
+
Usage: faf git <url>`),process.exit(1);let X=$.endsWith(".git")?$:`${$}.git`,J=lQ(lN(),`faf-git-${Date.now()}`);hN(J,{recursive:!0});try{console.log(w(`cloning ${$}...`)),mN(`git clone --depth 1 ${X} ${J}`,{stdio:"pipe"});let Q=C8(J),q=lQ(process.cwd(),"project.faf");Q$(q,Q),console.log(`${L("created")} ${q}`);let Y=e(q),z=U$(H$(Y));N$(z,q)}finally{uN(J,{recursive:!0,force:!0})}}t();function pQ($={}){if($.version||Object.keys($).length===0)dN()}function dN(){let $=dQ();console.log(`${L(C("faf"))} v${$.version}`),console.log(w(`kernel ${UQ()} IANA application/vnd.faf+yaml`))}var r6=[{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"}];t();function iQ(){console.log(`${L("formats")} ${w("— supported file types")}
|
|
234
|
+
`);let $=new Map;for(let X of r6){let J=$.get(X.category)??[];J.push(X),$.set(X.category,J)}for(let[X,J]of $){console.log(` ${C(X)}`);for(let Q of J)console.log(` ${Q.name} ${w(Q.extensions.join(", "))}`);console.log()}console.log(w(` ${r6.length} formats across ${$.size} categories`))}t();import{readdirSync as pN,rmSync as iN}from"fs";import{tmpdir as nN}from"os";import{join as rN}from"path";function nQ(){let $=nN(),X=0;try{let J=pN($);for(let Q of J)if(Q.startsWith("faf-git-"))iN(rN($,Q),{recursive:!0,force:!0}),X++}catch{}if(X>0)console.log(`${L("cleared")} ${X} cached director${X===1?"y":"ies"}`);else console.log(w("nothing to clear"))}B$();function rQ($={}){let X=n();if(!X)console.error(`Error: project.faf not found
|
|
235
235
|
|
|
236
|
-
Run 'faf init' to create one.`),process.exit(2);if($.json){let X
|
|
236
|
+
Run 'faf init' to create one.`),process.exit(2);if($.json){let J=$$(X);console.log(JSON.stringify(J,null,2))}else{let J=e(X);console.log(J)}}B$();G0();t();function aQ(){let $=n();if(!$)console.error(`Error: project.faf not found
|
|
237
237
|
|
|
238
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
239
|
-
`))}
|
|
238
|
+
Run 'faf init' to create one.`),process.exit(2);let X=$$($),J=[];for(let Q of I$){let[q,Y]=Q.path.split("."),G=X[q]?.[Y];if(j8(G)||G==="slotignored")continue;J.push(`${Q.path}: ${G}`)}if(J.length===0){console.log(w("no populated slots"));return}console.log(J.join(`
|
|
239
|
+
`))}B$();t();import{existsSync as aN,statSync as sQ}from"fs";import{join as sN}from"path";var oN=["CLAUDE.md","AGENTS.md",".cursorrules","GEMINI.md"];function oQ(){let $=n();if(!$)console.error(`Error: project.faf not found
|
|
240
240
|
|
|
241
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
242
|
-
`),console.log(` ${
|
|
243
|
-
run ${
|
|
241
|
+
Run 'faf init' to create one.`),process.exit(2);let X=process.cwd(),J=sQ($).mtimeMs;console.log(`${L("drift")} ${w("— context file sync status")}
|
|
242
|
+
`),console.log(` ${C(".faf")} ${w(Y7(J))}`);let Q=0;for(let q of oN){let Y=sN(X,q);if(!aN(Y)){console.log(` ${w("○")} ${q} ${w("missing")}`);continue}let z=sQ(Y).mtimeMs,G=z-J;if(Math.abs(G)<1000)console.log(` ${L("●")} ${q} ${w("in sync")}`);else if(G>0)console.log(` ${C("!")} ${q} ${C("newer")} ${w(Y7(z))}`),Q++;else console.log(` ${w("○")} ${q} ${w("older")} ${w(Y7(z))}`),Q++}if(Q>0)console.log(w(`
|
|
243
|
+
run ${C("'faf sync'")} to resolve drift`))}function Y7($){let X=Date.now()-$,J=Math.floor(X/1000);if(J<60)return`${J}s ago`;let Q=Math.floor(J/60);if(Q<60)return`${Q}m ago`;let q=Math.floor(Q/60);if(q<24)return`${q}h ago`;return`${Math.floor(q/24)}d ago`}B$();t();function tQ($,X){if(!$||X===void 0)console.error(`Usage: faf edit <path> <value>
|
|
244
244
|
|
|
245
|
-
Example: faf edit project.name "My Project"`),process.exit(1);let
|
|
245
|
+
Example: faf edit project.name "My Project"`),process.exit(1);let J=n();if(!J)console.error(`Error: project.faf not found
|
|
246
246
|
|
|
247
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
247
|
+
Run 'faf init' to create one.`),process.exit(2);let Q=$$(J),q=$.split(".");if(q.length!==2)console.error("Error: path must be section.field (e.g. project.name)"),process.exit(1);let[Y,z]=q;if(!Q[Y]||typeof Q[Y]!=="object")Q[Y]={};Q[Y][z]=X,Q$(J,Q),console.log(`${L("updated")} ${$} ${w("→")} ${X}`)}B$();import{existsSync as g5,readFileSync as z7}from"fs";import{join as a6}from"path";t();function eQ(){let $=process.cwd(),X=[],J={faf_version:"3.0",project:{}},Q=a6($,"CLAUDE.md");if(g5(Q)){let W=z7(Q,"utf-8"),H=x5(W);if(H.project?.name)J.project.name=H.project.name;if(H.project?.goal)J.project.goal=H.project.goal;if(H.project?.main_language)J.project.main_language=H.project.main_language;X.push("CLAUDE.md")}let q=a6($,"AGENTS.md");if(g5(q)){let W=z7(q,"utf-8");if(!J.project.name){let H=W.match(/^#\s+(.+)/m);if(H)J.project.name=H[1].trim()}X.push("AGENTS.md")}let Y=a6($,"GEMINI.md");if(g5(Y)){let W=z7(Y,"utf-8");if(!J.project.name){let H=W.match(/^#\s+(.+)/m);if(H)J.project.name=H[1].trim()}X.push("GEMINI.md")}let z=a6($,".cursorrules");if(g5(z))X.push(".cursorrules");if(X.length===0)console.error("No context files found (CLAUDE.md, AGENTS.md, GEMINI.md, .cursorrules)."),process.exit(2);let G=n($);if(G){let W=$$(G);if(!W.project)W.project={};if(J.project.name&&!W.project.name)W.project.name=J.project.name;if(J.project.goal&&!W.project.goal)W.project.goal=J.project.goal;if(J.project.main_language&&!W.project.main_language)W.project.main_language=J.project.main_language;Q$(G,W),console.log(`${L("◆")} recover merged into ${G}`)}else{let W=a6($,"project.faf");Q$(W,J),console.log(`${L("◆")} recover created ${W}`)}console.log(w(` sources: ${X.join(", ")}`))}B$();t();var s6="3.0";function $q($={}){let X=n();if(!X)console.error(`Error: project.faf not found
|
|
248
248
|
|
|
249
|
-
Run 'faf init' to create one.`),process.exit(2);let X
|
|
250
|
-
`),console.log(` Status: ${
|
|
251
|
-
`);let $=[["tri-sync",".faf ↔ CLAUDE.md ↔ MEMORY.md"],["enterprise slots","33-slot scoring (slots 22-33)"],["advanced analytics","Drift tracking & team metrics"]];for(let[
|
|
252
|
-
`),console.log(" Set FAF_PRO=1 in your environment to enable Pro features."),console.log(""),console.log(
|
|
249
|
+
Run 'faf init' to create one.`),process.exit(2);let J=$$(X),Q=J.faf_version??"unknown";if(Q===s6){console.log(`${L("◆")} migrate already at v${s6}`);return}if(J.faf_version=s6,!J.project)J.project={};if(!J.stack)J.stack={};if(!J.human_context)J.human_context={};if(!J.monorepo)J.monorepo={};if($.dryRun){console.log(`${L("◆")} migrate ${w("(dry run)")} v${Q} → v${s6}`),console.log(w(` would update ${X}`));return}Q$(X,J),console.log(`${L("◆")} migrate v${Q} → v${s6}`),console.log(w(` updated ${X}`))}t();function Nq($){if($==="features")Uw();else if($==="activate")Vw();else Hw()}function Hw(){let $=P8();if(console.log(`${L("pro")} ${w("— FAF Pro status")}
|
|
250
|
+
`),console.log(` Status: ${$?o0(C("PRO")):C("Free")}`),console.log(""),!$)console.log(w(" Upgrade: faf pro activate"))}function Uw(){console.log(`${L("pro")} ${w("— Pro features")}
|
|
251
|
+
`);let $=[["tri-sync",".faf ↔ CLAUDE.md ↔ MEMORY.md"],["enterprise slots","33-slot scoring (slots 22-33)"],["advanced analytics","Drift tracking & team metrics"]];for(let[X,J]of $)console.log(` ${L("◆")} ${C(X)} ${w("—")} ${J}`);console.log("")}function Vw(){console.log(`${L("pro")} ${w("— activate")}
|
|
252
|
+
`),console.log(" Set FAF_PRO=1 in your environment to enable Pro features."),console.log(""),console.log(w(" export FAF_PRO=1")),console.log("");try{Mq()("https://faf.one/pro")}catch{console.log(w(" Visit: https://faf.one/pro"))}}B$();t();import{gzipSync as Bw}from"zlib";function wq($={}){let X=n();if(!X)console.error(`Error: project.faf not found
|
|
253
253
|
|
|
254
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
255
|
-
`),console.log(` ${
|
|
256
|
-
copied to clipboard`))}catch{console.log(
|
|
257
|
-
copy failed — install xclip or pbcopy`))}}
|
|
258
|
-
`);let
|
|
254
|
+
Run 'faf init' to create one.`),process.exit(2);let J=e(X),q=Bw(Buffer.from(J)).toString("base64url");if($.raw){console.log(q);return}let Y=`https://faf.one/share?d=${q}`;if(console.log(`${L("◆")} share ${w(X)}
|
|
255
|
+
`),console.log(` ${Y}`),$.copy)try{let{execSync:z}=W$("child_process"),G=process.platform;if(G==="darwin")z("pbcopy",{input:Y});else if(G==="linux")z("xclip -selection clipboard",{input:Y});console.log(w(`
|
|
256
|
+
copied to clipboard`))}catch{console.log(w(`
|
|
257
|
+
copy failed — install xclip or pbcopy`))}}B$();u$();t$();t();import{mkdirSync as Kw,writeFileSync as Mw,rmSync as Nw}from"fs";import{tmpdir as ww}from"os";import{join as Dq}from"path";function Oq(){let $=Dq(ww(),`faf-demo-${Date.now()}`);Kw($,{recursive:!0}),console.log(`${L("demo")} ${w("— FAF in action")}
|
|
258
|
+
`);let X=`faf_version: "3.0"
|
|
259
259
|
project:
|
|
260
260
|
name: acme-app
|
|
261
261
|
goal: Full-stack web application for team collaboration
|
|
@@ -280,42 +280,105 @@ human_context:
|
|
|
280
280
|
where: Cloud (Vercel + AWS)
|
|
281
281
|
when: "2026"
|
|
282
282
|
how: Agile sprints with CI/CD
|
|
283
|
-
`,
|
|
284
|
-
`)),console.log(` ${
|
|
285
|
-
${
|
|
286
|
-
`);for(let
|
|
287
|
-
`);for(let
|
|
283
|
+
`,J=Dq($,"project.faf");Mw(J,X),console.log(` ${C("1.")} Created sample project.faf`),console.log(w(` ${J}
|
|
284
|
+
`)),console.log(` ${C("2.")} Scoring...`);let Q=U$(H$(e(J)));console.log(""),N$(Q,"project.faf",!0),Nw($,{recursive:!0,force:!0}),console.log(`
|
|
285
|
+
${w(' Demo complete. Run "faf init" in your project to get started.')}`)}G0();t();function Lq($,X={}){if(!$)console.error("Usage: faf search <keyword>"),process.exit(2);let J=$.toLowerCase(),Q=!X.slots&&!X.formats,q=0;if(Q||X.slots){let Y=I$.filter((z)=>z.path.toLowerCase().includes(J)||z.description.toLowerCase().includes(J)||z.category.toLowerCase().includes(J));if(Y.length>0){console.log(`${L("slots")} ${w(`— ${Y.length} match${Y.length===1?"":"es"}`)}
|
|
286
|
+
`);for(let z of Y)console.log(` ${C(`#${z.index}`)} ${z.path} ${w("—")} ${z.description} ${w(`[${z.category}]`)}`);console.log(""),q+=Y.length}}if(Q||X.formats){let Y=r6.filter((z)=>z.name.toLowerCase().includes(J)||z.extensions.some((G)=>G.toLowerCase().includes(J))||z.category.toLowerCase().includes(J));if(Y.length>0){console.log(`${L("formats")} ${w(`— ${Y.length} match${Y.length===1?"":"es"}`)}
|
|
287
|
+
`);for(let z of Y)console.log(` ${C(z.name)} ${w(z.extensions.join(", "))} ${w(`[${z.category}]`)}`);console.log(""),q+=Y.length}}if(q===0)console.log(w(` No results for "${$}"`))}B$();u$();t();import{writeFileSync as Dw}from"fs";function Rq($={}){let X=n();if(!X)console.error(`Error: project.faf not found
|
|
288
288
|
|
|
289
|
-
Run 'faf init' to create one.`),process.exit(2);let X
|
|
289
|
+
Run 'faf init' to create one.`),process.exit(2);let J=$$(X),Q=e(X),q=U$(H$(Q)),Y={taf_version:"1.0.0",generated:new Date().toISOString(),source:X,project:J.project?.name??"unknown",faf_version:J.faf_version??"unknown",score:q.score,tier:q.tier.name,populated:q.populated,active:q.active,total:q.total,slots:q.slots},z=JSON.stringify(Y,null,2);if($.output)Dw($.output,z,"utf-8"),console.log(`${L("◆")} taf receipt written to ${$.output}`);else console.log(z)}B$();G0();G0();u$();t$();t();import{createInterface as Ow}from"readline";import{existsSync as Aq,readFileSync as Lw,writeFileSync as Rw,unlinkSync as Aw}from"fs";import{join as _w}from"path";var Fw=".faf-session.json";function Iw($,X){let J=X.split("."),Q=$;for(let q of J){if(Q===null||Q===void 0||typeof Q!=="object")return;Q=Q[q]}return Q}function Ew($,X,J){let Q=X.split("."),q=$;for(let Y=0;Y<Q.length-1;Y++){if(!q[Q[Y]]||typeof q[Q[Y]]!=="object")q[Q[Y]]={};q=q[Q[Y]]}q[Q[Q.length-1]]=J}async function _q($={}){let X=n();if(!X)console.error(`Error: project.faf not found
|
|
290
290
|
|
|
291
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
292
|
-
`));let
|
|
293
|
-
session saved. Resume with: faf go --resume`));break}if(
|
|
294
|
-
${
|
|
295
|
-
`),console.log(` ${
|
|
291
|
+
Run 'faf init' to create one.`),process.exit(2);let J=process.cwd(),Q=_w(J,Fw),q=0;if($.resume&&Aq(Q))try{q=JSON.parse(Lw(Q,"utf-8")).slotIndex,console.log(w(` resuming from slot #${q+1}`))}catch{}let Y=$$(X),z=I$.filter((B)=>{let N=Iw(Y,B.path);return j8(N)&&N!=="slotignored"});if(z.length===0){console.log(`${L("◆")} go all slots populated`);let B=U$(H$(e(X)));N$(B,X);return}console.log(`${L("go")} ${w("— guided interview")}`),console.log(w(` ${z.length} empty slots. Enter a value, "skip" to skip, or "quit" to stop.
|
|
292
|
+
`));let G=Ow({input:process.stdin,output:process.stdout}),W=(B)=>new Promise((N)=>G.question(B,N)),H=0,U=z.slice(q);for(let B=0;B<U.length;B++){let N=U[B],R=await W(` ${C(`#${N.index}`)} ${N.description} ${w(`(${N.path})`)}: `);if(R.toLowerCase()==="quit"){let M={slotIndex:q+B,fafPath:X};Rw(Q,JSON.stringify(M),"utf-8"),console.log(w(`
|
|
293
|
+
session saved. Resume with: faf go --resume`));break}if(R.toLowerCase()==="skip"||R.trim()==="")continue;Ew(Y,N.path,R.trim()),H++}if(G.close(),H>0)Q$(X,Y),console.log(`
|
|
294
|
+
${L("◆")} go filled ${H} slot${H===1?"":"s"}`);let V=U$(H$(e(X)));if(N$(V,X),Aq(Q))try{Aw(Q)}catch{}}B$();G0();G0();u$();t$();t();function UD($,X){let J=X.split("."),Q=$;for(let q of J){if(Q===null||Q===void 0||typeof Q!=="object")return;Q=Q[q]}return Q}function VD($,X,J){let Q=X.split("."),q=$;for(let Y=0;Y<Q.length-1;Y++){if(!q[Q[Y]]||typeof q[Q[Y]]!=="object")q[Q[Y]]={};q=q[Q[Y]]}q[Q[Q.length-1]]=J}async function AY($){if($==="analyze")await KD();else if($==="enhance")await BD();else console.log(`${L("ai")} ${w("— AI-powered features")}
|
|
295
|
+
`),console.log(` ${C("faf ai enhance")} ${w("— fill empty slots via Claude")}`),console.log(` ${C("faf ai analyze")} ${w("— get improvement suggestions")}`),console.log(""),console.log(w(" Requires ANTHROPIC_API_KEY environment variable."))}async function _Y(){let $=process.env.ANTHROPIC_API_KEY;if(!$)console.error(`Error: ANTHROPIC_API_KEY not set.
|
|
296
296
|
|
|
297
|
-
export ANTHROPIC_API_KEY=sk-...`),process.exit(2);try{let{default:
|
|
297
|
+
export ANTHROPIC_API_KEY=sk-...`),process.exit(2);try{let{default:X}=await Promise.resolve().then(() => (RY(),LY));return new X({apiKey:$})}catch{console.error(`Error: @anthropic-ai/sdk not installed.
|
|
298
298
|
|
|
299
|
-
npm install @anthropic-ai/sdk`),process.exit(2)}}async function
|
|
299
|
+
npm install @anthropic-ai/sdk`),process.exit(2)}}async function BD(){let $=n();if(!$)console.error(`Error: project.faf not found
|
|
300
300
|
|
|
301
|
-
Run 'faf init' to create one.`),process.exit(2);let
|
|
302
|
-
`),
|
|
301
|
+
Run 'faf init' to create one.`),process.exit(2);let X=$$($),J=e($),Q=I$.filter((W)=>{let H=UD(X,W.path);return j8(H)&&H!=="slotignored"});if(Q.length===0){console.log(`${L("◆")} ai enhance all slots populated`);return}console.log(`${L("ai")} enhance ${w(`filling ${Q.length} empty slots...`)}`);let q=await _Y(),Y=Q.map((W)=>`- ${W.path}: ${W.description}`).join(`
|
|
302
|
+
`),z=`Given this project .faf file:
|
|
303
303
|
|
|
304
|
-
${
|
|
304
|
+
${J}
|
|
305
305
|
|
|
306
306
|
Fill in these empty slots with reasonable values based on the project context. Return ONLY a JSON object mapping dot-paths to values.
|
|
307
307
|
|
|
308
308
|
Empty slots:
|
|
309
|
-
${
|
|
310
|
-
|
|
311
|
-
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 H of z){let V=U[H.path];if(V&&typeof V==="string")GD(Z,H.path,V),console.log(` ${M("●")} ${H.path} ${L("←")} ${V}`),W++}if(W>0){s($,Z),console.log(`
|
|
312
|
-
${M("◆")} ai enhance filled ${W} slot${W===1?"":"s"}`);let H=e(t(m($)));J0(H,$)}}catch{console.error("Error: Could not parse AI response.")}}async function WD(){let $=g();if(!$)console.error(`Error: project.faf not found
|
|
309
|
+
${Y}
|
|
313
310
|
|
|
314
|
-
|
|
311
|
+
Respond with ONLY valid JSON, no markdown fences.`,G=await q.messages.create({model:"claude-haiku-4-5-20251001",max_tokens:1024,messages:[{role:"user",content:z}]});try{let W=G.content[0].text,H=JSON.parse(W),U=0;for(let V of Q){let B=H[V.path];if(B&&typeof B==="string")VD(X,V.path,B),console.log(` ${L("●")} ${V.path} ${w("←")} ${B}`),U++}if(U>0){Q$($,X),console.log(`
|
|
312
|
+
${L("◆")} ai enhance filled ${U} slot${U===1?"":"s"}`);let V=U$(H$(e($)));N$(V,$)}}catch{console.error("Error: Could not parse AI response.")}}async function KD(){let $=n();if(!$)console.error(`Error: project.faf not found
|
|
315
313
|
|
|
316
|
-
${
|
|
314
|
+
Run 'faf init' to create one.`),process.exit(2);let X=e($);console.log(`${L("ai")} analyze ${w("getting suggestions...")}`);let Q=await(await _Y()).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.
|
|
317
315
|
|
|
318
|
-
|
|
319
|
-
`),console.log(` ${b("faf conductor import <path>")} ${L("— import conductor config into .faf")}`),console.log(` ${b("faf conductor export")} ${L("— generate conductor config from .faf")}`)}function HD($){if(!$)console.error("Usage: faf conductor import <path>"),process.exit(2);if(!e4($))console.error(`Error: path not found: ${$}`),process.exit(2);let Z={faf_version:"3.0",project:{}};if(e4($)&&$.endsWith(".json")){let J=JSON.parse($7($,"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(e4($)&&($.endsWith(".yml")||$.endsWith(".yaml"))){let J=u6($7($,"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=VD($);for(let q of J){let Q=oJ($,q);if(q.endsWith(".json"))try{let Y=JSON.parse($7(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=g(X);if(z){let J=c(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;s(z,J),console.log(`${M("◆")} conductor import merged into ${z}`)}else{let J=oJ(X,"project.faf");s(J,Z),console.log(`${M("◆")} conductor import created ${J}`)}}function KD(){let $=g();if(!$)console.error(`Error: project.faf not found
|
|
316
|
+
${X}
|
|
320
317
|
|
|
321
|
-
|
|
318
|
+
Be concise. One line per suggestion.`}]});console.log(""),console.log(Q.content[0].text)}B$();i4();t();import{existsSync as N9,readFileSync as w9,readdirSync as MD}from"fs";import{join as FY}from"path";function IY($,X){if($==="import")ND(X);else if($==="export")wD();else console.log(`${L("conductor")} ${w("— conductor integration")}
|
|
319
|
+
`),console.log(` ${C("faf conductor import <path>")} ${w("— import conductor config into .faf")}`),console.log(` ${C("faf conductor export")} ${w("— generate conductor config from .faf")}`)}function ND($){if(!$)console.error("Usage: faf conductor import <path>"),process.exit(2);if(!N9($))console.error(`Error: path not found: ${$}`),process.exit(2);let X={faf_version:"3.0",project:{}};if(N9($)&&$.endsWith(".json")){let q=JSON.parse(w9($,"utf-8"));if(q.name)X.project.name=q.name;if(q.description)X.project.goal=q.description;if(q.language)X.project.main_language=q.language}else if(N9($)&&($.endsWith(".yml")||$.endsWith(".yaml"))){let q=m6(w9($,"utf-8"));if(q.name)X.project.name=q.name;if(q.description)X.project.goal=q.description;if(q.language)X.project.main_language=q.language}else try{let q=MD($);for(let Y of q){let z=FY($,Y);if(Y.endsWith(".json"))try{let G=JSON.parse(w9(z,"utf-8"));if(G.name&&!X.project.name)X.project.name=G.name;if(G.description&&!X.project.goal)X.project.goal=G.description}catch{}}}catch{console.error(`Error: could not read directory: ${$}`),process.exit(2)}let J=process.cwd(),Q=n(J);if(Q){let q=$$(Q);if(!q.project)q.project={};if(X.project.name&&!q.project.name)q.project.name=X.project.name;if(X.project.goal&&!q.project.goal)q.project.goal=X.project.goal;if(X.project.main_language&&!q.project.main_language)q.project.main_language=X.project.main_language;Q$(Q,q),console.log(`${L("◆")} conductor import merged into ${Q}`)}else{let q=FY(J,"project.faf");Q$(q,X),console.log(`${L("◆")} conductor import created ${q}`)}}function wD(){let $=n();if(!$)console.error(`Error: project.faf not found
|
|
320
|
+
|
|
321
|
+
Run 'faf init' to create one.`),process.exit(2);let X=$$($),J={name:X.project?.name??"",description:X.project?.goal??"",language:X.project?.main_language??"",stack:X.stack??{}};console.log(JSON.stringify(J,null,2))}import{readFileSync as wX,writeFileSync as D9,existsSync as $6,mkdirSync as EY}from"fs";import{join as l$,dirname as SY}from"path";import{fileURLToPath as jY}from"url";import{homedir as TY}from"os";class O9{skillsDir=l$(TY(),".config","claude-code","skills");fafSkillsDir=l$(this.skillsDir,"faf-commands");claudeSkillsDir=l$(TY(),".claude","skills","faf");async syncSkills(){await this.syncToLocation(this.fafSkillsDir),await this.syncToClaudeDir()}async syncToClaudeDir(){if(!$6(this.claudeSkillsDir))return;let $=l$(this.claudeSkillsDir,"skills.json");if(!$6($))return;let X=JSON.parse(wX($,"utf-8")),J=JSON.parse(wX(l$(SY(jY(import.meta.url)),"../../package.json"),"utf-8"));X.requirements["faf-cli"]=`>=${J.version}`,X.lastSync=new Date().toISOString(),D9($,JSON.stringify(X,null,2))}async syncToLocation($){if(!$6($))EY($,{recursive:!0});let X=l$(SY(jY(import.meta.url)),"../../commands"),{readdirSync:J}=await import("fs"),Q=J(X).filter((Y)=>Y.startsWith("faf-")&&Y.endsWith(".md")),q={version:"1.0.0",skills:[],preferences:{conciseDescriptions:!0,functionalLanguage:!0,minimalEmojis:!0}};for(let Y of Q){let z=wX(l$(X,Y),"utf-8"),G=this.parseCommandFile(z,Y);if(G)q.skills.push(G),await this.createSkillFileInDir(G,z,$)}D9(l$($,"index.json"),JSON.stringify(q,null,2))}parseCommandFile($,X){let J=$.split(`
|
|
322
|
+
`),Q="",q="";for(let z of J){if(z.startsWith("description:"))Q=z.replace("description:","").trim();if(z.startsWith("argument-hint:"))q=z.replace("argument-hint:","").trim()}if(!Q)return null;return{name:X.replace(".md",""),description:Q,...q&&q!=="None"?{"argument-hint":q}:{}}}async createSkillFileInDir($,X,J){let Q=l$(J,$.name);if(!$6(Q))EY(Q,{recursive:!0});let Y=X.split("---").slice(2).join("---").trim(),z=`---
|
|
323
|
+
name: ${$.name}
|
|
324
|
+
description: ${$.description}${$["argument-hint"]?`
|
|
325
|
+
argument-hint: ${$["argument-hint"]}`:""}
|
|
326
|
+
allowed-tools: Bash, Read, Write, Glob, Grep, Task
|
|
327
|
+
---
|
|
328
|
+
|
|
329
|
+
${Y}
|
|
330
|
+
|
|
331
|
+
## Claude Code Integration Notes
|
|
332
|
+
|
|
333
|
+
This skill is automatically synced from faf-cli v6 commands.
|
|
334
|
+
|
|
335
|
+
### V6 Principles:
|
|
336
|
+
- Concise, functional descriptions
|
|
337
|
+
- No marketing language
|
|
338
|
+
- Minimal emoji usage (only \uD83C\uDFC6 for 100%)
|
|
339
|
+
- Championship-grade execution
|
|
340
|
+
|
|
341
|
+
### Usage in Claude Code:
|
|
342
|
+
\`\`\`
|
|
343
|
+
/${$.name}${$["argument-hint"]&&$["argument-hint"]!=="None"?" ["+$["argument-hint"]+"]":""}
|
|
344
|
+
\`\`\`
|
|
345
|
+
`;D9(l$(Q,"SKILL.md"),z)}async checkIntegration(){if(!$6(this.fafSkillsDir))return!1;let $=l$(this.fafSkillsDir,"index.json");if(!$6($))return!1;try{let X=JSON.parse(wX($,"utf-8"));return X.version&&Array.isArray(X.skills)}catch{return!1}}getBestPractices(){return`
|
|
346
|
+
Claude Code Integration Best Practices for faf-cli:
|
|
347
|
+
|
|
348
|
+
1. **Command Descriptions**
|
|
349
|
+
- Keep under 80 characters
|
|
350
|
+
- Use functional language (what it does, not how amazing it is)
|
|
351
|
+
- No marketing copy or superlatives
|
|
352
|
+
- No performance claims in descriptions
|
|
353
|
+
|
|
354
|
+
2. **Skill Structure**
|
|
355
|
+
- Each command = one skill
|
|
356
|
+
- Clear argument hints when applicable
|
|
357
|
+
- Tools limited to what's needed
|
|
358
|
+
- Examples should be concise
|
|
359
|
+
|
|
360
|
+
3. **V6 Edition Alignment**
|
|
361
|
+
- Minimal symbols (only \uD83C\uDFC6 for 100% scores)
|
|
362
|
+
- Clean output formatting
|
|
363
|
+
- No "championship" language in UI
|
|
364
|
+
- Professional, functional tone
|
|
365
|
+
|
|
366
|
+
4. **Integration Points**
|
|
367
|
+
- Skills auto-discovered from ~/.config/claude-code/skills/
|
|
368
|
+
- faf-cli commands appear as slash commands
|
|
369
|
+
- Descriptions must be scannable in autocomplete
|
|
370
|
+
- No duplicate commands
|
|
371
|
+
|
|
372
|
+
5. **Maintenance**
|
|
373
|
+
- Run 'faf claude-sync' after command updates
|
|
374
|
+
- Version descriptions properly
|
|
375
|
+
- Test in Claude Code after changes
|
|
376
|
+
- Keep skills directory clean
|
|
377
|
+
`}}t();function ZY(){return new K8("claude-sync").description("Sync faf commands with Claude Code integration").option("--check","Check integration status only").option("--best-practices","Show Claude Code integration best practices").action(async($)=>{let X=new O9;if($.bestPractices){console.log(X.getBestPractices());return}if($.check){if(await X.checkIntegration())console.log(`${L("✓")} Claude Code integration is properly configured`);else console.log(`${L("◆")} Claude Code integration needs setup`),console.log(` Run ${C("faf claude-sync")} to configure`);return}console.log(`${L("◆")} Syncing with Claude Code...`);try{await X.syncSkills(),console.log(`${L("✓")} Skills synced to ~/.config/claude-code/skills/faf-commands/`),console.log(w(" Restart Claude Code to see updated slash commands"))}catch(J){console.error("Failed to sync:",J),process.exit(1)}})}t();import{spawn as DD}from"child_process";import{join as CY,dirname as OD}from"path";import{fileURLToPath as LD}from"url";function PY(){return new K8("bun-update").alias("update").description("Update Bun runtime and dependencies").action(async()=>{console.log(`${L("\uD83C\uDFCE️")} Running Bun update routine...`);let $=OD(LD(import.meta.url)),X=CY($,"../../scripts/bun-update.ts"),J=DD("bun",[X],{stdio:"inherit",cwd:CY($,"../..")});J.on("error",(Q)=>{console.error(`Failed to run update: ${Q.message}`),console.log(`
|
|
378
|
+
Try running: ${C("bun scripts/bun-update.ts")}`),process.exit(1)}),J.on("exit",(Q)=>{if(Q!==0)process.exit(Q||1)})})}t();import{existsSync as bY,cpSync as RD}from"fs";import{join as DX}from"path";import{homedir as AD}from"os";import{fileURLToPath as _D}from"url";import{dirname as FD}from"path";async function fY(){let $=FD(_D(import.meta.url)),X,J=[DX($,"../../../skills/faf"),DX($,"../../skills/faf"),DX($,"../skills/faf")];for(let q of J)if(bY(q)){X=q;break}if(!X){console.log(`${w(" Skills package not found in distribution")}`),console.log(`${w(" Checked:")} ${J.join(", ")}`),console.log(`${w(" Run")} ${C("faf claude-sync")} ${w("to generate skills from commands")}`);return}let Q=DX(AD(),".claude","skills","faf");if(console.log(`${L("◆")} Installing FAF skills for Claude Code...`),bY(Q)){console.log(`${L("!")} FAF skills already installed at ${w(Q)}`),console.log(" To reinstall, first remove the existing directory");return}try{RD(X,Q,{recursive:!0}),console.log(`${L("✓")} Installed FAF skills to ~/.claude/skills/faf/`),console.log(""),console.log("Available skills:"),console.log(` ${C("/faf-champion")} - Achieve 100% AI-readiness score`),console.log(` ${C("/faf-quickstart")} - Initialize FAF context in seconds`),console.log(` ${C("/faf-sync-master")} - Keep .faf and CLAUDE.md in sync`),console.log(""),console.log(w(" Restart Claude Code to see the new skills"))}catch(q){console.error("Failed to install skills:",q),process.exit(1)}}class L9{tools=new Map;register($){if(this.tools.has($.name))throw Error(`Tool '${$.name}' already registered`);this.tools.set($.name,$)}get($){return this.tools.get($)}list(){return Array.from(this.tools.values())}listByPermission($){return this.list().filter((X)=>X.permission===$)}listByRisk($){return this.list().filter((X)=>X.risk===$)}}class Y8{tags=["faf","ai-context"];validate($){let X=this.schema.safeParse($);if(!X.success)throw Error(`Invalid input for ${this.name}: ${X.error.message}`);return X.data}canExecute($){let X=["plan","standard","auto","bypass"],J=X.indexOf(this.permission);return X.indexOf($.permissionMode)>=J}}var R$={};EX(R$,{void:()=>GO,util:()=>d,unknown:()=>YO,union:()=>VO,undefined:()=>JO,tuple:()=>MO,transformer:()=>IO,symbol:()=>XO,string:()=>lY,strictObject:()=>UO,setErrorMap:()=>SD,set:()=>DO,record:()=>NO,quotelessJson:()=>ID,promise:()=>FO,preprocess:()=>jO,pipeline:()=>TO,ostring:()=>ZO,optional:()=>EO,onumber:()=>CO,oboolean:()=>PO,objectUtil:()=>R9,object:()=>HO,number:()=>cY,nullable:()=>SO,null:()=>QO,never:()=>zO,nativeEnum:()=>_O,nan:()=>tD,map:()=>wO,makeIssue:()=>f2,literal:()=>RO,lazy:()=>LO,late:()=>sD,isValid:()=>v0,isDirty:()=>LX,isAsync:()=>J6,isAborted:()=>OX,intersection:()=>KO,instanceof:()=>oD,getParsedType:()=>X0,getErrorMap:()=>X6,function:()=>OO,enum:()=>AO,effect:()=>IO,discriminatedUnion:()=>BO,defaultErrorMap:()=>M0,datetimeRegex:()=>hY,date:()=>$O,custom:()=>mY,coerce:()=>bO,boolean:()=>dY,bigint:()=>eD,array:()=>WO,any:()=>qO,addIssueToContext:()=>E,ZodVoid:()=>x2,ZodUnknown:()=>h0,ZodUnion:()=>W6,ZodUndefined:()=>z6,ZodType:()=>l,ZodTuple:()=>Q0,ZodTransformer:()=>n$,ZodSymbol:()=>k2,ZodString:()=>c$,ZodSet:()=>H8,ZodSchema:()=>l,ZodRecord:()=>y2,ZodReadonly:()=>N6,ZodPromise:()=>U8,ZodPipeline:()=>h2,ZodParsedType:()=>_,ZodOptional:()=>p$,ZodObject:()=>z$,ZodNumber:()=>u0,ZodNullable:()=>w0,ZodNull:()=>G6,ZodNever:()=>J0,ZodNativeEnum:()=>B6,ZodNaN:()=>v2,ZodMap:()=>g2,ZodLiteral:()=>V6,ZodLazy:()=>U6,ZodIssueCode:()=>O,ZodIntersection:()=>H6,ZodFunction:()=>q6,ZodFirstPartyTypeKind:()=>y,ZodError:()=>S$,ZodEnum:()=>l0,ZodEffects:()=>n$,ZodDiscriminatedUnion:()=>RX,ZodDefault:()=>K6,ZodDate:()=>G8,ZodCatch:()=>M6,ZodBranded:()=>AX,ZodBoolean:()=>Y6,ZodBigInt:()=>m0,ZodArray:()=>d$,ZodAny:()=>W8,Schema:()=>l,ParseStatus:()=>_$,OK:()=>F$,NEVER:()=>fO,INVALID:()=>k,EMPTY_PATH:()=>jD,DIRTY:()=>z8,BRAND:()=>aD});var d;(function($){$.assertEqual=(q)=>{};function X(q){}$.assertIs=X;function J(q){throw Error()}$.assertNever=J,$.arrayToEnum=(q)=>{let Y={};for(let z of q)Y[z]=z;return Y},$.getValidEnumValues=(q)=>{let Y=$.objectKeys(q).filter((G)=>typeof q[q[G]]!=="number"),z={};for(let G of Y)z[G]=q[G];return $.objectValues(z)},$.objectValues=(q)=>{return $.objectKeys(q).map(function(Y){return q[Y]})},$.objectKeys=typeof Object.keys==="function"?(q)=>Object.keys(q):(q)=>{let Y=[];for(let z in q)if(Object.prototype.hasOwnProperty.call(q,z))Y.push(z);return Y},$.find=(q,Y)=>{for(let z of q)if(Y(z))return z;return},$.isInteger=typeof Number.isInteger==="function"?(q)=>Number.isInteger(q):(q)=>typeof q==="number"&&Number.isFinite(q)&&Math.floor(q)===q;function Q(q,Y=" | "){return q.map((z)=>typeof z==="string"?`'${z}'`:z).join(Y)}$.joinValues=Q,$.jsonStringifyReplacer=(q,Y)=>{if(typeof Y==="bigint")return Y.toString();return Y}})(d||(d={}));var R9;(function($){$.mergeShapes=(X,J)=>{return{...X,...J}}})(R9||(R9={}));var _=d.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),X0=($)=>{switch(typeof $){case"undefined":return _.undefined;case"string":return _.string;case"number":return Number.isNaN($)?_.nan:_.number;case"boolean":return _.boolean;case"function":return _.function;case"bigint":return _.bigint;case"symbol":return _.symbol;case"object":if(Array.isArray($))return _.array;if($===null)return _.null;if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return _.promise;if(typeof Map<"u"&&$ instanceof Map)return _.map;if(typeof Set<"u"&&$ instanceof Set)return _.set;if(typeof Date<"u"&&$ instanceof Date)return _.date;return _.object;default:return _.unknown}};var O=d.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),ID=($)=>{return JSON.stringify($,null,2).replace(/"([^"]+)":/g,"$1:")};class S$ extends Error{get errors(){return this.issues}constructor($){super();this.issues=[],this.addIssue=(J)=>{this.issues=[...this.issues,J]},this.addIssues=(J=[])=>{this.issues=[...this.issues,...J]};let X=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,X);else this.__proto__=X;this.name="ZodError",this.issues=$}format($){let X=$||function(q){return q.message},J={_errors:[]},Q=(q)=>{for(let Y of q.issues)if(Y.code==="invalid_union")Y.unionErrors.map(Q);else if(Y.code==="invalid_return_type")Q(Y.returnTypeError);else if(Y.code==="invalid_arguments")Q(Y.argumentsError);else if(Y.path.length===0)J._errors.push(X(Y));else{let z=J,G=0;while(G<Y.path.length){let W=Y.path[G];if(G!==Y.path.length-1)z[W]=z[W]||{_errors:[]};else z[W]=z[W]||{_errors:[]},z[W]._errors.push(X(Y));z=z[W],G++}}};return Q(this),J}static assert($){if(!($ instanceof S$))throw Error(`Not a ZodError: ${$}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,d.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten($=(X)=>X.message){let X={},J=[];for(let Q of this.issues)if(Q.path.length>0){let q=Q.path[0];X[q]=X[q]||[],X[q].push($(Q))}else J.push($(Q));return{formErrors:J,fieldErrors:X}}get formErrors(){return this.flatten()}}S$.create=($)=>{return new S$($)};var ED=($,X)=>{let J;switch($.code){case O.invalid_type:if($.received===_.undefined)J="Required";else J=`Expected ${$.expected}, received ${$.received}`;break;case O.invalid_literal:J=`Invalid literal value, expected ${JSON.stringify($.expected,d.jsonStringifyReplacer)}`;break;case O.unrecognized_keys:J=`Unrecognized key(s) in object: ${d.joinValues($.keys,", ")}`;break;case O.invalid_union:J="Invalid input";break;case O.invalid_union_discriminator:J=`Invalid discriminator value. Expected ${d.joinValues($.options)}`;break;case O.invalid_enum_value:J=`Invalid enum value. Expected ${d.joinValues($.options)}, received '${$.received}'`;break;case O.invalid_arguments:J="Invalid function arguments";break;case O.invalid_return_type:J="Invalid function return type";break;case O.invalid_date:J="Invalid date";break;case O.invalid_string:if(typeof $.validation==="object")if("includes"in $.validation){if(J=`Invalid input: must include "${$.validation.includes}"`,typeof $.validation.position==="number")J=`${J} at one or more positions greater than or equal to ${$.validation.position}`}else if("startsWith"in $.validation)J=`Invalid input: must start with "${$.validation.startsWith}"`;else if("endsWith"in $.validation)J=`Invalid input: must end with "${$.validation.endsWith}"`;else d.assertNever($.validation);else if($.validation!=="regex")J=`Invalid ${$.validation}`;else J="Invalid";break;case O.too_small:if($.type==="array")J=`Array must contain ${$.exact?"exactly":$.inclusive?"at least":"more than"} ${$.minimum} element(s)`;else if($.type==="string")J=`String must contain ${$.exact?"exactly":$.inclusive?"at least":"over"} ${$.minimum} character(s)`;else if($.type==="number")J=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="bigint")J=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="date")J=`Date must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${new Date(Number($.minimum))}`;else J="Invalid input";break;case O.too_big:if($.type==="array")J=`Array must contain ${$.exact?"exactly":$.inclusive?"at most":"less than"} ${$.maximum} element(s)`;else if($.type==="string")J=`String must contain ${$.exact?"exactly":$.inclusive?"at most":"under"} ${$.maximum} character(s)`;else if($.type==="number")J=`Number must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="bigint")J=`BigInt must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="date")J=`Date must be ${$.exact?"exactly":$.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number($.maximum))}`;else J="Invalid input";break;case O.custom:J="Invalid input";break;case O.invalid_intersection_types:J="Intersection results could not be merged";break;case O.not_multiple_of:J=`Number must be a multiple of ${$.multipleOf}`;break;case O.not_finite:J="Number must be finite";break;default:J=X.defaultError,d.assertNever($)}return{message:J}},M0=ED;var kY=M0;function SD($){kY=$}function X6(){return kY}var f2=($)=>{let{data:X,path:J,errorMaps:Q,issueData:q}=$,Y=[...J,...q.path||[]],z={...q,path:Y};if(q.message!==void 0)return{...q,path:Y,message:q.message};let G="",W=Q.filter((H)=>!!H).slice().reverse();for(let H of W)G=H(z,{data:X,defaultError:G}).message;return{...q,path:Y,message:G}},jD=[];function E($,X){let J=X6(),Q=f2({issueData:X,data:$.data,path:$.path,errorMaps:[$.common.contextualErrorMap,$.schemaErrorMap,J,J===M0?void 0:M0].filter((q)=>!!q)});$.common.issues.push(Q)}class _${constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray($,X){let J=[];for(let Q of X){if(Q.status==="aborted")return k;if(Q.status==="dirty")$.dirty();J.push(Q.value)}return{status:$.value,value:J}}static async mergeObjectAsync($,X){let J=[];for(let Q of X){let q=await Q.key,Y=await Q.value;J.push({key:q,value:Y})}return _$.mergeObjectSync($,J)}static mergeObjectSync($,X){let J={};for(let Q of X){let{key:q,value:Y}=Q;if(q.status==="aborted")return k;if(Y.status==="aborted")return k;if(q.status==="dirty")$.dirty();if(Y.status==="dirty")$.dirty();if(q.value!=="__proto__"&&(typeof Y.value<"u"||Q.alwaysSet))J[q.value]=Y.value}return{status:$.value,value:J}}}var k=Object.freeze({status:"aborted"}),z8=($)=>({status:"dirty",value:$}),F$=($)=>({status:"valid",value:$}),OX=($)=>$.status==="aborted",LX=($)=>$.status==="dirty",v0=($)=>$.status==="valid",J6=($)=>typeof Promise<"u"&&$ instanceof Promise;var Z;(function($){$.errToObj=(X)=>typeof X==="string"?{message:X}:X||{},$.toString=(X)=>typeof X==="string"?X:X?.message})(Z||(Z={}));class i${constructor($,X,J,Q){this._cachedPath=[],this.parent=$,this.data=X,this._path=J,this._key=Q}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var xY=($,X)=>{if(v0(X))return{success:!0,data:X.value};else{if(!$.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let J=new S$($.common.issues);return this._error=J,this._error}}}};function m($){if(!$)return{};let{errorMap:X,invalid_type_error:J,required_error:Q,description:q}=$;if(X&&(J||Q))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(X)return{errorMap:X,description:q};return{errorMap:(z,G)=>{let{message:W}=$;if(z.code==="invalid_enum_value")return{message:W??G.defaultError};if(typeof G.data>"u")return{message:W??Q??G.defaultError};if(z.code!=="invalid_type")return{message:G.defaultError};return{message:W??J??G.defaultError}},description:q}}class l{get description(){return this._def.description}_getType($){return X0($.data)}_getOrReturnCtx($,X){return X||{common:$.parent.common,data:$.data,parsedType:X0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}_processInputParams($){return{status:new _$,ctx:{common:$.parent.common,data:$.data,parsedType:X0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}}_parseSync($){let X=this._parse($);if(J6(X))throw Error("Synchronous parse encountered promise.");return X}_parseAsync($){let X=this._parse($);return Promise.resolve(X)}parse($,X){let J=this.safeParse($,X);if(J.success)return J.data;throw J.error}safeParse($,X){let J={common:{issues:[],async:X?.async??!1,contextualErrorMap:X?.errorMap},path:X?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:X0($)},Q=this._parseSync({data:$,path:J.path,parent:J});return xY(J,Q)}"~validate"($){let X={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:X0($)};if(!this["~standard"].async)try{let J=this._parseSync({data:$,path:[],parent:X});return v0(J)?{value:J.value}:{issues:X.common.issues}}catch(J){if(J?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;X.common={issues:[],async:!0}}return this._parseAsync({data:$,path:[],parent:X}).then((J)=>v0(J)?{value:J.value}:{issues:X.common.issues})}async parseAsync($,X){let J=await this.safeParseAsync($,X);if(J.success)return J.data;throw J.error}async safeParseAsync($,X){let J={common:{issues:[],contextualErrorMap:X?.errorMap,async:!0},path:X?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:X0($)},Q=this._parse({data:$,path:J.path,parent:J}),q=await(J6(Q)?Q:Promise.resolve(Q));return xY(J,q)}refine($,X){let J=(Q)=>{if(typeof X==="string"||typeof X>"u")return{message:X};else if(typeof X==="function")return X(Q);else return X};return this._refinement((Q,q)=>{let Y=$(Q),z=()=>q.addIssue({code:O.custom,...J(Q)});if(typeof Promise<"u"&&Y instanceof Promise)return Y.then((G)=>{if(!G)return z(),!1;else return!0});if(!Y)return z(),!1;else return!0})}refinement($,X){return this._refinement((J,Q)=>{if(!$(J))return Q.addIssue(typeof X==="function"?X(J,Q):X),!1;else return!0})}_refinement($){return new n$({schema:this,typeName:y.ZodEffects,effect:{type:"refinement",refinement:$}})}superRefine($){return this._refinement($)}constructor($){this.spa=this.safeParseAsync,this._def=$,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(X)=>this["~validate"](X)}}optional(){return p$.create(this,this._def)}nullable(){return w0.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return d$.create(this)}promise(){return U8.create(this,this._def)}or($){return W6.create([this,$],this._def)}and($){return H6.create(this,$,this._def)}transform($){return new n$({...m(this._def),schema:this,typeName:y.ZodEffects,effect:{type:"transform",transform:$}})}default($){let X=typeof $==="function"?$:()=>$;return new K6({...m(this._def),innerType:this,defaultValue:X,typeName:y.ZodDefault})}brand(){return new AX({typeName:y.ZodBranded,type:this,...m(this._def)})}catch($){let X=typeof $==="function"?$:()=>$;return new M6({...m(this._def),innerType:this,catchValue:X,typeName:y.ZodCatch})}describe($){return new this.constructor({...this._def,description:$})}pipe($){return h2.create(this,$)}readonly(){return N6.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var TD=/^c[^\s-]{8,}$/i,ZD=/^[0-9a-z]+$/,CD=/^[0-9A-HJKMNP-TV-Z]{26}$/i,PD=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,bD=/^[a-z0-9_-]{21}$/i,fD=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,kD=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,xD=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,yD="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",A9,gD=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,vD=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,hD=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,uD=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,mD=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,lD=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,gY="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",cD=new RegExp(`^${gY}$`);function vY($){let X="[0-5]\\d";if($.precision)X=`${X}\\.\\d{${$.precision}}`;else if($.precision==null)X=`${X}(\\.\\d+)?`;let J=$.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${X})${J}`}function dD($){return new RegExp(`^${vY($)}$`)}function hY($){let X=`${gY}T${vY($)}`,J=[];if(J.push($.local?"Z?":"Z"),$.offset)J.push("([+-]\\d{2}:?\\d{2})");return X=`${X}(${J.join("|")})`,new RegExp(`^${X}$`)}function pD($,X){if((X==="v4"||!X)&&gD.test($))return!0;if((X==="v6"||!X)&&hD.test($))return!0;return!1}function iD($,X){if(!fD.test($))return!1;try{let[J]=$.split(".");if(!J)return!1;let Q=J.replace(/-/g,"+").replace(/_/g,"/").padEnd(J.length+(4-J.length%4)%4,"="),q=JSON.parse(atob(Q));if(typeof q!=="object"||q===null)return!1;if("typ"in q&&q?.typ!=="JWT")return!1;if(!q.alg)return!1;if(X&&q.alg!==X)return!1;return!0}catch{return!1}}function nD($,X){if((X==="v4"||!X)&&vD.test($))return!0;if((X==="v6"||!X)&&uD.test($))return!0;return!1}class c$ extends l{_parse($){if(this._def.coerce)$.data=String($.data);if(this._getType($)!==_.string){let q=this._getOrReturnCtx($);return E(q,{code:O.invalid_type,expected:_.string,received:q.parsedType}),k}let J=new _$,Q=void 0;for(let q of this._def.checks)if(q.kind==="min"){if($.data.length<q.value)Q=this._getOrReturnCtx($,Q),E(Q,{code:O.too_small,minimum:q.value,type:"string",inclusive:!0,exact:!1,message:q.message}),J.dirty()}else if(q.kind==="max"){if($.data.length>q.value)Q=this._getOrReturnCtx($,Q),E(Q,{code:O.too_big,maximum:q.value,type:"string",inclusive:!0,exact:!1,message:q.message}),J.dirty()}else if(q.kind==="length"){let Y=$.data.length>q.value,z=$.data.length<q.value;if(Y||z){if(Q=this._getOrReturnCtx($,Q),Y)E(Q,{code:O.too_big,maximum:q.value,type:"string",inclusive:!0,exact:!0,message:q.message});else if(z)E(Q,{code:O.too_small,minimum:q.value,type:"string",inclusive:!0,exact:!0,message:q.message});J.dirty()}}else if(q.kind==="email"){if(!xD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"email",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="emoji"){if(!A9)A9=new RegExp(yD,"u");if(!A9.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"emoji",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="uuid"){if(!PD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"uuid",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="nanoid"){if(!bD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"nanoid",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="cuid"){if(!TD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"cuid",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="cuid2"){if(!ZD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"cuid2",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="ulid"){if(!CD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"ulid",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="url")try{new URL($.data)}catch{Q=this._getOrReturnCtx($,Q),E(Q,{validation:"url",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="regex"){if(q.regex.lastIndex=0,!q.regex.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"regex",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="trim")$.data=$.data.trim();else if(q.kind==="includes"){if(!$.data.includes(q.value,q.position))Q=this._getOrReturnCtx($,Q),E(Q,{code:O.invalid_string,validation:{includes:q.value,position:q.position},message:q.message}),J.dirty()}else if(q.kind==="toLowerCase")$.data=$.data.toLowerCase();else if(q.kind==="toUpperCase")$.data=$.data.toUpperCase();else if(q.kind==="startsWith"){if(!$.data.startsWith(q.value))Q=this._getOrReturnCtx($,Q),E(Q,{code:O.invalid_string,validation:{startsWith:q.value},message:q.message}),J.dirty()}else if(q.kind==="endsWith"){if(!$.data.endsWith(q.value))Q=this._getOrReturnCtx($,Q),E(Q,{code:O.invalid_string,validation:{endsWith:q.value},message:q.message}),J.dirty()}else if(q.kind==="datetime"){if(!hY(q).test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{code:O.invalid_string,validation:"datetime",message:q.message}),J.dirty()}else if(q.kind==="date"){if(!cD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{code:O.invalid_string,validation:"date",message:q.message}),J.dirty()}else if(q.kind==="time"){if(!dD(q).test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{code:O.invalid_string,validation:"time",message:q.message}),J.dirty()}else if(q.kind==="duration"){if(!kD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"duration",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="ip"){if(!pD($.data,q.version))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"ip",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="jwt"){if(!iD($.data,q.alg))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"jwt",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="cidr"){if(!nD($.data,q.version))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"cidr",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="base64"){if(!mD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"base64",code:O.invalid_string,message:q.message}),J.dirty()}else if(q.kind==="base64url"){if(!lD.test($.data))Q=this._getOrReturnCtx($,Q),E(Q,{validation:"base64url",code:O.invalid_string,message:q.message}),J.dirty()}else d.assertNever(q);return{status:J.value,value:$.data}}_regex($,X,J){return this.refinement((Q)=>$.test(Q),{validation:X,code:O.invalid_string,...Z.errToObj(J)})}_addCheck($){return new c$({...this._def,checks:[...this._def.checks,$]})}email($){return this._addCheck({kind:"email",...Z.errToObj($)})}url($){return this._addCheck({kind:"url",...Z.errToObj($)})}emoji($){return this._addCheck({kind:"emoji",...Z.errToObj($)})}uuid($){return this._addCheck({kind:"uuid",...Z.errToObj($)})}nanoid($){return this._addCheck({kind:"nanoid",...Z.errToObj($)})}cuid($){return this._addCheck({kind:"cuid",...Z.errToObj($)})}cuid2($){return this._addCheck({kind:"cuid2",...Z.errToObj($)})}ulid($){return this._addCheck({kind:"ulid",...Z.errToObj($)})}base64($){return this._addCheck({kind:"base64",...Z.errToObj($)})}base64url($){return this._addCheck({kind:"base64url",...Z.errToObj($)})}jwt($){return this._addCheck({kind:"jwt",...Z.errToObj($)})}ip($){return this._addCheck({kind:"ip",...Z.errToObj($)})}cidr($){return this._addCheck({kind:"cidr",...Z.errToObj($)})}datetime($){if(typeof $==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:$});return this._addCheck({kind:"datetime",precision:typeof $?.precision>"u"?null:$?.precision,offset:$?.offset??!1,local:$?.local??!1,...Z.errToObj($?.message)})}date($){return this._addCheck({kind:"date",message:$})}time($){if(typeof $==="string")return this._addCheck({kind:"time",precision:null,message:$});return this._addCheck({kind:"time",precision:typeof $?.precision>"u"?null:$?.precision,...Z.errToObj($?.message)})}duration($){return this._addCheck({kind:"duration",...Z.errToObj($)})}regex($,X){return this._addCheck({kind:"regex",regex:$,...Z.errToObj(X)})}includes($,X){return this._addCheck({kind:"includes",value:$,position:X?.position,...Z.errToObj(X?.message)})}startsWith($,X){return this._addCheck({kind:"startsWith",value:$,...Z.errToObj(X)})}endsWith($,X){return this._addCheck({kind:"endsWith",value:$,...Z.errToObj(X)})}min($,X){return this._addCheck({kind:"min",value:$,...Z.errToObj(X)})}max($,X){return this._addCheck({kind:"max",value:$,...Z.errToObj(X)})}length($,X){return this._addCheck({kind:"length",value:$,...Z.errToObj(X)})}nonempty($){return this.min(1,Z.errToObj($))}trim(){return new c$({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new c$({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new c$({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(($)=>$.kind==="datetime")}get isDate(){return!!this._def.checks.find(($)=>$.kind==="date")}get isTime(){return!!this._def.checks.find(($)=>$.kind==="time")}get isDuration(){return!!this._def.checks.find(($)=>$.kind==="duration")}get isEmail(){return!!this._def.checks.find(($)=>$.kind==="email")}get isURL(){return!!this._def.checks.find(($)=>$.kind==="url")}get isEmoji(){return!!this._def.checks.find(($)=>$.kind==="emoji")}get isUUID(){return!!this._def.checks.find(($)=>$.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(($)=>$.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(($)=>$.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(($)=>$.kind==="cuid2")}get isULID(){return!!this._def.checks.find(($)=>$.kind==="ulid")}get isIP(){return!!this._def.checks.find(($)=>$.kind==="ip")}get isCIDR(){return!!this._def.checks.find(($)=>$.kind==="cidr")}get isBase64(){return!!this._def.checks.find(($)=>$.kind==="base64")}get isBase64url(){return!!this._def.checks.find(($)=>$.kind==="base64url")}get minLength(){let $=null;for(let X of this._def.checks)if(X.kind==="min"){if($===null||X.value>$)$=X.value}return $}get maxLength(){let $=null;for(let X of this._def.checks)if(X.kind==="max"){if($===null||X.value<$)$=X.value}return $}}c$.create=($)=>{return new c$({checks:[],typeName:y.ZodString,coerce:$?.coerce??!1,...m($)})};function rD($,X){let J=($.toString().split(".")[1]||"").length,Q=(X.toString().split(".")[1]||"").length,q=J>Q?J:Q,Y=Number.parseInt($.toFixed(q).replace(".","")),z=Number.parseInt(X.toFixed(q).replace(".",""));return Y%z/10**q}class u0 extends l{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse($){if(this._def.coerce)$.data=Number($.data);if(this._getType($)!==_.number){let q=this._getOrReturnCtx($);return E(q,{code:O.invalid_type,expected:_.number,received:q.parsedType}),k}let J=void 0,Q=new _$;for(let q of this._def.checks)if(q.kind==="int"){if(!d.isInteger($.data))J=this._getOrReturnCtx($,J),E(J,{code:O.invalid_type,expected:"integer",received:"float",message:q.message}),Q.dirty()}else if(q.kind==="min"){if(q.inclusive?$.data<q.value:$.data<=q.value)J=this._getOrReturnCtx($,J),E(J,{code:O.too_small,minimum:q.value,type:"number",inclusive:q.inclusive,exact:!1,message:q.message}),Q.dirty()}else if(q.kind==="max"){if(q.inclusive?$.data>q.value:$.data>=q.value)J=this._getOrReturnCtx($,J),E(J,{code:O.too_big,maximum:q.value,type:"number",inclusive:q.inclusive,exact:!1,message:q.message}),Q.dirty()}else if(q.kind==="multipleOf"){if(rD($.data,q.value)!==0)J=this._getOrReturnCtx($,J),E(J,{code:O.not_multiple_of,multipleOf:q.value,message:q.message}),Q.dirty()}else if(q.kind==="finite"){if(!Number.isFinite($.data))J=this._getOrReturnCtx($,J),E(J,{code:O.not_finite,message:q.message}),Q.dirty()}else d.assertNever(q);return{status:Q.value,value:$.data}}gte($,X){return this.setLimit("min",$,!0,Z.toString(X))}gt($,X){return this.setLimit("min",$,!1,Z.toString(X))}lte($,X){return this.setLimit("max",$,!0,Z.toString(X))}lt($,X){return this.setLimit("max",$,!1,Z.toString(X))}setLimit($,X,J,Q){return new u0({...this._def,checks:[...this._def.checks,{kind:$,value:X,inclusive:J,message:Z.toString(Q)}]})}_addCheck($){return new u0({...this._def,checks:[...this._def.checks,$]})}int($){return this._addCheck({kind:"int",message:Z.toString($)})}positive($){return this._addCheck({kind:"min",value:0,inclusive:!1,message:Z.toString($)})}negative($){return this._addCheck({kind:"max",value:0,inclusive:!1,message:Z.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:0,inclusive:!0,message:Z.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:0,inclusive:!0,message:Z.toString($)})}multipleOf($,X){return this._addCheck({kind:"multipleOf",value:$,message:Z.toString(X)})}finite($){return this._addCheck({kind:"finite",message:Z.toString($)})}safe($){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:Z.toString($)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:Z.toString($)})}get minValue(){let $=null;for(let X of this._def.checks)if(X.kind==="min"){if($===null||X.value>$)$=X.value}return $}get maxValue(){let $=null;for(let X of this._def.checks)if(X.kind==="max"){if($===null||X.value<$)$=X.value}return $}get isInt(){return!!this._def.checks.find(($)=>$.kind==="int"||$.kind==="multipleOf"&&d.isInteger($.value))}get isFinite(){let $=null,X=null;for(let J of this._def.checks)if(J.kind==="finite"||J.kind==="int"||J.kind==="multipleOf")return!0;else if(J.kind==="min"){if(X===null||J.value>X)X=J.value}else if(J.kind==="max"){if($===null||J.value<$)$=J.value}return Number.isFinite(X)&&Number.isFinite($)}}u0.create=($)=>{return new u0({checks:[],typeName:y.ZodNumber,coerce:$?.coerce||!1,...m($)})};class m0 extends l{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse($){if(this._def.coerce)try{$.data=BigInt($.data)}catch{return this._getInvalidInput($)}if(this._getType($)!==_.bigint)return this._getInvalidInput($);let J=void 0,Q=new _$;for(let q of this._def.checks)if(q.kind==="min"){if(q.inclusive?$.data<q.value:$.data<=q.value)J=this._getOrReturnCtx($,J),E(J,{code:O.too_small,type:"bigint",minimum:q.value,inclusive:q.inclusive,message:q.message}),Q.dirty()}else if(q.kind==="max"){if(q.inclusive?$.data>q.value:$.data>=q.value)J=this._getOrReturnCtx($,J),E(J,{code:O.too_big,type:"bigint",maximum:q.value,inclusive:q.inclusive,message:q.message}),Q.dirty()}else if(q.kind==="multipleOf"){if($.data%q.value!==BigInt(0))J=this._getOrReturnCtx($,J),E(J,{code:O.not_multiple_of,multipleOf:q.value,message:q.message}),Q.dirty()}else d.assertNever(q);return{status:Q.value,value:$.data}}_getInvalidInput($){let X=this._getOrReturnCtx($);return E(X,{code:O.invalid_type,expected:_.bigint,received:X.parsedType}),k}gte($,X){return this.setLimit("min",$,!0,Z.toString(X))}gt($,X){return this.setLimit("min",$,!1,Z.toString(X))}lte($,X){return this.setLimit("max",$,!0,Z.toString(X))}lt($,X){return this.setLimit("max",$,!1,Z.toString(X))}setLimit($,X,J,Q){return new m0({...this._def,checks:[...this._def.checks,{kind:$,value:X,inclusive:J,message:Z.toString(Q)}]})}_addCheck($){return new m0({...this._def,checks:[...this._def.checks,$]})}positive($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:Z.toString($)})}negative($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:Z.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:Z.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:Z.toString($)})}multipleOf($,X){return this._addCheck({kind:"multipleOf",value:$,message:Z.toString(X)})}get minValue(){let $=null;for(let X of this._def.checks)if(X.kind==="min"){if($===null||X.value>$)$=X.value}return $}get maxValue(){let $=null;for(let X of this._def.checks)if(X.kind==="max"){if($===null||X.value<$)$=X.value}return $}}m0.create=($)=>{return new m0({checks:[],typeName:y.ZodBigInt,coerce:$?.coerce??!1,...m($)})};class Y6 extends l{_parse($){if(this._def.coerce)$.data=Boolean($.data);if(this._getType($)!==_.boolean){let J=this._getOrReturnCtx($);return E(J,{code:O.invalid_type,expected:_.boolean,received:J.parsedType}),k}return F$($.data)}}Y6.create=($)=>{return new Y6({typeName:y.ZodBoolean,coerce:$?.coerce||!1,...m($)})};class G8 extends l{_parse($){if(this._def.coerce)$.data=new Date($.data);if(this._getType($)!==_.date){let q=this._getOrReturnCtx($);return E(q,{code:O.invalid_type,expected:_.date,received:q.parsedType}),k}if(Number.isNaN($.data.getTime())){let q=this._getOrReturnCtx($);return E(q,{code:O.invalid_date}),k}let J=new _$,Q=void 0;for(let q of this._def.checks)if(q.kind==="min"){if($.data.getTime()<q.value)Q=this._getOrReturnCtx($,Q),E(Q,{code:O.too_small,message:q.message,inclusive:!0,exact:!1,minimum:q.value,type:"date"}),J.dirty()}else if(q.kind==="max"){if($.data.getTime()>q.value)Q=this._getOrReturnCtx($,Q),E(Q,{code:O.too_big,message:q.message,inclusive:!0,exact:!1,maximum:q.value,type:"date"}),J.dirty()}else d.assertNever(q);return{status:J.value,value:new Date($.data.getTime())}}_addCheck($){return new G8({...this._def,checks:[...this._def.checks,$]})}min($,X){return this._addCheck({kind:"min",value:$.getTime(),message:Z.toString(X)})}max($,X){return this._addCheck({kind:"max",value:$.getTime(),message:Z.toString(X)})}get minDate(){let $=null;for(let X of this._def.checks)if(X.kind==="min"){if($===null||X.value>$)$=X.value}return $!=null?new Date($):null}get maxDate(){let $=null;for(let X of this._def.checks)if(X.kind==="max"){if($===null||X.value<$)$=X.value}return $!=null?new Date($):null}}G8.create=($)=>{return new G8({checks:[],coerce:$?.coerce||!1,typeName:y.ZodDate,...m($)})};class k2 extends l{_parse($){if(this._getType($)!==_.symbol){let J=this._getOrReturnCtx($);return E(J,{code:O.invalid_type,expected:_.symbol,received:J.parsedType}),k}return F$($.data)}}k2.create=($)=>{return new k2({typeName:y.ZodSymbol,...m($)})};class z6 extends l{_parse($){if(this._getType($)!==_.undefined){let J=this._getOrReturnCtx($);return E(J,{code:O.invalid_type,expected:_.undefined,received:J.parsedType}),k}return F$($.data)}}z6.create=($)=>{return new z6({typeName:y.ZodUndefined,...m($)})};class G6 extends l{_parse($){if(this._getType($)!==_.null){let J=this._getOrReturnCtx($);return E(J,{code:O.invalid_type,expected:_.null,received:J.parsedType}),k}return F$($.data)}}G6.create=($)=>{return new G6({typeName:y.ZodNull,...m($)})};class W8 extends l{constructor(){super(...arguments);this._any=!0}_parse($){return F$($.data)}}W8.create=($)=>{return new W8({typeName:y.ZodAny,...m($)})};class h0 extends l{constructor(){super(...arguments);this._unknown=!0}_parse($){return F$($.data)}}h0.create=($)=>{return new h0({typeName:y.ZodUnknown,...m($)})};class J0 extends l{_parse($){let X=this._getOrReturnCtx($);return E(X,{code:O.invalid_type,expected:_.never,received:X.parsedType}),k}}J0.create=($)=>{return new J0({typeName:y.ZodNever,...m($)})};class x2 extends l{_parse($){if(this._getType($)!==_.undefined){let J=this._getOrReturnCtx($);return E(J,{code:O.invalid_type,expected:_.void,received:J.parsedType}),k}return F$($.data)}}x2.create=($)=>{return new x2({typeName:y.ZodVoid,...m($)})};class d$ extends l{_parse($){let{ctx:X,status:J}=this._processInputParams($),Q=this._def;if(X.parsedType!==_.array)return E(X,{code:O.invalid_type,expected:_.array,received:X.parsedType}),k;if(Q.exactLength!==null){let Y=X.data.length>Q.exactLength.value,z=X.data.length<Q.exactLength.value;if(Y||z)E(X,{code:Y?O.too_big:O.too_small,minimum:z?Q.exactLength.value:void 0,maximum:Y?Q.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:Q.exactLength.message}),J.dirty()}if(Q.minLength!==null){if(X.data.length<Q.minLength.value)E(X,{code:O.too_small,minimum:Q.minLength.value,type:"array",inclusive:!0,exact:!1,message:Q.minLength.message}),J.dirty()}if(Q.maxLength!==null){if(X.data.length>Q.maxLength.value)E(X,{code:O.too_big,maximum:Q.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Q.maxLength.message}),J.dirty()}if(X.common.async)return Promise.all([...X.data].map((Y,z)=>{return Q.type._parseAsync(new i$(X,Y,X.path,z))})).then((Y)=>{return _$.mergeArray(J,Y)});let q=[...X.data].map((Y,z)=>{return Q.type._parseSync(new i$(X,Y,X.path,z))});return _$.mergeArray(J,q)}get element(){return this._def.type}min($,X){return new d$({...this._def,minLength:{value:$,message:Z.toString(X)}})}max($,X){return new d$({...this._def,maxLength:{value:$,message:Z.toString(X)}})}length($,X){return new d$({...this._def,exactLength:{value:$,message:Z.toString(X)}})}nonempty($){return this.min(1,$)}}d$.create=($,X)=>{return new d$({type:$,minLength:null,maxLength:null,exactLength:null,typeName:y.ZodArray,...m(X)})};function Q6($){if($ instanceof z$){let X={};for(let J in $.shape){let Q=$.shape[J];X[J]=p$.create(Q6(Q))}return new z$({...$._def,shape:()=>X})}else if($ instanceof d$)return new d$({...$._def,type:Q6($.element)});else if($ instanceof p$)return p$.create(Q6($.unwrap()));else if($ instanceof w0)return w0.create(Q6($.unwrap()));else if($ instanceof Q0)return Q0.create($.items.map((X)=>Q6(X)));else return $}class z$ extends l{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let $=this._def.shape(),X=d.objectKeys($);return this._cached={shape:$,keys:X},this._cached}_parse($){if(this._getType($)!==_.object){let W=this._getOrReturnCtx($);return E(W,{code:O.invalid_type,expected:_.object,received:W.parsedType}),k}let{status:J,ctx:Q}=this._processInputParams($),{shape:q,keys:Y}=this._getCached(),z=[];if(!(this._def.catchall instanceof J0&&this._def.unknownKeys==="strip")){for(let W in Q.data)if(!Y.includes(W))z.push(W)}let G=[];for(let W of Y){let H=q[W],U=Q.data[W];G.push({key:{status:"valid",value:W},value:H._parse(new i$(Q,U,Q.path,W)),alwaysSet:W in Q.data})}if(this._def.catchall instanceof J0){let W=this._def.unknownKeys;if(W==="passthrough")for(let H of z)G.push({key:{status:"valid",value:H},value:{status:"valid",value:Q.data[H]}});else if(W==="strict"){if(z.length>0)E(Q,{code:O.unrecognized_keys,keys:z}),J.dirty()}else if(W==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let W=this._def.catchall;for(let H of z){let U=Q.data[H];G.push({key:{status:"valid",value:H},value:W._parse(new i$(Q,U,Q.path,H)),alwaysSet:H in Q.data})}}if(Q.common.async)return Promise.resolve().then(async()=>{let W=[];for(let H of G){let U=await H.key,V=await H.value;W.push({key:U,value:V,alwaysSet:H.alwaysSet})}return W}).then((W)=>{return _$.mergeObjectSync(J,W)});else return _$.mergeObjectSync(J,G)}get shape(){return this._def.shape()}strict($){return Z.errToObj,new z$({...this._def,unknownKeys:"strict",...$!==void 0?{errorMap:(X,J)=>{let Q=this._def.errorMap?.(X,J).message??J.defaultError;if(X.code==="unrecognized_keys")return{message:Z.errToObj($).message??Q};return{message:Q}}}:{}})}strip(){return new z$({...this._def,unknownKeys:"strip"})}passthrough(){return new z$({...this._def,unknownKeys:"passthrough"})}extend($){return new z$({...this._def,shape:()=>({...this._def.shape(),...$})})}merge($){return new z$({unknownKeys:$._def.unknownKeys,catchall:$._def.catchall,shape:()=>({...this._def.shape(),...$._def.shape()}),typeName:y.ZodObject})}setKey($,X){return this.augment({[$]:X})}catchall($){return new z$({...this._def,catchall:$})}pick($){let X={};for(let J of d.objectKeys($))if($[J]&&this.shape[J])X[J]=this.shape[J];return new z$({...this._def,shape:()=>X})}omit($){let X={};for(let J of d.objectKeys(this.shape))if(!$[J])X[J]=this.shape[J];return new z$({...this._def,shape:()=>X})}deepPartial(){return Q6(this)}partial($){let X={};for(let J of d.objectKeys(this.shape)){let Q=this.shape[J];if($&&!$[J])X[J]=Q;else X[J]=Q.optional()}return new z$({...this._def,shape:()=>X})}required($){let X={};for(let J of d.objectKeys(this.shape))if($&&!$[J])X[J]=this.shape[J];else{let q=this.shape[J];while(q instanceof p$)q=q._def.innerType;X[J]=q}return new z$({...this._def,shape:()=>X})}keyof(){return uY(d.objectKeys(this.shape))}}z$.create=($,X)=>{return new z$({shape:()=>$,unknownKeys:"strip",catchall:J0.create(),typeName:y.ZodObject,...m(X)})};z$.strictCreate=($,X)=>{return new z$({shape:()=>$,unknownKeys:"strict",catchall:J0.create(),typeName:y.ZodObject,...m(X)})};z$.lazycreate=($,X)=>{return new z$({shape:$,unknownKeys:"strip",catchall:J0.create(),typeName:y.ZodObject,...m(X)})};class W6 extends l{_parse($){let{ctx:X}=this._processInputParams($),J=this._def.options;function Q(q){for(let z of q)if(z.result.status==="valid")return z.result;for(let z of q)if(z.result.status==="dirty")return X.common.issues.push(...z.ctx.common.issues),z.result;let Y=q.map((z)=>new S$(z.ctx.common.issues));return E(X,{code:O.invalid_union,unionErrors:Y}),k}if(X.common.async)return Promise.all(J.map(async(q)=>{let Y={...X,common:{...X.common,issues:[]},parent:null};return{result:await q._parseAsync({data:X.data,path:X.path,parent:Y}),ctx:Y}})).then(Q);else{let q=void 0,Y=[];for(let G of J){let W={...X,common:{...X.common,issues:[]},parent:null},H=G._parseSync({data:X.data,path:X.path,parent:W});if(H.status==="valid")return H;else if(H.status==="dirty"&&!q)q={result:H,ctx:W};if(W.common.issues.length)Y.push(W.common.issues)}if(q)return X.common.issues.push(...q.ctx.common.issues),q.result;let z=Y.map((G)=>new S$(G));return E(X,{code:O.invalid_union,unionErrors:z}),k}}get options(){return this._def.options}}W6.create=($,X)=>{return new W6({options:$,typeName:y.ZodUnion,...m(X)})};var N0=($)=>{if($ instanceof U6)return N0($.schema);else if($ instanceof n$)return N0($.innerType());else if($ instanceof V6)return[$.value];else if($ instanceof l0)return $.options;else if($ instanceof B6)return d.objectValues($.enum);else if($ instanceof K6)return N0($._def.innerType);else if($ instanceof z6)return[void 0];else if($ instanceof G6)return[null];else if($ instanceof p$)return[void 0,...N0($.unwrap())];else if($ instanceof w0)return[null,...N0($.unwrap())];else if($ instanceof AX)return N0($.unwrap());else if($ instanceof N6)return N0($.unwrap());else if($ instanceof M6)return N0($._def.innerType);else return[]};class RX extends l{_parse($){let{ctx:X}=this._processInputParams($);if(X.parsedType!==_.object)return E(X,{code:O.invalid_type,expected:_.object,received:X.parsedType}),k;let J=this.discriminator,Q=X.data[J],q=this.optionsMap.get(Q);if(!q)return E(X,{code:O.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[J]}),k;if(X.common.async)return q._parseAsync({data:X.data,path:X.path,parent:X});else return q._parseSync({data:X.data,path:X.path,parent:X})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create($,X,J){let Q=new Map;for(let q of X){let Y=N0(q.shape[$]);if(!Y.length)throw Error(`A discriminator value for key \`${$}\` could not be extracted from all schema options`);for(let z of Y){if(Q.has(z))throw Error(`Discriminator property ${String($)} has duplicate value ${String(z)}`);Q.set(z,q)}}return new RX({typeName:y.ZodDiscriminatedUnion,discriminator:$,options:X,optionsMap:Q,...m(J)})}}function _9($,X){let J=X0($),Q=X0(X);if($===X)return{valid:!0,data:$};else if(J===_.object&&Q===_.object){let q=d.objectKeys(X),Y=d.objectKeys($).filter((G)=>q.indexOf(G)!==-1),z={...$,...X};for(let G of Y){let W=_9($[G],X[G]);if(!W.valid)return{valid:!1};z[G]=W.data}return{valid:!0,data:z}}else if(J===_.array&&Q===_.array){if($.length!==X.length)return{valid:!1};let q=[];for(let Y=0;Y<$.length;Y++){let z=$[Y],G=X[Y],W=_9(z,G);if(!W.valid)return{valid:!1};q.push(W.data)}return{valid:!0,data:q}}else if(J===_.date&&Q===_.date&&+$===+X)return{valid:!0,data:$};else return{valid:!1}}class H6 extends l{_parse($){let{status:X,ctx:J}=this._processInputParams($),Q=(q,Y)=>{if(OX(q)||OX(Y))return k;let z=_9(q.value,Y.value);if(!z.valid)return E(J,{code:O.invalid_intersection_types}),k;if(LX(q)||LX(Y))X.dirty();return{status:X.value,value:z.data}};if(J.common.async)return Promise.all([this._def.left._parseAsync({data:J.data,path:J.path,parent:J}),this._def.right._parseAsync({data:J.data,path:J.path,parent:J})]).then(([q,Y])=>Q(q,Y));else return Q(this._def.left._parseSync({data:J.data,path:J.path,parent:J}),this._def.right._parseSync({data:J.data,path:J.path,parent:J}))}}H6.create=($,X,J)=>{return new H6({left:$,right:X,typeName:y.ZodIntersection,...m(J)})};class Q0 extends l{_parse($){let{status:X,ctx:J}=this._processInputParams($);if(J.parsedType!==_.array)return E(J,{code:O.invalid_type,expected:_.array,received:J.parsedType}),k;if(J.data.length<this._def.items.length)return E(J,{code:O.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),k;if(!this._def.rest&&J.data.length>this._def.items.length)E(J,{code:O.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),X.dirty();let q=[...J.data].map((Y,z)=>{let G=this._def.items[z]||this._def.rest;if(!G)return null;return G._parse(new i$(J,Y,J.path,z))}).filter((Y)=>!!Y);if(J.common.async)return Promise.all(q).then((Y)=>{return _$.mergeArray(X,Y)});else return _$.mergeArray(X,q)}get items(){return this._def.items}rest($){return new Q0({...this._def,rest:$})}}Q0.create=($,X)=>{if(!Array.isArray($))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new Q0({items:$,typeName:y.ZodTuple,rest:null,...m(X)})};class y2 extends l{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:X,ctx:J}=this._processInputParams($);if(J.parsedType!==_.object)return E(J,{code:O.invalid_type,expected:_.object,received:J.parsedType}),k;let Q=[],q=this._def.keyType,Y=this._def.valueType;for(let z in J.data)Q.push({key:q._parse(new i$(J,z,J.path,z)),value:Y._parse(new i$(J,J.data[z],J.path,z)),alwaysSet:z in J.data});if(J.common.async)return _$.mergeObjectAsync(X,Q);else return _$.mergeObjectSync(X,Q)}get element(){return this._def.valueType}static create($,X,J){if(X instanceof l)return new y2({keyType:$,valueType:X,typeName:y.ZodRecord,...m(J)});return new y2({keyType:c$.create(),valueType:$,typeName:y.ZodRecord,...m(X)})}}class g2 extends l{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:X,ctx:J}=this._processInputParams($);if(J.parsedType!==_.map)return E(J,{code:O.invalid_type,expected:_.map,received:J.parsedType}),k;let Q=this._def.keyType,q=this._def.valueType,Y=[...J.data.entries()].map(([z,G],W)=>{return{key:Q._parse(new i$(J,z,J.path,[W,"key"])),value:q._parse(new i$(J,G,J.path,[W,"value"]))}});if(J.common.async){let z=new Map;return Promise.resolve().then(async()=>{for(let G of Y){let W=await G.key,H=await G.value;if(W.status==="aborted"||H.status==="aborted")return k;if(W.status==="dirty"||H.status==="dirty")X.dirty();z.set(W.value,H.value)}return{status:X.value,value:z}})}else{let z=new Map;for(let G of Y){let{key:W,value:H}=G;if(W.status==="aborted"||H.status==="aborted")return k;if(W.status==="dirty"||H.status==="dirty")X.dirty();z.set(W.value,H.value)}return{status:X.value,value:z}}}}g2.create=($,X,J)=>{return new g2({valueType:X,keyType:$,typeName:y.ZodMap,...m(J)})};class H8 extends l{_parse($){let{status:X,ctx:J}=this._processInputParams($);if(J.parsedType!==_.set)return E(J,{code:O.invalid_type,expected:_.set,received:J.parsedType}),k;let Q=this._def;if(Q.minSize!==null){if(J.data.size<Q.minSize.value)E(J,{code:O.too_small,minimum:Q.minSize.value,type:"set",inclusive:!0,exact:!1,message:Q.minSize.message}),X.dirty()}if(Q.maxSize!==null){if(J.data.size>Q.maxSize.value)E(J,{code:O.too_big,maximum:Q.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Q.maxSize.message}),X.dirty()}let q=this._def.valueType;function Y(G){let W=new Set;for(let H of G){if(H.status==="aborted")return k;if(H.status==="dirty")X.dirty();W.add(H.value)}return{status:X.value,value:W}}let z=[...J.data.values()].map((G,W)=>q._parse(new i$(J,G,J.path,W)));if(J.common.async)return Promise.all(z).then((G)=>Y(G));else return Y(z)}min($,X){return new H8({...this._def,minSize:{value:$,message:Z.toString(X)}})}max($,X){return new H8({...this._def,maxSize:{value:$,message:Z.toString(X)}})}size($,X){return this.min($,X).max($,X)}nonempty($){return this.min(1,$)}}H8.create=($,X)=>{return new H8({valueType:$,minSize:null,maxSize:null,typeName:y.ZodSet,...m(X)})};class q6 extends l{constructor(){super(...arguments);this.validate=this.implement}_parse($){let{ctx:X}=this._processInputParams($);if(X.parsedType!==_.function)return E(X,{code:O.invalid_type,expected:_.function,received:X.parsedType}),k;function J(z,G){return f2({data:z,path:X.path,errorMaps:[X.common.contextualErrorMap,X.schemaErrorMap,X6(),M0].filter((W)=>!!W),issueData:{code:O.invalid_arguments,argumentsError:G}})}function Q(z,G){return f2({data:z,path:X.path,errorMaps:[X.common.contextualErrorMap,X.schemaErrorMap,X6(),M0].filter((W)=>!!W),issueData:{code:O.invalid_return_type,returnTypeError:G}})}let q={errorMap:X.common.contextualErrorMap},Y=X.data;if(this._def.returns instanceof U8){let z=this;return F$(async function(...G){let W=new S$([]),H=await z._def.args.parseAsync(G,q).catch((B)=>{throw W.addIssue(J(G,B)),W}),U=await Reflect.apply(Y,this,H);return await z._def.returns._def.type.parseAsync(U,q).catch((B)=>{throw W.addIssue(Q(U,B)),W})})}else{let z=this;return F$(function(...G){let W=z._def.args.safeParse(G,q);if(!W.success)throw new S$([J(G,W.error)]);let H=Reflect.apply(Y,this,W.data),U=z._def.returns.safeParse(H,q);if(!U.success)throw new S$([Q(H,U.error)]);return U.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...$){return new q6({...this._def,args:Q0.create($).rest(h0.create())})}returns($){return new q6({...this._def,returns:$})}implement($){return this.parse($)}strictImplement($){return this.parse($)}static create($,X,J){return new q6({args:$?$:Q0.create([]).rest(h0.create()),returns:X||h0.create(),typeName:y.ZodFunction,...m(J)})}}class U6 extends l{get schema(){return this._def.getter()}_parse($){let{ctx:X}=this._processInputParams($);return this._def.getter()._parse({data:X.data,path:X.path,parent:X})}}U6.create=($,X)=>{return new U6({getter:$,typeName:y.ZodLazy,...m(X)})};class V6 extends l{_parse($){if($.data!==this._def.value){let X=this._getOrReturnCtx($);return E(X,{received:X.data,code:O.invalid_literal,expected:this._def.value}),k}return{status:"valid",value:$.data}}get value(){return this._def.value}}V6.create=($,X)=>{return new V6({value:$,typeName:y.ZodLiteral,...m(X)})};function uY($,X){return new l0({values:$,typeName:y.ZodEnum,...m(X)})}class l0 extends l{_parse($){if(typeof $.data!=="string"){let X=this._getOrReturnCtx($),J=this._def.values;return E(X,{expected:d.joinValues(J),received:X.parsedType,code:O.invalid_type}),k}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has($.data)){let X=this._getOrReturnCtx($),J=this._def.values;return E(X,{received:X.data,code:O.invalid_enum_value,options:J}),k}return F$($.data)}get options(){return this._def.values}get enum(){let $={};for(let X of this._def.values)$[X]=X;return $}get Values(){let $={};for(let X of this._def.values)$[X]=X;return $}get Enum(){let $={};for(let X of this._def.values)$[X]=X;return $}extract($,X=this._def){return l0.create($,{...this._def,...X})}exclude($,X=this._def){return l0.create(this.options.filter((J)=>!$.includes(J)),{...this._def,...X})}}l0.create=uY;class B6 extends l{_parse($){let X=d.getValidEnumValues(this._def.values),J=this._getOrReturnCtx($);if(J.parsedType!==_.string&&J.parsedType!==_.number){let Q=d.objectValues(X);return E(J,{expected:d.joinValues(Q),received:J.parsedType,code:O.invalid_type}),k}if(!this._cache)this._cache=new Set(d.getValidEnumValues(this._def.values));if(!this._cache.has($.data)){let Q=d.objectValues(X);return E(J,{received:J.data,code:O.invalid_enum_value,options:Q}),k}return F$($.data)}get enum(){return this._def.values}}B6.create=($,X)=>{return new B6({values:$,typeName:y.ZodNativeEnum,...m(X)})};class U8 extends l{unwrap(){return this._def.type}_parse($){let{ctx:X}=this._processInputParams($);if(X.parsedType!==_.promise&&X.common.async===!1)return E(X,{code:O.invalid_type,expected:_.promise,received:X.parsedType}),k;let J=X.parsedType===_.promise?X.data:Promise.resolve(X.data);return F$(J.then((Q)=>{return this._def.type.parseAsync(Q,{path:X.path,errorMap:X.common.contextualErrorMap})}))}}U8.create=($,X)=>{return new U8({type:$,typeName:y.ZodPromise,...m(X)})};class n$ extends l{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===y.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse($){let{status:X,ctx:J}=this._processInputParams($),Q=this._def.effect||null,q={addIssue:(Y)=>{if(E(J,Y),Y.fatal)X.abort();else X.dirty()},get path(){return J.path}};if(q.addIssue=q.addIssue.bind(q),Q.type==="preprocess"){let Y=Q.transform(J.data,q);if(J.common.async)return Promise.resolve(Y).then(async(z)=>{if(X.value==="aborted")return k;let G=await this._def.schema._parseAsync({data:z,path:J.path,parent:J});if(G.status==="aborted")return k;if(G.status==="dirty")return z8(G.value);if(X.value==="dirty")return z8(G.value);return G});else{if(X.value==="aborted")return k;let z=this._def.schema._parseSync({data:Y,path:J.path,parent:J});if(z.status==="aborted")return k;if(z.status==="dirty")return z8(z.value);if(X.value==="dirty")return z8(z.value);return z}}if(Q.type==="refinement"){let Y=(z)=>{let G=Q.refinement(z,q);if(J.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return z};if(J.common.async===!1){let z=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(z.status==="aborted")return k;if(z.status==="dirty")X.dirty();return Y(z.value),{status:X.value,value:z.value}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((z)=>{if(z.status==="aborted")return k;if(z.status==="dirty")X.dirty();return Y(z.value).then(()=>{return{status:X.value,value:z.value}})})}if(Q.type==="transform")if(J.common.async===!1){let Y=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(!v0(Y))return k;let z=Q.transform(Y.value,q);if(z instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:X.value,value:z}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((Y)=>{if(!v0(Y))return k;return Promise.resolve(Q.transform(Y.value,q)).then((z)=>({status:X.value,value:z}))});d.assertNever(Q)}}n$.create=($,X,J)=>{return new n$({schema:$,typeName:y.ZodEffects,effect:X,...m(J)})};n$.createWithPreprocess=($,X,J)=>{return new n$({schema:X,effect:{type:"preprocess",transform:$},typeName:y.ZodEffects,...m(J)})};class p$ extends l{_parse($){if(this._getType($)===_.undefined)return F$(void 0);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}p$.create=($,X)=>{return new p$({innerType:$,typeName:y.ZodOptional,...m(X)})};class w0 extends l{_parse($){if(this._getType($)===_.null)return F$(null);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}w0.create=($,X)=>{return new w0({innerType:$,typeName:y.ZodNullable,...m(X)})};class K6 extends l{_parse($){let{ctx:X}=this._processInputParams($),J=X.data;if(X.parsedType===_.undefined)J=this._def.defaultValue();return this._def.innerType._parse({data:J,path:X.path,parent:X})}removeDefault(){return this._def.innerType}}K6.create=($,X)=>{return new K6({innerType:$,typeName:y.ZodDefault,defaultValue:typeof X.default==="function"?X.default:()=>X.default,...m(X)})};class M6 extends l{_parse($){let{ctx:X}=this._processInputParams($),J={...X,common:{...X.common,issues:[]}},Q=this._def.innerType._parse({data:J.data,path:J.path,parent:{...J}});if(J6(Q))return Q.then((q)=>{return{status:"valid",value:q.status==="valid"?q.value:this._def.catchValue({get error(){return new S$(J.common.issues)},input:J.data})}});else return{status:"valid",value:Q.status==="valid"?Q.value:this._def.catchValue({get error(){return new S$(J.common.issues)},input:J.data})}}removeCatch(){return this._def.innerType}}M6.create=($,X)=>{return new M6({innerType:$,typeName:y.ZodCatch,catchValue:typeof X.catch==="function"?X.catch:()=>X.catch,...m(X)})};class v2 extends l{_parse($){if(this._getType($)!==_.nan){let J=this._getOrReturnCtx($);return E(J,{code:O.invalid_type,expected:_.nan,received:J.parsedType}),k}return{status:"valid",value:$.data}}}v2.create=($)=>{return new v2({typeName:y.ZodNaN,...m($)})};var aD=Symbol("zod_brand");class AX extends l{_parse($){let{ctx:X}=this._processInputParams($),J=X.data;return this._def.type._parse({data:J,path:X.path,parent:X})}unwrap(){return this._def.type}}class h2 extends l{_parse($){let{status:X,ctx:J}=this._processInputParams($);if(J.common.async)return(async()=>{let q=await this._def.in._parseAsync({data:J.data,path:J.path,parent:J});if(q.status==="aborted")return k;if(q.status==="dirty")return X.dirty(),z8(q.value);else return this._def.out._parseAsync({data:q.value,path:J.path,parent:J})})();else{let Q=this._def.in._parseSync({data:J.data,path:J.path,parent:J});if(Q.status==="aborted")return k;if(Q.status==="dirty")return X.dirty(),{status:"dirty",value:Q.value};else return this._def.out._parseSync({data:Q.value,path:J.path,parent:J})}}static create($,X){return new h2({in:$,out:X,typeName:y.ZodPipeline})}}class N6 extends l{_parse($){let X=this._def.innerType._parse($),J=(Q)=>{if(v0(Q))Q.value=Object.freeze(Q.value);return Q};return J6(X)?X.then((Q)=>J(Q)):J(X)}unwrap(){return this._def.innerType}}N6.create=($,X)=>{return new N6({innerType:$,typeName:y.ZodReadonly,...m(X)})};function yY($,X){let J=typeof $==="function"?$(X):typeof $==="string"?{message:$}:$;return typeof J==="string"?{message:J}:J}function mY($,X={},J){if($)return W8.create().superRefine((Q,q)=>{let Y=$(Q);if(Y instanceof Promise)return Y.then((z)=>{if(!z){let G=yY(X,Q),W=G.fatal??J??!0;q.addIssue({code:"custom",...G,fatal:W})}});if(!Y){let z=yY(X,Q),G=z.fatal??J??!0;q.addIssue({code:"custom",...z,fatal:G})}return});return W8.create()}var sD={object:z$.lazycreate},y;(function($){$.ZodString="ZodString",$.ZodNumber="ZodNumber",$.ZodNaN="ZodNaN",$.ZodBigInt="ZodBigInt",$.ZodBoolean="ZodBoolean",$.ZodDate="ZodDate",$.ZodSymbol="ZodSymbol",$.ZodUndefined="ZodUndefined",$.ZodNull="ZodNull",$.ZodAny="ZodAny",$.ZodUnknown="ZodUnknown",$.ZodNever="ZodNever",$.ZodVoid="ZodVoid",$.ZodArray="ZodArray",$.ZodObject="ZodObject",$.ZodUnion="ZodUnion",$.ZodDiscriminatedUnion="ZodDiscriminatedUnion",$.ZodIntersection="ZodIntersection",$.ZodTuple="ZodTuple",$.ZodRecord="ZodRecord",$.ZodMap="ZodMap",$.ZodSet="ZodSet",$.ZodFunction="ZodFunction",$.ZodLazy="ZodLazy",$.ZodLiteral="ZodLiteral",$.ZodEnum="ZodEnum",$.ZodEffects="ZodEffects",$.ZodNativeEnum="ZodNativeEnum",$.ZodOptional="ZodOptional",$.ZodNullable="ZodNullable",$.ZodDefault="ZodDefault",$.ZodCatch="ZodCatch",$.ZodPromise="ZodPromise",$.ZodBranded="ZodBranded",$.ZodPipeline="ZodPipeline",$.ZodReadonly="ZodReadonly"})(y||(y={}));var oD=($,X={message:`Input not instance of ${$.name}`})=>mY((J)=>J instanceof $,X),lY=c$.create,cY=u0.create,tD=v2.create,eD=m0.create,dY=Y6.create,$O=G8.create,XO=k2.create,JO=z6.create,QO=G6.create,qO=W8.create,YO=h0.create,zO=J0.create,GO=x2.create,WO=d$.create,HO=z$.create,UO=z$.strictCreate,VO=W6.create,BO=RX.create,KO=H6.create,MO=Q0.create,NO=y2.create,wO=g2.create,DO=H8.create,OO=q6.create,LO=U6.create,RO=V6.create,AO=l0.create,_O=B6.create,FO=U8.create,IO=n$.create,EO=p$.create,SO=w0.create,jO=n$.createWithPreprocess,TO=h2.create,ZO=()=>lY().optional(),CO=()=>cY().optional(),PO=()=>dY().optional(),bO={string:($)=>c$.create({...$,coerce:!0}),number:($)=>u0.create({...$,coerce:!0}),boolean:($)=>Y6.create({...$,coerce:!0}),bigint:($)=>m0.create({...$,coerce:!0}),date:($)=>G8.create({...$,coerce:!0})};var fO=k;var kO=R$.object({file:R$.string().optional().describe("Path to .faf file to score (defaults to project.faf)"),verbose:R$.boolean().optional().default(!1).describe("Show detailed slot breakdown"),status:R$.boolean().optional().default(!1).describe("Compact one-liner output"),json:R$.boolean().optional().default(!1).describe("Output as JSON")});class F9 extends Y8{name="faf_score";description="Score AI-readiness of .faf file (0-100%)";permission="plan";risk="safe";schema=kO;tags=["faf","ai-context","scoring","read-only"];async execute($,X){let J=Date.now();try{let Q="",q=null,Y=console.log,z=console.error;console.log=(...F)=>{Q+=F.join(" ")+`
|
|
379
|
+
`},console.error=(...F)=>{Q+=F.join(" ")+`
|
|
380
|
+
`};try{await d6($.file,{verbose:$.verbose,status:$.status,json:$.json})}finally{console.log=Y,console.error=z}let G=Q.match(/(\d+)%/),W=Q.match(/(RED|YELLOW|GREEN|SILVER|GOLD|TROPHY)/),H=Q.match(/(\d+)\/(\d+) slots/),U=G?parseInt(G[1]):0,V=W?W[1]:"UNKNOWN",B=H?parseInt(H[1]):0,N=H?parseInt(H[2]):0,R=[],M=[];if($.verbose&&Q.includes("empty")){let F=Q.split(`
|
|
381
|
+
`);for(let T of F)if(T.includes("empty")&&T.includes("○")){let P=T.match(/([a-z_]+\.[a-z_]+)/);if(P)R.push(P[1])}}let D={score:U,tier:V,populated:B,total:N,empty:R,ignored:M,file:$.file||"project.faf"};if($.json)D.raw=q;if(X.telemetry)console.log(`[MCP] faf_score executed in ${Date.now()-J}ms`);return D}catch(Q){throw Error(`Failed to score FAF file: ${Q instanceof Error?Q.message:String(Q)}`)}}canExecute($){return!0}}import{existsSync as pY}from"fs";import{join as iY}from"path";var xO=R$.object({yolo:R$.boolean().optional().default(!1).describe("Quick init with sensible defaults"),quick:R$.boolean().optional().default(!1).describe("Alias for --yolo"),force:R$.boolean().optional().default(!1).describe("Overwrite existing project.faf"),output:R$.string().optional().describe("Output path for generated .faf file")});class I9 extends Y8{name="faf_init";description="Initialize .faf file for current project";permission="standard";risk="low";schema=xO;tags=["faf","ai-context","initialization","file-creation"];async execute($,X){let J=Date.now(),Q=$.output||iY(X.workingDirectory,"project.faf"),q=pY(Q);if(q&&!$.force&&!X.dryRun)throw Error(`File ${Q} already exists. Use force: true to overwrite.`);if(X.dryRun)return{created:!1,file:Q,score:0,overwritten:!1};try{let Y="",z=console.log;console.log=(...V)=>{Y+=V.join(" ")+`
|
|
382
|
+
`};try{await p6({yolo:$.yolo||$.quick,force:$.force,output:$.output})}finally{console.log=z}let G=Y.includes("created"),W=Y.includes("updated"),H=Y.match(/(\d+)%/),U={created:G||!q,file:Q,score:H?parseInt(H[1]):0,overwritten:q&&$.force};if(Y.includes("TypeScript"))U.detectedLanguage="TypeScript";else if(Y.includes("JavaScript"))U.detectedLanguage="JavaScript";else if(Y.includes("Python"))U.detectedLanguage="Python";if(X.telemetry)console.log(`[MCP] faf_init executed in ${Date.now()-J}ms`);return U}catch(Y){throw Error(`Failed to initialize FAF file: ${Y instanceof Error?Y.message:String(Y)}`)}}canExecute($){if(!super.canExecute($))return!1;let X=iY($.workingDirectory,"project.faf");if($.permissionMode==="plan"&&pY(X))return!1;return!0}}var yO=R$.object({watch:R$.boolean().optional().default(!1).describe("Watch for changes and sync continuously"),direction:R$.enum(["auto","push","pull"]).optional().default("auto").describe("Force sync direction")});class E9 extends Y8{name="faf_sync";description="Bi-directional sync between .faf and CLAUDE.md files";permission="auto";risk="low";schema=yO;tags=["faf","ai-context","synchronization","file-modification"];async execute($,X){let J=Date.now();if(X.dryRun)return{synced:!1,direction:"none",files:{faf:"project.faf",claude:"CLAUDE.md"},lastModified:{},changes:[],watchMode:!1};try{let Q="",q=console.log;console.log=(...B)=>{Q+=B.join(" ")+`
|
|
383
|
+
`};try{await i6({watch:$.watch,direction:$.direction})}finally{console.log=q}let Y=Q.includes("→ CLAUDE.md"),z=Q.includes("← project.faf"),G=Q.includes("synced")||Q.includes("updated"),W="none";if(Y)W="push";else if(z)W="pull";let H=[],U=Q.split(`
|
|
384
|
+
`);for(let B of U)if(B.includes("updated")||B.includes("created")||B.includes("synced"))H.push(B.trim());let V={synced:G,direction:W,files:{faf:"project.faf",claude:"CLAUDE.md"},lastModified:{},changes:H,watchMode:$.watch};if(X.telemetry)console.log(`[MCP] faf_sync executed in ${Date.now()-J}ms`);return V}catch(Q){throw Error(`Failed to sync FAF files: ${Q instanceof Error?Q.message:String(Q)}`)}}canExecute($){if(!super.canExecute($))return!1;if($.permissionMode==="plan")return!1;return!0}}class S9{registry=new L9;config;constructor($){this.config=$,this.initializeTools()}initializeTools(){let $=[new F9,new I9,new E9];for(let X of $)this.registry.register(X)}async listTools(){return this.registry.list().map(($)=>({name:$.name,description:$.description,inputSchema:$.schema,permissions:[$.permission,$.risk],tags:$.tags}))}async callTool($,X){let J=this.registry.get($);if(!J)return{content:[{type:"text",text:`Tool '${$}' not found`}],isError:!0};try{let Q={workingDirectory:this.config.workingDirectory,userId:this.config.userId,sessionId:this.config.sessionId,permissionMode:this.config.permissionMode,dryRun:this.config.dryRun,telemetry:this.config.telemetryEnabled};if(!J.canExecute(Q))return{content:[{type:"text",text:`Tool '${$}' cannot execute with current permissions (${this.config.permissionMode})`}],isError:!0};let q=J.validate(X),Y=await J.execute(q,Q);return{content:[{type:"text",text:JSON.stringify(Y,null,2)}]}}catch(Q){return{content:[{type:"text",text:`Error executing tool '${$}': ${Q instanceof Error?Q.message:String(Q)}`}],isError:!0}}}getToolsByPermission($){return this.registry.listByPermission($)}async getInfo(){let $=this.registry.list(),X=[...new Set($.map((G)=>G.permission))],{readFileSync:J}=await import("fs"),{dirname:Q,join:q}=await import("path"),{fileURLToPath:Y}=await import("url"),z="unknown";try{z=JSON.parse(J(q(Q(Y(import.meta.url)),"../../package.json"),"utf-8")).version}catch{z="dev"}return{name:"claude-faf-mcp",version:z,description:"Foundational AI-Context Format tools for Claude Code",tools:$.length,permissions:X}}async requestPermissionElevation($,X){let J=this.registry.get($);if(!J)return!1;if(J.risk==="safe"&&X<="standard")return!0;return!1}}class j9{static classify($,X={}){if(this.isReadOnly($,X))return{permission:"plan",risk:"safe",reasons:["Read-only operation","No file modifications"],allowAutoApproval:!0,requiresConfirmation:!1};if(this.isSafeConfig($,X))return{permission:"auto",risk:"low",reasons:["Safe configuration change","Limited scope"],allowAutoApproval:!0,requiresConfirmation:!1};if(this.isFileOperation($,X)){let J=X.force||X.overwrite;return{permission:"standard",risk:J?"medium":"low",reasons:["File operation",J?"May overwrite existing files":"Creates new files"],allowAutoApproval:!1,requiresConfirmation:!0}}if(this.isHighRisk($,X))return{permission:"bypass",risk:"high",reasons:["High-risk operation","Requires manual approval"],allowAutoApproval:!1,requiresConfirmation:!0};return{permission:"standard",risk:"medium",reasons:["Unknown operation type","Requires confirmation"],allowAutoApproval:!1,requiresConfirmation:!0}}static isReadOnly($,X){if(["faf_score","faf_info","faf_formats","faf_check","faf_validate"].includes($))return!0;if(X.dryRun||X.validate||X.check)return!0;return!1}static isSafeConfig($,X){if(["faf_sync","faf_export","faf_convert"].includes($))return!0;return!1}static isFileOperation($,X){if(["faf_init","faf_auto","faf_edit","faf_migrate"].includes($))return!0;if(X.output||X.write||X.save)return!0;return!1}static isHighRisk($,X){if(["faf_compile","faf_execute","faf_deploy"].includes($))return!0;if(X.execute||X.deploy||X.publish)return!0;if(X.force&&(X.overwrite||X.delete))return!0;return!1}static getRequiredPermission($,X){let J=$.permission;if(X.hasExistingFiles&&J==="standard")J="auto";if(X.isProduction&&J<"standard")J="standard";return J}static shouldConfirm($,X){if($.requiresConfirmation)return!0;let J=["plan","standard","auto","bypass"],Q=J.indexOf(X),q=J.indexOf($.permission);return Q<q}}class nY{handlers=new Map;register($,X){if(!this.handlers.has($))this.handlers.set($,[]);this.handlers.get($).push(X)}async execute($,X){let J=this.handlers.get($)||[];for(let Q of J){let q=await Q(X);if(q.action==="deny"||q.action==="ask")return q;if(q.action==="defer")continue;if(q.modifiedInput)X.input=q.modifiedInput}return{action:"allow"}}}class u2{static preToolUse=async($)=>{let X=j9.classify($.toolName,$.input),J=["plan","standard","auto","bypass"],Q=J.indexOf(X.permission);if(!(J.indexOf($.context.permissionMode)>=Q))return{action:"deny",reason:`Insufficient permissions. Required: ${X.permission}, Current: ${$.context.permissionMode}`};if(X.risk==="high"&&!$.context.dryRun)return{action:"ask",reason:`High-risk operation detected: ${X.reasons.join(", ")}`};if($.input.force&&$.toolName==="faf_init")return{action:"ask",reason:"This will overwrite existing project.faf file"};return{action:"allow"}};static postEdit=async($)=>{let X=[".ts",".js",".py",".md",".json",".yaml",".toml"],J=$.metadata?.fileName||"";if(!X.some((q)=>J.endsWith(q)))return{action:"allow"};if(J!=="project.faf"&&J!=="CLAUDE.md")try{return{action:"allow",additionalContext:"Triggered auto-sync of project context due to file changes"}}catch(q){return{action:"allow",reason:"Auto-sync failed but continuing"}}return{action:"allow"}};static sessionStart=async($)=>{let X=$.metadata?.hasProjectFaf||!1,J=$.metadata?.hasClaude||!1;if(!X&&!J)return{action:"allow",additionalContext:"No FAF context detected. Run /faf-quickstart to initialize AI-ready project context."};if(X&&J)return{action:"allow",additionalContext:"FAF bi-sync active. Context automatically synchronized between .faf and CLAUDE.md."};return{action:"allow"}};static sessionEnd=async($)=>{if($.metadata?.hasIncompleteInterview)return{action:"allow",additionalContext:'FAF interview state saved. Resume with "faf go --resume"'};return{action:"allow",additionalContext:"FAF session state preserved for next interaction"}}}function rY(){let $=new nY;return $.register("pre-tool-use",u2.preToolUse),$.register("post-edit",u2.postEdit),$.register("session-start",u2.sessionStart),$.register("session-end",u2.sessionEnd),$}import{existsSync as aY}from"fs";import{join as sY}from"path";class T9{server;hooks;config;constructor($){if(this.config={workingDirectory:$.workingDirectory,permissionMode:$.permissionMode||"standard",telemetryEnabled:$.telemetryEnabled??!0,sessionId:$.sessionId||this.generateSessionId(),userId:$.userId||"anonymous",dryRun:$.dryRun??!1,enableHooks:$.enableHooks??!0},this.server=new S9({permissionMode:this.config.permissionMode,telemetryEnabled:this.config.telemetryEnabled,workingDirectory:this.config.workingDirectory,sessionId:this.config.sessionId,userId:this.config.userId,dryRun:this.config.dryRun}),this.config.enableHooks)this.hooks=rY(),this.initializeSession()}getServer(){return this.server}async executeTool($,X){if(this.hooks){let Q=await this.hooks.execute("pre-tool-use",{toolName:$,input:X,context:{workingDirectory:this.config.workingDirectory,permissionMode:this.config.permissionMode,telemetry:this.config.telemetryEnabled,sessionId:this.config.sessionId,userId:this.config.userId,dryRun:this.config.dryRun}});if(Q.action==="deny")throw Error(`Tool execution denied: ${Q.reason}`);if(Q.action==="ask")console.log(`⚠️ Confirmation required: ${Q.reason}`);if(Q.modifiedInput)X=Q.modifiedInput}let J=await this.server.callTool($,X);if(this.hooks&&!J.isError)await this.hooks.execute("post-tool-use",{toolName:$,input:X,context:{workingDirectory:this.config.workingDirectory,permissionMode:this.config.permissionMode,telemetry:this.config.telemetryEnabled,sessionId:this.config.sessionId,userId:this.config.userId,dryRun:this.config.dryRun},metadata:{result:J}});return J}async getAvailableTools(){return(await this.server.listTools()).filter((X)=>{let J=X.permissions[0];return this.hasPermission(J)})}hasPermission($){let X=["plan","standard","auto","bypass"],J=X.indexOf(this.config.permissionMode),Q=X.indexOf($);return J>=Q}async initializeSession(){if(!this.hooks)return;let $=aY(sY(this.config.workingDirectory,"project.faf")),X=aY(sY(this.config.workingDirectory,"CLAUDE.md"));await this.hooks.execute("session-start",{toolName:"session_init",input:{},context:{workingDirectory:this.config.workingDirectory,permissionMode:this.config.permissionMode,telemetry:this.config.telemetryEnabled,sessionId:this.config.sessionId,userId:this.config.userId,dryRun:this.config.dryRun},metadata:{hasProjectFaf:$,hasClaude:X}})}async finalizeSession(){if(!this.hooks)return;await this.hooks.execute("session-end",{toolName:"session_end",input:{},context:{workingDirectory:this.config.workingDirectory,permissionMode:this.config.permissionMode,telemetry:this.config.telemetryEnabled,sessionId:this.config.sessionId,userId:this.config.userId,dryRun:this.config.dryRun},metadata:{hasIncompleteInterview:!1}})}generateSessionId(){return`faf_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}async getStatus(){let $=await this.server.getInfo(),X=await this.getAvailableTools();return{server:$,hooks:!!this.hooks,permissions:this.config.permissionMode,tools:X.length,session:this.config.sessionId}}}t();async function oY($={}){let X=process.cwd(),J="standard";if($.permission)switch($.permission.toLowerCase()){case"plan":J="plan";break;case"standard":J="standard";break;case"auto":J="auto";break;case"bypass":J="bypass";break;default:console.log(`${L("!")} Unknown permission level: ${$.permission}`);return}console.log(`${L("◆")} Testing Claude Code MCP Native Integration...`),console.log(`${w(" Working Directory:")} ${X}`),console.log(`${w(" Permission Level:")} ${J}`),console.log("");let Q=new T9({workingDirectory:X,permissionMode:J,dryRun:$.dryRun||!1,enableHooks:$.hooks!==!1,telemetryEnabled:!0});try{if($.status){let q=await Q.getStatus();console.log(`${C("Integration Status:")}`),console.log(` Server: ${q.server.name} v${q.server.version}`),console.log(` Tools Available: ${q.tools}`),console.log(` Hooks Enabled: ${q.hooks?"Yes":"No"}`),console.log(` Permission Mode: ${q.permissions}`),console.log(` Session ID: ${q.session}`),console.log("")}if($.tool){console.log(`${C("Testing Tool:")} ${$.tool}`);let q={};if($.tool==="faf_score")q={verbose:!0};else if($.tool==="faf_init")q={yolo:!0,dryRun:$.dryRun};else if($.tool==="faf_sync")q={direction:"auto"};let Y=await Q.executeTool($.tool,q);if(Y.isError)console.log(`${L("✗")} Error: ${Y.content[0].text}`);else console.log(`${L("✓")} Success:`),console.log(Y.content[0].text);console.log("")}else{let q=await Q.getAvailableTools();console.log(`${C("Available Tools:")}`);for(let Y of q){let z=Y.permissions.join(", "),G=Y.tags.join(", ");console.log(` ${C(Y.name)} - ${Y.description}`),console.log(` ${w("Permissions:")} ${z}`),console.log(` ${w("Tags:")} ${G}`)}console.log("");for(let Y of q.slice(0,2)){console.log(`${L("→")} Testing ${Y.name}...`);try{let z={};if(Y.name==="faf_score")z={status:!0};else if(Y.name==="faf_init")z={yolo:!0,dryRun:!0};else if(Y.name==="faf_sync")z={direction:"auto"};let G=await Q.executeTool(Y.name,z);if(G.isError)console.log(` ${L("✗")} ${G.content[0].text.split("\\n")[0]}`);else console.log(` ${L("✓")} Success`)}catch(z){console.log(` ${L("✗")} ${z instanceof Error?z.message:String(z)}`)}}}await Q.finalizeSession(),console.log(`${L("✓")} MCP integration test completed`),console.log(""),console.log(`${w("Next steps:")}`),console.log(` • Run ${C("faf claude-sync")} to sync with Claude Code skills`),console.log(` • Use ${C("/faf-champion")} skill in Claude Code for guided setup`),console.log(` • Configure ${C("claude.json")} for team-wide MCP integration`)}catch(q){console.error(`${L("✗")} MCP test failed:`,q),process.exit(1)}}import{readFileSync as gO}from"fs";var{version:vO}=JSON.parse(gO(new URL("../package.json",import.meta.url),"utf8")),c=new K8;c.name("faf").description("Foundational AI-Context Format — project DNA for any AI").version(vO,"-v, --version");c.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(($)=>p6($));c.command("auto").description("Zero to 100% in one command").action(()=>t4());c.command("go").description("Guided interview to gold code").option("--resume","Resume previous session").action(($)=>_q($));c.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(($,X)=>d6($,X));c.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(($)=>i6($));c.command("compile [file]").description("Compile .faf to .fafb binary").option("--output <path>","Output path").action(($,X)=>yQ($,X));c.command("decompile <file>").description("Decompile .fafb to JSON").option("--output <path>","Output path").action(($,X)=>gQ($,X));c.command("git <url>").description("Instant .faf from any GitHub repo").action(($)=>cQ($));c.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(($)=>n6($));c.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(($,X)=>q7($,X));c.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(($)=>pQ($));c.command("formats").description("Show supported formats").action(()=>iQ());c.command("clear").description("Clear cached data").action(()=>nQ());c.command("convert").description("Convert .faf to other formats").option("--json","Output as JSON").action(($)=>rQ($));c.command("context").description("Generate context output").action(()=>aQ());c.command("drift").description("Check context drift").action(()=>oQ());c.command("edit <path> <value>").description("Edit .faf fields").action(($,X)=>tQ($,X));c.command("recover").description("Recover .faf from context files").action(()=>eQ());c.command("migrate").description("Migrate .faf to latest version").option("--dry-run","Preview changes without writing").action(($)=>$q($));c.command("pro [subcommand]").description("Pro features & licensing").action(($)=>Nq($));c.command("share").description("Share .faf via URL").option("--copy","Copy to clipboard").option("--raw","Output encoded string only").action(($)=>wq($));c.command("demo").description("Demo walkthrough").action(()=>Oq());c.command("search <query>").description("Search slots and formats").option("--slots","Search slots only").option("--formats","Search formats only").action(($,X)=>Lq($,X));c.command("taf").description("Test Archive Format receipt").option("--output <path>","Write receipt to file").action(($)=>Rq($));c.command("ai [subcommand]").description("AI-powered features (enhance|analyze)").action(($)=>AY($));c.command("conductor [subcommand] [path]").description("Conductor integration").action(($,X)=>IY($,X));c.addCommand(ZY());c.addCommand(PY());c.command("skills-install").description("Install FAF skills package for Claude Code").action(()=>fY());c.command("mcp-test").description("Test Claude Code MCP native integration").option("--permission <level>","Permission level (plan|standard|auto|bypass)","standard").option("--tool <name>","Test specific tool").option("--dry-run","Dry run mode").option("--no-hooks","Disable hooks").option("--status","Show integration status").action(($)=>oY($));c.command("bi-sync",{hidden:!0}).action(()=>i6());c.command("status",{hidden:!0}).action(()=>d6(void 0,{status:!0}));c.command("agents",{hidden:!0}).action(()=>n6({agents:!0}));c.command("cursor",{hidden:!0}).action(()=>n6({cursor:!0}));c.command("gemini",{hidden:!0}).action(()=>n6({gemini:!0}));c.command("validate [file]",{hidden:!0}).action(($,X)=>q7($,X));c.command("yolo",{hidden:!0}).action(()=>p6({yolo:!0}));if(process.argv.length<=2){let{autoCommand:$}=await Promise.resolve().then(() => (e4(),jQ));await $(),process.exit(0)}c.parse(process.argv);
|