Files
claude-mem/dist/claude-mem.min.js
Alex Newman 85ed7c3d2f Release v3.9.9
Published from npm package build
Source: https://github.com/thedotmack/claude-mem-source
2025-10-03 18:20:47 -04:00

633 lines
568 KiB
JavaScript
Executable File
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env node
import{createRequire as MX}from"node:module";var ZX=Object.create;var{getPrototypeOf:AX,defineProperty:B1,getOwnPropertyNames:VX}=Object;var LX=Object.prototype.hasOwnProperty;var i0=(D,F,Q)=>{Q=D!=null?ZX(AX(D)):{};let B=F||!D||!D.__esModule?B1(Q,"default",{value:D,enumerable:!0}):Q;for(let Y of VX(D))if(!LX.call(B,Y))B1(B,Y,{get:()=>D[Y],enumerable:!0});return B};var VD=(D,F)=>()=>(F||D((F={exports:{}}).exports,F),F.exports);var hF=(D,F)=>{for(var Q in F)B1(D,Q,{get:F[Q],enumerable:!0,configurable:!0,set:(B)=>F[Q]=()=>B})};var OF=(D,F)=>()=>(D&&(F=D(D=0)),F);var hD=MX(import.meta.url);var o2=VD((NX)=>{class Q1 extends Error{constructor(D,F,Q){super(Q);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=F,this.exitCode=D,this.nestedError=void 0}}class w9 extends Q1{constructor(D){super(1,"commander.invalidArgument",D);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}NX.CommanderError=Q1;NX.InvalidArgumentError=w9});var l8=VD((IX)=>{var{InvalidArgumentError:_X}=o2();class T9{constructor(D,F){switch(this.description=F||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,D[0]){case"<":this.required=!0,this._name=D.slice(1,-1);break;case"[":this.required=!1,this._name=D.slice(1,-1);break;default:this.required=!0,this._name=D;break}if(this._name.length>3&&this._name.slice(-3)==="...")this.variadic=!0,this._name=this._name.slice(0,-3)}name(){return this._name}_concatValue(D,F){if(F===this.defaultValue||!Array.isArray(F))return[D];return F.concat(D)}default(D,F){return this.defaultValue=D,this.defaultValueDescription=F,this}argParser(D){return this.parseArg=D,this}choices(D){return this.argChoices=D.slice(),this.parseArg=(F,Q)=>{if(!this.argChoices.includes(F))throw new _X(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._concatValue(F,Q);return F},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function OX(D){let F=D.name()+(D.variadic===!0?"...":"");return D.required?"<"+F+">":"["+F+"]"}IX.Argument=T9;IX.humanReadableArgName=OX});var X1=VD((SX)=>{var{humanReadableArgName:PX}=l8();class P9{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(D){this.helpWidth=this.helpWidth??D.helpWidth??80}visibleCommands(D){let F=D.commands.filter((B)=>!B._hidden),Q=D._getHelpCommand();if(Q&&!Q._hidden)F.push(Q);if(this.sortSubcommands)F.sort((B,Y)=>{return B.name().localeCompare(Y.name())});return F}compareOptions(D,F){let Q=(B)=>{return B.short?B.short.replace(/^-/,""):B.long.replace(/^--/,"")};return Q(D).localeCompare(Q(F))}visibleOptions(D){let F=D.options.filter((B)=>!B.hidden),Q=D._getHelpOption();if(Q&&!Q.hidden){let B=Q.short&&D._findOption(Q.short),Y=Q.long&&D._findOption(Q.long);if(!B&&!Y)F.push(Q);else if(Q.long&&!Y)F.push(D.createOption(Q.long,Q.description));else if(Q.short&&!B)F.push(D.createOption(Q.short,Q.description))}if(this.sortOptions)F.sort(this.compareOptions);return F}visibleGlobalOptions(D){if(!this.showGlobalOptions)return[];let F=[];for(let Q=D.parent;Q;Q=Q.parent){let B=Q.options.filter((Y)=>!Y.hidden);F.push(...B)}if(this.sortOptions)F.sort(this.compareOptions);return F}visibleArguments(D){if(D._argsDescription)D.registeredArguments.forEach((F)=>{F.description=F.description||D._argsDescription[F.name()]||""});if(D.registeredArguments.find((F)=>F.description))return D.registeredArguments;return[]}subcommandTerm(D){let F=D.registeredArguments.map((Q)=>PX(Q)).join(" ");return D._name+(D._aliases[0]?"|"+D._aliases[0]:"")+(D.options.length?" [options]":"")+(F?" "+F:"")}optionTerm(D){return D.flags}argumentTerm(D){return D.name()}longestSubcommandTermLength(D,F){return F.visibleCommands(D).reduce((Q,B)=>{return Math.max(Q,this.displayWidth(F.styleSubcommandTerm(F.subcommandTerm(B))))},0)}longestOptionTermLength(D,F){return F.visibleOptions(D).reduce((Q,B)=>{return Math.max(Q,this.displayWidth(F.styleOptionTerm(F.optionTerm(B))))},0)}longestGlobalOptionTermLength(D,F){return F.visibleGlobalOptions(D).reduce((Q,B)=>{return Math.max(Q,this.displayWidth(F.styleOptionTerm(F.optionTerm(B))))},0)}longestArgumentTermLength(D,F){return F.visibleArguments(D).reduce((Q,B)=>{return Math.max(Q,this.displayWidth(F.styleArgumentTerm(F.argumentTerm(B))))},0)}commandUsage(D){let F=D._name;if(D._aliases[0])F=F+"|"+D._aliases[0];let Q="";for(let B=D.parent;B;B=B.parent)Q=B.name()+" "+Q;return Q+F+" "+D.usage()}commandDescription(D){return D.description()}subcommandDescription(D){return D.summary()||D.description()}optionDescription(D){let F=[];if(D.argChoices)F.push(`choices: ${D.argChoices.map((Q)=>JSON.stringify(Q)).join(", ")}`);if(D.defaultValue!==void 0){if(D.required||D.optional||D.isBoolean()&&typeof D.defaultValue==="boolean")F.push(`default: ${D.defaultValueDescription||JSON.stringify(D.defaultValue)}`)}if(D.presetArg!==void 0&&D.optional)F.push(`preset: ${JSON.stringify(D.presetArg)}`);if(D.envVar!==void 0)F.push(`env: ${D.envVar}`);if(F.length>0){let Q=`(${F.join(", ")})`;if(D.description)return`${D.description} ${Q}`;return Q}return D.description}argumentDescription(D){let F=[];if(D.argChoices)F.push(`choices: ${D.argChoices.map((Q)=>JSON.stringify(Q)).join(", ")}`);if(D.defaultValue!==void 0)F.push(`default: ${D.defaultValueDescription||JSON.stringify(D.defaultValue)}`);if(F.length>0){let Q=`(${F.join(", ")})`;if(D.description)return`${D.description} ${Q}`;return Q}return D.description}formatItemList(D,F,Q){if(F.length===0)return[];return[Q.styleTitle(D),...F,""]}groupItems(D,F,Q){let B=new Map;return D.forEach((Y)=>{let J=Q(Y);if(!B.has(J))B.set(J,[])}),F.forEach((Y)=>{let J=Q(Y);if(!B.has(J))B.set(J,[]);B.get(J).push(Y)}),B}formatHelp(D,F){let Q=F.padWidth(D,F),B=F.helpWidth??80;function Y(G,q){return F.formatItem(G,Q,q,F)}let J=[`${F.styleTitle("Usage:")} ${F.styleUsage(F.commandUsage(D))}`,""],X=F.commandDescription(D);if(X.length>0)J=J.concat([F.boxWrap(F.styleCommandDescription(X),B),""]);let C=F.visibleArguments(D).map((G)=>{return Y(F.styleArgumentTerm(F.argumentTerm(G)),F.styleArgumentDescription(F.argumentDescription(G)))});if(J=J.concat(this.formatItemList("Arguments:",C,F)),this.groupItems(D.options,F.visibleOptions(D),(G)=>G.helpGroupHeading??"Options:").forEach((G,q)=>{let E=G.map((U)=>{return Y(F.styleOptionTerm(F.optionTerm(U)),F.styleOptionDescription(F.optionDescription(U)))});J=J.concat(this.formatItemList(q,E,F))}),F.showGlobalOptions){let G=F.visibleGlobalOptions(D).map((q)=>{return Y(F.styleOptionTerm(F.optionTerm(q)),F.styleOptionDescription(F.optionDescription(q)))});J=J.concat(this.formatItemList("Global Options:",G,F))}return this.groupItems(D.commands,F.visibleCommands(D),(G)=>G.helpGroup()||"Commands:").forEach((G,q)=>{let E=G.map((U)=>{return Y(F.styleSubcommandTerm(F.subcommandTerm(U)),F.styleSubcommandDescription(F.subcommandDescription(U)))});J=J.concat(this.formatItemList(q,E,F))}),J.join(`
`)}displayWidth(D){return S9(D).length}styleTitle(D){return D}styleUsage(D){return D.split(" ").map((F)=>{if(F==="[options]")return this.styleOptionText(F);if(F==="[command]")return this.styleSubcommandText(F);if(F[0]==="["||F[0]==="<")return this.styleArgumentText(F);return this.styleCommandText(F)}).join(" ")}styleCommandDescription(D){return this.styleDescriptionText(D)}styleOptionDescription(D){return this.styleDescriptionText(D)}styleSubcommandDescription(D){return this.styleDescriptionText(D)}styleArgumentDescription(D){return this.styleDescriptionText(D)}styleDescriptionText(D){return D}styleOptionTerm(D){return this.styleOptionText(D)}styleSubcommandTerm(D){return D.split(" ").map((F)=>{if(F==="[options]")return this.styleOptionText(F);if(F[0]==="["||F[0]==="<")return this.styleArgumentText(F);return this.styleSubcommandText(F)}).join(" ")}styleArgumentTerm(D){return this.styleArgumentText(D)}styleOptionText(D){return D}styleArgumentText(D){return D}styleSubcommandText(D){return D}styleCommandText(D){return D}padWidth(D,F){return Math.max(F.longestOptionTermLength(D,F),F.longestGlobalOptionTermLength(D,F),F.longestSubcommandTermLength(D,F),F.longestArgumentTermLength(D,F))}preformatted(D){return/\n[^\S\r\n]/.test(D)}formatItem(D,F,Q,B){let J=" ".repeat(2);if(!Q)return J+D;let X=D.padEnd(F+D.length-B.displayWidth(D)),C=2,z=(this.helpWidth??80)-F-C-2,G;if(z<this.minWidthToWrap||B.preformatted(Q))G=Q;else G=B.boxWrap(Q,z).replace(/\n/g,`
`+" ".repeat(F+C));return J+X+" ".repeat(C)+G.replace(/\n/g,`
${J}`)}boxWrap(D,F){if(F<this.minWidthToWrap)return D;let Q=D.split(/\r\n|\n/),B=/[\s]*[^\s]+/g,Y=[];return Q.forEach((J)=>{let X=J.match(B);if(X===null){Y.push("");return}let C=[X.shift()],W=this.displayWidth(C[0]);X.forEach((z)=>{let G=this.displayWidth(z);if(W+G<=F){C.push(z),W+=G;return}Y.push(C.join(""));let q=z.trimStart();C=[q],W=this.displayWidth(q)}),Y.push(C.join(""))}),Y.join(`
`)}}function S9(D){let F=/\x1b\[\d*(;\d*)*m/g;return D.replace(F,"")}SX.Help=P9;SX.stripColor=S9});var Y1=VD((uX)=>{var{InvalidArgumentError:vX}=o2();class k9{constructor(D,F){this.flags=D,this.description=F||"",this.required=D.includes("<"),this.optional=D.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(D),this.mandatory=!1;let Q=xX(D);if(this.short=Q.shortFlag,this.long=Q.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(D,F){return this.defaultValue=D,this.defaultValueDescription=F,this}preset(D){return this.presetArg=D,this}conflicts(D){return this.conflictsWith=this.conflictsWith.concat(D),this}implies(D){let F=D;if(typeof D==="string")F={[D]:!0};return this.implied=Object.assign(this.implied||{},F),this}env(D){return this.envVar=D,this}argParser(D){return this.parseArg=D,this}makeOptionMandatory(D=!0){return this.mandatory=!!D,this}hideHelp(D=!0){return this.hidden=!!D,this}_concatValue(D,F){if(F===this.defaultValue||!Array.isArray(F))return[D];return F.concat(D)}choices(D){return this.argChoices=D.slice(),this.parseArg=(F,Q)=>{if(!this.argChoices.includes(F))throw new vX(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._concatValue(F,Q);return F},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){if(this.negate)return b9(this.name().replace(/^no-/,""));return b9(this.name())}helpGroup(D){return this.helpGroupHeading=D,this}is(D){return this.short===D||this.long===D}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class v9{constructor(D){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,D.forEach((F)=>{if(F.negate)this.negativeOptions.set(F.attributeName(),F);else this.positiveOptions.set(F.attributeName(),F)}),this.negativeOptions.forEach((F,Q)=>{if(this.positiveOptions.has(Q))this.dualOptions.add(Q)})}valueFromOption(D,F){let Q=F.attributeName();if(!this.dualOptions.has(Q))return!0;let B=this.negativeOptions.get(Q).presetArg,Y=B!==void 0?B:!1;return F.negate===(Y===D)}}function b9(D){return D.split("-").reduce((F,Q)=>{return F+Q[0].toUpperCase()+Q.slice(1)})}function xX(D){let F,Q,B=/^-[^-]$/,Y=/^--[^-]/,J=D.split(/[ |,]+/).concat("guard");if(B.test(J[0]))F=J.shift();if(Y.test(J[0]))Q=J.shift();if(!F&&B.test(J[0]))F=J.shift();if(!F&&Y.test(J[0]))F=Q,Q=J.shift();if(J[0].startsWith("-")){let X=J[0],C=`option creation failed due to '${X}' in option flags '${D}'`;if(/^-[^-][^-]/.test(X))throw new Error(`${C}
- a short flag is a single dash and a single character
- either use a single dash and a single character (for a short flag)
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(B.test(X))throw new Error(`${C}
- too many short flags`);if(Y.test(X))throw new Error(`${C}
- too many long flags`);throw new Error(`${C}
- unrecognised flag format`)}if(F===void 0&&Q===void 0)throw new Error(`option creation failed due to no flags found in '${D}'.`);return{shortFlag:F,longFlag:Q}}uX.Option=k9;uX.DualOptions=v9});var x9=VD((hX)=>{function gX(D,F){if(Math.abs(D.length-F.length)>3)return Math.max(D.length,F.length);let Q=[];for(let B=0;B<=D.length;B++)Q[B]=[B];for(let B=0;B<=F.length;B++)Q[0][B]=B;for(let B=1;B<=F.length;B++)for(let Y=1;Y<=D.length;Y++){let J=1;if(D[Y-1]===F[B-1])J=0;else J=1;if(Q[Y][B]=Math.min(Q[Y-1][B]+1,Q[Y][B-1]+1,Q[Y-1][B-1]+J),Y>1&&B>1&&D[Y-1]===F[B-2]&&D[Y-2]===F[B-1])Q[Y][B]=Math.min(Q[Y][B],Q[Y-2][B-2]+1)}return Q[D.length][F.length]}function $X(D,F){if(!F||F.length===0)return"";F=Array.from(new Set(F));let Q=D.startsWith("--");if(Q)D=D.slice(2),F=F.map((X)=>X.slice(2));let B=[],Y=3,J=0.4;if(F.forEach((X)=>{if(X.length<=1)return;let C=gX(D,X),W=Math.max(D.length,X.length);if((W-C)/W>J){if(C<Y)Y=C,B=[X];else if(C===Y)B.push(X)}}),B.sort((X,C)=>X.localeCompare(C)),Q)B=B.map((X)=>`--${X}`);if(B.length>1)return`
(Did you mean one of ${B.join(", ")}?)`;if(B.length===1)return`
(Did you mean ${B[0]}?)`;return""}hX.suggestSimilar=$X});var g9=VD((aX)=>{var lX=hD("node:events").EventEmitter,J1=hD("node:child_process"),VF=hD("node:path"),d8=hD("node:fs"),ID=hD("node:process"),{Argument:dX,humanReadableArgName:cX}=l8(),{CommanderError:C1}=o2(),{Help:pX,stripColor:nX}=X1(),{Option:u9,DualOptions:iX}=Y1(),{suggestSimilar:y9}=x9();class z1 extends lX{constructor(D){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=D||"",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:(F)=>ID.stdout.write(F),writeErr:(F)=>ID.stderr.write(F),outputError:(F,Q)=>Q(F),getOutHelpWidth:()=>ID.stdout.isTTY?ID.stdout.columns:void 0,getErrHelpWidth:()=>ID.stderr.isTTY?ID.stderr.columns:void 0,getOutHasColors:()=>W1()??(ID.stdout.isTTY&&ID.stdout.hasColors?.()),getErrHasColors:()=>W1()??(ID.stderr.isTTY&&ID.stderr.hasColors?.()),stripColor:(F)=>nX(F)},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(D){return this._outputConfiguration=D._outputConfiguration,this._helpOption=D._helpOption,this._helpCommand=D._helpCommand,this._helpConfiguration=D._helpConfiguration,this._exitCallback=D._exitCallback,this._storeOptionsAsProperties=D._storeOptionsAsProperties,this._combineFlagAndOptionalValue=D._combineFlagAndOptionalValue,this._allowExcessArguments=D._allowExcessArguments,this._enablePositionalOptions=D._enablePositionalOptions,this._showHelpAfterError=D._showHelpAfterError,this._showSuggestionAfterError=D._showSuggestionAfterError,this}_getCommandAndAncestors(){let D=[];for(let F=this;F;F=F.parent)D.push(F);return D}command(D,F,Q){let B=F,Y=Q;if(typeof B==="object"&&B!==null)Y=B,B=null;Y=Y||{};let[,J,X]=D.match(/([^ ]+) *(.*)/),C=this.createCommand(J);if(B)C.description(B),C._executableHandler=!0;if(Y.isDefault)this._defaultCommandName=C._name;if(C._hidden=!!(Y.noHelp||Y.hidden),C._executableFile=Y.executableFile||null,X)C.arguments(X);if(this._registerCommand(C),C.parent=this,C.copyInheritedSettings(this),B)return this;return C}createCommand(D){return new z1(D)}createHelp(){return Object.assign(new pX,this.configureHelp())}configureHelp(D){if(D===void 0)return this._helpConfiguration;return this._helpConfiguration=D,this}configureOutput(D){if(D===void 0)return this._outputConfiguration;return this._outputConfiguration=Object.assign({},this._outputConfiguration,D),this}showHelpAfterError(D=!0){if(typeof D!=="string")D=!!D;return this._showHelpAfterError=D,this}showSuggestionAfterError(D=!0){return this._showSuggestionAfterError=!!D,this}addCommand(D,F){if(!D._name)throw new Error(`Command passed to .addCommand() must have a name
- specify the name in Command constructor or using .name()`);if(F=F||{},F.isDefault)this._defaultCommandName=D._name;if(F.noHelp||F.hidden)D._hidden=!0;return this._registerCommand(D),D.parent=this,D._checkForBrokenPassThrough(),this}createArgument(D,F){return new dX(D,F)}argument(D,F,Q,B){let Y=this.createArgument(D,F);if(typeof Q==="function")Y.default(B).argParser(Q);else Y.default(Q);return this.addArgument(Y),this}arguments(D){return D.trim().split(/ +/).forEach((F)=>{this.argument(F)}),this}addArgument(D){let F=this.registeredArguments.slice(-1)[0];if(F&&F.variadic)throw new Error(`only the last argument can be variadic '${F.name()}'`);if(D.required&&D.defaultValue!==void 0&&D.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${D.name()}'`);return this.registeredArguments.push(D),this}helpCommand(D,F){if(typeof D==="boolean"){if(this._addImplicitHelpCommand=D,D&&this._defaultCommandGroup)this._initCommandGroup(this._getHelpCommand());return this}let Q=D??"help [command]",[,B,Y]=Q.match(/([^ ]+) *(.*)/),J=F??"display help for command",X=this.createCommand(B);if(X.helpOption(!1),Y)X.arguments(Y);if(J)X.description(J);if(this._addImplicitHelpCommand=!0,this._helpCommand=X,D||F)this._initCommandGroup(X);return this}addHelpCommand(D,F){if(typeof D!=="object")return this.helpCommand(D,F),this;return this._addImplicitHelpCommand=!0,this._helpCommand=D,this._initCommandGroup(D),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(D,F){let Q=["preSubcommand","preAction","postAction"];if(!Q.includes(D))throw new Error(`Unexpected value for event passed to hook : '${D}'.
Expecting one of '${Q.join("', '")}'`);if(this._lifeCycleHooks[D])this._lifeCycleHooks[D].push(F);else this._lifeCycleHooks[D]=[F];return this}exitOverride(D){if(D)this._exitCallback=D;else this._exitCallback=(F)=>{if(F.code!=="commander.executeSubCommandAsync")throw F};return this}_exit(D,F,Q){if(this._exitCallback)this._exitCallback(new C1(D,F,Q));ID.exit(D)}action(D){let F=(Q)=>{let B=this.registeredArguments.length,Y=Q.slice(0,B);if(this._storeOptionsAsProperties)Y[B]=this;else Y[B]=this.opts();return Y.push(this),D.apply(this,Y)};return this._actionHandler=F,this}createOption(D,F){return new u9(D,F)}_callParseArg(D,F,Q,B){try{return D.parseArg(F,Q)}catch(Y){if(Y.code==="commander.invalidArgument"){let J=`${B} ${Y.message}`;this.error(J,{exitCode:Y.exitCode,code:Y.code})}throw Y}}_registerOption(D){let F=D.short&&this._findOption(D.short)||D.long&&this._findOption(D.long);if(F){let Q=D.long&&this._findOption(D.long)?D.long:D.short;throw new Error(`Cannot add option '${D.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${Q}'
- already used by option '${F.flags}'`)}this._initOptionGroup(D),this.options.push(D)}_registerCommand(D){let F=(B)=>{return[B.name()].concat(B.aliases())},Q=F(D).find((B)=>this._findCommand(B));if(Q){let B=F(this._findCommand(Q)).join("|"),Y=F(D).join("|");throw new Error(`cannot add command '${Y}' as already have command '${B}'`)}this._initCommandGroup(D),this.commands.push(D)}addOption(D){this._registerOption(D);let F=D.name(),Q=D.attributeName();if(D.negate){let Y=D.long.replace(/^--no-/,"--");if(!this._findOption(Y))this.setOptionValueWithSource(Q,D.defaultValue===void 0?!0:D.defaultValue,"default")}else if(D.defaultValue!==void 0)this.setOptionValueWithSource(Q,D.defaultValue,"default");let B=(Y,J,X)=>{if(Y==null&&D.presetArg!==void 0)Y=D.presetArg;let C=this.getOptionValue(Q);if(Y!==null&&D.parseArg)Y=this._callParseArg(D,Y,C,J);else if(Y!==null&&D.variadic)Y=D._concatValue(Y,C);if(Y==null)if(D.negate)Y=!1;else if(D.isBoolean()||D.optional)Y=!0;else Y="";this.setOptionValueWithSource(Q,Y,X)};if(this.on("option:"+F,(Y)=>{let J=`error: option '${D.flags}' argument '${Y}' is invalid.`;B(Y,J,"cli")}),D.envVar)this.on("optionEnv:"+F,(Y)=>{let J=`error: option '${D.flags}' value '${Y}' from env '${D.envVar}' is invalid.`;B(Y,J,"env")});return this}_optionEx(D,F,Q,B,Y){if(typeof F==="object"&&F instanceof u9)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let J=this.createOption(F,Q);if(J.makeOptionMandatory(!!D.mandatory),typeof B==="function")J.default(Y).argParser(B);else if(B instanceof RegExp){let X=B;B=(C,W)=>{let z=X.exec(C);return z?z[0]:W},J.default(Y).argParser(B)}else J.default(B);return this.addOption(J)}option(D,F,Q,B){return this._optionEx({},D,F,Q,B)}requiredOption(D,F,Q,B){return this._optionEx({mandatory:!0},D,F,Q,B)}combineFlagAndOptionalValue(D=!0){return this._combineFlagAndOptionalValue=!!D,this}allowUnknownOption(D=!0){return this._allowUnknownOption=!!D,this}allowExcessArguments(D=!0){return this._allowExcessArguments=!!D,this}enablePositionalOptions(D=!0){return this._enablePositionalOptions=!!D,this}passThroughOptions(D=!0){return this._passThroughOptions=!!D,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(D=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw new Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!D,this}getOptionValue(D){if(this._storeOptionsAsProperties)return this[D];return this._optionValues[D]}setOptionValue(D,F){return this.setOptionValueWithSource(D,F,void 0)}setOptionValueWithSource(D,F,Q){if(this._storeOptionsAsProperties)this[D]=F;else this._optionValues[D]=F;return this._optionValueSources[D]=Q,this}getOptionValueSource(D){return this._optionValueSources[D]}getOptionValueSourceWithGlobals(D){let F;return this._getCommandAndAncestors().forEach((Q)=>{if(Q.getOptionValueSource(D)!==void 0)F=Q.getOptionValueSource(D)}),F}_prepareUserArgs(D,F){if(D!==void 0&&!Array.isArray(D))throw new Error("first parameter to parse must be array or undefined");if(F=F||{},D===void 0&&F.from===void 0){if(ID.versions?.electron)F.from="electron";let B=ID.execArgv??[];if(B.includes("-e")||B.includes("--eval")||B.includes("-p")||B.includes("--print"))F.from="eval"}if(D===void 0)D=ID.argv;this.rawArgs=D.slice();let Q;switch(F.from){case void 0:case"node":this._scriptPath=D[1],Q=D.slice(2);break;case"electron":if(ID.defaultApp)this._scriptPath=D[1],Q=D.slice(2);else Q=D.slice(1);break;case"user":Q=D.slice(0);break;case"eval":Q=D.slice(1);break;default:throw new Error(`unexpected parse option { from: '${F.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);return this._name=this._name||"program",Q}parse(D,F){this._prepareForParse();let Q=this._prepareUserArgs(D,F);return this._parseCommand([],Q),this}async parseAsync(D,F){this._prepareForParse();let Q=this._prepareUserArgs(D,F);return await this._parseCommand([],Q),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 new Error(`Can not call parse again when storeOptionsAsProperties is true.
- 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(D,F,Q){if(d8.existsSync(D))return;let B=F?`searched for local subcommand relative to directory '${F}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",Y=`'${D}' does not exist
- if '${Q}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
- ${B}`;throw new Error(Y)}_executeSubCommand(D,F){F=F.slice();let Q=!1,B=[".js",".ts",".tsx",".mjs",".cjs"];function Y(z,G){let q=VF.resolve(z,G);if(d8.existsSync(q))return q;if(B.includes(VF.extname(G)))return;let E=B.find((U)=>d8.existsSync(`${q}${U}`));if(E)return`${q}${E}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let J=D._executableFile||`${this._name}-${D._name}`,X=this._executableDir||"";if(this._scriptPath){let z;try{z=d8.realpathSync(this._scriptPath)}catch{z=this._scriptPath}X=VF.resolve(VF.dirname(z),X)}if(X){let z=Y(X,J);if(!z&&!D._executableFile&&this._scriptPath){let G=VF.basename(this._scriptPath,VF.extname(this._scriptPath));if(G!==this._name)z=Y(X,`${G}-${D._name}`)}J=z||J}Q=B.includes(VF.extname(J));let C;if(ID.platform!=="win32")if(Q)F.unshift(J),F=f9(ID.execArgv).concat(F),C=J1.spawn(ID.argv[0],F,{stdio:"inherit"});else C=J1.spawn(J,F,{stdio:"inherit"});else this._checkForMissingExecutable(J,X,D._name),F.unshift(J),F=f9(ID.execArgv).concat(F),C=J1.spawn(ID.execPath,F,{stdio:"inherit"});if(!C.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((G)=>{ID.on(G,()=>{if(C.killed===!1&&C.exitCode===null)C.kill(G)})});let W=this._exitCallback;C.on("close",(z)=>{if(z=z??1,!W)ID.exit(z);else W(new C1(z,"commander.executeSubCommandAsync","(close)"))}),C.on("error",(z)=>{if(z.code==="ENOENT")this._checkForMissingExecutable(J,X,D._name);else if(z.code==="EACCES")throw new Error(`'${J}' not executable`);if(!W)ID.exit(1);else{let G=new C1(1,"commander.executeSubCommandAsync","(error)");G.nestedError=z,W(G)}}),this.runningCommand=C}_dispatchSubcommand(D,F,Q){let B=this._findCommand(D);if(!B)this.help({error:!0});B._prepareForParse();let Y;return Y=this._chainOrCallSubCommandHook(Y,B,"preSubcommand"),Y=this._chainOrCall(Y,()=>{if(B._executableHandler)this._executeSubCommand(B,F.concat(Q));else return B._parseCommand(F,Q)}),Y}_dispatchHelpCommand(D){if(!D)this.help();let F=this._findCommand(D);if(F&&!F._executableHandler)F.help();return this._dispatchSubcommand(D,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach((D,F)=>{if(D.required&&this.args[F]==null)this.missingArgument(D.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 D=(Q,B,Y)=>{let J=B;if(B!==null&&Q.parseArg){let X=`error: command-argument value '${B}' is invalid for argument '${Q.name()}'.`;J=this._callParseArg(Q,B,Y,X)}return J};this._checkNumberOfArguments();let F=[];this.registeredArguments.forEach((Q,B)=>{let Y=Q.defaultValue;if(Q.variadic){if(B<this.args.length){if(Y=this.args.slice(B),Q.parseArg)Y=Y.reduce((J,X)=>{return D(Q,X,J)},Q.defaultValue)}else if(Y===void 0)Y=[]}else if(B<this.args.length){if(Y=this.args[B],Q.parseArg)Y=D(Q,Y,Q.defaultValue)}F[B]=Y}),this.processedArgs=F}_chainOrCall(D,F){if(D&&D.then&&typeof D.then==="function")return D.then(()=>F());return F()}_chainOrCallHooks(D,F){let Q=D,B=[];if(this._getCommandAndAncestors().reverse().filter((Y)=>Y._lifeCycleHooks[F]!==void 0).forEach((Y)=>{Y._lifeCycleHooks[F].forEach((J)=>{B.push({hookedCommand:Y,callback:J})})}),F==="postAction")B.reverse();return B.forEach((Y)=>{Q=this._chainOrCall(Q,()=>{return Y.callback(Y.hookedCommand,this)})}),Q}_chainOrCallSubCommandHook(D,F,Q){let B=D;if(this._lifeCycleHooks[Q]!==void 0)this._lifeCycleHooks[Q].forEach((Y)=>{B=this._chainOrCall(B,()=>{return Y(this,F)})});return B}_parseCommand(D,F){let Q=this.parseOptions(F);if(this._parseOptionsEnv(),this._parseOptionsImplied(),D=D.concat(Q.operands),F=Q.unknown,this.args=D.concat(F),D&&this._findCommand(D[0]))return this._dispatchSubcommand(D[0],D.slice(1),F);if(this._getHelpCommand()&&D[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(D[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(F),this._dispatchSubcommand(this._defaultCommandName,D,F);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(Q.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let B=()=>{if(Q.unknown.length>0)this.unknownOption(Q.unknown[0])},Y=`command:${this.name()}`;if(this._actionHandler){B(),this._processArguments();let J;if(J=this._chainOrCallHooks(J,"preAction"),J=this._chainOrCall(J,()=>this._actionHandler(this.processedArgs)),this.parent)J=this._chainOrCall(J,()=>{this.parent.emit(Y,D,F)});return J=this._chainOrCallHooks(J,"postAction"),J}if(this.parent&&this.parent.listenerCount(Y))B(),this._processArguments(),this.parent.emit(Y,D,F);else if(D.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",D,F);if(this.listenerCount("command:*"))this.emit("command:*",D,F);else if(this.commands.length)this.unknownCommand();else B(),this._processArguments()}else if(this.commands.length)B(),this.help({error:!0});else B(),this._processArguments()}_findCommand(D){if(!D)return;return this.commands.find((F)=>F._name===D||F._aliases.includes(D))}_findOption(D){return this.options.find((F)=>F.is(D))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach((D)=>{D.options.forEach((F)=>{if(F.mandatory&&D.getOptionValue(F.attributeName())===void 0)D.missingMandatoryOptionValue(F)})})}_checkForConflictingLocalOptions(){let D=this.options.filter((Q)=>{let B=Q.attributeName();if(this.getOptionValue(B)===void 0)return!1;return this.getOptionValueSource(B)!=="default"});D.filter((Q)=>Q.conflictsWith.length>0).forEach((Q)=>{let B=D.find((Y)=>Q.conflictsWith.includes(Y.attributeName()));if(B)this._conflictingOption(Q,B)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach((D)=>{D._checkForConflictingLocalOptions()})}parseOptions(D){let F=[],Q=[],B=F,Y=D.slice();function J(W){return W.length>1&&W[0]==="-"}let X=(W)=>{if(!/^-\d*\.?\d+(e[+-]?\d+)?$/.test(W))return!1;return!this._getCommandAndAncestors().some((z)=>z.options.map((G)=>G.short).some((G)=>/^-\d$/.test(G)))},C=null;while(Y.length){let W=Y.shift();if(W==="--"){if(B===Q)B.push(W);B.push(...Y);break}if(C&&(!J(W)||X(W))){this.emit(`option:${C.name()}`,W);continue}if(C=null,J(W)){let z=this._findOption(W);if(z){if(z.required){let G=Y.shift();if(G===void 0)this.optionMissingArgument(z);this.emit(`option:${z.name()}`,G)}else if(z.optional){let G=null;if(Y.length>0&&(!J(Y[0])||X(Y[0])))G=Y.shift();this.emit(`option:${z.name()}`,G)}else this.emit(`option:${z.name()}`);C=z.variadic?z:null;continue}}if(W.length>2&&W[0]==="-"&&W[1]!=="-"){let z=this._findOption(`-${W[1]}`);if(z){if(z.required||z.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${z.name()}`,W.slice(2));else this.emit(`option:${z.name()}`),Y.unshift(`-${W.slice(2)}`);continue}}if(/^--[^=]+=/.test(W)){let z=W.indexOf("="),G=this._findOption(W.slice(0,z));if(G&&(G.required||G.optional)){this.emit(`option:${G.name()}`,W.slice(z+1));continue}}if(B===F&&J(W)&&!(this.commands.length===0&&X(W)))B=Q;if((this._enablePositionalOptions||this._passThroughOptions)&&F.length===0&&Q.length===0){if(this._findCommand(W)){if(F.push(W),Y.length>0)Q.push(...Y);break}else if(this._getHelpCommand()&&W===this._getHelpCommand().name()){if(F.push(W),Y.length>0)F.push(...Y);break}else if(this._defaultCommandName){if(Q.push(W),Y.length>0)Q.push(...Y);break}}if(this._passThroughOptions){if(B.push(W),Y.length>0)B.push(...Y);break}B.push(W)}return{operands:F,unknown:Q}}opts(){if(this._storeOptionsAsProperties){let D={},F=this.options.length;for(let Q=0;Q<F;Q++){let B=this.options[Q].attributeName();D[B]=B===this._versionOptionName?this._version:this[B]}return D}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((D,F)=>Object.assign(D,F.opts()),{})}error(D,F){if(this._outputConfiguration.outputError(`${D}
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
`);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
`),this.outputHelp({error:!0});let Q=F||{},B=Q.exitCode||1,Y=Q.code||"commander.error";this._exit(B,Y,D)}_parseOptionsEnv(){this.options.forEach((D)=>{if(D.envVar&&D.envVar in ID.env){let F=D.attributeName();if(this.getOptionValue(F)===void 0||["default","config","env"].includes(this.getOptionValueSource(F)))if(D.required||D.optional)this.emit(`optionEnv:${D.name()}`,ID.env[D.envVar]);else this.emit(`optionEnv:${D.name()}`)}})}_parseOptionsImplied(){let D=new iX(this.options),F=(Q)=>{return this.getOptionValue(Q)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(Q))};this.options.filter((Q)=>Q.implied!==void 0&&F(Q.attributeName())&&D.valueFromOption(this.getOptionValue(Q.attributeName()),Q)).forEach((Q)=>{Object.keys(Q.implied).filter((B)=>!F(B)).forEach((B)=>{this.setOptionValueWithSource(B,Q.implied[B],"implied")})})}missingArgument(D){let F=`error: missing required argument '${D}'`;this.error(F,{code:"commander.missingArgument"})}optionMissingArgument(D){let F=`error: option '${D.flags}' argument missing`;this.error(F,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(D){let F=`error: required option '${D.flags}' not specified`;this.error(F,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(D,F){let Q=(J)=>{let X=J.attributeName(),C=this.getOptionValue(X),W=this.options.find((G)=>G.negate&&X===G.attributeName()),z=this.options.find((G)=>!G.negate&&X===G.attributeName());if(W&&(W.presetArg===void 0&&C===!1||W.presetArg!==void 0&&C===W.presetArg))return W;return z||J},B=(J)=>{let X=Q(J),C=X.attributeName();if(this.getOptionValueSource(C)==="env")return`environment variable '${X.envVar}'`;return`option '${X.flags}'`},Y=`error: ${B(D)} cannot be used with ${B(F)}`;this.error(Y,{code:"commander.conflictingOption"})}unknownOption(D){if(this._allowUnknownOption)return;let F="";if(D.startsWith("--")&&this._showSuggestionAfterError){let B=[],Y=this;do{let J=Y.createHelp().visibleOptions(Y).filter((X)=>X.long).map((X)=>X.long);B=B.concat(J),Y=Y.parent}while(Y&&!Y._enablePositionalOptions);F=y9(D,B)}let Q=`error: unknown option '${D}'${F}`;this.error(Q,{code:"commander.unknownOption"})}_excessArguments(D){if(this._allowExcessArguments)return;let F=this.registeredArguments.length,Q=F===1?"":"s",Y=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${F} argument${Q} but got ${D.length}.`;this.error(Y,{code:"commander.excessArguments"})}unknownCommand(){let D=this.args[0],F="";if(this._showSuggestionAfterError){let B=[];this.createHelp().visibleCommands(this).forEach((Y)=>{if(B.push(Y.name()),Y.alias())B.push(Y.alias())}),F=y9(D,B)}let Q=`error: unknown command '${D}'${F}`;this.error(Q,{code:"commander.unknownCommand"})}version(D,F,Q){if(D===void 0)return this._version;this._version=D,F=F||"-V, --version",Q=Q||"output the version number";let B=this.createOption(F,Q);return this._versionOptionName=B.attributeName(),this._registerOption(B),this.on("option:"+B.name(),()=>{this._outputConfiguration.writeOut(`${D}
`),this._exit(0,"commander.version",D)}),this}description(D,F){if(D===void 0&&F===void 0)return this._description;if(this._description=D,F)this._argsDescription=F;return this}summary(D){if(D===void 0)return this._summary;return this._summary=D,this}alias(D){if(D===void 0)return this._aliases[0];let F=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)F=this.commands[this.commands.length-1];if(D===F._name)throw new Error("Command alias can't be the same as its name");let Q=this.parent?._findCommand(D);if(Q){let B=[Q.name()].concat(Q.aliases()).join("|");throw new Error(`cannot add alias '${D}' to command '${this.name()}' as already have command '${B}'`)}return F._aliases.push(D),this}aliases(D){if(D===void 0)return this._aliases;return D.forEach((F)=>this.alias(F)),this}usage(D){if(D===void 0){if(this._usage)return this._usage;let F=this.registeredArguments.map((Q)=>{return cX(Q)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?F:[]).join(" ")}return this._usage=D,this}name(D){if(D===void 0)return this._name;return this._name=D,this}helpGroup(D){if(D===void 0)return this._helpGroupHeading??"";return this._helpGroupHeading=D,this}commandsGroup(D){if(D===void 0)return this._defaultCommandGroup??"";return this._defaultCommandGroup=D,this}optionsGroup(D){if(D===void 0)return this._defaultOptionGroup??"";return this._defaultOptionGroup=D,this}_initOptionGroup(D){if(this._defaultOptionGroup&&!D.helpGroupHeading)D.helpGroup(this._defaultOptionGroup)}_initCommandGroup(D){if(this._defaultCommandGroup&&!D.helpGroup())D.helpGroup(this._defaultCommandGroup)}nameFromFilename(D){return this._name=VF.basename(D,VF.extname(D)),this}executableDir(D){if(D===void 0)return this._executableDir;return this._executableDir=D,this}helpInformation(D){let F=this.createHelp(),Q=this._getOutputContext(D);F.prepareContext({error:Q.error,helpWidth:Q.helpWidth,outputHasColors:Q.hasColors});let B=F.formatHelp(this,F);if(Q.hasColors)return B;return this._outputConfiguration.stripColor(B)}_getOutputContext(D){D=D||{};let F=!!D.error,Q,B,Y;if(F)Q=(X)=>this._outputConfiguration.writeErr(X),B=this._outputConfiguration.getErrHasColors(),Y=this._outputConfiguration.getErrHelpWidth();else Q=(X)=>this._outputConfiguration.writeOut(X),B=this._outputConfiguration.getOutHasColors(),Y=this._outputConfiguration.getOutHelpWidth();return{error:F,write:(X)=>{if(!B)X=this._outputConfiguration.stripColor(X);return Q(X)},hasColors:B,helpWidth:Y}}outputHelp(D){let F;if(typeof D==="function")F=D,D=void 0;let Q=this._getOutputContext(D),B={error:Q.error,write:Q.write,command:this};this._getCommandAndAncestors().reverse().forEach((J)=>J.emit("beforeAllHelp",B)),this.emit("beforeHelp",B);let Y=this.helpInformation({error:Q.error});if(F){if(Y=F(Y),typeof Y!=="string"&&!Buffer.isBuffer(Y))throw new Error("outputHelp callback must return a string or a Buffer")}if(Q.write(Y),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",B),this._getCommandAndAncestors().forEach((J)=>J.emit("afterAllHelp",B))}helpOption(D,F){if(typeof D==="boolean"){if(D){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(D??"-h, --help",F??"display help for command"),D||F)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption(D){return this._helpOption=D,this._initOptionGroup(D),this}help(D){this.outputHelp(D);let F=Number(ID.exitCode??0);if(F===0&&D&&typeof D!=="function"&&D.error)F=1;this._exit(F,"commander.help","(outputHelp)")}addHelpText(D,F){let Q=["beforeAll","before","after","afterAll"];if(!Q.includes(D))throw new Error(`Unexpected value for position to addHelpText.
Expecting one of '${Q.join("', '")}'`);let B=`${D}Help`;return this.on(B,(Y)=>{let J;if(typeof F==="function")J=F({error:Y.error,command:Y.command});else J=F;if(J)Y.write(`${J}
`)}),this}_outputHelpIfRequested(D){let F=this._getHelpOption();if(F&&D.find((B)=>F.is(B)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function f9(D){return D.map((F)=>{if(!F.startsWith("--inspect"))return F;let Q,B="127.0.0.1",Y="9229",J;if((J=F.match(/^(--inspect(-brk)?)$/))!==null)Q=J[1];else if((J=F.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(Q=J[1],/^\d+$/.test(J[3]))Y=J[3];else B=J[3];else if((J=F.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)Q=J[1],B=J[3],Y=J[4];if(Q&&Y!=="0")return`${Q}=${B}:${parseInt(Y)+1}`;return F})}function W1(){if(ID.env.NO_COLOR||ID.env.FORCE_COLOR==="0"||ID.env.FORCE_COLOR==="false")return!1;if(ID.env.FORCE_COLOR||ID.env.CLICOLOR_FORCE!==void 0)return!0;return}aX.Command=z1;aX.useColor=W1});var l9=VD((eX)=>{var{Argument:$9}=l8(),{Command:G1}=g9(),{CommanderError:sX,InvalidArgumentError:h9}=o2(),{Help:tX}=X1(),{Option:m9}=Y1();eX.program=new G1;eX.createCommand=(D)=>new G1(D);eX.createOption=(D,F)=>new m9(D,F);eX.createArgument=(D,F)=>new $9(D,F);eX.Command=G1;eX.Option=m9;eX.Argument=$9;eX.Help=tX;eX.CommanderError=sX;eX.InvalidArgumentError=h9;eX.InvalidOptionArgumentError=h9});var K1=VD((cU,e9)=>{var q1={to(D,F){if(!F)return`\x1B[${D+1}G`;return`\x1B[${F+1};${D+1}H`},move(D,F){let Q="";if(D<0)Q+=`\x1B[${-D}D`;else if(D>0)Q+=`\x1B[${D}C`;if(F<0)Q+=`\x1B[${-F}A`;else if(F>0)Q+=`\x1B[${F}B`;return Q},up:(D=1)=>`\x1B[${D}A`,down:(D=1)=>`\x1B[${D}B`,forward:(D=1)=>`\x1B[${D}C`,backward:(D=1)=>`\x1B[${D}D`,nextLine:(D=1)=>"\x1B[E".repeat(D),prevLine:(D=1)=>"\x1B[F".repeat(D),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},ZY={up:(D=1)=>"\x1B[S".repeat(D),down:(D=1)=>"\x1B[T".repeat(D)},AY={screen:"\x1B[2J",up:(D=1)=>"\x1B[1J".repeat(D),down:(D=1)=>"\x1B[J".repeat(D),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(D){let F="";for(let Q=0;Q<D;Q++)F+=this.line+(Q<D-1?q1.up():"");if(D)F+=q1.left;return F}};e9.exports={cursor:q1,scroll:ZY,erase:AY,beep:"\x07"}});var U1=VD((pU,H1)=>{var p8=process||{},D3=p8.argv||[],c8=p8.env||{},VY=!(!!c8.NO_COLOR||D3.includes("--no-color"))&&(!!c8.FORCE_COLOR||D3.includes("--color")||p8.platform==="win32"||(p8.stdout||{}).isTTY&&c8.TERM!=="dumb"||!!c8.CI),LY=(D,F,Q=D)=>(B)=>{let Y=""+B,J=Y.indexOf(F,D.length);return~J?D+MY(Y,F,Q,J)+F:D+Y+F},MY=(D,F,Q,B)=>{let Y="",J=0;do Y+=D.substring(J,B)+Q,J=B+F.length,B=D.indexOf(F,J);while(~B);return Y+D.substring(J)},F3=(D=VY)=>{let F=D?LY:()=>String;return{isColorSupported:D,reset:F("\x1B[0m","\x1B[0m"),bold:F("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:F("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:F("\x1B[3m","\x1B[23m"),underline:F("\x1B[4m","\x1B[24m"),inverse:F("\x1B[7m","\x1B[27m"),hidden:F("\x1B[8m","\x1B[28m"),strikethrough:F("\x1B[9m","\x1B[29m"),black:F("\x1B[30m","\x1B[39m"),red:F("\x1B[31m","\x1B[39m"),green:F("\x1B[32m","\x1B[39m"),yellow:F("\x1B[33m","\x1B[39m"),blue:F("\x1B[34m","\x1B[39m"),magenta:F("\x1B[35m","\x1B[39m"),cyan:F("\x1B[36m","\x1B[39m"),white:F("\x1B[37m","\x1B[39m"),gray:F("\x1B[90m","\x1B[39m"),bgBlack:F("\x1B[40m","\x1B[49m"),bgRed:F("\x1B[41m","\x1B[49m"),bgGreen:F("\x1B[42m","\x1B[49m"),bgYellow:F("\x1B[43m","\x1B[49m"),bgBlue:F("\x1B[44m","\x1B[49m"),bgMagenta:F("\x1B[45m","\x1B[49m"),bgCyan:F("\x1B[46m","\x1B[49m"),bgWhite:F("\x1B[47m","\x1B[49m"),blackBright:F("\x1B[90m","\x1B[39m"),redBright:F("\x1B[91m","\x1B[39m"),greenBright:F("\x1B[92m","\x1B[39m"),yellowBright:F("\x1B[93m","\x1B[39m"),blueBright:F("\x1B[94m","\x1B[39m"),magentaBright:F("\x1B[95m","\x1B[39m"),cyanBright:F("\x1B[96m","\x1B[39m"),whiteBright:F("\x1B[97m","\x1B[39m"),bgBlackBright:F("\x1B[100m","\x1B[49m"),bgRedBright:F("\x1B[101m","\x1B[49m"),bgGreenBright:F("\x1B[102m","\x1B[49m"),bgYellowBright:F("\x1B[103m","\x1B[49m"),bgBlueBright:F("\x1B[104m","\x1B[49m"),bgMagentaBright:F("\x1B[105m","\x1B[49m"),bgCyanBright:F("\x1B[106m","\x1B[49m"),bgWhiteBright:F("\x1B[107m","\x1B[49m")}};H1.exports=F3();H1.exports.createColors=F3});var x3=VD((v1,x1)=>{(function(D,F){typeof v1==="object"&&typeof x1!=="undefined"?x1.exports=F():typeof define==="function"&&define.amd?define(F):(D=typeof globalThis!=="undefined"?globalThis:D||self,D.tinycolor=F())})(v1,function(){function D(N){return D=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(_){return typeof _}:function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},D(N)}var F=/^\s+/,Q=/\s+$/;function B(N,_){if(N=N?N:"",_=_||{},N instanceof B)return N;if(!(this instanceof B))return new B(N,_);var H=Y(N);if(this._originalInput=N,this._r=H.r,this._g=H.g,this._b=H.b,this._a=H.a,this._roundA=Math.round(100*this._a)/100,this._format=_.format||H.format,this._gradientType=_.gradientType,this._r<1)this._r=Math.round(this._r);if(this._g<1)this._g=Math.round(this._g);if(this._b<1)this._b=Math.round(this._b);this._ok=H.ok}B.prototype={isDark:function N(){return this.getBrightness()<128},isLight:function N(){return!this.isDark()},isValid:function N(){return this._ok},getOriginalInput:function N(){return this._originalInput},getFormat:function N(){return this._format},getAlpha:function N(){return this._a},getBrightness:function N(){var _=this.toRgb();return(_.r*299+_.g*587+_.b*114)/1000},getLuminance:function N(){var _=this.toRgb(),H,T,h,c,l,p;if(H=_.r/255,T=_.g/255,h=_.b/255,H<=0.03928)c=H/12.92;else c=Math.pow((H+0.055)/1.055,2.4);if(T<=0.03928)l=T/12.92;else l=Math.pow((T+0.055)/1.055,2.4);if(h<=0.03928)p=h/12.92;else p=Math.pow((h+0.055)/1.055,2.4);return 0.2126*c+0.7152*l+0.0722*p},setAlpha:function N(_){return this._a=w(_),this._roundA=Math.round(100*this._a)/100,this},toHsv:function N(){var _=W(this._r,this._g,this._b);return{h:_.h*360,s:_.s,v:_.v,a:this._a}},toHsvString:function N(){var _=W(this._r,this._g,this._b),H=Math.round(_.h*360),T=Math.round(_.s*100),h=Math.round(_.v*100);return this._a==1?"hsv("+H+", "+T+"%, "+h+"%)":"hsva("+H+", "+T+"%, "+h+"%, "+this._roundA+")"},toHsl:function N(){var _=X(this._r,this._g,this._b);return{h:_.h*360,s:_.s,l:_.l,a:this._a}},toHslString:function N(){var _=X(this._r,this._g,this._b),H=Math.round(_.h*360),T=Math.round(_.s*100),h=Math.round(_.l*100);return this._a==1?"hsl("+H+", "+T+"%, "+h+"%)":"hsla("+H+", "+T+"%, "+h+"%, "+this._roundA+")"},toHex:function N(_){return G(this._r,this._g,this._b,_)},toHexString:function N(_){return"#"+this.toHex(_)},toHex8:function N(_){return q(this._r,this._g,this._b,this._a,_)},toHex8String:function N(_){return"#"+this.toHex8(_)},toRgb:function N(){return{r:Math.round(this._r),g:Math.round(this._g),b:Math.round(this._b),a:this._a}},toRgbString:function N(){return this._a==1?"rgb("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+")":"rgba("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+", "+this._roundA+")"},toPercentageRgb:function N(){return{r:Math.round(S(this._r,255)*100)+"%",g:Math.round(S(this._g,255)*100)+"%",b:Math.round(S(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function N(){return this._a==1?"rgb("+Math.round(S(this._r,255)*100)+"%, "+Math.round(S(this._g,255)*100)+"%, "+Math.round(S(this._b,255)*100)+"%)":"rgba("+Math.round(S(this._r,255)*100)+"%, "+Math.round(S(this._g,255)*100)+"%, "+Math.round(S(this._b,255)*100)+"%, "+this._roundA+")"},toName:function N(){if(this._a===0)return"transparent";if(this._a<1)return!1;return y[G(this._r,this._g,this._b,!0)]||!1},toFilter:function N(_){var H="#"+E(this._r,this._g,this._b,this._a),T=H,h=this._gradientType?"GradientType = 1, ":"";if(_){var c=B(_);T="#"+E(c._r,c._g,c._b,c._a)}return"progid:DXImageTransform.Microsoft.gradient("+h+"startColorstr="+H+",endColorstr="+T+")"},toString:function N(_){var H=!!_;_=_||this._format;var T=!1,h=this._a<1&&this._a>=0,c=!H&&h&&(_==="hex"||_==="hex6"||_==="hex3"||_==="hex4"||_==="hex8"||_==="name");if(c){if(_==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(_==="rgb")T=this.toRgbString();if(_==="prgb")T=this.toPercentageRgbString();if(_==="hex"||_==="hex6")T=this.toHexString();if(_==="hex3")T=this.toHexString(!0);if(_==="hex4")T=this.toHex8String(!0);if(_==="hex8")T=this.toHex8String();if(_==="name")T=this.toName();if(_==="hsl")T=this.toHslString();if(_==="hsv")T=this.toHsvString();return T||this.toHexString()},clone:function N(){return B(this.toString())},_applyModification:function N(_,H){var T=_.apply(null,[this].concat([].slice.call(H)));return this._r=T._r,this._g=T._g,this._b=T._b,this.setAlpha(T._a),this},lighten:function N(){return this._applyModification(V,arguments)},brighten:function N(){return this._applyModification(j,arguments)},darken:function N(){return this._applyModification(L,arguments)},desaturate:function N(){return this._applyModification(U,arguments)},saturate:function N(){return this._applyModification(A,arguments)},greyscale:function N(){return this._applyModification(K,arguments)},spin:function N(){return this._applyModification(R,arguments)},_applyCombination:function N(_,H){return _.apply(null,[this].concat([].slice.call(H)))},analogous:function N(){return this._applyCombination(u,arguments)},complement:function N(){return this._applyCombination(b,arguments)},monochromatic:function N(){return this._applyCombination(f,arguments)},splitcomplement:function N(){return this._applyCombination(I,arguments)},triad:function N(){return this._applyCombination(k,[3])},tetrad:function N(){return this._applyCombination(k,[4])}},B.fromRatio=function(N,_){if(D(N)=="object"){var H={};for(var T in N)if(N.hasOwnProperty(T))if(T==="a")H[T]=N[T];else H[T]=o(N[T]);N=H}return B(N,_)};function Y(N){var _={r:0,g:0,b:0},H=1,T=null,h=null,c=null,l=!1,p=!1;if(typeof N=="string")N=dD(N);if(D(N)=="object"){if(MD(N.r)&&MD(N.g)&&MD(N.b))_=J(N.r,N.g,N.b),l=!0,p=String(N.r).substr(-1)==="%"?"prgb":"rgb";else if(MD(N.h)&&MD(N.s)&&MD(N.v))T=o(N.s),h=o(N.v),_=z(N.h,T,h),l=!0,p="hsv";else if(MD(N.h)&&MD(N.s)&&MD(N.l))T=o(N.s),c=o(N.l),_=C(N.h,T,c),l=!0,p="hsl";if(N.hasOwnProperty("a"))H=N.a}return H=w(H),{ok:l,format:N.format||p,r:Math.min(255,Math.max(_.r,0)),g:Math.min(255,Math.max(_.g,0)),b:Math.min(255,Math.max(_.b,0)),a:H}}function J(N,_,H){return{r:S(N,255)*255,g:S(_,255)*255,b:S(H,255)*255}}function X(N,_,H){N=S(N,255),_=S(_,255),H=S(H,255);var T=Math.max(N,_,H),h=Math.min(N,_,H),c,l,p=(T+h)/2;if(T==h)c=l=0;else{var QD=T-h;switch(l=p>0.5?QD/(2-T-h):QD/(T+h),T){case N:c=(_-H)/QD+(_<H?6:0);break;case _:c=(H-N)/QD+2;break;case H:c=(N-_)/QD+4;break}c/=6}return{h:c,s:l,l:p}}function C(N,_,H){var T,h,c;N=S(N,360),_=S(_,100),H=S(H,100);function l(KD,WD,AD){if(AD<0)AD+=1;if(AD>1)AD-=1;if(AD<0.16666666666666666)return KD+(WD-KD)*6*AD;if(AD<0.5)return WD;if(AD<0.6666666666666666)return KD+(WD-KD)*(0.6666666666666666-AD)*6;return KD}if(_===0)T=h=c=H;else{var p=H<0.5?H*(1+_):H+_-H*_,QD=2*H-p;T=l(QD,p,N+0.3333333333333333),h=l(QD,p,N),c=l(QD,p,N-0.3333333333333333)}return{r:T*255,g:h*255,b:c*255}}function W(N,_,H){N=S(N,255),_=S(_,255),H=S(H,255);var T=Math.max(N,_,H),h=Math.min(N,_,H),c,l,p=T,QD=T-h;if(l=T===0?0:QD/T,T==h)c=0;else{switch(T){case N:c=(_-H)/QD+(_<H?6:0);break;case _:c=(H-N)/QD+2;break;case H:c=(N-_)/QD+4;break}c/=6}return{h:c,s:l,v:p}}function z(N,_,H){N=S(N,360)*6,_=S(_,100),H=S(H,100);var T=Math.floor(N),h=N-T,c=H*(1-_),l=H*(1-h*_),p=H*(1-(1-h)*_),QD=T%6,KD=[H,l,c,c,p,H][QD],WD=[p,H,H,l,c,c][QD],AD=[c,c,p,H,H,l][QD];return{r:KD*255,g:WD*255,b:AD*255}}function G(N,_,H,T){var h=[DD(Math.round(N).toString(16)),DD(Math.round(_).toString(16)),DD(Math.round(H).toString(16))];if(T&&h[0].charAt(0)==h[0].charAt(1)&&h[1].charAt(0)==h[1].charAt(1)&&h[2].charAt(0)==h[2].charAt(1))return h[0].charAt(0)+h[1].charAt(0)+h[2].charAt(0);return h.join("")}function q(N,_,H,T,h){var c=[DD(Math.round(N).toString(16)),DD(Math.round(_).toString(16)),DD(Math.round(H).toString(16)),DD(JD(T))];if(h&&c[0].charAt(0)==c[0].charAt(1)&&c[1].charAt(0)==c[1].charAt(1)&&c[2].charAt(0)==c[2].charAt(1)&&c[3].charAt(0)==c[3].charAt(1))return c[0].charAt(0)+c[1].charAt(0)+c[2].charAt(0)+c[3].charAt(0);return c.join("")}function E(N,_,H,T){var h=[DD(JD(T)),DD(Math.round(N).toString(16)),DD(Math.round(_).toString(16)),DD(Math.round(H).toString(16))];return h.join("")}B.equals=function(N,_){if(!N||!_)return!1;return B(N).toRgbString()==B(_).toRgbString()},B.random=function(){return B.fromRatio({r:Math.random(),g:Math.random(),b:Math.random()})};function U(N,_){_=_===0?0:_||10;var H=B(N).toHsl();return H.s-=_/100,H.s=g(H.s),B(H)}function A(N,_){_=_===0?0:_||10;var H=B(N).toHsl();return H.s+=_/100,H.s=g(H.s),B(H)}function K(N){return B(N).desaturate(100)}function V(N,_){_=_===0?0:_||10;var H=B(N).toHsl();return H.l+=_/100,H.l=g(H.l),B(H)}function j(N,_){_=_===0?0:_||10;var H=B(N).toRgb();return H.r=Math.max(0,Math.min(255,H.r-Math.round(255*-(_/100)))),H.g=Math.max(0,Math.min(255,H.g-Math.round(255*-(_/100)))),H.b=Math.max(0,Math.min(255,H.b-Math.round(255*-(_/100)))),B(H)}function L(N,_){_=_===0?0:_||10;var H=B(N).toHsl();return H.l-=_/100,H.l=g(H.l),B(H)}function R(N,_){var H=B(N).toHsl(),T=(H.h+_)%360;return H.h=T<0?360+T:T,B(H)}function b(N){var _=B(N).toHsl();return _.h=(_.h+180)%360,B(_)}function k(N,_){if(isNaN(_)||_<=0)throw new Error("Argument to polyad must be a positive number");var H=B(N).toHsl(),T=[B(N)],h=360/_;for(var c=1;c<_;c++)T.push(B({h:(H.h+c*h)%360,s:H.s,l:H.l}));return T}function I(N){var _=B(N).toHsl(),H=_.h;return[B(N),B({h:(H+72)%360,s:_.s,l:_.l}),B({h:(H+216)%360,s:_.s,l:_.l})]}function u(N,_,H){_=_||6,H=H||30;var T=B(N).toHsl(),h=360/H,c=[B(N)];for(T.h=(T.h-(h*_>>1)+720)%360;--_;)T.h=(T.h+h)%360,c.push(B(T));return c}function f(N,_){_=_||6;var H=B(N).toHsv(),T=H.h,h=H.s,c=H.v,l=[],p=1/_;while(_--)l.push(B({h:T,s:h,v:c})),c=(c+p)%1;return l}B.mix=function(N,_,H){H=H===0?0:H||50;var T=B(N).toRgb(),h=B(_).toRgb(),c=H/100,l={r:(h.r-T.r)*c+T.r,g:(h.g-T.g)*c+T.g,b:(h.b-T.b)*c+T.b,a:(h.a-T.a)*c+T.a};return B(l)},B.readability=function(N,_){var H=B(N),T=B(_);return(Math.max(H.getLuminance(),T.getLuminance())+0.05)/(Math.min(H.getLuminance(),T.getLuminance())+0.05)},B.isReadable=function(N,_,H){var T=B.readability(N,_),h,c;switch(c=!1,h=nD(H),h.level+h.size){case"AAsmall":case"AAAlarge":c=T>=4.5;break;case"AAlarge":c=T>=3;break;case"AAAsmall":c=T>=7;break}return c},B.mostReadable=function(N,_,H){var T=null,h=0,c,l,p,QD;H=H||{},l=H.includeFallbackColors,p=H.level,QD=H.size;for(var KD=0;KD<_.length;KD++)if(c=B.readability(N,_[KD]),c>h)h=c,T=B(_[KD]);if(B.isReadable(N,T,{level:p,size:QD})||!l)return T;else return H.includeFallbackColors=!1,B.mostReadable(N,["#fff","#000"],H)};var O=B.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},y=B.hexNames=x(O);function x(N){var _={};for(var H in N)if(N.hasOwnProperty(H))_[N[H]]=H;return _}function w(N){if(N=parseFloat(N),isNaN(N)||N<0||N>1)N=1;return N}function S(N,_){if(n(N))N="100%";var H=a(N);if(N=Math.min(_,Math.max(0,parseFloat(N))),H)N=parseInt(N*_,10)/100;if(Math.abs(N-_)<0.000001)return 1;return N%_/parseFloat(_)}function g(N){return Math.min(1,Math.max(0,N))}function d(N){return parseInt(N,16)}function n(N){return typeof N=="string"&&N.indexOf(".")!=-1&&parseFloat(N)===1}function a(N){return typeof N==="string"&&N.indexOf("%")!=-1}function DD(N){return N.length==1?"0"+N:""+N}function o(N){if(N<=1)N=N*100+"%";return N}function JD(N){return Math.round(parseFloat(N)*255).toString(16)}function CD(N){return d(N)/255}var FD=function(){var N="[-\\+]?\\d+%?",_="[-\\+]?\\d*\\.\\d+%?",H="(?:"+_+")|(?:"+N+")",T="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?",h="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?";return{CSS_UNIT:new RegExp(H),rgb:new RegExp("rgb"+T),rgba:new RegExp("rgba"+h),hsl:new RegExp("hsl"+T),hsla:new RegExp("hsla"+h),hsv:new RegExp("hsv"+T),hsva:new RegExp("hsva"+h),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function MD(N){return!!FD.CSS_UNIT.exec(N)}function dD(N){N=N.replace(F,"").replace(Q,"").toLowerCase();var _=!1;if(O[N])N=O[N],_=!0;else if(N=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var H;if(H=FD.rgb.exec(N))return{r:H[1],g:H[2],b:H[3]};if(H=FD.rgba.exec(N))return{r:H[1],g:H[2],b:H[3],a:H[4]};if(H=FD.hsl.exec(N))return{h:H[1],s:H[2],l:H[3]};if(H=FD.hsla.exec(N))return{h:H[1],s:H[2],l:H[3],a:H[4]};if(H=FD.hsv.exec(N))return{h:H[1],s:H[2],v:H[3]};if(H=FD.hsva.exec(N))return{h:H[1],s:H[2],v:H[3],a:H[4]};if(H=FD.hex8.exec(N))return{r:d(H[1]),g:d(H[2]),b:d(H[3]),a:CD(H[4]),format:_?"name":"hex8"};if(H=FD.hex6.exec(N))return{r:d(H[1]),g:d(H[2]),b:d(H[3]),format:_?"name":"hex"};if(H=FD.hex4.exec(N))return{r:d(H[1]+""+H[1]),g:d(H[2]+""+H[2]),b:d(H[3]+""+H[3]),a:CD(H[4]+""+H[4]),format:_?"name":"hex8"};if(H=FD.hex3.exec(N))return{r:d(H[1]+""+H[1]),g:d(H[2]+""+H[2]),b:d(H[3]+""+H[3]),format:_?"name":"hex"};return!1}function nD(N){var _,H;if(N=N||{level:"AA",size:"small"},_=(N.level||"AA").toUpperCase(),H=(N.size||"small").toLowerCase(),_!=="AA"&&_!=="AAA")_="AA";if(H!=="small"&&H!=="large")H="small";return{level:_,size:H}}return B})});var m3=VD((wE,h3)=>{var D8=x3(),g3={r:256,g:256,b:256,a:1},$3={h:360,s:1,v:1,a:1};function y1(D,F,Q){let B={};for(let Y in D)if(D.hasOwnProperty(Y))B[Y]=Q===0?0:(F[Y]-D[Y])/Q;return B}function f1(D,F,Q,B){let Y={};for(let J in F)if(F.hasOwnProperty(J))Y[J]=D[J]*Q+F[J],Y[J]=Y[J]<0?Y[J]+B[J]:B[J]!==1?Y[J]%B[J]:Y[J];return Y}function u1(D,F,Q){let B=D.color.toRgb(),Y=F.color.toRgb(),J=y1(B,Y,Q),X=[D.color];for(let C=1;C<Q;C++){let W=f1(J,B,C,g3);X.push(D8(W))}return X}function u3(D,F,Q,B){let Y=D.color.toHsv(),J=F.color.toHsv();if(Y.s===0||J.s===0)return u1(D,F,Q);let X;if(typeof B==="boolean")X=B;else{let G=Y.h<J.h&&J.h-Y.h<180||Y.h>J.h&&Y.h-J.h>180;X=B==="long"&&G||B==="short"&&!G}let C=y1(Y,J,Q),W=[D.color],z;if(Y.h<=J.h&&!X||Y.h>=J.h&&X)z=J.h-Y.h;else if(X)z=360-J.h+Y.h;else z=360-Y.h+J.h;C.h=Math.pow(-1,X?1:0)*Math.abs(z)/Q;for(let G=1;G<Q;G++){let q=f1(C,Y,G,$3);W.push(D8(q))}return W}function y3(D,F){let Q=D.length;if(F=parseInt(F,10),isNaN(F)||F<2)throw new Error("Invalid number of steps (< 2)");if(F<Q)throw new Error("Number of steps cannot be inferior to number of stops");let B=[];for(let J=1;J<Q;J++){let X=(F-1)*(D[J].pos-D[J-1].pos);B.push(Math.max(1,Math.round(X)))}let Y=1;for(let J=Q-1;J--;)Y+=B[J];while(Y!==F)if(Y<F){let J=Math.min.apply(null,B);B[B.indexOf(J)]++,Y++}else{let J=Math.max.apply(null,B);B[B.indexOf(J)]--,Y--}return B}function f3(D,F,Q,B){if(F<0||F>1)throw new Error("Position must be between 0 and 1");let Y,J;for(let W=0,z=D.length;W<z-1;W++)if(F>=D[W].pos&&F<D[W+1].pos){Y=D[W],J=D[W+1];break}if(!Y)Y=J=D[D.length-1];let X=y1(Y.color[Q](),J.color[Q](),(J.pos-Y.pos)*100),C=f1(X,Y.color[Q](),(F-Y.pos)*100,B);return D8(C)}class B6{constructor(D){if(D.length<2)throw new Error("Invalid number of stops (< 2)");let F=D[0].pos!==void 0,Q=D.length,B=-1,Y=!1;if(this.stops=D.map((J,X)=>{let C=J.pos!==void 0;if(F^C)throw new Error("Cannot mix positionned and not posionned color stops");if(C){let W=J.color!==void 0;if(!W&&(Y||X===0||X===Q-1))throw new Error("Cannot define two consecutive position-only stops");if(Y=!W,J={color:W?D8(J.color):null,colorLess:!W,pos:J.pos},J.pos<0||J.pos>1)throw new Error("Color stops positions must be between 0 and 1");else if(J.pos<B)throw new Error("Color stops positions are not ordered");B=J.pos}else J={color:D8(J.color!==void 0?J.color:J),pos:X/(Q-1)};return J}),this.stops[0].pos!==0)this.stops.unshift({color:this.stops[0].color,pos:0}),Q++;if(this.stops[Q-1].pos!==1)this.stops.push({color:this.stops[Q-1].color,pos:1})}reverse(){let D=[];return this.stops.forEach(function(F){D.push({color:F.color,pos:1-F.pos})}),new B6(D.reverse())}loop(){let D=[],F=[];return this.stops.forEach((Q)=>{D.push({color:Q.color,pos:Q.pos/2})}),this.stops.slice(0,-1).forEach((Q)=>{F.push({color:Q.color,pos:1-Q.pos/2})}),new B6(D.concat(F.reverse()))}rgb(D){let F=y3(this.stops,D),Q=[];this.stops.forEach((B,Y)=>{if(B.colorLess)B.color=u1(this.stops[Y-1],this.stops[Y+1],2)[1]});for(let B=0,Y=this.stops.length;B<Y-1;B++){let J=u1(this.stops[B],this.stops[B+1],F[B]);Q.splice(Q.length,0,...J)}return Q.push(this.stops[this.stops.length-1].color),Q}hsv(D,F){let Q=y3(this.stops,D),B=[];this.stops.forEach((Y,J)=>{if(Y.colorLess)Y.color=u3(this.stops[J-1],this.stops[J+1],2,F)[1]});for(let Y=0,J=this.stops.length;Y<J-1;Y++){let X=u3(this.stops[Y],this.stops[Y+1],Q[Y],F);B.splice(B.length,0,...X)}return B.push(this.stops[this.stops.length-1].color),B}css(D,F){D=D||"linear",F=F||(D==="linear"?"to right":"ellipse at center");let Q=D+"-gradient("+F;return this.stops.forEach(function(B){Q+=", "+(B.colorLess?"":B.color.toRgbString()+" ")+B.pos*100+"%"}),Q+=")",Q}rgbAt(D){return f3(this.stops,D,"toRgb",g3)}hsvAt(D){return f3(this.stops,D,"toHsv",$3)}}h3.exports=function(D){if(arguments.length===1){if(!Array.isArray(arguments[0]))throw new Error('"stops" is not an array');D=arguments[0]}else D=Array.prototype.slice.call(arguments);return new B6(D)}});var a3=VD((fE,i3)=>{i3.exports=()=>{return/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g}});var o3=VD((dE,kJ)=>{kJ.exports={single:{topLeft:"┌",top:"─",topRight:"┐",right:"│",bottomRight:"┘",bottom:"─",bottomLeft:"└",left:"│"},double:{topLeft:"╔",top:"═",topRight:"╗",right:"║",bottomRight:"╝",bottom:"═",bottomLeft:"╚",left:"║"},round:{topLeft:"╭",top:"─",topRight:"╮",right:"│",bottomRight:"╯",bottom:"─",bottomLeft:"╰",left:"│"},bold:{topLeft:"┏",top:"━",topRight:"┓",right:"┃",bottomRight:"┛",bottom:"━",bottomLeft:"┗",left:"┃"},singleDouble:{topLeft:"╓",top:"─",topRight:"╖",right:"║",bottomRight:"╜",bottom:"─",bottomLeft:"╙",left:"║"},doubleSingle:{topLeft:"╒",top:"═",topRight:"╕",right:"│",bottomRight:"╛",bottom:"═",bottomLeft:"╘",left:"│"},classic:{topLeft:"+",top:"-",topRight:"+",right:"|",bottomRight:"+",bottom:"-",bottomLeft:"+",left:"|"},arrow:{topLeft:"↘",top:"↓",topRight:"↙",right:"←",bottomRight:"↖",bottom:"↑",bottomLeft:"↗",left:"→"}}});var c1=VD((cE,d1)=>{var s3=o3();d1.exports=s3;d1.exports.default=s3});var Q4=VD((nE,B4)=>{B4.exports=({onlyFirst:D=!1}={})=>{let F=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(F,D?void 0:"g")}});var Y4=VD((iE,X4)=>{var $J=Q4();X4.exports=(D)=>typeof D==="string"?D.replace($J(),""):D});var C4=VD((aE,i1)=>{var J4=(D)=>{if(Number.isNaN(D))return!1;if(D>=4352&&(D<=4447||D===9001||D===9002||11904<=D&&D<=12871&&D!==12351||12880<=D&&D<=19903||19968<=D&&D<=42182||43360<=D&&D<=43388||44032<=D&&D<=55203||63744<=D&&D<=64255||65040<=D&&D<=65049||65072<=D&&D<=65131||65281<=D&&D<=65376||65504<=D&&D<=65510||110592<=D&&D<=110593||127488<=D&&D<=127569||131072<=D&&D<=262141))return!0;return!1};i1.exports=J4;i1.exports.default=J4});var z4=VD((rE,W4)=>{W4.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var q4=VD((oE,a1)=>{var hJ=Y4(),mJ=C4(),lJ=z4(),G4=(D)=>{if(typeof D!=="string"||D.length===0)return 0;if(D=hJ(D),D.length===0)return 0;D=D.replace(lJ()," ");let F=0;for(let Q=0;Q<D.length;Q++){let B=D.codePointAt(Q);if(B<=31||B>=127&&B<=159)continue;if(B>=768&&B<=879)continue;if(B>65535)Q++;F+=mJ(B)?2:1}return F};a1.exports=G4;a1.exports.default=G4});var H4=VD((sE,K4)=>{var dJ=q4();function lF(D,F){if(!D)return D;F=F||{};let Q=F.align||"center";if(Q==="left")return D;let B=F.split||`
`,Y=F.pad||" ",J=Q!=="right"?cJ:pJ,X=!1;if(!Array.isArray(D))X=!0,D=String(D).split(B);let C,W=0;return D=D.map(function(z){return z=String(z),C=dJ(z),W=Math.max(C,W),{str:z,width:C}}).map(function(z){return new Array(J(W,z.width)+1).join(Y)+z.str}),X?D.join(B):D}lF.left=function D(F){return lF(F,{align:"left"})};lF.center=function D(F){return lF(F,{align:"center"})};lF.right=function D(F){return lF(F,{align:"right"})};K4.exports=lF;function cJ(D,F){return Math.floor((D-F)/2)}function pJ(D,F){return D-F}});import{join as aD,dirname as W6,sep as qC}from"path";import{homedir as F7}from"os";import{existsSync as Q8,statSync as KC}from"fs";import{execSync as w4}from"child_process";import{fileURLToPath as HC}from"url";class YD{static instance=null;_dataDirectory=null;_packageRoot=null;_claudeConfigDirectory=null;static getInstance(){if(!YD.instance)YD.instance=new YD;return YD.instance}getDataDirectory(){if(this._dataDirectory)return this._dataDirectory;return this._dataDirectory=process.env.CLAUDE_MEM_DATA_DIR||aD(F7(),".claude-mem"),this._dataDirectory}getArchivesDirectory(){return aD(this.getDataDirectory(),"archives")}getHooksDirectory(){return aD(this.getDataDirectory(),"hooks")}getLogsDirectory(){return aD(this.getDataDirectory(),"logs")}getIndexDirectory(){return this.getDataDirectory()}getIndexPath(){return aD(this.getIndexDirectory(),"claude-mem-index.jsonl")}getTrashDirectory(){return aD(this.getDataDirectory(),"trash")}getBackupsDirectory(){return aD(this.getDataDirectory(),"backups")}getChromaDirectory(){return aD(this.getDataDirectory(),"chroma")}getProjectArchiveDirectory(D){return aD(this.getArchivesDirectory(),D)}getUserSettingsPath(){return aD(this.getDataDirectory(),"settings.json")}getClaudeConfigDirectory(){if(this._claudeConfigDirectory)return this._claudeConfigDirectory;return this._claudeConfigDirectory=process.env.CLAUDE_CONFIG_DIR||aD(F7(),".claude"),this._claudeConfigDirectory}getClaudeSettingsPath(){return aD(this.getClaudeConfigDirectory(),"settings.json")}getClaudeCommandsDirectory(){return aD(this.getClaudeConfigDirectory(),"commands")}getClaudeMdPath(){return aD(this.getClaudeConfigDirectory(),"CLAUDE.md")}getMcpConfigPath(){return aD(F7(),".claude.json")}getProjectMcpConfigPath(){return aD(process.cwd(),".mcp.json")}getPackageRoot(){if(this._packageRoot)return this._packageRoot;try{let Q=hD.resolve("claude-mem/package.json");return this._packageRoot=W6(Q),this._packageRoot}catch{}let D=HC(import.meta.url),F=W6(D);for(let Q=0;Q<10;Q++){let B=aD(F,"package.json");if(Q8(B)){if(hD(B).name==="claude-mem")return this._packageRoot=F,this._packageRoot}let Y=W6(F);if(Y===F)break;F=Y}try{let Q=w4("npm list -g claude-mem --json 2>/dev/null || npm list claude-mem --json 2>/dev/null",{encoding:"utf8"}),B=JSON.parse(Q);if(B.dependencies?.["claude-mem"]?.resolved)return this._packageRoot=W6(B.dependencies["claude-mem"].resolved),this._packageRoot}catch{}throw new Error("Cannot locate claude-mem package root. Ensure claude-mem is properly installed.")}findPackageHookTemplatesDirectory(){let D=this.getPackageRoot(),F=aD(D,"hook-templates"),Q=["session-start.js","stop.js","user-prompt-submit.js","post-tool-use.js"];for(let B of Q)if(!Q8(aD(F,B)))throw new Error(`Package hook-templates directory missing required template file: ${B}`);return F}findPackageCommandsDirectory(){let D=this.getPackageRoot(),F=aD(D,"commands"),Q=["save.md"];for(let B of Q)if(!Q8(aD(F,B)))throw new Error(`Package commands directory missing required file: ${B}`);return F}ensureDirectory(D){if(!Q8(D))hD("fs").mkdirSync(D,{recursive:!0})}ensureDirectories(D){D.forEach((F)=>this.ensureDirectory(F))}ensureAllDataDirectories(){this.ensureDirectories([this.getDataDirectory(),this.getArchivesDirectory(),this.getHooksDirectory(),this.getLogsDirectory(),this.getTrashDirectory(),this.getBackupsDirectory(),this.getChromaDirectory()])}ensureAllClaudeDirectories(){this.ensureDirectories([this.getClaudeConfigDirectory(),this.getClaudeCommandsDirectory()])}static extractProjectName(D){let F=D.split(qC),Q=["src","lib","app","project","workspace"];for(let B=F.length-1;B>=0;B--)if(Q.includes(F[B])&&B>0)return F[B-1];if(F.length>1)return F[F.length-2];return"unknown-project"}static getCurrentProjectName(){try{let D=w4("git rev-parse --show-toplevel",{cwd:process.cwd(),encoding:"utf8",stdio:["pipe","pipe","ignore"]}).trim();return hD("path").basename(D)}catch{return hD("path").basename(process.cwd())}}static createBackupFilename(D){let F=new Date().toISOString().replace(/[:.]/g,"-").replace("T","_").slice(0,19);return`${D}.backup.${F}`}static isPathAccessible(D){return Q8(D)&&KC(D).isDirectory()}}var E0=()=>{};var CF=VD((vC)=>{vC.getBooleanOption=(D,F)=>{let Q=!1;if(F in D&&typeof(Q=D[F])!=="boolean")throw new TypeError(`Expected the "${F}" option to be a boolean`);return Q};vC.cppdb=Symbol();vC.inspect=Symbol.for("nodejs.util.inspect.custom")});var J7=VD((hZ,x4)=>{var Y7={value:"SqliteError",writable:!0,enumerable:!1,configurable:!0};function nF(D,F){if(new.target!==nF)return new nF(D,F);if(typeof F!=="string")throw new TypeError("Expected second argument to be a string");Error.call(this,D),Y7.value=""+D,Object.defineProperty(this,"message",Y7),Error.captureStackTrace(this,nF),this.code=F}Object.setPrototypeOf(nF,Error);Object.setPrototypeOf(nF.prototype,Error.prototype);Object.defineProperty(nF.prototype,"name",Y7);x4.exports=nF});var y4=VD((mZ,u4)=>{var q6=hD("path").sep||"/";u4.exports=fC;function fC(D){if(typeof D!="string"||D.length<=7||D.substring(0,7)!="file://")throw new TypeError("must pass in a file:// URI to convert to a file path");var F=decodeURI(D.substring(7)),Q=F.indexOf("/"),B=F.substring(0,Q),Y=F.substring(Q+1);if(B=="localhost")B="";if(B)B=q6+q6+B;if(Y=Y.replace(/^(.+)\|/,"$1:"),q6=="\\")Y=Y.replace(/\//g,"\\");if(/^.+\:/.test(Y));else Y=q6+Y;return B+Y}});var h4=VD((U6,$4)=>{var __filename="/Users/alexnewman/Scripts/claude-mem-source/node_modules/bindings/bindings.js",C7=hD("fs"),H6=hD("path"),gC=y4(),K6=H6.join,$C=H6.dirname,f4=C7.accessSync&&function(D){try{C7.accessSync(D)}catch(F){return!1}return!0}||C7.existsSync||H6.existsSync,g4={arrow:process.env.NODE_BINDINGS_ARROW||" → ",compiled:process.env.NODE_BINDINGS_COMPILED_DIR||"compiled",platform:process.platform,arch:process.arch,nodePreGyp:"node-v"+process.versions.modules+"-"+process.platform+"-"+process.arch,version:process.versions.node,bindings:"bindings.node",try:[["module_root","build","bindings"],["module_root","build","Debug","bindings"],["module_root","build","Release","bindings"],["module_root","out","Debug","bindings"],["module_root","Debug","bindings"],["module_root","out","Release","bindings"],["module_root","Release","bindings"],["module_root","build","default","bindings"],["module_root","compiled","version","platform","arch","bindings"],["module_root","addon-build","release","install-root","bindings"],["module_root","addon-build","debug","install-root","bindings"],["module_root","addon-build","default","install-root","bindings"],["module_root","lib","binding","nodePreGyp","bindings"]]};function hC(D){if(typeof D=="string")D={bindings:D};else if(!D)D={};if(Object.keys(g4).map(function(W){if(!(W in D))D[W]=g4[W]}),!D.module_root)D.module_root=U6.getRoot(U6.getFileName());if(H6.extname(D.bindings)!=".node")D.bindings+=".node";var F=typeof __webpack_require__==="function"?__non_webpack_require__:hD,Q=[],B=0,Y=D.try.length,J,X,C;for(;B<Y;B++){J=K6.apply(null,D.try[B].map(function(W){return D[W]||W})),Q.push(J);try{if(X=D.path?F.resolve(J):F(J),!D.path)X.path=J;return X}catch(W){if(W.code!=="MODULE_NOT_FOUND"&&W.code!=="QUALIFIED_PATH_RESOLUTION_FAILED"&&!/not find/i.test(W.message))throw W}}throw C=new Error(`Could not locate the bindings file. Tried:
`+Q.map(function(W){return D.arrow+W}).join(`
`)),C.tries=Q,C}$4.exports=U6=hC;U6.getFileName=function D(F){var{prepareStackTrace:Q,stackTraceLimit:B}=Error,Y={},J;Error.stackTraceLimit=10,Error.prepareStackTrace=function(C,W){for(var z=0,G=W.length;z<G;z++)if(J=W[z].getFileName(),J!==__filename)if(F){if(J!==F)return}else return},Error.captureStackTrace(Y),Y.stack,Error.prepareStackTrace=Q,Error.stackTraceLimit=B;var X="file://";if(J.indexOf(X)===0)J=gC(J);return J};U6.getRoot=function D(F){var Q=$C(F),B;while(!0){if(Q===".")Q=process.cwd();if(f4(K6(Q,"package.json"))||f4(K6(Q,"node_modules")))return Q;if(B===Q)throw new Error('Could not find module root given file: "'+F+'". Do you have a `package.json` file? ');B=Q,Q=K6(Q,"..")}}});var m4=VD((mC)=>{var{cppdb:o0}=CF();mC.prepare=function D(F){return this[o0].prepare(F,this,!1)};mC.exec=function D(F){return this[o0].exec(F),this};mC.close=function D(){return this[o0].close(),this};mC.loadExtension=function D(...F){return this[o0].loadExtension(...F),this};mC.defaultSafeIntegers=function D(...F){return this[o0].defaultSafeIntegers(...F),this};mC.unsafeMode=function D(...F){return this[o0].unsafeMode(...F),this};mC.getters={name:{get:function D(){return this[o0].name},enumerable:!0},open:{get:function D(){return this[o0].open},enumerable:!0},inTransaction:{get:function D(){return this[o0].inTransaction},enumerable:!0},readonly:{get:function D(){return this[o0].readonly},enumerable:!0},memory:{get:function D(){return this[o0].memory},enumerable:!0}}});var c4=VD((nZ,d4)=>{var{cppdb:rC}=CF(),l4=new WeakMap;d4.exports=function D(F){if(typeof F!=="function")throw new TypeError("Expected first argument to be a function");let Q=this[rC],B=oC(Q,this),{apply:Y}=Function.prototype,J={default:{value:E6(Y,F,Q,B.default)},deferred:{value:E6(Y,F,Q,B.deferred)},immediate:{value:E6(Y,F,Q,B.immediate)},exclusive:{value:E6(Y,F,Q,B.exclusive)},database:{value:this,enumerable:!0}};return Object.defineProperties(J.default.value,J),Object.defineProperties(J.deferred.value,J),Object.defineProperties(J.immediate.value,J),Object.defineProperties(J.exclusive.value,J),J.default.value};var oC=(D,F)=>{let Q=l4.get(D);if(!Q){let B={commit:D.prepare("COMMIT",F,!1),rollback:D.prepare("ROLLBACK",F,!1),savepoint:D.prepare("SAVEPOINT `\t_bs3. `",F,!1),release:D.prepare("RELEASE `\t_bs3. `",F,!1),rollbackTo:D.prepare("ROLLBACK TO `\t_bs3. `",F,!1)};l4.set(D,Q={default:Object.assign({begin:D.prepare("BEGIN",F,!1)},B),deferred:Object.assign({begin:D.prepare("BEGIN DEFERRED",F,!1)},B),immediate:Object.assign({begin:D.prepare("BEGIN IMMEDIATE",F,!1)},B),exclusive:Object.assign({begin:D.prepare("BEGIN EXCLUSIVE",F,!1)},B)})}return Q},E6=(D,F,Q,{begin:B,commit:Y,rollback:J,savepoint:X,release:C,rollbackTo:W})=>function z(){let G,q,E;if(Q.inTransaction)G=X,q=C,E=W;else G=B,q=Y,E=J;G.run();try{let U=D.call(F,this,arguments);if(U&&typeof U.then==="function")throw new TypeError("Transaction function cannot return a promise");return q.run(),U}catch(U){if(Q.inTransaction){if(E.run(),E!==J)q.run()}throw U}}});var n4=VD((iZ,p4)=>{var{getBooleanOption:sC,cppdb:tC}=CF();p4.exports=function D(F,Q){if(Q==null)Q={};if(typeof F!=="string")throw new TypeError("Expected first argument to be a string");if(typeof Q!=="object")throw new TypeError("Expected second argument to be an options object");let B=sC(Q,"simple"),Y=this[tC].prepare(`PRAGMA ${F}`,this,!0);return B?Y.pluck().get():Y.all()}});var r4=VD((aZ,a4)=>{var eC=hD("fs"),DW=hD("path"),{promisify:FW}=hD("util"),{cppdb:BW}=CF(),i4=FW(eC.access);a4.exports=async function D(F,Q){if(Q==null)Q={};if(typeof F!=="string")throw new TypeError("Expected first argument to be a string");if(typeof Q!=="object")throw new TypeError("Expected second argument to be an options object");F=F.trim();let B="attached"in Q?Q.attached:"main",Y="progress"in Q?Q.progress:null;if(!F)throw new TypeError("Backup filename cannot be an empty string");if(F===":memory:")throw new TypeError('Invalid backup filename ":memory:"');if(typeof B!=="string")throw new TypeError('Expected the "attached" option to be a string');if(!B)throw new TypeError('The "attached" option cannot be an empty string');if(Y!=null&&typeof Y!=="function")throw new TypeError('Expected the "progress" option to be a function');await i4(DW.dirname(F)).catch(()=>{throw new TypeError("Cannot save backup because the directory does not exist")});let J=await i4(F).then(()=>!1,()=>!0);return QW(this[BW].backup(this,B,F,J),Y||null)};var QW=(D,F)=>{let Q=0,B=!0;return new Promise((Y,J)=>{setImmediate(function X(){try{let C=D.transfer(Q);if(!C.remainingPages){D.close(),Y(C);return}if(B)B=!1,Q=100;if(F){let W=F(C);if(W!==void 0)if(typeof W==="number"&&W===W)Q=Math.max(0,Math.min(2147483647,Math.round(W)));else throw new TypeError("Expected progress callback to return a number or undefined")}setImmediate(X)}catch(C){D.close(),J(C)}})})}});var s4=VD((rZ,o4)=>{var{cppdb:XW}=CF();o4.exports=function D(F){if(F==null)F={};if(typeof F!=="object")throw new TypeError("Expected first argument to be an options object");let Q="attached"in F?F.attached:"main";if(typeof Q!=="string")throw new TypeError('Expected the "attached" option to be a string');if(!Q)throw new TypeError('The "attached" option cannot be an empty string');return this[XW].serialize(Q)}});var e4=VD((oZ,t4)=>{var{getBooleanOption:Z6,cppdb:YW}=CF();t4.exports=function D(F,Q,B){if(Q==null)Q={};if(typeof Q==="function")B=Q,Q={};if(typeof F!=="string")throw new TypeError("Expected first argument to be a string");if(typeof B!=="function")throw new TypeError("Expected last argument to be a function");if(typeof Q!=="object")throw new TypeError("Expected second argument to be an options object");if(!F)throw new TypeError("User-defined function name cannot be an empty string");let Y="safeIntegers"in Q?+Z6(Q,"safeIntegers"):2,J=Z6(Q,"deterministic"),X=Z6(Q,"directOnly"),C=Z6(Q,"varargs"),W=-1;if(!C){if(W=B.length,!Number.isInteger(W)||W<0)throw new TypeError("Expected function.length to be a positive integer");if(W>100)throw new RangeError("User-defined functions cannot have more than 100 arguments")}return this[YW].function(B,F,W,Y,J,X),this}});var B5=VD((sZ,F5)=>{var{getBooleanOption:A6,cppdb:JW}=CF();F5.exports=function D(F,Q){if(typeof F!=="string")throw new TypeError("Expected first argument to be a string");if(typeof Q!=="object"||Q===null)throw new TypeError("Expected second argument to be an options object");if(!F)throw new TypeError("User-defined function name cannot be an empty string");let B="start"in Q?Q.start:null,Y=W7(Q,"step",!0),J=W7(Q,"inverse",!1),X=W7(Q,"result",!1),C="safeIntegers"in Q?+A6(Q,"safeIntegers"):2,W=A6(Q,"deterministic"),z=A6(Q,"directOnly"),G=A6(Q,"varargs"),q=-1;if(!G){if(q=Math.max(D5(Y),J?D5(J):0),q>0)q-=1;if(q>100)throw new RangeError("User-defined functions cannot have more than 100 arguments")}return this[JW].aggregate(B,Y,J,X,F,q,C,W,z),this};var W7=(D,F,Q)=>{let B=F in D?D[F]:null;if(typeof B==="function")return B;if(B!=null)throw new TypeError(`Expected the "${F}" option to be a function`);if(Q)throw new TypeError(`Missing required option "${F}"`);return null},D5=({length:D})=>{if(Number.isInteger(D)&&D>=0)return D;throw new TypeError("Expected function.length to be a positive integer")}});var J5=VD((tZ,Y5)=>{var{cppdb:CW}=CF();Y5.exports=function D(F,Q){if(typeof F!=="string")throw new TypeError("Expected first argument to be a string");if(!F)throw new TypeError("Virtual table module name cannot be an empty string");let B=!1;if(typeof Q==="object"&&Q!==null)B=!0,Q=EW(X5(Q,"used",F));else{if(typeof Q!=="function")throw new TypeError("Expected second argument to be a function or a table definition object");Q=WW(Q)}return this[CW].table(Q,F,B),this};function WW(D){return function F(Q,B,Y,...J){let X={module:Q,database:B,table:Y},C=HW.call(D,X,J);if(typeof C!=="object"||C===null)throw new TypeError(`Virtual table module "${Q}" did not return a table definition object`);return X5(C,"returned",Q)}}function X5(D,F,Q){if(!Y8.call(D,"rows"))throw new TypeError(`Virtual table module "${Q}" ${F} a table definition without a "rows" property`);if(!Y8.call(D,"columns"))throw new TypeError(`Virtual table module "${Q}" ${F} a table definition without a "columns" property`);let B=D.rows;if(typeof B!=="function"||Object.getPrototypeOf(B)!==UW)throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with an invalid "rows" property (should be a generator function)`);let Y=D.columns;if(!Array.isArray(Y)||!(Y=[...Y]).every((z)=>typeof z==="string"))throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with an invalid "columns" property (should be an array of strings)`);if(Y.length!==new Set(Y).size)throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with duplicate column names`);if(!Y.length)throw new RangeError(`Virtual table module "${Q}" ${F} a table definition with zero columns`);let J;if(Y8.call(D,"parameters")){if(J=D.parameters,!Array.isArray(J)||!(J=[...J]).every((z)=>typeof z==="string"))throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with an invalid "parameters" property (should be an array of strings)`)}else J=KW(B);if(J.length!==new Set(J).size)throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with duplicate parameter names`);if(J.length>32)throw new RangeError(`Virtual table module "${Q}" ${F} a table definition with more than the maximum number of 32 parameters`);for(let z of J)if(Y.includes(z))throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with column "${z}" which was ambiguously defined as both a column and parameter`);let X=2;if(Y8.call(D,"safeIntegers")){let z=D.safeIntegers;if(typeof z!=="boolean")throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with an invalid "safeIntegers" property (should be a boolean)`);X=+z}let C=!1;if(Y8.call(D,"directOnly")){if(C=D.directOnly,typeof C!=="boolean")throw new TypeError(`Virtual table module "${Q}" ${F} a table definition with an invalid "directOnly" property (should be a boolean)`)}return[`CREATE TABLE x(${[...J.map(Q5).map((z)=>`${z} HIDDEN`),...Y.map(Q5)].join(", ")});`,zW(B,new Map(Y.map((z,G)=>[z,J.length+G])),Q),J,X,C]}function zW(D,F,Q){return function*B(...Y){let J=Y.map((X)=>Buffer.isBuffer(X)?Buffer.from(X):X);for(let X=0;X<F.size;++X)J.push(null);for(let X of D(...Y))if(Array.isArray(X))GW(X,J,F.size,Q),yield J;else if(typeof X==="object"&&X!==null)qW(X,J,F,Q),yield J;else throw new TypeError(`Virtual table module "${Q}" yielded something that isn't a valid row object`)}}function GW(D,F,Q,B){if(D.length!==Q)throw new TypeError(`Virtual table module "${B}" yielded a row with an incorrect number of columns`);let Y=F.length-Q;for(let J=0;J<Q;++J)F[J+Y]=D[J]}function qW(D,F,Q,B){let Y=0;for(let J of Object.keys(D)){let X=Q.get(J);if(X===void 0)throw new TypeError(`Virtual table module "${B}" yielded a row with an undeclared column "${J}"`);F[X]=D[J],Y+=1}if(Y!==Q.size)throw new TypeError(`Virtual table module "${B}" yielded a row with missing columns`)}function KW({length:D}){if(!Number.isInteger(D)||D<0)throw new TypeError("Expected function.length to be a positive integer");let F=[];for(let Q=0;Q<D;++Q)F.push(`$${Q+1}`);return F}var{hasOwnProperty:Y8}=Object.prototype,{apply:HW}=Function.prototype,UW=Object.getPrototypeOf(function*(){}),Q5=(D)=>`"${D.replace(/"/g,'""')}"`,EW=(D)=>()=>D});var W5=VD((eZ,C5)=>{var ZW=function D(){};C5.exports=function D(F,Q){return Object.assign(new ZW,this)}});var K5=VD((DA,q5)=>{var AW=hD("fs"),z5=hD("path"),V6=CF(),VW=J7(),G5;function z0(D,F){if(new.target==null)return new z0(D,F);let Q;if(Buffer.isBuffer(D))Q=D,D=":memory:";if(D==null)D="";if(F==null)F={};if(typeof D!=="string")throw new TypeError("Expected first argument to be a string");if(typeof F!=="object")throw new TypeError("Expected second argument to be an options object");if("readOnly"in F)throw new TypeError('Misspelled option "readOnly" should be "readonly"');if("memory"in F)throw new TypeError('Option "memory" was removed in v7.0.0 (use ":memory:" filename instead)');let B=D.trim(),Y=B===""||B===":memory:",J=V6.getBooleanOption(F,"readonly"),X=V6.getBooleanOption(F,"fileMustExist"),C="timeout"in F?F.timeout:5000,W="verbose"in F?F.verbose:null,z="nativeBinding"in F?F.nativeBinding:null;if(J&&Y&&!Q)throw new TypeError("In-memory/temporary databases cannot be readonly");if(!Number.isInteger(C)||C<0)throw new TypeError('Expected the "timeout" option to be a positive integer');if(C>2147483647)throw new RangeError('Option "timeout" cannot be greater than 2147483647');if(W!=null&&typeof W!=="function")throw new TypeError('Expected the "verbose" option to be a function');if(z!=null&&typeof z!=="string"&&typeof z!=="object")throw new TypeError('Expected the "nativeBinding" option to be a string or addon object');let G;if(z==null)G=G5||(G5=h4()("better_sqlite3.node"));else if(typeof z==="string")G=(typeof __non_webpack_require__==="function"?__non_webpack_require__:hD)(z5.resolve(z).replace(/(\.node)?$/,".node"));else G=z;if(!G.isInitialized)G.setErrorConstructor(VW),G.isInitialized=!0;if(!Y&&!AW.existsSync(z5.dirname(B)))throw new TypeError("Cannot open database because the directory does not exist");Object.defineProperties(this,{[V6.cppdb]:{value:new G.Database(B,D,Y,J,X,C,W||null,Q||null)},...iF.getters})}var iF=m4();z0.prototype.prepare=iF.prepare;z0.prototype.transaction=c4();z0.prototype.pragma=n4();z0.prototype.backup=r4();z0.prototype.serialize=s4();z0.prototype.function=e4();z0.prototype.aggregate=B5();z0.prototype.table=J5();z0.prototype.loadExtension=iF.loadExtension;z0.prototype.exec=iF.exec;z0.prototype.close=iF.close;z0.prototype.defaultSafeIntegers=iF.defaultSafeIntegers;z0.prototype.unsafeMode=iF.unsafeMode;z0.prototype[V6.inspect]=W5();q5.exports=z0});var H5=VD((BA,z7)=>{z7.exports=K5();z7.exports.SqliteError=J7()});var E5={};hF(E5,{initializeDatabase:()=>U5,getDatabase:()=>f0,DatabaseManager:()=>WF,Database:()=>G7.default});import LW from"path";import MW from"fs";class WF{static instance;db=null;migrations=[];static getInstance(){if(!WF.instance)WF.instance=new WF;return WF.instance}registerMigration(D){this.migrations.push(D),this.migrations.sort((F,Q)=>F.version-Q.version)}async initialize(){if(this.db)return this.db;let D=YD.getInstance().getDataDirectory();MW.mkdirSync(D,{recursive:!0});let F=LW.join(D,"claude-mem.db");return this.db=new G7.default(F),this.db.pragma("journal_mode = WAL"),this.db.pragma("synchronous = NORMAL"),this.db.pragma("foreign_keys = ON"),this.db.pragma("temp_store = memory"),this.db.pragma("mmap_size = 268435456"),this.db.pragma("cache_size = 10000"),this.initializeSchemaVersions(),await this.runMigrations(),L6=this.db,this.db}getConnection(){if(!this.db)throw new Error("Database not initialized. Call initialize() first.");return this.db}withTransaction(D){let F=this.getConnection();return F.transaction(D)(F)}close(){if(this.db)this.db.close(),this.db=null,L6=null}initializeSchemaVersions(){if(!this.db)return;this.db.exec(`
CREATE TABLE IF NOT EXISTS schema_versions (
id INTEGER PRIMARY KEY,
version INTEGER UNIQUE NOT NULL,
applied_at TEXT NOT NULL
)
`)}async runMigrations(){if(!this.db)return;let D=this.db.prepare("SELECT version FROM schema_versions ORDER BY version").all().map((Q)=>Q.version),F=D.length>0?Math.max(...D):0;for(let Q of this.migrations)if(Q.version>F)console.log(`Applying migration ${Q.version}...`),this.db.transaction(()=>{Q.up(this.db),this.db.prepare("INSERT INTO schema_versions (version, applied_at) VALUES (?, ?)").run(Q.version,new Date().toISOString())})(),console.log(`Migration ${Q.version} applied successfully`)}getCurrentVersion(){if(!this.db)return 0;return this.db.prepare("SELECT MAX(version) as version FROM schema_versions").get()?.version||0}}function f0(){if(!L6)throw new Error("Database not initialized. Call DatabaseManager.getInstance().initialize() first.");return L6}async function U5(){return await WF.getInstance().initialize()}var G7,L6=null;var LF=OF(()=>{G7=i0(H5(),1);E0()});function M0(D){let F;if(!D)F=new Date;else if(D instanceof Date)F=D;else if(typeof D==="number")F=new Date(D);else if(typeof D==="string"){if(!D.trim())F=new Date;else if(F=new Date(D),isNaN(F.getTime())){let Q=D.replace(/\s+/g,"T").replace(/T+/g,"T");if(F=new Date(Q),isNaN(F.getTime()))F=new Date}}else F=new Date;return{isoString:F.toISOString(),epoch:F.getTime()}}var Z5={};hF(Z5,{SessionStore:()=>J8});class J8{db;constructor(D){this.db=D||f0()}create(D){let{isoString:F,epoch:Q}=M0(D.created_at),Y=this.db.prepare(`
INSERT INTO sessions (
session_id, project, created_at, created_at_epoch, source,
archive_path, archive_bytes, archive_checksum, archived_at, metadata_json
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
`).run(D.session_id,D.project,F,Q,D.source||"compress",D.archive_path||null,D.archive_bytes||null,D.archive_checksum||null,D.archived_at||null,D.metadata_json||null);return this.getById(Y.lastInsertRowid)}upsert(D){let F=this.getBySessionId(D.session_id);if(F)return this.update(F.id,D);return this.create(D)}update(D,F){let Q=this.getById(D);if(!Q)throw new Error(`Session with id ${D} not found`);let{isoString:B,epoch:Y}=M0(F.created_at||Q.created_at);return this.db.prepare(`
UPDATE sessions SET
project = ?, created_at = ?, created_at_epoch = ?, source = ?,
archive_path = ?, archive_bytes = ?, archive_checksum = ?, archived_at = ?, metadata_json = ?
WHERE id = ?
`).run(F.project||Q.project,B,Y,F.source||Q.source,F.archive_path!==void 0?F.archive_path:Q.archive_path,F.archive_bytes!==void 0?F.archive_bytes:Q.archive_bytes,F.archive_checksum!==void 0?F.archive_checksum:Q.archive_checksum,F.archived_at!==void 0?F.archived_at:Q.archived_at,F.metadata_json!==void 0?F.metadata_json:Q.metadata_json,D),this.getById(D)}getById(D){return this.db.prepare("SELECT * FROM sessions WHERE id = ?").get(D)||null}getBySessionId(D){return this.db.prepare("SELECT * FROM sessions WHERE session_id = ?").get(D)||null}has(D){let F=this.db.prepare("SELECT 1 FROM sessions WHERE session_id = ? LIMIT 1");return Boolean(F.get(D))}getAllSessionIds(){let F=this.db.prepare("SELECT session_id FROM sessions").all();return new Set(F.map((Q)=>Q.session_id))}getRecentForProject(D,F=5){return this.db.prepare(`
SELECT * FROM sessions
WHERE project = ?
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D,F)}getRecent(D=5){return this.db.prepare(`
SELECT * FROM sessions
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D)}getBySource(D,F){let Q=F?"SELECT * FROM sessions WHERE source = ? ORDER BY created_at_epoch DESC LIMIT ?":"SELECT * FROM sessions WHERE source = ? ORDER BY created_at_epoch DESC",B=this.db.prepare(Q),Y=F?[D,F]:[D];return B.all(...Y)}count(){return this.db.prepare("SELECT COUNT(*) as count FROM sessions").get().count}countByProject(D){return this.db.prepare("SELECT COUNT(*) as count FROM sessions WHERE project = ?").get(D).count}deleteById(D){return this.db.prepare("DELETE FROM sessions WHERE id = ?").run(D).changes>0}deleteBySessionId(D){return this.db.prepare("DELETE FROM sessions WHERE session_id = ?").run(D).changes>0}}var M6=OF(()=>{LF()});var R5={};hF(R5,{MemoryStore:()=>U7});class U7{db;constructor(D){this.db=D||f0()}create(D){let{isoString:F,epoch:Q}=M0(D.created_at),Y=this.db.prepare(`
INSERT INTO memories (
session_id, text, document_id, keywords, created_at, created_at_epoch,
project, archive_basename, origin, title, subtitle, facts, concepts, files_touched
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
`).run(D.session_id,D.text,D.document_id||null,D.keywords||null,F,Q,D.project,D.archive_basename||null,D.origin||"transcript",D.title||null,D.subtitle||null,D.facts||null,D.concepts||null,D.files_touched||null);return this.getById(Y.lastInsertRowid)}createMany(D){return this.db.transaction((Q)=>{let B=[];for(let Y of Q)B.push(this.create(Y));return B})(D)}getById(D){return this.db.prepare("SELECT * FROM memories WHERE id = ?").get(D)||null}getByDocumentId(D){return this.db.prepare("SELECT * FROM memories WHERE document_id = ?").get(D)||null}hasDocumentId(D){let F=this.db.prepare("SELECT 1 FROM memories WHERE document_id = ? LIMIT 1");return Boolean(F.get(D))}getBySessionId(D){return this.db.prepare(`
SELECT * FROM memories
WHERE session_id = ?
ORDER BY created_at_epoch DESC
`).all(D)}getRecentForProject(D,F=10){return this.db.prepare(`
SELECT * FROM memories
WHERE project = ?
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D,F)}getRecent(D=10){return this.db.prepare(`
SELECT * FROM memories
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D)}searchByText(D,F,Q=20){let B="SELECT * FROM memories WHERE text LIKE ?",Y=[`%${D}%`];if(F)B+=" AND project = ?",Y.push(F);return B+=" ORDER BY created_at_epoch DESC LIMIT ?",Y.push(Q),this.db.prepare(B).all(...Y)}searchByKeywords(D,F,Q=20){let B="SELECT * FROM memories WHERE keywords LIKE ?",Y=[`%${D}%`];if(F)B+=" AND project = ?",Y.push(F);return B+=" ORDER BY created_at_epoch DESC LIMIT ?",Y.push(Q),this.db.prepare(B).all(...Y)}getByOrigin(D,F){let Q=F?"SELECT * FROM memories WHERE origin = ? ORDER BY created_at_epoch DESC LIMIT ?":"SELECT * FROM memories WHERE origin = ? ORDER BY created_at_epoch DESC",B=this.db.prepare(Q),Y=F?[D,F]:[D];return B.all(...Y)}getRecentForProjectByOrigin(D,F,Q=10){return this.db.prepare(`
SELECT * FROM memories
WHERE project = ? AND origin = ?
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D,F,Q)}getLastNForProject(D,F=10){return this.db.prepare(`
SELECT * FROM (
SELECT * FROM memories
WHERE project = ?
ORDER BY created_at_epoch DESC
LIMIT ?
)
ORDER BY created_at_epoch ASC
`).all(D,F)}count(){return this.db.prepare("SELECT COUNT(*) as count FROM memories").get().count}countByProject(D){return this.db.prepare("SELECT COUNT(*) as count FROM memories WHERE project = ?").get(D).count}update(D,F){let Q=this.getById(D);if(!Q)throw new Error(`Memory with id ${D} not found`);let{isoString:B,epoch:Y}=M0(F.created_at||Q.created_at);return this.db.prepare(`
UPDATE memories SET
text = ?, document_id = ?, keywords = ?, created_at = ?, created_at_epoch = ?,
project = ?, archive_basename = ?, origin = ?, title = ?, subtitle = ?, facts = ?,
concepts = ?, files_touched = ?
WHERE id = ?
`).run(F.text||Q.text,F.document_id!==void 0?F.document_id:Q.document_id,F.keywords!==void 0?F.keywords:Q.keywords,B,Y,F.project||Q.project,F.archive_basename!==void 0?F.archive_basename:Q.archive_basename,F.origin||Q.origin,F.title!==void 0?F.title:Q.title,F.subtitle!==void 0?F.subtitle:Q.subtitle,F.facts!==void 0?F.facts:Q.facts,F.concepts!==void 0?F.concepts:Q.concepts,F.files_touched!==void 0?F.files_touched:Q.files_touched,D),this.getById(D)}deleteById(D){return this.db.prepare("DELETE FROM memories WHERE id = ?").run(D).changes>0}deleteBySessionId(D){return this.db.prepare("DELETE FROM memories WHERE session_id = ?").run(D).changes}getUniqueProjects(){return this.db.prepare("SELECT DISTINCT project FROM memories ORDER BY project").all().map((Q)=>Q.project)}}var E7=OF(()=>{LF()});var _5={};hF(_5,{OverviewStore:()=>Z7});class Z7{db;constructor(D){this.db=D||f0()}create(D){let{isoString:F,epoch:Q}=M0(D.created_at),Y=this.db.prepare(`
INSERT INTO overviews (
session_id, content, created_at, created_at_epoch, project, origin
) VALUES (?, ?, ?, ?, ?, ?)
`).run(D.session_id,D.content,F,Q,D.project,D.origin||"claude");return this.getById(Y.lastInsertRowid)}upsert(D){let F=this.getBySessionId(D.session_id);if(F)return this.update(F.id,D);return this.create(D)}getById(D){return this.db.prepare("SELECT * FROM overviews WHERE id = ?").get(D)||null}getBySessionId(D){return this.db.prepare("SELECT * FROM overviews WHERE session_id = ?").get(D)||null}getRecentForProject(D,F=5){return this.db.prepare(`
SELECT * FROM overviews
WHERE project = ?
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D,F)}getAllForProject(D){return this.db.prepare(`
SELECT * FROM overviews
WHERE project = ?
ORDER BY created_at_epoch ASC
`).all(D)}getRecent(D=5){return this.db.prepare(`
SELECT * FROM overviews
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D)}searchByContent(D,F,Q=10){let B="SELECT * FROM overviews WHERE content LIKE ?",Y=[`%${D}%`];if(F)B+=" AND project = ?",Y.push(F);return B+=" ORDER BY created_at_epoch DESC LIMIT ?",Y.push(Q),this.db.prepare(B).all(...Y)}getByOrigin(D,F){let Q=F?"SELECT * FROM overviews WHERE origin = ? ORDER BY created_at_epoch DESC LIMIT ?":"SELECT * FROM overviews WHERE origin = ? ORDER BY created_at_epoch DESC",B=this.db.prepare(Q),Y=F?[D,F]:[D];return B.all(...Y)}count(){return this.db.prepare("SELECT COUNT(*) as count FROM overviews").get().count}countByProject(D){return this.db.prepare("SELECT COUNT(*) as count FROM overviews WHERE project = ?").get(D).count}update(D,F){let Q=this.getById(D);if(!Q)throw new Error(`Overview with id ${D} not found`);let{isoString:B,epoch:Y}=M0(F.created_at||Q.created_at);return this.db.prepare(`
UPDATE overviews SET
content = ?, created_at = ?, created_at_epoch = ?, project = ?, origin = ?
WHERE id = ?
`).run(F.content||Q.content,B,Y,F.project||Q.project,F.origin||Q.origin,D),this.getById(D)}deleteById(D){return this.db.prepare("DELETE FROM overviews WHERE id = ?").run(D).changes>0}deleteBySessionId(D){return this.db.prepare("DELETE FROM overviews WHERE session_id = ?").run(D).changes>0}getUniqueProjects(){return this.db.prepare("SELECT DISTINCT project FROM overviews ORDER BY project").all().map((Q)=>Q.project)}getByProject(D){return this.db.prepare(`
SELECT * FROM overviews
WHERE project = ?
ORDER BY created_at_epoch DESC
LIMIT 1
`).get(D)||null}upsertByProject(D){let F=this.getByProject(D.project);if(F)return this.update(F.id,D);return this.create(D)}deleteByProject(D){return this.db.prepare("DELETE FROM overviews WHERE project = ?").run(D).changes>0}}var A7=OF(()=>{LF()});var O5={};hF(O5,{DiagnosticsStore:()=>V7});class V7{db;constructor(D){this.db=D||f0()}create(D){let{isoString:F,epoch:Q}=M0(D.created_at),Y=this.db.prepare(`
INSERT INTO diagnostics (
session_id, message, severity, created_at, created_at_epoch, project, origin
) VALUES (?, ?, ?, ?, ?, ?, ?)
`).run(D.session_id||null,D.message,D.severity||"warn",F,Q,D.project,D.origin||"compressor");return this.getById(Y.lastInsertRowid)}getById(D){return this.db.prepare("SELECT * FROM diagnostics WHERE id = ?").get(D)||null}getBySessionId(D){return this.db.prepare(`
SELECT * FROM diagnostics
WHERE session_id = ?
ORDER BY created_at_epoch DESC
`).all(D)}getRecentForProject(D,F=10){return this.db.prepare(`
SELECT * FROM diagnostics
WHERE project = ?
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D,F)}getRecent(D=10){return this.db.prepare(`
SELECT * FROM diagnostics
ORDER BY created_at_epoch DESC
LIMIT ?
`).all(D)}getBySeverity(D,F){let Q=F?"SELECT * FROM diagnostics WHERE severity = ? ORDER BY created_at_epoch DESC LIMIT ?":"SELECT * FROM diagnostics WHERE severity = ? ORDER BY created_at_epoch DESC",B=this.db.prepare(Q),Y=F?[D,F]:[D];return B.all(...Y)}getByOrigin(D,F){let Q=F?"SELECT * FROM diagnostics WHERE origin = ? ORDER BY created_at_epoch DESC LIMIT ?":"SELECT * FROM diagnostics WHERE origin = ? ORDER BY created_at_epoch DESC",B=this.db.prepare(Q),Y=F?[D,F]:[D];return B.all(...Y)}searchByMessage(D,F,Q=20){let B="SELECT * FROM diagnostics WHERE message LIKE ?",Y=[`%${D}%`];if(F)B+=" AND project = ?",Y.push(F);return B+=" ORDER BY created_at_epoch DESC LIMIT ?",Y.push(Q),this.db.prepare(B).all(...Y)}count(){return this.db.prepare("SELECT COUNT(*) as count FROM diagnostics").get().count}countByProject(D){return this.db.prepare("SELECT COUNT(*) as count FROM diagnostics WHERE project = ?").get(D).count}countBySeverity(D){return this.db.prepare("SELECT COUNT(*) as count FROM diagnostics WHERE severity = ?").get(D).count}update(D,F){let Q=this.getById(D);if(!Q)throw new Error(`Diagnostic with id ${D} not found`);let{isoString:B,epoch:Y}=M0(F.created_at||Q.created_at);return this.db.prepare(`
UPDATE diagnostics SET
message = ?, severity = ?, created_at = ?, created_at_epoch = ?, project = ?, origin = ?
WHERE id = ?
`).run(F.message||Q.message,F.severity||Q.severity,B,Y,F.project||Q.project,F.origin||Q.origin,D),this.getById(D)}deleteById(D){return this.db.prepare("DELETE FROM diagnostics WHERE id = ?").run(D).changes>0}deleteBySessionId(D){return this.db.prepare("DELETE FROM diagnostics WHERE session_id = ?").run(D).changes}getUniqueProjects(){return this.db.prepare("SELECT DISTINCT project FROM diagnostics ORDER BY project").all().map((Q)=>Q.project)}getStats(){return this.db.prepare(`
SELECT
COUNT(*) as total,
COUNT(CASE WHEN severity = 'info' THEN 1 END) as info,
COUNT(CASE WHEN severity = 'warn' THEN 1 END) as warn,
COUNT(CASE WHEN severity = 'error' THEN 1 END) as error
FROM diagnostics
`).get()}}var L7=OF(()=>{LF()});var I5={};hF(I5,{TranscriptEventStore:()=>M7});class M7{db;constructor(D){this.db=D||f0()}upsert(D){let{isoString:F,epoch:Q}=M0(D.captured_at);return this.db.prepare(`
INSERT INTO transcript_events (
session_id,
project,
event_index,
event_type,
raw_json,
captured_at,
captured_at_epoch
) VALUES (?, ?, ?, ?, ?, ?, ?)
ON CONFLICT(session_id, event_index) DO UPDATE SET
project = excluded.project,
event_type = excluded.event_type,
raw_json = excluded.raw_json,
captured_at = excluded.captured_at,
captured_at_epoch = excluded.captured_at_epoch
`).run(D.session_id,D.project||null,D.event_index,D.event_type||null,D.raw_json,F,Q),this.getBySessionAndIndex(D.session_id,D.event_index)}upsertMany(D){return this.db.transaction((Q)=>{let B=[];for(let Y of Q)B.push(this.upsert(Y));return B})(D)}getBySessionAndIndex(D,F){return this.db.prepare(`
SELECT * FROM transcript_events
WHERE session_id = ? AND event_index = ?
`).get(D,F)}getMaxEventIndex(D){return this.db.prepare(`
SELECT MAX(event_index) as max_event_index
FROM transcript_events
WHERE session_id = ?
`).get(D)?.max_event_index??-1}listBySession(D,F=200,Q=0){return this.db.prepare(`
SELECT * FROM transcript_events
WHERE session_id = ?
ORDER BY event_index ASC
LIMIT ? OFFSET ?
`).all(D,F,Q)}}var N7=OF(()=>{LF()});var S5={};hF(S5,{migrations:()=>P5,migration002:()=>T5,migration001:()=>w5});var w5,T5,P5;var j7=OF(()=>{w5={version:1,up:(D)=>{D.exec(`
CREATE TABLE IF NOT EXISTS sessions (
id INTEGER PRIMARY KEY AUTOINCREMENT,
session_id TEXT UNIQUE NOT NULL,
project TEXT NOT NULL,
created_at TEXT NOT NULL,
created_at_epoch INTEGER NOT NULL,
source TEXT NOT NULL DEFAULT 'compress',
archive_path TEXT,
archive_bytes INTEGER,
archive_checksum TEXT,
archived_at TEXT,
metadata_json TEXT
);
CREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project);
CREATE INDEX IF NOT EXISTS idx_sessions_created_at ON sessions(created_at_epoch DESC);
CREATE INDEX IF NOT EXISTS idx_sessions_project_created ON sessions(project, created_at_epoch DESC);
`),D.exec(`
CREATE TABLE IF NOT EXISTS memories (
id INTEGER PRIMARY KEY AUTOINCREMENT,
session_id TEXT NOT NULL,
text TEXT NOT NULL,
document_id TEXT UNIQUE,
keywords TEXT,
created_at TEXT NOT NULL,
created_at_epoch INTEGER NOT NULL,
project TEXT NOT NULL,
archive_basename TEXT,
origin TEXT NOT NULL DEFAULT 'transcript',
FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE CASCADE
);
CREATE INDEX IF NOT EXISTS idx_memories_session ON memories(session_id);
CREATE INDEX IF NOT EXISTS idx_memories_project ON memories(project);
CREATE INDEX IF NOT EXISTS idx_memories_created_at ON memories(created_at_epoch DESC);
CREATE INDEX IF NOT EXISTS idx_memories_project_created ON memories(project, created_at_epoch DESC);
CREATE INDEX IF NOT EXISTS idx_memories_document_id ON memories(document_id);
CREATE INDEX IF NOT EXISTS idx_memories_origin ON memories(origin);
`),D.exec(`
CREATE TABLE IF NOT EXISTS overviews (
id INTEGER PRIMARY KEY AUTOINCREMENT,
session_id TEXT NOT NULL,
content TEXT NOT NULL,
created_at TEXT NOT NULL,
created_at_epoch INTEGER NOT NULL,
project TEXT NOT NULL,
origin TEXT NOT NULL DEFAULT 'claude',
FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE CASCADE
);
CREATE INDEX IF NOT EXISTS idx_overviews_session ON overviews(session_id);
CREATE INDEX IF NOT EXISTS idx_overviews_project ON overviews(project);
CREATE INDEX IF NOT EXISTS idx_overviews_created_at ON overviews(created_at_epoch DESC);
CREATE INDEX IF NOT EXISTS idx_overviews_project_created ON overviews(project, created_at_epoch DESC);
CREATE UNIQUE INDEX IF NOT EXISTS idx_overviews_project_latest ON overviews(project, created_at_epoch DESC);
`),D.exec(`
CREATE TABLE IF NOT EXISTS diagnostics (
id INTEGER PRIMARY KEY AUTOINCREMENT,
session_id TEXT,
message TEXT NOT NULL,
severity TEXT NOT NULL DEFAULT 'info',
created_at TEXT NOT NULL,
created_at_epoch INTEGER NOT NULL,
project TEXT NOT NULL,
origin TEXT NOT NULL DEFAULT 'system',
FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE SET NULL
);
CREATE INDEX IF NOT EXISTS idx_diagnostics_session ON diagnostics(session_id);
CREATE INDEX IF NOT EXISTS idx_diagnostics_project ON diagnostics(project);
CREATE INDEX IF NOT EXISTS idx_diagnostics_severity ON diagnostics(severity);
CREATE INDEX IF NOT EXISTS idx_diagnostics_created ON diagnostics(created_at_epoch DESC);
`),D.exec(`
CREATE TABLE IF NOT EXISTS transcript_events (
id INTEGER PRIMARY KEY AUTOINCREMENT,
session_id TEXT NOT NULL,
project TEXT,
event_index INTEGER NOT NULL,
event_type TEXT,
raw_json TEXT NOT NULL,
captured_at TEXT NOT NULL,
captured_at_epoch INTEGER NOT NULL,
FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE CASCADE,
UNIQUE(session_id, event_index)
);
CREATE INDEX IF NOT EXISTS idx_transcript_events_session ON transcript_events(session_id, event_index);
CREATE INDEX IF NOT EXISTS idx_transcript_events_project ON transcript_events(project);
CREATE INDEX IF NOT EXISTS idx_transcript_events_type ON transcript_events(event_type);
CREATE INDEX IF NOT EXISTS idx_transcript_events_captured ON transcript_events(captured_at_epoch DESC);
`),console.log("✅ Created all database tables successfully")},down:(D)=>{D.exec(`
DROP TABLE IF EXISTS transcript_events;
DROP TABLE IF EXISTS diagnostics;
DROP TABLE IF EXISTS overviews;
DROP TABLE IF EXISTS memories;
DROP TABLE IF EXISTS sessions;
`)}},T5={version:2,up:(D)=>{D.exec(`
ALTER TABLE memories ADD COLUMN title TEXT;
ALTER TABLE memories ADD COLUMN subtitle TEXT;
ALTER TABLE memories ADD COLUMN facts TEXT;
ALTER TABLE memories ADD COLUMN concepts TEXT;
ALTER TABLE memories ADD COLUMN files_touched TEXT;
`),D.exec(`
CREATE INDEX IF NOT EXISTS idx_memories_title ON memories(title);
CREATE INDEX IF NOT EXISTS idx_memories_concepts ON memories(concepts);
`),console.log("✅ Added hierarchical memory fields to memories table")},down:(D)=>{console.log("⚠️ Warning: SQLite ALTER TABLE DROP COLUMN not fully supported"),console.log("⚠️ To rollback, manually recreate the memories table")}},P5=[w5,T5]});var d9=i0(l9(),1),{program:PU,createCommand:SU,createArgument:bU,createOption:kU,CommanderError:vU,InvalidArgumentError:xU,InvalidOptionArgumentError:uU,Command:c9,Argument:yU,Option:fU,Help:gU}=d9.default;import{readFileSync as qY,existsSync as KY}from"fs";import{join as HY,dirname as UY}from"path";import{fileURLToPath as EY}from"url";var p9="claude-mem",n9="3.9.9",i9="Memory compression system for Claude Code - persist context across sessions",a9=p9,r9=n9,o9=i9;try{let D=EY(import.meta.url),F=UY(D),Q=HY(F,"..","..","package.json");if(KY(Q)){let B=JSON.parse(qY(Q,"utf-8"));a9=B.name||p9,r9=B.version||n9,o9=B.description||i9}}catch{}var G2=a9,s9=r9,t9=o9;import{readFileSync as E2,writeFileSync as pF,existsSync as TD,chmodSync as UC,mkdirSync as A2,copyFileSync as cF,statSync as EC,readdirSync as ZC}from"fs";import{join as LD,dirname as Z2}from"path";import{homedir as B7,platform as T4}from"os";import{execSync as dF}from"child_process";import{fileURLToPath as P4}from"url";var C0=i0(K1(),1),K3=i0(U1(),1);import{stdin as G3,stdout as q3}from"node:process";import*as IF from"node:readline";import B3 from"node:readline";import{Writable as NY}from"node:stream";function jY({onlyFirst:D=!1}={}){let F=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(F,D?void 0:"g")}var RY=jY();function H3(D){if(typeof D!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(RY,"")}function U3(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var E3={exports:{}};(function(D){var F={};D.exports=F,F.eastAsianWidth=function(B){var Y=B.charCodeAt(0),J=B.length==2?B.charCodeAt(1):0,X=Y;return 55296<=Y&&Y<=56319&&56320<=J&&J<=57343&&(Y&=1023,J&=1023,X=Y<<10|J,X+=65536),X==12288||65281<=X&&X<=65376||65504<=X&&X<=65510?"F":X==8361||65377<=X&&X<=65470||65474<=X&&X<=65479||65482<=X&&X<=65487||65490<=X&&X<=65495||65498<=X&&X<=65500||65512<=X&&X<=65518?"H":4352<=X&&X<=4447||4515<=X&&X<=4519||4602<=X&&X<=4607||9001<=X&&X<=9002||11904<=X&&X<=11929||11931<=X&&X<=12019||12032<=X&&X<=12245||12272<=X&&X<=12283||12289<=X&&X<=12350||12353<=X&&X<=12438||12441<=X&&X<=12543||12549<=X&&X<=12589||12593<=X&&X<=12686||12688<=X&&X<=12730||12736<=X&&X<=12771||12784<=X&&X<=12830||12832<=X&&X<=12871||12880<=X&&X<=13054||13056<=X&&X<=19903||19968<=X&&X<=42124||42128<=X&&X<=42182||43360<=X&&X<=43388||44032<=X&&X<=55203||55216<=X&&X<=55238||55243<=X&&X<=55291||63744<=X&&X<=64255||65040<=X&&X<=65049||65072<=X&&X<=65106||65108<=X&&X<=65126||65128<=X&&X<=65131||110592<=X&&X<=110593||127488<=X&&X<=127490||127504<=X&&X<=127546||127552<=X&&X<=127560||127568<=X&&X<=127569||131072<=X&&X<=194367||177984<=X&&X<=196605||196608<=X&&X<=262141?"W":32<=X&&X<=126||162<=X&&X<=163||165<=X&&X<=166||X==172||X==175||10214<=X&&X<=10221||10629<=X&&X<=10630?"Na":X==161||X==164||167<=X&&X<=168||X==170||173<=X&&X<=174||176<=X&&X<=180||182<=X&&X<=186||188<=X&&X<=191||X==198||X==208||215<=X&&X<=216||222<=X&&X<=225||X==230||232<=X&&X<=234||236<=X&&X<=237||X==240||242<=X&&X<=243||247<=X&&X<=250||X==252||X==254||X==257||X==273||X==275||X==283||294<=X&&X<=295||X==299||305<=X&&X<=307||X==312||319<=X&&X<=322||X==324||328<=X&&X<=331||X==333||338<=X&&X<=339||358<=X&&X<=359||X==363||X==462||X==464||X==466||X==468||X==470||X==472||X==474||X==476||X==593||X==609||X==708||X==711||713<=X&&X<=715||X==717||X==720||728<=X&&X<=731||X==733||X==735||768<=X&&X<=879||913<=X&&X<=929||931<=X&&X<=937||945<=X&&X<=961||963<=X&&X<=969||X==1025||1040<=X&&X<=1103||X==1105||X==8208||8211<=X&&X<=8214||8216<=X&&X<=8217||8220<=X&&X<=8221||8224<=X&&X<=8226||8228<=X&&X<=8231||X==8240||8242<=X&&X<=8243||X==8245||X==8251||X==8254||X==8308||X==8319||8321<=X&&X<=8324||X==8364||X==8451||X==8453||X==8457||X==8467||X==8470||8481<=X&&X<=8482||X==8486||X==8491||8531<=X&&X<=8532||8539<=X&&X<=8542||8544<=X&&X<=8555||8560<=X&&X<=8569||X==8585||8592<=X&&X<=8601||8632<=X&&X<=8633||X==8658||X==8660||X==8679||X==8704||8706<=X&&X<=8707||8711<=X&&X<=8712||X==8715||X==8719||X==8721||X==8725||X==8730||8733<=X&&X<=8736||X==8739||X==8741||8743<=X&&X<=8748||X==8750||8756<=X&&X<=8759||8764<=X&&X<=8765||X==8776||X==8780||X==8786||8800<=X&&X<=8801||8804<=X&&X<=8807||8810<=X&&X<=8811||8814<=X&&X<=8815||8834<=X&&X<=8835||8838<=X&&X<=8839||X==8853||X==8857||X==8869||X==8895||X==8978||9312<=X&&X<=9449||9451<=X&&X<=9547||9552<=X&&X<=9587||9600<=X&&X<=9615||9618<=X&&X<=9621||9632<=X&&X<=9633||9635<=X&&X<=9641||9650<=X&&X<=9651||9654<=X&&X<=9655||9660<=X&&X<=9661||9664<=X&&X<=9665||9670<=X&&X<=9672||X==9675||9678<=X&&X<=9681||9698<=X&&X<=9701||X==9711||9733<=X&&X<=9734||X==9737||9742<=X&&X<=9743||9748<=X&&X<=9749||X==9756||X==9758||X==9792||X==9794||9824<=X&&X<=9825||9827<=X&&X<=9829||9831<=X&&X<=9834||9836<=X&&X<=9837||X==9839||9886<=X&&X<=9887||9918<=X&&X<=9919||9924<=X&&X<=9933||9935<=X&&X<=9953||X==9955||9960<=X&&X<=9983||X==10045||X==10071||10102<=X&&X<=10111||11093<=X&&X<=11097||12872<=X&&X<=12879||57344<=X&&X<=63743||65024<=X&&X<=65039||X==65533||127232<=X&&X<=127242||127248<=X&&X<=127277||127280<=X&&X<=127337||127344<=X&&X<=127386||917760<=X&&X<=917999||983040<=X&&X<=1048573||1048576<=X&&X<=1114109?"A":"N"},F.characterLength=function(B){var Y=this.eastAsianWidth(B);return Y=="F"||Y=="W"||Y=="A"?2:1};function Q(B){return B.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}F.length=function(B){for(var Y=Q(B),J=0,X=0;X<Y.length;X++)J=J+this.characterLength(Y[X]);return J},F.slice=function(B,Y,J){textLen=F.length(B),Y=Y||0,J=J||1,Y<0&&(Y=textLen+Y),J<0&&(J=textLen+J);for(var X="",C=0,W=Q(B),z=0;z<W.length;z++){var G=W[z],q=F.length(G);if(C>=Y-(q==2?1:0))if(C+q<=J)X+=G;else break;C+=q}return X}})(E3);var _Y=E3.exports,OY=U3(_Y),IY=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},wY=U3(IY);function s2(D,F={}){if(typeof D!="string"||D.length===0||(F={ambiguousIsNarrow:!0,...F},D=H3(D),D.length===0))return 0;D=D.replace(wY()," ");let Q=F.ambiguousIsNarrow?1:2,B=0;for(let Y of D){let J=Y.codePointAt(0);if(J<=31||J>=127&&J<=159||J>=768&&J<=879)continue;switch(OY.eastAsianWidth(Y)){case"F":case"W":B+=2;break;case"A":B+=Q;break;default:B+=1}}return B}var E1=10,Q3=(D=0)=>(F)=>`\x1B[${F+D}m`,X3=(D=0)=>(F)=>`\x1B[${38+D};5;${F}m`,Y3=(D=0)=>(F,Q,B)=>`\x1B[${38+D};2;${F};${Q};${B}m`,xD={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(xD.modifier);var TY=Object.keys(xD.color),PY=Object.keys(xD.bgColor);[...TY];function SY(){let D=new Map;for(let[F,Q]of Object.entries(xD)){for(let[B,Y]of Object.entries(Q))xD[B]={open:`\x1B[${Y[0]}m`,close:`\x1B[${Y[1]}m`},Q[B]=xD[B],D.set(Y[0],Y[1]);Object.defineProperty(xD,F,{value:Q,enumerable:!1})}return Object.defineProperty(xD,"codes",{value:D,enumerable:!1}),xD.color.close="\x1B[39m",xD.bgColor.close="\x1B[49m",xD.color.ansi=Q3(),xD.color.ansi256=X3(),xD.color.ansi16m=Y3(),xD.bgColor.ansi=Q3(E1),xD.bgColor.ansi256=X3(E1),xD.bgColor.ansi16m=Y3(E1),Object.defineProperties(xD,{rgbToAnsi256:{value:(F,Q,B)=>F===Q&&Q===B?F<8?16:F>248?231:Math.round((F-8)/247*24)+232:16+36*Math.round(F/255*5)+6*Math.round(Q/255*5)+Math.round(B/255*5),enumerable:!1},hexToRgb:{value:(F)=>{let Q=/[a-f\d]{6}|[a-f\d]{3}/i.exec(F.toString(16));if(!Q)return[0,0,0];let[B]=Q;B.length===3&&(B=[...B].map((J)=>J+J).join(""));let Y=Number.parseInt(B,16);return[Y>>16&255,Y>>8&255,Y&255]},enumerable:!1},hexToAnsi256:{value:(F)=>xD.rgbToAnsi256(...xD.hexToRgb(F)),enumerable:!1},ansi256ToAnsi:{value:(F)=>{if(F<8)return 30+F;if(F<16)return 90+(F-8);let Q,B,Y;if(F>=232)Q=((F-232)*10+8)/255,B=Q,Y=Q;else{F-=16;let C=F%36;Q=Math.floor(F/36)/5,B=Math.floor(C/6)/5,Y=C%6/5}let J=Math.max(Q,B,Y)*2;if(J===0)return 30;let X=30+(Math.round(Y)<<2|Math.round(B)<<1|Math.round(Q));return J===2&&(X+=60),X},enumerable:!1},rgbToAnsi:{value:(F,Q,B)=>xD.ansi256ToAnsi(xD.rgbToAnsi256(F,Q,B)),enumerable:!1},hexToAnsi:{value:(F)=>xD.ansi256ToAnsi(xD.hexToAnsi256(F)),enumerable:!1}}),xD}var bY=SY(),a8=new Set(["\x1B","›"]),kY=39,V1="\x07",Z3="[",vY="]",A3="m",L1=`${vY}8;;`,J3=(D)=>`${a8.values().next().value}${Z3}${D}${A3}`,C3=(D)=>`${a8.values().next().value}${L1}${D}${V1}`,xY=(D)=>D.split(" ").map((F)=>s2(F)),Z1=(D,F,Q)=>{let B=[...F],Y=!1,J=!1,X=s2(H3(D[D.length-1]));for(let[C,W]of B.entries()){let z=s2(W);if(X+z<=Q?D[D.length-1]+=W:(D.push(W),X=0),a8.has(W)&&(Y=!0,J=B.slice(C+1).join("").startsWith(L1)),Y){J?W===V1&&(Y=!1,J=!1):W===A3&&(Y=!1);continue}X+=z,X===Q&&C<B.length-1&&(D.push(""),X=0)}!X&&D[D.length-1].length>0&&D.length>1&&(D[D.length-2]+=D.pop())},uY=(D)=>{let F=D.split(" "),Q=F.length;for(;Q>0&&!(s2(F[Q-1])>0);)Q--;return Q===F.length?D:F.slice(0,Q).join(" ")+F.slice(Q).join("")},yY=(D,F,Q={})=>{if(Q.trim!==!1&&D.trim()==="")return"";let B="",Y,J,X=xY(D),C=[""];for(let[z,G]of D.split(" ").entries()){Q.trim!==!1&&(C[C.length-1]=C[C.length-1].trimStart());let q=s2(C[C.length-1]);if(z!==0&&(q>=F&&(Q.wordWrap===!1||Q.trim===!1)&&(C.push(""),q=0),(q>0||Q.trim===!1)&&(C[C.length-1]+=" ",q++)),Q.hard&&X[z]>F){let E=F-q,U=1+Math.floor((X[z]-E-1)/F);Math.floor((X[z]-1)/F)<U&&C.push(""),Z1(C,G,F);continue}if(q+X[z]>F&&q>0&&X[z]>0){if(Q.wordWrap===!1&&q<F){Z1(C,G,F);continue}C.push("")}if(q+X[z]>F&&Q.wordWrap===!1){Z1(C,G,F);continue}C[C.length-1]+=G}Q.trim!==!1&&(C=C.map((z)=>uY(z)));let W=[...C.join(`
`)];for(let[z,G]of W.entries()){if(B+=G,a8.has(G)){let{groups:E}=new RegExp(`(?:\\${Z3}(?<code>\\d+)m|\\${L1}(?<uri>.*)${V1})`).exec(W.slice(z).join(""))||{groups:{}};if(E.code!==void 0){let U=Number.parseFloat(E.code);Y=U===kY?void 0:U}else E.uri!==void 0&&(J=E.uri.length===0?void 0:E.uri)}let q=bY.codes.get(Number(Y));W[z+1]===`
`?(J&&(B+=C3("")),Y&&q&&(B+=J3(q))):G===`
`&&(Y&&q&&(B+=J3(Y)),J&&(B+=C3(J)))}return B};function W3(D,F,Q){return String(D).normalize().replace(/\r\n/g,`
`).split(`
`).map((B)=>yY(B,F,Q)).join(`
`)}var fY=["up","down","left","right","space","enter","cancel"],i8={actions:new Set(fY),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["\x03","cancel"],["escape","cancel"]])};function M1(D,F){if(typeof D=="string")return i8.aliases.get(D)===F;for(let Q of D)if(Q!==void 0&&M1(Q,F))return!0;return!1}function gY(D,F){if(D===F)return;let Q=D.split(`
`),B=F.split(`
`),Y=[];for(let J=0;J<Math.max(Q.length,B.length);J++)Q[J]!==B[J]&&Y.push(J);return Y}var $Y=globalThis.process.platform.startsWith("win"),A1=Symbol("clack:cancel");function u0(D){return D===A1}function n8(D,F){let Q=D;Q.isTTY&&Q.setRawMode(F)}function V3({input:D=G3,output:F=q3,overwrite:Q=!0,hideCursor:B=!0}={}){let Y=IF.createInterface({input:D,output:F,prompt:"",tabSize:1});IF.emitKeypressEvents(D,Y),D.isTTY&&D.setRawMode(!0);let J=(X,{name:C,sequence:W})=>{let z=String(X);if(M1([z,C,W],"cancel")){B&&F.write(C0.cursor.show),process.exit(0);return}if(!Q)return;IF.moveCursor(F,C==="return"?0:-1,C==="return"?-1:0,()=>{IF.clearLine(F,1,()=>{D.once("keypress",J)})})};return B&&F.write(C0.cursor.hide),D.once("keypress",J),()=>{D.off("keypress",J),B&&F.write(C0.cursor.show),D.isTTY&&!$Y&&D.setRawMode(!1),Y.terminal=!1,Y.close()}}var hY=Object.defineProperty,mY=(D,F,Q)=>(F in D)?hY(D,F,{enumerable:!0,configurable:!0,writable:!0,value:Q}):D[F]=Q,I0=(D,F,Q)=>(mY(D,typeof F!="symbol"?F+"":F,Q),Q);class r8{constructor(D,F=!0){I0(this,"input"),I0(this,"output"),I0(this,"_abortSignal"),I0(this,"rl"),I0(this,"opts"),I0(this,"_render"),I0(this,"_track",!1),I0(this,"_prevFrame",""),I0(this,"_subscribers",new Map),I0(this,"_cursor",0),I0(this,"state","initial"),I0(this,"error",""),I0(this,"value");let{input:Q=G3,output:B=q3,render:Y,signal:J,...X}=D;this.opts=X,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=Y.bind(this),this._track=F,this._abortSignal=J,this.input=Q,this.output=B}unsubscribe(){this._subscribers.clear()}setSubscriber(D,F){let Q=this._subscribers.get(D)??[];Q.push(F),this._subscribers.set(D,Q)}on(D,F){this.setSubscriber(D,{cb:F})}once(D,F){this.setSubscriber(D,{cb:F,once:!0})}emit(D,...F){let Q=this._subscribers.get(D)??[],B=[];for(let Y of Q)Y.cb(...F),Y.once&&B.push(()=>Q.splice(Q.indexOf(Y),1));for(let Y of B)Y()}prompt(){return new Promise((D,F)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),D(A1);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}let Q=new NY;Q._write=(B,Y,J)=>{this._track&&(this.value=this.rl?.line.replace(/\t/g,""),this._cursor=this.rl?.cursor??0,this.emit("value",this.value)),J()},this.input.pipe(Q),this.rl=B3.createInterface({input:this.input,output:Q,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),B3.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),this.opts.initialValue!==void 0&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),n8(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(C0.cursor.show),this.output.off("resize",this.render),n8(this.input,!1),D(this.value)}),this.once("cancel",()=>{this.output.write(C0.cursor.show),this.output.off("resize",this.render),n8(this.input,!1),D(A1)})})}onKeypress(D,F){if(this.state==="error"&&(this.state="active"),F?.name&&(!this._track&&i8.aliases.has(F.name)&&this.emit("cursor",i8.aliases.get(F.name)),i8.actions.has(F.name)&&this.emit("cursor",F.name)),D&&(D.toLowerCase()==="y"||D.toLowerCase()==="n")&&this.emit("confirm",D.toLowerCase()==="y"),D==="\t"&&this.opts.placeholder&&(this.value||(this.rl?.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),D&&this.emit("key",D.toLowerCase()),F?.name==="return"){if(this.opts.validate){let Q=this.opts.validate(this.value);Q&&(this.error=Q instanceof Error?Q.message:Q,this.state="error",this.rl?.write(this.value))}this.state!=="error"&&(this.state="submit")}M1([D,F?.name,F?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
`),n8(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let D=W3(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
`).length-1;this.output.write(C0.cursor.move(-999,D*-1))}render(){let D=W3(this._render(this)??"",process.stdout.columns,{hard:!0});if(D!==this._prevFrame){if(this.state==="initial")this.output.write(C0.cursor.hide);else{let F=gY(this._prevFrame,D);if(this.restoreCursor(),F&&F?.length===1){let Q=F[0];this.output.write(C0.cursor.move(0,Q)),this.output.write(C0.erase.lines(1));let B=D.split(`
`);this.output.write(B[Q]),this._prevFrame=D,this.output.write(C0.cursor.move(0,B.length-Q-1));return}if(F&&F?.length>1){let Q=F[0];this.output.write(C0.cursor.move(0,Q)),this.output.write(C0.erase.down());let B=D.split(`
`).slice(Q);this.output.write(B.join(`
`)),this._prevFrame=D;return}this.output.write(C0.erase.down())}this.output.write(D),this.state==="initial"&&(this.state="active"),this._prevFrame=D}}}class N1 extends r8{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(D){super(D,!1),this.value=!!D.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",(F)=>{this.output.write(C0.cursor.move(0,-1)),this.value=F,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}var lY;lY=new WeakMap;var dY=Object.defineProperty,cY=(D,F,Q)=>(F in D)?dY(D,F,{enumerable:!0,configurable:!0,writable:!0,value:Q}):D[F]=Q,z3=(D,F,Q)=>(cY(D,typeof F!="symbol"?F+"":F,Q),Q);class j1 extends r8{constructor(D){super(D,!1),z3(this,"options"),z3(this,"cursor",0),this.options=D.options,this.cursor=this.options.findIndex(({value:F})=>F===D.initialValue),this.cursor===-1&&(this.cursor=0),this.changeValue(),this.on("cursor",(F)=>{switch(F){case"left":case"up":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case"down":case"right":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}this.changeValue()})}get _value(){return this.options[this.cursor]}changeValue(){this.value=this._value.value}}class R1 extends r8{get valueWithCursor(){if(this.state==="submit")return this.value;if(this.cursor>=this.value.length)return`${this.value}`;let D=this.value.slice(0,this.cursor),[F,...Q]=this.value.slice(this.cursor);return`${D}${K3.default.inverse(F)}${Q.join("")}`}get cursor(){return this._cursor}constructor(D){super(D),this.on("finalize",()=>{this.value||(this.value=D.defaultValue)})}}var s=i0(U1(),1),o8=i0(K1(),1);import a0 from"node:process";function pY(){return a0.platform!=="win32"?a0.env.TERM!=="linux":!!a0.env.CI||!!a0.env.WT_SESSION||!!a0.env.TERMINUS_SUBLIME||a0.env.ConEmuTask==="{cmd::Cmder}"||a0.env.TERM_PROGRAM==="Terminus-Sublime"||a0.env.TERM_PROGRAM==="vscode"||a0.env.TERM==="xterm-256color"||a0.env.TERM==="alacritty"||a0.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var _1=pY(),iD=(D,F)=>_1?D:F,nY=iD("◆","*"),L3=iD("■","x"),M3=iD("▲","x"),w1=iD("◇","o"),QE=iD("┌","T"),mD=iD("│","|"),q2=iD("└","—"),O1=iD("●",">"),I1=iD("○"," "),XE=iD("◻","[•]"),YE=iD("◼","[+]"),JE=iD("◻","[ ]"),CE=iD("▪","•"),WE=iD("─","-"),zE=iD("╮","+"),GE=iD("├","+"),qE=iD("╯","+"),iY=iD("●","•"),aY=iD("◆","*"),rY=iD("▲","!"),oY=iD("■","x"),T1=(D)=>{switch(D){case"initial":case"active":return s.default.cyan(nY);case"cancel":return s.default.red(L3);case"error":return s.default.yellow(M3);case"submit":return s.default.green(w1)}},sY=(D)=>{let{cursor:F,options:Q,style:B}=D,Y=D.maxItems??Number.POSITIVE_INFINITY,J=Math.max(process.stdout.rows-4,0),X=Math.min(J,Math.max(Y,5)),C=0;F>=C+X-3?C=Math.max(Math.min(F-X+3,Q.length-X),0):F<C+2&&(C=Math.max(F-2,0));let W=X<Q.length&&C>0,z=X<Q.length&&C+X<Q.length;return Q.slice(C,C+X).map((G,q,E)=>{let U=q===0&&W,A=q===E.length-1&&z;return U||A?s.default.dim("..."):B(G,q+C===F)})},N3=(D)=>new R1({validate:D.validate,placeholder:D.placeholder,defaultValue:D.defaultValue,initialValue:D.initialValue,render(){let F=`${s.default.gray(mD)}
${T1(this.state)} ${D.message}
`,Q=D.placeholder?s.default.inverse(D.placeholder[0])+s.default.dim(D.placeholder.slice(1)):s.default.inverse(s.default.hidden("_")),B=this.value?this.valueWithCursor:Q;switch(this.state){case"error":return`${F.trim()}
${s.default.yellow(mD)} ${B}
${s.default.yellow(q2)} ${s.default.yellow(this.error)}
`;case"submit":return`${F}${s.default.gray(mD)} ${s.default.dim(this.value||D.placeholder)}`;case"cancel":return`${F}${s.default.gray(mD)} ${s.default.strikethrough(s.default.dim(this.value??""))}${this.value?.trim()?`
${s.default.gray(mD)}`:""}`;default:return`${F}${s.default.cyan(mD)} ${B}
${s.default.cyan(q2)}
`}}}).prompt();var K2=(D)=>{let F=D.active??"Yes",Q=D.inactive??"No";return new N1({active:F,inactive:Q,initialValue:D.initialValue??!0,render(){let B=`${s.default.gray(mD)}
${T1(this.state)} ${D.message}
`,Y=this.value?F:Q;switch(this.state){case"submit":return`${B}${s.default.gray(mD)} ${s.default.dim(Y)}`;case"cancel":return`${B}${s.default.gray(mD)} ${s.default.strikethrough(s.default.dim(Y))}
${s.default.gray(mD)}`;default:return`${B}${s.default.cyan(mD)} ${this.value?`${s.default.green(O1)} ${F}`:`${s.default.dim(I1)} ${s.default.dim(F)}`} ${s.default.dim("/")} ${this.value?`${s.default.dim(I1)} ${s.default.dim(Q)}`:`${s.default.green(O1)} ${Q}`}
${s.default.cyan(q2)}
`}}}).prompt()},s8=(D)=>{let F=(Q,B)=>{let Y=Q.label??String(Q.value);switch(B){case"selected":return`${s.default.dim(Y)}`;case"active":return`${s.default.green(O1)} ${Y} ${Q.hint?s.default.dim(`(${Q.hint})`):""}`;case"cancelled":return`${s.default.strikethrough(s.default.dim(Y))}`;default:return`${s.default.dim(I1)} ${s.default.dim(Y)}`}};return new j1({options:D.options,initialValue:D.initialValue,render(){let Q=`${s.default.gray(mD)}
${T1(this.state)} ${D.message}
`;switch(this.state){case"submit":return`${Q}${s.default.gray(mD)} ${F(this.options[this.cursor],"selected")}`;case"cancel":return`${Q}${s.default.gray(mD)} ${F(this.options[this.cursor],"cancelled")}
${s.default.gray(mD)}`;default:return`${Q}${s.default.cyan(mD)} ${sY({cursor:this.cursor,options:this.options,maxItems:D.maxItems,style:(B,Y)=>F(B,Y?"active":"inactive")}).join(`
${s.default.cyan(mD)} `)}
${s.default.cyan(q2)}
`}}}).prompt()};var mF=(D="")=>{process.stdout.write(`${s.default.gray(q2)} ${s.default.red(D)}
`)};var j3=(D="")=>{process.stdout.write(`${s.default.gray(mD)}
${s.default.gray(q2)} ${D}
`)},tD={message:(D="",{symbol:F=s.default.gray(mD)}={})=>{let Q=[`${s.default.gray(mD)}`];if(D){let[B,...Y]=D.split(`
`);Q.push(`${F} ${B}`,...Y.map((J)=>`${s.default.gray(mD)} ${J}`))}process.stdout.write(`${Q.join(`
`)}
`)},info:(D)=>{tD.message(D,{symbol:s.default.blue(iY)})},success:(D)=>{tD.message(D,{symbol:s.default.green(aY)})},step:(D)=>{tD.message(D,{symbol:s.default.green(w1)})},warn:(D)=>{tD.message(D,{symbol:s.default.yellow(rY)})},warning:(D)=>{tD.warn(D)},error:(D)=>{tD.message(D,{symbol:s.default.red(oY)})}},KE=`${s.default.gray(mD)} `;var t8=({indicator:D="dots"}={})=>{let F=_1?["◒","◐","◓","◑"]:["•","o","O","0"],Q=_1?80:120,B=process.env.CI==="true",Y,J,X=!1,C="",W,z=performance.now(),G=(b)=>{let k=b>1?"Something went wrong":"Canceled";X&&R(k,b)},q=()=>G(2),E=()=>G(1),U=()=>{process.on("uncaughtExceptionMonitor",q),process.on("unhandledRejection",q),process.on("SIGINT",E),process.on("SIGTERM",E),process.on("exit",G)},A=()=>{process.removeListener("uncaughtExceptionMonitor",q),process.removeListener("unhandledRejection",q),process.removeListener("SIGINT",E),process.removeListener("SIGTERM",E),process.removeListener("exit",G)},K=()=>{if(W===void 0)return;B&&process.stdout.write(`
`);let b=W.split(`
`);process.stdout.write(o8.cursor.move(-999,b.length-1)),process.stdout.write(o8.erase.down(b.length))},V=(b)=>b.replace(/\.+$/,""),j=(b)=>{let k=(performance.now()-b)/1000,I=Math.floor(k/60),u=Math.floor(k%60);return I>0?`[${I}m ${u}s]`:`[${u}s]`},L=(b="")=>{X=!0,Y=V3(),C=V(b),z=performance.now(),process.stdout.write(`${s.default.gray(mD)}
`);let k=0,I=0;U(),J=setInterval(()=>{if(B&&C===W)return;K(),W=C;let u=s.default.magenta(F[k]);if(B)process.stdout.write(`${u} ${C}...`);else if(D==="timer")process.stdout.write(`${u} ${C} ${j(z)}`);else{let f=".".repeat(Math.floor(I)).slice(0,3);process.stdout.write(`${u} ${C}${f}`)}k=k+1<F.length?k+1:0,I=I<F.length?I+0.125:0},Q)},R=(b="",k=0)=>{X=!1,clearInterval(J),K();let I=k===0?s.default.green(w1):k===1?s.default.red(L3):s.default.red(M3);C=V(b??C),D==="timer"?process.stdout.write(`${I} ${C} ${j(z)}
`):process.stdout.write(`${I} ${C}
`),A(),Y()};return{start:L,stop:R,message:(b="")=>{C=V(b??C)}}};var R3=(D=0)=>(F)=>`\x1B[${F+D}m`,_3=(D=0)=>(F)=>`\x1B[${38+D};5;${F}m`,O3=(D=0)=>(F,Q,B)=>`\x1B[${38+D};2;${F};${Q};${B}m`,uD={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},UE=Object.keys(uD.modifier),tY=Object.keys(uD.color),eY=Object.keys(uD.bgColor),EE=[...tY,...eY];function DJ(){let D=new Map;for(let[F,Q]of Object.entries(uD)){for(let[B,Y]of Object.entries(Q))uD[B]={open:`\x1B[${Y[0]}m`,close:`\x1B[${Y[1]}m`},Q[B]=uD[B],D.set(Y[0],Y[1]);Object.defineProperty(uD,F,{value:Q,enumerable:!1})}return Object.defineProperty(uD,"codes",{value:D,enumerable:!1}),uD.color.close="\x1B[39m",uD.bgColor.close="\x1B[49m",uD.color.ansi=R3(),uD.color.ansi256=_3(),uD.color.ansi16m=O3(),uD.bgColor.ansi=R3(10),uD.bgColor.ansi256=_3(10),uD.bgColor.ansi16m=O3(10),Object.defineProperties(uD,{rgbToAnsi256:{value(F,Q,B){if(F===Q&&Q===B){if(F<8)return 16;if(F>248)return 231;return Math.round((F-8)/247*24)+232}return 16+36*Math.round(F/255*5)+6*Math.round(Q/255*5)+Math.round(B/255*5)},enumerable:!1},hexToRgb:{value(F){let Q=/[a-f\d]{6}|[a-f\d]{3}/i.exec(F.toString(16));if(!Q)return[0,0,0];let[B]=Q;if(B.length===3)B=[...B].map((J)=>J+J).join("");let Y=Number.parseInt(B,16);return[Y>>16&255,Y>>8&255,Y&255]},enumerable:!1},hexToAnsi256:{value:(F)=>uD.rgbToAnsi256(...uD.hexToRgb(F)),enumerable:!1},ansi256ToAnsi:{value(F){if(F<8)return 30+F;if(F<16)return 90+(F-8);let Q,B,Y;if(F>=232)Q=((F-232)*10+8)/255,B=Q,Y=Q;else{F-=16;let C=F%36;Q=Math.floor(F/36)/5,B=Math.floor(C/6)/5,Y=C%6/5}let J=Math.max(Q,B,Y)*2;if(J===0)return 30;let X=30+(Math.round(Y)<<2|Math.round(B)<<1|Math.round(Q));if(J===2)X+=60;return X},enumerable:!1},rgbToAnsi:{value:(F,Q,B)=>uD.ansi256ToAnsi(uD.rgbToAnsi256(F,Q,B)),enumerable:!1},hexToAnsi:{value:(F)=>uD.ansi256ToAnsi(uD.hexToAnsi256(F)),enumerable:!1}}),uD}var FJ=DJ(),r0=FJ;import P1 from"node:process";import BJ from"node:os";import I3 from"node:tty";function y0(D,F=globalThis.Deno?globalThis.Deno.args:P1.argv){let Q=D.startsWith("-")?"":D.length===1?"-":"--",B=F.indexOf(Q+D),Y=F.indexOf("--");return B!==-1&&(Y===-1||B<Y)}var{env:yD}=P1,D6;if(y0("no-color")||y0("no-colors")||y0("color=false")||y0("color=never"))D6=0;else if(y0("color")||y0("colors")||y0("color=true")||y0("color=always"))D6=1;function QJ(){if("FORCE_COLOR"in yD){if(yD.FORCE_COLOR==="true")return 1;if(yD.FORCE_COLOR==="false")return 0;return yD.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(yD.FORCE_COLOR,10),3)}}function XJ(D){if(D===0)return!1;return{level:D,hasBasic:!0,has256:D>=2,has16m:D>=3}}function YJ(D,{streamIsTTY:F,sniffFlags:Q=!0}={}){let B=QJ();if(B!==void 0)D6=B;let Y=Q?D6:B;if(Y===0)return 0;if(Q){if(y0("color=16m")||y0("color=full")||y0("color=truecolor"))return 3;if(y0("color=256"))return 2}if("TF_BUILD"in yD&&"AGENT_NAME"in yD)return 1;if(D&&!F&&Y===void 0)return 0;let J=Y||0;if(yD.TERM==="dumb")return J;if(P1.platform==="win32"){let X=BJ.release().split(".");if(Number(X[0])>=10&&Number(X[2])>=10586)return Number(X[2])>=14931?3:2;return 1}if("CI"in yD){if(["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some((X)=>(X in yD)))return 3;if(["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some((X)=>(X in yD))||yD.CI_NAME==="codeship")return 1;return J}if("TEAMCITY_VERSION"in yD)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(yD.TEAMCITY_VERSION)?1:0;if(yD.COLORTERM==="truecolor")return 3;if(yD.TERM==="xterm-kitty")return 3;if(yD.TERM==="xterm-ghostty")return 3;if(yD.TERM==="wezterm")return 3;if("TERM_PROGRAM"in yD){let X=Number.parseInt((yD.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(yD.TERM_PROGRAM){case"iTerm.app":return X>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(yD.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(yD.TERM))return 1;if("COLORTERM"in yD)return 1;return J}function w3(D,F={}){let Q=YJ(D,{streamIsTTY:D&&D.isTTY,...F});return XJ(Q)}var JJ={stdout:w3({isTTY:I3.isatty(1)}),stderr:w3({isTTY:I3.isatty(2)})},T3=JJ;function P3(D,F,Q){let B=D.indexOf(F);if(B===-1)return D;let Y=F.length,J=0,X="";do X+=D.slice(J,B)+F+Q,J=B+Y,B=D.indexOf(F,J);while(B!==-1);return X+=D.slice(J),X}function S3(D,F,Q,B){let Y=0,J="";do{let X=D[B-1]==="\r";J+=D.slice(Y,X?B-1:B)+F+(X?`\r
`:`
`)+Q,Y=B+1,B=D.indexOf(`
`,Y)}while(B!==-1);return J+=D.slice(Y),J}var{stdout:b3,stderr:k3}=T3,S1=Symbol("GENERATOR"),H2=Symbol("STYLER"),t2=Symbol("IS_EMPTY"),v3=["ansi","ansi","ansi256","ansi16m"],U2=Object.create(null),CJ=(D,F={})=>{if(F.level&&!(Number.isInteger(F.level)&&F.level>=0&&F.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let Q=b3?b3.level:0;D.level=F.level===void 0?Q:F.level};var WJ=(D)=>{let F=(...Q)=>Q.join(" ");return CJ(F,D),Object.setPrototypeOf(F,e2.prototype),F};function e2(D){return WJ(D)}Object.setPrototypeOf(e2.prototype,Function.prototype);for(let[D,F]of Object.entries(r0))U2[D]={get(){let Q=F6(this,k1(F.open,F.close,this[H2]),this[t2]);return Object.defineProperty(this,D,{value:Q}),Q}};U2.visible={get(){let D=F6(this,this[H2],!0);return Object.defineProperty(this,"visible",{value:D}),D}};var b1=(D,F,Q,...B)=>{if(D==="rgb"){if(F==="ansi16m")return r0[Q].ansi16m(...B);if(F==="ansi256")return r0[Q].ansi256(r0.rgbToAnsi256(...B));return r0[Q].ansi(r0.rgbToAnsi(...B))}if(D==="hex")return b1("rgb",F,Q,...r0.hexToRgb(...B));return r0[Q][D](...B)},zJ=["rgb","hex","ansi256"];for(let D of zJ){U2[D]={get(){let{level:Q}=this;return function(...B){let Y=k1(b1(D,v3[Q],"color",...B),r0.color.close,this[H2]);return F6(this,Y,this[t2])}}};let F="bg"+D[0].toUpperCase()+D.slice(1);U2[F]={get(){let{level:Q}=this;return function(...B){let Y=k1(b1(D,v3[Q],"bgColor",...B),r0.bgColor.close,this[H2]);return F6(this,Y,this[t2])}}}}var GJ=Object.defineProperties(()=>{},{...U2,level:{enumerable:!0,get(){return this[S1].level},set(D){this[S1].level=D}}}),k1=(D,F,Q)=>{let B,Y;if(Q===void 0)B=D,Y=F;else B=Q.openAll+D,Y=F+Q.closeAll;return{open:D,close:F,openAll:B,closeAll:Y,parent:Q}},F6=(D,F,Q)=>{let B=(...Y)=>qJ(B,Y.length===1?""+Y[0]:Y.join(" "));return Object.setPrototypeOf(B,GJ),B[S1]=D,B[H2]=F,B[t2]=Q,B},qJ=(D,F)=>{if(D.level<=0||!F)return D[t2]?"":F;let Q=D[H2];if(Q===void 0)return F;let{openAll:B,closeAll:Y}=Q;if(F.includes("\x1B"))while(Q!==void 0)F=P3(F,Q.close,Q.open),Q=Q.parent;let J=F.indexOf(`
`);if(J!==-1)F=S3(F,Y,B,J);return B+F+Y};Object.defineProperties(e2.prototype,U2);var KJ=e2(),OE=e2({level:k3?k3.level:0});var BD=KJ;var g1=i0(m3(),1),W0=(...D)=>{let F,Q;if(D.length===0)throw new Error("Missing gradient colors");if(!Array.isArray(D[0])){if(D.length===1)throw new Error(`Expected an array of colors, received ${JSON.stringify(D[0])}`);F=g1.default(...D)}else F=g1.default(D[0]),Q=$1(D[1]);let B=(Y,J)=>{return HJ(Y?Y.toString():"",F,J??Q)};return B.multiline=(Y,J)=>UJ(Y?Y.toString():"",F,J??Q),B},l3=(D,F,Q)=>{return F.interpolation?.toLowerCase()==="hsv"?D.hsv(Q,F.hsvSpin?.toLowerCase()||!1):D.rgb(Q)};function HJ(D,F,Q){let B=$1(Q),Y=Math.max(D.replace(/\s/g,"").length,F.stops.length),J=l3(F,B,Y),X="";for(let C of D)X+=C.match(/\s/g)?C:BD.hex(J.shift()?.toHex()||"#000")(C);return X}function UJ(D,F,Q){let B=$1(Q),Y=D.split(`
`),J=Math.max(...Y.map((W)=>W.length),F.stops.length),X=l3(F,B,J),C=[];for(let W of Y){let z=X.slice(0),G="";for(let q of W)G+=BD.hex(z.shift()?.toHex()||"#000")(q);C.push(G)}return C.join(`
`)}function $1(D){let F={interpolation:"rgb",hsvSpin:"short",...D};if(D!==void 0&&typeof D!=="object")throw new TypeError(`Expected \`options\` to be an \`object\`, got \`${typeof D}\``);if(typeof F.interpolation!=="string")throw new TypeError(`Expected \`options.interpolation\` to be \`rgb\` or \`hsv\`, got \`${typeof F.interpolation}\``);if(F.interpolation.toLowerCase()==="hsv"&&typeof F.hsvSpin!=="string")throw new TypeError(`Expected \`options.hsvSpin\` to be a \`short\` or \`long\`, got \`${typeof F.hsvSpin}\``);return F}var w0={atlas:{colors:["#feac5e","#c779d0","#4bc0c8"],options:{}},cristal:{colors:["#bdfff3","#4ac29a"],options:{}},teen:{colors:["#77a1d3","#79cbca","#e684ae"],options:{}},mind:{colors:["#473b7b","#3584a7","#30d2be"],options:{}},morning:{colors:["#ff5f6d","#ffc371"],options:{interpolation:"hsv"}},vice:{colors:["#5ee7df","#b490ca"],options:{interpolation:"hsv"}},passion:{colors:["#f43b47","#453a94"],options:{}},fruit:{colors:["#ff4e50","#f9d423"],options:{}},instagram:{colors:["#833ab4","#fd1d1d","#fcb045"],options:{}},retro:{colors:["#3f51b1","#5a55ae","#7b5fac","#8f6aae","#a86aa4","#cc6b8e","#f18271","#f3a469","#f7c978"],options:{}},summer:{colors:["#fdbb2d","#22c1c3"],options:{}},rainbow:{colors:["#ff0000","#ff0100"],options:{interpolation:"hsv",hsvSpin:"long"}},pastel:{colors:["#74ebd5","#74ecd5"],options:{interpolation:"hsv",hsvSpin:"long"}}};function T0(D){let F=(Q)=>W0(...D.colors)(Q,D.options);return F.multiline=(Q="")=>W0(...D.colors).multiline(Q,D.options),F}var h1=W0,EJ=T0(w0.atlas),ZJ=T0(w0.cristal),AJ=T0(w0.teen),VJ=T0(w0.mind),LJ=T0(w0.morning),MJ=T0(w0.vice),NJ=T0(w0.passion),jJ=T0(w0.fruit),RJ=T0(w0.instagram),_J=T0(w0.retro),OJ=T0(w0.summer),IJ=T0(w0.rainbow),wJ=T0(w0.pastel);W0.atlas=EJ;W0.cristal=ZJ;W0.teen=AJ;W0.mind=VJ;W0.morning=LJ;W0.vice=MJ;W0.passion=NJ;W0.fruit=jJ;W0.instagram=RJ;W0.retro=_J;W0.summer=OJ;W0.rainbow=IJ;W0.pastel=wJ;import C6 from"node:process";function m1({onlyFirst:D=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",D?void 0:"g")}var TJ=m1();function l1(D){if(typeof D!=="string")throw new TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(TJ,"")}function d3(D){return D===161||D===164||D===167||D===168||D===170||D===173||D===174||D>=176&&D<=180||D>=182&&D<=186||D>=188&&D<=191||D===198||D===208||D===215||D===216||D>=222&&D<=225||D===230||D>=232&&D<=234||D===236||D===237||D===240||D===242||D===243||D>=247&&D<=250||D===252||D===254||D===257||D===273||D===275||D===283||D===294||D===295||D===299||D>=305&&D<=307||D===312||D>=319&&D<=322||D===324||D>=328&&D<=331||D===333||D===338||D===339||D===358||D===359||D===363||D===462||D===464||D===466||D===468||D===470||D===472||D===474||D===476||D===593||D===609||D===708||D===711||D>=713&&D<=715||D===717||D===720||D>=728&&D<=731||D===733||D===735||D>=768&&D<=879||D>=913&&D<=929||D>=931&&D<=937||D>=945&&D<=961||D>=963&&D<=969||D===1025||D>=1040&&D<=1103||D===1105||D===8208||D>=8211&&D<=8214||D===8216||D===8217||D===8220||D===8221||D>=8224&&D<=8226||D>=8228&&D<=8231||D===8240||D===8242||D===8243||D===8245||D===8251||D===8254||D===8308||D===8319||D>=8321&&D<=8324||D===8364||D===8451||D===8453||D===8457||D===8467||D===8470||D===8481||D===8482||D===8486||D===8491||D===8531||D===8532||D>=8539&&D<=8542||D>=8544&&D<=8555||D>=8560&&D<=8569||D===8585||D>=8592&&D<=8601||D===8632||D===8633||D===8658||D===8660||D===8679||D===8704||D===8706||D===8707||D===8711||D===8712||D===8715||D===8719||D===8721||D===8725||D===8730||D>=8733&&D<=8736||D===8739||D===8741||D>=8743&&D<=8748||D===8750||D>=8756&&D<=8759||D===8764||D===8765||D===8776||D===8780||D===8786||D===8800||D===8801||D>=8804&&D<=8807||D===8810||D===8811||D===8814||D===8815||D===8834||D===8835||D===8838||D===8839||D===8853||D===8857||D===8869||D===8895||D===8978||D>=9312&&D<=9449||D>=9451&&D<=9547||D>=9552&&D<=9587||D>=9600&&D<=9615||D>=9618&&D<=9621||D===9632||D===9633||D>=9635&&D<=9641||D===9650||D===9651||D===9654||D===9655||D===9660||D===9661||D===9664||D===9665||D>=9670&&D<=9672||D===9675||D>=9678&&D<=9681||D>=9698&&D<=9701||D===9711||D===9733||D===9734||D===9737||D===9742||D===9743||D===9756||D===9758||D===9792||D===9794||D===9824||D===9825||D>=9827&&D<=9829||D>=9831&&D<=9834||D===9836||D===9837||D===9839||D===9886||D===9887||D===9919||D>=9926&&D<=9933||D>=9935&&D<=9939||D>=9941&&D<=9953||D===9955||D===9960||D===9961||D>=9963&&D<=9969||D===9972||D>=9974&&D<=9977||D===9979||D===9980||D===9982||D===9983||D===10045||D>=10102&&D<=10111||D>=11094&&D<=11097||D>=12872&&D<=12879||D>=57344&&D<=63743||D>=65024&&D<=65039||D===65533||D>=127232&&D<=127242||D>=127248&&D<=127277||D>=127280&&D<=127337||D>=127344&&D<=127373||D===127375||D===127376||D>=127387&&D<=127404||D>=917760&&D<=917999||D>=983040&&D<=1048573||D>=1048576&&D<=1114109}function c3(D){return D===12288||D>=65281&&D<=65376||D>=65504&&D<=65510}function p3(D){return D>=4352&&D<=4447||D===8986||D===8987||D===9001||D===9002||D>=9193&&D<=9196||D===9200||D===9203||D===9725||D===9726||D===9748||D===9749||D>=9776&&D<=9783||D>=9800&&D<=9811||D===9855||D>=9866&&D<=9871||D===9875||D===9889||D===9898||D===9899||D===9917||D===9918||D===9924||D===9925||D===9934||D===9940||D===9962||D===9970||D===9971||D===9973||D===9978||D===9981||D===9989||D===9994||D===9995||D===10024||D===10060||D===10062||D>=10067&&D<=10069||D===10071||D>=10133&&D<=10135||D===10160||D===10175||D===11035||D===11036||D===11088||D===11093||D>=11904&&D<=11929||D>=11931&&D<=12019||D>=12032&&D<=12245||D>=12272&&D<=12287||D>=12289&&D<=12350||D>=12353&&D<=12438||D>=12441&&D<=12543||D>=12549&&D<=12591||D>=12593&&D<=12686||D>=12688&&D<=12773||D>=12783&&D<=12830||D>=12832&&D<=12871||D>=12880&&D<=42124||D>=42128&&D<=42182||D>=43360&&D<=43388||D>=44032&&D<=55203||D>=63744&&D<=64255||D>=65040&&D<=65049||D>=65072&&D<=65106||D>=65108&&D<=65126||D>=65128&&D<=65131||D>=94176&&D<=94180||D===94192||D===94193||D>=94208&&D<=100343||D>=100352&&D<=101589||D>=101631&&D<=101640||D>=110576&&D<=110579||D>=110581&&D<=110587||D===110589||D===110590||D>=110592&&D<=110882||D===110898||D>=110928&&D<=110930||D===110933||D>=110948&&D<=110951||D>=110960&&D<=111355||D>=119552&&D<=119638||D>=119648&&D<=119670||D===126980||D===127183||D===127374||D>=127377&&D<=127386||D>=127488&&D<=127490||D>=127504&&D<=127547||D>=127552&&D<=127560||D===127568||D===127569||D>=127584&&D<=127589||D>=127744&&D<=127776||D>=127789&&D<=127797||D>=127799&&D<=127868||D>=127870&&D<=127891||D>=127904&&D<=127946||D>=127951&&D<=127955||D>=127968&&D<=127984||D===127988||D>=127992&&D<=128062||D===128064||D>=128066&&D<=128252||D>=128255&&D<=128317||D>=128331&&D<=128334||D>=128336&&D<=128359||D===128378||D===128405||D===128406||D===128420||D>=128507&&D<=128591||D>=128640&&D<=128709||D===128716||D>=128720&&D<=128722||D>=128725&&D<=128727||D>=128732&&D<=128735||D===128747||D===128748||D>=128756&&D<=128764||D>=128992&&D<=129003||D===129008||D>=129292&&D<=129338||D>=129340&&D<=129349||D>=129351&&D<=129535||D>=129648&&D<=129660||D>=129664&&D<=129673||D>=129679&&D<=129734||D>=129742&&D<=129756||D>=129759&&D<=129769||D>=129776&&D<=129784||D>=131072&&D<=196605||D>=196608&&D<=262141}function PJ(D){if(!Number.isSafeInteger(D))throw new TypeError(`Expected a code point, got \`${typeof D}\`.`)}function n3(D,{ambiguousAsWide:F=!1}={}){if(PJ(D),c3(D)||p3(D)||F&&d3(D))return 2;return 1}var r3=i0(a3(),1),SJ=new Intl.Segmenter,bJ=/^\p{Default_Ignorable_Code_Point}$/u;function U0(D,F={}){if(typeof D!=="string"||D.length===0)return 0;let{ambiguousIsNarrow:Q=!0,countAnsiEscapeCodes:B=!1}=F;if(!B)D=l1(D);if(D.length===0)return 0;let Y=0,J={ambiguousAsWide:!Q};for(let{segment:X}of SJ.segment(D)){let C=X.codePointAt(0);if(C<=31||C>=127&&C<=159)continue;if(C>=8203&&C<=8207||C===65279)continue;if(C>=768&&C<=879||C>=6832&&C<=6911||C>=7616&&C<=7679||C>=8400&&C<=8447||C>=65056&&C<=65071)continue;if(C>=55296&&C<=57343)continue;if(C>=65024&&C<=65039)continue;if(bJ.test(X))continue;if(r3.default().test(X)){Y+=2;continue}Y+=n3(C,J)}return Y}function Q6(D){let F=0;for(let Q of D.split(`
`))F=Math.max(F,U0(Q));return F}var O4=i0(c1(),1);var vJ=/[\p{Lu}]/u,xJ=/[\p{Ll}]/u,t3=/^[\p{Lu}](?![\p{Lu}])/gu,F4=/([\p{Alpha}\p{N}_]|$)/u,p1=/[_.\- ]+/,uJ=new RegExp("^"+p1.source),e3=new RegExp(p1.source+F4.source,"gu"),D4=new RegExp("\\d+"+F4.source,"gu"),yJ=(D,F,Q,B)=>{let Y=!1,J=!1,X=!1,C=!1;for(let W=0;W<D.length;W++){let z=D[W];if(C=W>2?D[W-3]==="-":!0,Y&&vJ.test(z))D=D.slice(0,W)+"-"+D.slice(W),Y=!1,X=J,J=!0,W++;else if(J&&X&&xJ.test(z)&&(!C||B))D=D.slice(0,W-1)+"-"+D.slice(W-1),X=J,J=!1,Y=!0;else Y=F(z)===z&&Q(z)!==z,X=J,J=Q(z)===z&&F(z)!==z}return D},fJ=(D,F)=>{return t3.lastIndex=0,D.replaceAll(t3,(Q)=>F(Q))},gJ=(D,F)=>{return e3.lastIndex=0,D4.lastIndex=0,D.replaceAll(D4,(Q,B,Y)=>["_","-"].includes(D.charAt(Y+Q.length))?Q:F(Q)).replaceAll(e3,(Q,B)=>F(B))};function n1(D,F){if(!(typeof D==="string"||Array.isArray(D)))throw new TypeError("Expected the input to be `string | string[]`");if(F={pascalCase:!1,preserveConsecutiveUppercase:!1,...F},Array.isArray(D))D=D.map((J)=>J.trim()).filter((J)=>J.length).join("-");else D=D.trim();if(D.length===0)return"";let Q=F.locale===!1?(J)=>J.toLowerCase():(J)=>J.toLocaleLowerCase(F.locale),B=F.locale===!1?(J)=>J.toUpperCase():(J)=>J.toLocaleUpperCase(F.locale);if(D.length===1){if(p1.test(D))return"";return F.pascalCase?B(D):Q(D)}if(D!==Q(D))D=yJ(D,Q,B,F.preserveConsecutiveUppercase);if(D=D.replace(uJ,""),D=F.preserveConsecutiveUppercase?fJ(D,Q):Q(D),F.pascalCase)D=B(D.charAt(0))+D.slice(1);return gJ(D,B)}var e1=i0(H4(),1);function r1({onlyFirst:D=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",D?void 0:"g")}var nJ=r1();function o1(D){if(typeof D!=="string")throw new TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(nJ,"")}var U4=(D=0)=>(F)=>`\x1B[${F+D}m`,E4=(D=0)=>(F)=>`\x1B[${38+D};5;${F}m`,Z4=(D=0)=>(F,Q,B)=>`\x1B[${38+D};2;${F};${Q};${B}m`,fD={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},FZ=Object.keys(fD.modifier),iJ=Object.keys(fD.color),aJ=Object.keys(fD.bgColor),BZ=[...iJ,...aJ];function rJ(){let D=new Map;for(let[F,Q]of Object.entries(fD)){for(let[B,Y]of Object.entries(Q))fD[B]={open:`\x1B[${Y[0]}m`,close:`\x1B[${Y[1]}m`},Q[B]=fD[B],D.set(Y[0],Y[1]);Object.defineProperty(fD,F,{value:Q,enumerable:!1})}return Object.defineProperty(fD,"codes",{value:D,enumerable:!1}),fD.color.close="\x1B[39m",fD.bgColor.close="\x1B[49m",fD.color.ansi=U4(),fD.color.ansi256=E4(),fD.color.ansi16m=Z4(),fD.bgColor.ansi=U4(10),fD.bgColor.ansi256=E4(10),fD.bgColor.ansi16m=Z4(10),Object.defineProperties(fD,{rgbToAnsi256:{value:(F,Q,B)=>{if(F===Q&&Q===B){if(F<8)return 16;if(F>248)return 231;return Math.round((F-8)/247*24)+232}return 16+36*Math.round(F/255*5)+6*Math.round(Q/255*5)+Math.round(B/255*5)},enumerable:!1},hexToRgb:{value:(F)=>{let Q=/[a-f\d]{6}|[a-f\d]{3}/i.exec(F.toString(16));if(!Q)return[0,0,0];let[B]=Q;if(B.length===3)B=[...B].map((J)=>J+J).join("");let Y=Number.parseInt(B,16);return[Y>>16&255,Y>>8&255,Y&255]},enumerable:!1},hexToAnsi256:{value:(F)=>fD.rgbToAnsi256(...fD.hexToRgb(F)),enumerable:!1},ansi256ToAnsi:{value:(F)=>{if(F<8)return 30+F;if(F<16)return 90+(F-8);let Q,B,Y;if(F>=232)Q=((F-232)*10+8)/255,B=Q,Y=Q;else{F-=16;let C=F%36;Q=Math.floor(F/36)/5,B=Math.floor(C/6)/5,Y=C%6/5}let J=Math.max(Q,B,Y)*2;if(J===0)return 30;let X=30+(Math.round(Y)<<2|Math.round(B)<<1|Math.round(Q));if(J===2)X+=60;return X},enumerable:!1},rgbToAnsi:{value:(F,Q,B)=>fD.ansi256ToAnsi(fD.rgbToAnsi256(F,Q,B)),enumerable:!1},hexToAnsi:{value:(F)=>fD.ansi256ToAnsi(fD.hexToAnsi256(F)),enumerable:!1}}),fD}var oJ=rJ(),A4=oJ;var Y6=new Set(["\x1B","›"]),sJ=39,t1="\x07",M4="[",tJ="]",N4="m",X6=`${tJ}8;;`,V4=(D)=>`${Y6.values().next().value}${M4}${D}${N4}`,L4=(D)=>`${Y6.values().next().value}${X6}${D}${t1}`,eJ=(D)=>D.split(" ").map((F)=>U0(F)),s1=(D,F,Q)=>{let B=[...F],Y=!1,J=!1,X=U0(o1(D.at(-1)));for(let[C,W]of B.entries()){let z=U0(W);if(X+z<=Q)D[D.length-1]+=W;else D.push(W),X=0;if(Y6.has(W))Y=!0,J=B.slice(C+1,C+1+X6.length).join("")===X6;if(Y){if(J){if(W===t1)Y=!1,J=!1}else if(W===N4)Y=!1;continue}if(X+=z,X===Q&&C<B.length-1)D.push(""),X=0}if(!X&&D.at(-1).length>0&&D.length>1)D[D.length-2]+=D.pop()},DC=(D)=>{let F=D.split(" "),Q=F.length;while(Q>0){if(U0(F[Q-1])>0)break;Q--}if(Q===F.length)return D;return F.slice(0,Q).join(" ")+F.slice(Q).join("")},FC=(D,F,Q={})=>{if(Q.trim!==!1&&D.trim()==="")return"";let B="",Y,J,X=eJ(D),C=[""];for(let[q,E]of D.split(" ").entries()){if(Q.trim!==!1)C[C.length-1]=C.at(-1).trimStart();let U=U0(C.at(-1));if(q!==0){if(U>=F&&(Q.wordWrap===!1||Q.trim===!1))C.push(""),U=0;if(U>0||Q.trim===!1)C[C.length-1]+=" ",U++}if(Q.hard&&X[q]>F){let A=F-U,K=1+Math.floor((X[q]-A-1)/F);if(Math.floor((X[q]-1)/F)<K)C.push("");s1(C,E,F);continue}if(U+X[q]>F&&U>0&&X[q]>0){if(Q.wordWrap===!1&&U<F){s1(C,E,F);continue}C.push("")}if(U+X[q]>F&&Q.wordWrap===!1){s1(C,E,F);continue}C[C.length-1]+=E}if(Q.trim!==!1)C=C.map((q)=>DC(q));let W=C.join(`
`),z=[...W],G=0;for(let[q,E]of z.entries()){if(B+=E,Y6.has(E)){let{groups:A}=new RegExp(`(?:\\${M4}(?<code>\\d+)m|\\${X6}(?<uri>.*)${t1})`).exec(W.slice(G))||{groups:{}};if(A.code!==void 0){let K=Number.parseFloat(A.code);Y=K===sJ?void 0:K}else if(A.uri!==void 0)J=A.uri.length===0?void 0:A.uri}let U=A4.codes.get(Number(Y));if(z[q+1]===`
`){if(J)B+=L4("");if(Y&&U)B+=V4(U)}else if(E===`
`){if(Y&&U)B+=V4(Y);if(J)B+=L4(J)}G+=E.length}return B};function J6(D,F,Q){return String(D).normalize().replaceAll(`\r
`,`
`).split(`
`).map((B)=>FC(B,F,Q)).join(`
`)}var GC=i0(c1(),1),wF=`
`,P0=" ",F8="none",I4=()=>{let{env:D,stdout:F,stderr:Q}=C6;if(F?.columns)return F.columns;if(Q?.columns)return Q.columns;if(D.COLUMNS)return Number.parseInt(D.COLUMNS,10);return 80},j4=(D)=>typeof D==="number"?{top:D,right:D*3,bottom:D,left:D*3}:{top:0,right:0,bottom:0,left:0,...D},B8=(D)=>D===F8?0:2,BC=(D)=>{let F=["topLeft","topRight","bottomRight","bottomLeft","left","right","top","bottom"],Q;if(D===F8){D={};for(let B of F)D[B]=""}if(typeof D==="string"){if(Q=O4.default[D],!Q)throw new TypeError(`Invalid border style: ${D}`)}else{if(typeof D?.vertical==="string")D.left=D.vertical,D.right=D.vertical;if(typeof D?.horizontal==="string")D.top=D.horizontal,D.bottom=D.horizontal;for(let B of F)if(D[B]===null||typeof D[B]!=="string")throw new TypeError(`Invalid border style: ${B}`);Q=D}return Q},QC=(D,F,Q)=>{let B="",Y=U0(D);switch(Q){case"left":{B=D+F.slice(Y);break}case"right":{B=F.slice(Y)+D;break}default:{if(F=F.slice(Y),F.length%2===1)F=F.slice(Math.floor(F.length/2)),B=F.slice(1)+D+F;else F=F.slice(F.length/2),B=F+D+F;break}}return B},XC=(D,{padding:F,width:Q,textAlignment:B,height:Y})=>{D=e1.default(D,{align:B});let J=D.split(wF),X=Q6(D),C=Q-F.left-F.right;if(X>C){let G=[];for(let q of J){let E=J6(q,C,{hard:!0}),A=e1.default(E,{align:B}).split(`
`),K=Math.max(...A.map((V)=>U0(V)));for(let V of A){let j;switch(B){case"center":{j=P0.repeat((C-K)/2)+V;break}case"right":{j=P0.repeat(C-K)+V;break}default:{j=V;break}}G.push(j)}}J=G}if(B==="center"&&X<C)J=J.map((G)=>P0.repeat((C-X)/2)+G);else if(B==="right"&&X<C)J=J.map((G)=>P0.repeat(C-X)+G);let W=P0.repeat(F.left),z=P0.repeat(F.right);if(J=J.map((G)=>{let q=W+G+z;return q+P0.repeat(Q-U0(q))}),F.top>0)J=[...Array.from({length:F.top}).fill(P0.repeat(Q)),...J];if(F.bottom>0)J=[...J,...Array.from({length:F.bottom}).fill(P0.repeat(Q))];if(Y&&J.length>Y)J=J.slice(0,Y);else if(Y&&J.length<Y)J=[...J,...Array.from({length:Y-J.length}).fill(P0.repeat(Q))];return J.join(wF)},YC=(D,F,Q)=>{let B=(G)=>{let q=Q.borderColor?WC(Q.borderColor)(G):G;return Q.dimBorder?BD.dim(q):q},Y=(G)=>Q.backgroundColor?zC(Q.backgroundColor)(G):G,J=BC(Q.borderStyle),X=I4(),C=P0.repeat(Q.margin.left);if(Q.float==="center"){let G=Math.max((X-F-B8(Q.borderStyle))/2,0);C=P0.repeat(G)}else if(Q.float==="right"){let G=Math.max(X-F-Q.margin.right-B8(Q.borderStyle),0);C=P0.repeat(G)}let W="";if(Q.margin.top)W+=wF.repeat(Q.margin.top);if(Q.borderStyle!==F8||Q.title)W+=B(C+J.topLeft+(Q.title?QC(Q.title,J.top.repeat(F),Q.titleAlignment):J.top.repeat(F))+J.topRight)+wF;let z=D.split(wF);if(W+=z.map((G)=>C+B(J.left)+Y(G)+B(J.right)).join(wF),Q.borderStyle!==F8)W+=wF+B(C+J.bottomLeft+J.bottom.repeat(F)+J.bottomRight);if(Q.margin.bottom)W+=wF.repeat(Q.margin.bottom);return W},JC=(D)=>{if(D.fullscreen&&C6?.stdout){let F=[C6.stdout.columns,C6.stdout.rows];if(typeof D.fullscreen==="function")F=D.fullscreen(...F);D.width||=F[0],D.height||=F[1]}return D.width&&=Math.max(1,D.width-B8(D.borderStyle)),D.height&&=Math.max(1,D.height-B8(D.borderStyle)),D},R4=(D,F)=>F===F8?D:` ${D} `,CC=(D,F)=>{F=JC(F);let Q=F.width!==void 0,B=I4(),Y=B8(F.borderStyle),J=B-F.margin.left-F.margin.right-Y,X=Q6(J6(D,B-Y,{hard:!0,trim:!1}))+F.padding.left+F.padding.right;if(F.title&&Q)F.title=F.title.slice(0,Math.max(0,F.width-2)),F.title&&=R4(F.title,F.borderStyle);else if(F.title){if(F.title=F.title.slice(0,Math.max(0,J-2)),F.title){if(F.title=R4(F.title,F.borderStyle),U0(F.title)>X)F.width=U0(F.title)}}if(F.width||=X,!Q){if(F.margin.left&&F.margin.right&&F.width>J){let W=(B-F.width-Y)/(F.margin.left+F.margin.right);F.margin.left=Math.max(0,Math.floor(F.margin.left*W)),F.margin.right=Math.max(0,Math.floor(F.margin.right*W))}F.width=Math.min(F.width,B-Y-F.margin.left-F.margin.right)}if(F.width-(F.padding.left+F.padding.right)<=0)F.padding.left=0,F.padding.right=0;if(F.height&&F.height-(F.padding.top+F.padding.bottom)<=0)F.padding.top=0,F.padding.bottom=0;return F},D7=(D)=>D.match(/^#(?:[0-f]{3}){1,2}$/i),_4=(D)=>typeof D==="string"&&(BD[D]??D7(D)),WC=(D)=>D7(D)?BD.hex(D):BD[D],zC=(D)=>D7(D)?BD.bgHex(D):BD[n1(["bg",D])];function TF(D,F){if(F={padding:0,borderStyle:"single",dimBorder:!1,textAlignment:"left",float:"left",titleAlignment:"left",...F},F.align)F.textAlignment=F.align;if(F.borderColor&&!_4(F.borderColor))throw new Error(`${F.borderColor} is not a valid borderColor`);if(F.backgroundColor&&!_4(F.backgroundColor))throw new Error(`${F.backgroundColor} is not a valid backgroundColor`);return F.padding=j4(F.padding),F.margin=j4(F.margin),F=CC(D,F),D=XC(D,F),YC(D,F.width,F)}E0();function Q7(D){let F,Q=0,B=["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"];return{start(){F=setInterval(()=>{process.stdout.write(`\r${BD.cyan(B[Q%B.length])} ${D}`),Q++},50)},stop(Y,J=!0){clearInterval(F);let X=J?BD.green("✓"):BD.red("✗");process.stdout.write(`\r${X} ${Y}
`)}}}var X0=(D)=>new Promise((F)=>setTimeout(F,D)),X8=h1(["#ff0000","#ff4500","#ffa500","#ffff00","#00ff00","#00ffff","#0000ff","#8b00ff"]),z6=h1(["#ff006e","#fb5607","#ffbe0b","#8338ec","#3a86ff"]);async function AC(){let D=[{name:"Node.js version",check:async()=>{let Q=process.versions.node,[B]=Q.split(".").map(Number);return{success:B>=18,message:B>=18?"":`Node.js ${Q} is below required version 18.0.0`}}},{name:"Claude Code CLI",check:async()=>{try{let Q=T4()==="win32"?"where claude":"which claude";return dF(Q,{stdio:"ignore"}),{success:!0,message:""}}catch{return{success:!1,message:"Claude Code CLI not found. Please install: https://docs.anthropic.com/claude/docs/claude-code"}}}},{name:"uv (Python package manager)",check:async()=>{try{return dF("which uv",{stdio:"ignore"}),{success:!0,message:""}}catch{return{success:!0,message:"",needsInstall:!0}}}},{name:"Write permissions",check:async()=>{let Q=LD(YD.getDataDirectory(),"test-permissions");try{return A2(Q,{recursive:!0}),pF(LD(Q,"test"),"test"),dF(`rm -rf ${Q}`,{stdio:"ignore"}),{success:!0,message:""}}catch{return{success:!1,message:"No write permissions to claude-mem data directory"}}}}],F=!1;for(let{name:Q,check:B}of D){let Y=await B();if(!Y.success)return console.log(TF(BD.red(`${Q} check failed!
${Y.message}`),{padding:1,margin:1,borderStyle:"double",borderColor:"red"})),!1;if(Y.needsInstall&&Q==="uv (Python package manager)")F=!0}if(F){let Q=Q7("Installing uv (Python package manager)...");Q.start();try{dF("curl -LsSf https://astral.sh/uv/install.sh | sh",{stdio:"pipe",shell:"/bin/sh"}),process.env.PATH=`${B7()}/.cargo/bin:${process.env.PATH}`,Q.stop("uv installed successfully",!0)}catch(B){return Q.stop("Failed to install uv automatically",!1),console.log(TF(BD.yellow(`⚠️ Please install uv manually:
${BD.cyan("curl -LsSf https://astral.sh/uv/install.sh | sh")}
Or visit: ${BD.cyan("https://docs.astral.sh/uv/getting-started/installation/")}`),{padding:1,margin:1,borderStyle:"round",borderColor:"yellow"})),!1}}return!0}function VC(){try{let D=T4()==="win32"?"where claude":"which claude";return dF(D,{encoding:"utf8",stdio:["ignore","pipe","ignore"]}).trim()||null}catch{return null}}function LC(){let D={hasHooks:!1,hasChromaMcp:!1,hasSettings:!1,scope:void 0},F=YD.getHooksDirectory();D.hasHooks=TD(F)&&TD(LD(F,"session-start.js"))&&TD(LD(F,"stop.js"))&&TD(LD(F,"user-prompt-submit.js"))&&TD(LD(F,"post-tool-use.js"));let Q=YD.getInstance(),B=Q.getMcpConfigPath(),Y=Q.getProjectMcpConfigPath();if(TD(B)){if(JSON.parse(E2(B,"utf8")).mcpServers?.["claude-mem"])D.hasChromaMcp=!0,D.scope="user"}if(TD(Y)){if(JSON.parse(E2(Y,"utf8")).mcpServers?.["claude-mem"])D.hasChromaMcp=!0,D.scope="project"}let J=Q.getUserSettingsPath();return D.hasSettings=TD(J),D}async function MC(D){let F={};if(D.hasHooks||D.hasChromaMcp){let J=await K2({message:`\uD83E\uDDE0 Existing claude-mem installation detected. Your memories and data are safe!
Reinstall to update hooks and configuration?`,initialValue:!0});if(u0(J))return mF("Installation cancelled"),null;if(!J)return mF("Installation cancelled"),null;F.forceReinstall=!0}else F.forceReinstall=!1;let Q=await s8({message:"Select installation scope",options:[{value:"user",label:"User (Recommended)",hint:"Install for current user (~/.claude)"},{value:"project",label:"Project",hint:"Install for current project only (./.mcp.json)"},{value:"local",label:"Local",hint:"Custom local installation"}],initialValue:D.scope||"user"});if(u0(Q))return mF("Installation cancelled"),null;if(F.scope=Q,Q==="local"){let J=await N3({message:"Enter custom installation directory",placeholder:LD(process.cwd(),".claude-mem"),validate:(X)=>{if(!X)return"Path is required";if(!X.startsWith("/")&&!X.startsWith("~"))return"Please provide an absolute path"}});if(u0(J))return mF("Installation cancelled"),null;F.customPath=J}F.hookTimeout=180000;let B=await K2({message:'Enable Smart Trash? This creates an alias for "rm" that moves files to ~/.claude-mem/trash instead of permanently deleting them. You can restore files anytime by typing "claude-mem restore".',initialValue:!0});if(u0(B))return mF("Installation cancelled"),null;F.enableSmartTrash=B;let Y=await K2({message:`claude-mem is designed to save "memories" when you type /compact. The official compact summary + claude-mem produces the best ongoing results, but sometimes you may want to completely clear the context and still retain the "memories" from your last conversation.
Would you like to save memories when you type "/clear" in Claude Code? When running /clear with this on, it takes about a minute to save memories before your new session starts.`,initialValue:!1});if(u0(Y))return mF("Installation cancelled"),null;return F.saveMemoriesOnClear=Y,F}async function NC(){let D=YD.getInstance(),F=LD(D.getBackupsDirectory(),new Date().toISOString().replace(/[:.]/g,"-"));try{A2(F,{recursive:!0});let Q=D.getHooksDirectory();if(TD(Q))X7(Q,LD(F,"hooks"));let B=D.getUserSettingsPath();if(TD(B))cF(B,LD(F,"settings.json"));let Y=D.getClaudeSettingsPath();if(TD(Y))cF(Y,LD(F,"claude-settings.json"));return F}catch(Q){return null}}function jC(){let D=YD.getInstance();D.ensureAllDataDirectories(),D.ensureAllClaudeDirectories();let F=LD(D.getDataDirectory(),"package.json");if(!TD(F))pF(F,JSON.stringify({name:"claude-mem-data",type:"module"},null,2))}function X7(D,F){if(EC(D).isDirectory()){if(!TD(F))A2(F,{recursive:!0});ZC(D).forEach((Y)=>{X7(LD(D,Y),LD(F,Y))})}else cF(D,F)}function RC(D=180000,F=!1){let Q=YD.getInstance(),B=Q.getHooksDirectory(),Y=P4(import.meta.url),X=Z2(Y),C=null;for(let q=0;q<10;q++){let E=LD(X,"hook-templates");if(TD(LD(E,"session-start.js"))){C=E;break}let U=Z2(X);if(U===X)break;X=U}if(!C)C=Q.findPackageHookTemplatesDirectory();let W=["session-start.js","stop.js","user-prompt-submit.js","post-tool-use.js"];for(let q of W){let E=LD(B,q),U=LD(C,q);cF(U,E),UC(E,493)}if(C){let q=LD(C,"shared"),E=LD(B,"shared");if(TD(q))X7(q,E)}let z=LD(B,"config.json");pF(z,JSON.stringify({packageName:G2,cliCommand:G2,backend:"chroma",timeout:D},null,2))}function _C(){let F=YD.getInstance().getClaudeMdPath(),Q=Z2(F);if(!TD(Q))A2(Q,{recursive:!0});let B=`
<!-- CLAUDE-MEM QUICK REFERENCE -->
## \uD83E\uDDE0 Memory System Quick Reference
### Search Your Memories (SIMPLE & POWERFUL)
- **Semantic search is king**: \`mcp__claude-mem__chroma_query_documents(["search terms"])\`
- **\uD83D\uDD12 ALWAYS include project name in query**: \`["claude-mem feature authentication"]\` not just \`["feature authentication"]\`
- **Include dates for temporal search**: \`["project-name 2025-09-09 bug fix"]\` finds memories from that date
- **Get specific memory**: \`mcp__claude-mem__chroma_get_documents(ids: ["document_id"])\`
### Search Tips That Actually Work
- **Project isolation**: Always prefix queries with project name to avoid cross-contamination
- **Temporal search**: Include dates (YYYY-MM-DD) in query text to find memories from specific times
- **Intent-based**: "implementing oauth" > "oauth implementation code function"
- **Multiple queries**: Search with different phrasings for better coverage
- **Session-specific**: Include session ID in query when you know it
### What Doesn't Work (Don't Do This!)
- ❌ Complex where filters with $and/$or - they cause errors
- ❌ Timestamp comparisons ($gte/$lt) - Chroma stores timestamps as strings
- ❌ Mixing project filters in where clause - causes "Error finding id"
### Storage
- Collection: "claude_memories"
- Archives: ~/.claude-mem/archives/
<!-- /CLAUDE-MEM QUICK REFERENCE -->`,Y="";if(TD(F)){Y=E2(F,"utf8");let J=Y.includes("<!-- CLAUDE-MEM INSTRUCTIONS -->"),X=Y.includes("<!-- CLAUDE-MEM QUICK REFERENCE -->");if(J||X){let C,W;if(J)C="<!-- CLAUDE-MEM INSTRUCTIONS -->",W="<!-- /CLAUDE-MEM INSTRUCTIONS -->";else C="<!-- CLAUDE-MEM QUICK REFERENCE -->",W="<!-- /CLAUDE-MEM QUICK REFERENCE -->";let z=Y.indexOf(C),G=Y.indexOf(W)+W.length;if(z!==-1&&G!==-1)Y=Y.substring(0,z)+B.trim()+Y.substring(G)}else Y=Y.trim()+`
`+B}else Y=B.trim();pF(F,Y)}async function OC(){let D=Q7("Installing Chroma MCP server...");D.start();try{await X0(400);try{dF("claude mcp remove claude-mem",{stdio:"pipe"}),await X0(200)}catch{}let F=`${B7()}/.cargo/bin`;if(TD(F)&&!process.env.PATH?.includes(F))process.env.PATH=`${F}:${process.env.PATH}`;let Q=`claude mcp add claude-mem -- uvx chroma-mcp --client-type persistent --data-dir ${YD.getInstance().getChromaDirectory()}`;return dF(Q,{stdio:"pipe",env:process.env}),await X0(300),D.stop(z6("Chroma MCP server installed successfully! \uD83D\uDE80"),!0),!0}catch(F){return D.stop("Chroma MCP server installation failed",!1),console.log(TF(BD.yellow(`⚠️ Manual installation required:
${BD.cyan(`claude mcp add claude-mem -- uvx chroma-mcp --client-type persistent --data-dir ${YD.getInstance().getChromaDirectory()}`)}
Make sure uv is installed: ${BD.cyan("https://docs.astral.sh/uv/getting-started/installation/")}`),{padding:1,margin:1,borderStyle:"round",borderColor:"yellow"})),!1}}async function IC(D,F){let B=YD.getInstance().getHooksDirectory(),Y=LD(B,"session-start.js"),J=LD(B,"stop.js"),X=LD(B,"user-prompt-submit.js"),C=LD(B,"post-tool-use.js"),W={};if(TD(D)){let q=E2(D,"utf8");W=JSON.parse(q)}let z=Z2(D);if(!TD(z))A2(z,{recursive:!0});if(!W.hooks)W.hooks={};let G=["SessionStart","Stop","UserPromptSubmit","PostToolUse"];for(let q of G)if(W.hooks[q]){if(W.hooks[q]=W.hooks[q].filter((E)=>!E.hooks?.some((U)=>U.command?.includes(G2)||U.command?.includes("session-start.js")||U.command?.includes("stop.js")||U.command?.includes("user-prompt-submit.js")||U.command?.includes("post-tool-use.js"))),!W.hooks[q].length)delete W.hooks[q]}if(!W.hooks.SessionStart)W.hooks.SessionStart=[];if(W.hooks.SessionStart.push({hooks:[{type:"command",command:Y,timeout:180}]}),TD(J)){if(!W.hooks.Stop)W.hooks.Stop=[];W.hooks.Stop.push({hooks:[{type:"command",command:J,timeout:60}]})}if(TD(X)){if(!W.hooks.UserPromptSubmit)W.hooks.UserPromptSubmit=[];W.hooks.UserPromptSubmit.push({hooks:[{type:"command",command:X,timeout:60}]})}if(TD(C)){if(!W.hooks.PostToolUse)W.hooks.PostToolUse=[];W.hooks.PostToolUse.push({matcher:"*",hooks:[{type:"command",command:C,timeout:180}]})}pF(D,JSON.stringify(W,null,2))}async function wC(){let D=B7(),F=[LD(D,".bashrc"),LD(D,".zshrc"),LD(D,".bash_profile")],Q='alias rm="claude-mem trash"',B="# claude-mem smart trash alias";for(let Y of F){if(!TD(Y))continue;let J=E2(Y,"utf8");if(J.includes('alias rm="claude-mem trash"'))continue;J+=`
# claude-mem smart trash alias
alias rm="claude-mem trash"
`,pF(Y,J)}}function TC(D){let Q=new Date().toISOString().replace(/T/,"-").replace(/:/g,"").replace(/\..+/,"").replace(/-/g,""),B=`${Q.slice(0,8)}-${Q.slice(8)}`;return`${D}.backup.${B}`}function PC(D=!1){let F=YD.getInstance(),Q=F.getClaudeCommandsDirectory(),B=P4(import.meta.url),J=Z2(B),X=null;for(let q=0;q<10;q++){let E=LD(J,"commands");if(TD(LD(E,"save.md"))){X=E;break}let U=Z2(J);if(U===J)break;J=U}if(!X)try{X=F.findPackageCommandsDirectory()}catch(q){throw new Error("Cannot dynamically locate commands directory. The package may be corrupted.")}if(!TD(Q))A2(Q,{recursive:!0});let C=["save.md","remember.md","claude-mem.md"],W=[],z=[],G=[];for(let q of C){let E=LD(X,q),U=LD(Q,q);if(TD(E))if(TD(U))if(D){let A=TC(U);cF(U,A),cF(E,U),G.push(q)}else z.push(q);else cF(E,U),W.push(q)}if(W.length>0)console.log(` ${BD.green("✓")} Copied commands: ${W.join(", ")}`);if(G.length>0)console.log(` ${BD.blue("\uD83D\uDCE6")} Backed up and replaced commands: ${G.join(", ")}`);if(z.length>0)console.log(` ${BD.yellow("→")} Skipped existing commands: ${z.join(", ")}`)}async function SC(){let D=t8();D.start("Verifying installation");let F=[],B=YD.getInstance().getHooksDirectory(),Y=["session-start.js","stop.js","user-prompt-submit.js","post-tool-use.js"];for(let J of Y)if(!TD(LD(B,J)))F.push(`${J} not found`);if(F.length>0)D.stop("Installation verification completed with issues"),tD.warn("The following issues were detected:"),F.forEach((J)=>tD.error(` - ${J}`)),tD.info("The installation may not work correctly. Consider reinstalling with --force flag.");else D.stop("Installation verified successfully")}async function S4(D={}){console.log(X8(`
═══════════════════════════════════════`)),console.log(X8(" CLAUDE-MEM INSTALLER ")),console.log(X8("═══════════════════════════════════════")),console.log(TF(z6(`\uD83E\uDDE0 Persistent Memory System for Claude Code
✨ Transform your Claude experience with seamless context preservation
\uD83D\uDE80 Never lose your conversation history again`),{padding:2,margin:1,borderStyle:"double",borderColor:"magenta",textAlignment:"center"})),await X0(500);let F=D.user||D.project||D.local||D.force,Q;if(F)Q={scope:D.local?"local":D.project?"project":"user",customPath:D.path,hookTimeout:D.timeout?parseInt(D.timeout):180,forceReinstall:!!D.force};else{if(!await AC())j3("Please fix the prerequisites issues and try again"),process.exit(1);let G=LC(),q=await MC(G);if(!q)process.exit(0);Q=q}if(Q.forceReinstall){let z=await NC();if(z)tD.info(`Backup created at: ${z}`)}console.log(z6(`
\uD83D\uDE80 Beginning Installation Process
`));let B=[{name:"Creating directory structure",action:async()=>{await X0(200),jC(),await X0(100)}},{name:"Installing Chroma MCP server",action:async()=>{if(!await OC())throw new Error("MCP installation failed")}},{name:"Adding CLAUDE.md instructions",action:async()=>{await X0(300),_C(),await X0(200)}},{name:"Installing Claude commands",action:async()=>{await X0(200),PC(Q.forceReinstall),await X0(100)}},{name:"Installing memory hooks",action:async()=>{await X0(400),RC(Q.hookTimeout,Q.forceReinstall),await X0(200)}},{name:"Configuring Claude settings",action:async()=>{await X0(300);let z;if(Q.scope==="local"&&Q.customPath)z=LD(Q.customPath,"settings.local.json");else if(Q.scope==="project")z=LD(process.cwd(),".claude","settings.json");else z=YD.getInstance().getClaudeSettingsPath();await IC(z,Q);let q=YD.getInstance().getUserSettingsPath(),E={};if(TD(q))E=JSON.parse(E2(q,"utf8"));E.backend="chroma",E.installed=!0,E.embedded=!0,E.saveMemoriesOnClear=Q.saveMemoriesOnClear||!1;let U=VC();if(U)E.claudePath=U;else delete E.claudePath;pF(q,JSON.stringify(E,null,2)),await X0(200)}}];if(Q.enableSmartTrash)B.push({name:"Configuring Smart Trash alias",action:async()=>{await X0(200),await wC(),await X0(100)}});for(let z=0;z<B.length;z++){let G=B[z],q=`[${z+1}/${B.length}]`,E=Q7(`${BD.gray(q)} ${G.name}...`);E.start();try{await G.action(),E.stop(`${BD.gray(q)} ${G.name} ${z6("completed! ✨")}`)}catch(U){E.stop(`${BD.gray(q)} ${G.name} ${BD.red("failed")}`,!1),console.log(TF(BD.red(`❌ Installation failed at: ${G.name}
Error: ${U}`),{padding:1,margin:1,borderStyle:"double",borderColor:"red"})),process.exit(1)}await X0(150)}console.log(BD.gray(`
\uD83D\uDD0D Verifying Installation
`)),await SC();let Y=X8("\uD83C\uDF89 INSTALLATION COMPLETE! \uD83C\uDF89"),J=Q.saveMemoriesOnClear?`${BD.cyan("/compact")} or ${BD.cyan("/clear")}`:BD.cyan("/compact"),X=`
${BD.bold("How your new memory system works:")}
${BD.green("•")} When you start Claude Code, claude-mem loads your latest memories automatically
${BD.green("•")} Save your work by typing ${J} (takes ~30s to process)
${BD.green("•")} Ask Claude to search your memories anytime with natural language
${BD.green("•")} Instructions added to ${BD.cyan("~/.claude/CLAUDE.md")} teach Claude how to use the system
${BD.bold("Slash Commands Available:")}
${BD.cyan("/claude-mem help")} - Show all memory commands and features
${BD.cyan("/save")} - Quick save of current conversation overview
${BD.cyan("/remember")} - Search your saved memories
${BD.bold("Quick Start:")}
${BD.yellow("1.")} Restart Claude Code to activate your memory system
${BD.yellow("2.")} Start using Claude normally - memories save automatically
${BD.yellow("3.")} Search memories by asking: ${BD.italic('"Search my memories for X"')}`,C=Q.enableSmartTrash?`
${BD.blue("\uD83D\uDDD1 Smart Trash Enabled:")}
${BD.gray(" • rm commands now move files to ~/.claude-mem/trash")}
${BD.gray(" • View trash:")} ${BD.cyan("claude-mem trash view")}
${BD.gray(" • Restore files:")} ${BD.cyan("claude-mem restore")}
${BD.gray(" • Empty trash:")} ${BD.cyan("claude-mem trash empty")}
${BD.yellow(" • Restart terminal for alias to activate")}`:"",W=Q.saveMemoriesOnClear?`
${BD.magenta("\uD83D\uDCBE Save-on-clear enabled:")}
${BD.gray(" • /clear now saves memories automatically (takes ~1 minute)")}`:"";console.log(TF(Y+X+C+W,{padding:2,margin:1,borderStyle:"double",borderColor:"green",backgroundColor:"#001122"})),console.log(X8(`
✨ Welcome to the future of persistent AI conversations! ✨
`))}E0();import{readFileSync as b4,writeFileSync as G6,existsSync as k4}from"fs";import{join as PF}from"path";import{homedir as bC}from"os";async function kC(){let D=bC(),F=[PF(D,".bashrc"),PF(D,".zshrc"),PF(D,".bash_profile")],Q='alias rm="claude-mem trash"',B=["# claude-mem smart trash alias","# claude-mem trash bin alias"],Y=!1;for(let J of F){if(!k4(J))continue;let X=b4(J,"utf8");if(!X.includes('alias rm="claude-mem trash"'))continue;let C=X.split(`
`),z=C.filter((G,q)=>{if(G.trim()==='alias rm="claude-mem trash"')return!1;for(let E of B)if(G.trim()===E&&q+1<C.length&&C[q+1].trim()==='alias rm="claude-mem trash"')return!1;return!0}).join(`
`);if(z!==X){let G=J+".backup."+Date.now();G6(G,X),G6(J,z),console.log(`✅ Removed Smart Trash alias from ${J.replace(D,"~")}`),Y=!0}}return Y}async function v4(D={}){console.log("\uD83D\uDD04 Uninstalling Claude Memory System hooks...");let F=[];if(D.all)F.push({name:"User",path:YD.getInstance().getClaudeSettingsPath()}),F.push({name:"Project",path:PF(process.cwd(),".claude","settings.json")});else{let z=D.project,G=YD.getInstance();F.push({name:z?"Project":"User",path:z?PF(process.cwd(),".claude","settings.json"):G.getClaudeSettingsPath()})}let B=YD.getInstance().getHooksDirectory(),Y=PF(B,"pre-compact.js"),J=PF(B,"session-start.js"),X=PF(B,"session-end.js"),C=0;for(let z of F){if(!k4(z.path)){console.log(`⏭️ No settings found at ${z.name} location`);continue}let G=b4(z.path,"utf8"),q=JSON.parse(G);if(!q.hooks){console.log(`⏭️ No hooks configured in ${z.name} settings`);continue}let E=!1;if(q.hooks.PreCompact){let U=q.hooks.PreCompact.filter((A)=>!A.hooks?.some((K)=>K.command===Y||K.command?.includes("pre-compact.js")||K.command?.includes("claude-mem")));if(U.length!==q.hooks.PreCompact.length)q.hooks.PreCompact=U.length?U:void 0,E=!0,console.log(`✅ Removed PreCompact hook from ${z.name} settings`)}if(q.hooks.SessionStart){let U=q.hooks.SessionStart.filter((A)=>!A.hooks?.some((K)=>K.command===J||K.command?.includes("session-start.js")||K.command?.includes("claude-mem")));if(U.length!==q.hooks.SessionStart.length)q.hooks.SessionStart=U.length?U:void 0,E=!0,console.log(`✅ Removed SessionStart hook from ${z.name} settings`)}if(q.hooks.SessionEnd){let U=q.hooks.SessionEnd.filter((A)=>!A.hooks?.some((K)=>K.command===X||K.command?.includes("session-end.js")||K.command?.includes("claude-mem")));if(U.length!==q.hooks.SessionEnd.length)q.hooks.SessionEnd=U.length?U:void 0,E=!0,console.log(`✅ Removed SessionEnd hook from ${z.name} settings`)}if(q.hooks.PreCompact===void 0)delete q.hooks.PreCompact;if(q.hooks.SessionStart===void 0)delete q.hooks.SessionStart;if(q.hooks.SessionEnd===void 0)delete q.hooks.SessionEnd;if(!Object.keys(q.hooks).length)delete q.hooks;if(E){let U=z.path+".backup."+Date.now();G6(U,G),console.log(`\uD83D\uDCCB Created backup: ${U}`),G6(z.path,JSON.stringify(q,null,2)),C++,console.log(`✅ Updated ${z.name} settings: ${z.path}`)}else console.log(` No Claude Memory System hooks found in ${z.name} settings`)}let W=await kC();if(console.log(""),C>0||W){if(console.log("✨ Uninstallation complete!"),C>0)console.log("The Claude Memory System hooks have been removed from your settings.");if(W)console.log("The Smart Trash alias has been removed from your shell configuration."),console.log("⚠️ Restart your terminal for the alias removal to take effect.");console.log(""),console.log("Note: Your compressed transcripts and archives are preserved."),console.log("To reinstall: claude-mem install")}else console.log(" No Claude Memory System hooks or aliases were found to remove.")}E0();LF();M6();import{readFileSync as q7,existsSync as C8,readdirSync as jW,statSync as RW}from"fs";import{join as SF,dirname as _W}from"path";import{execSync as OW}from"child_process";import{fileURLToPath as IW}from"url";var MA=_W(IW(import.meta.url));async function A5(){console.log("\uD83D\uDD0D Claude Memory System Status Check"),console.log(`=====================================
`),console.log("\uD83D\uDCC2 Runtime Hook Scripts (installed from hook-templates/):");let D=YD.getInstance(),F=D.getHooksDirectory(),Q=SF(F,"session-start.js"),B=SF(F,"stop.js"),Y=SF(F,"user-prompt-submit.js"),J=SF(F,"post-tool-use.js"),X=(A,K)=>{if(C8(A))console.log(`${K}: Found at ${A}`);else console.log(`${K}: Not found at ${A}`)};X(Q,"session-start.js"),X(B,"stop.js"),X(Y,"user-prompt-submit.js"),X(J,"post-tool-use.js"),console.log(""),console.log("⚙️ Settings Configuration:");let C=(A,K)=>{if(!C8(K)){console.log(` ⏭️ ${A}: No settings file`);return}console.log(` \uD83D\uDCCB ${A}: ${K}`);try{let V=JSON.parse(q7(K,"utf8")),j=V.hooks?.SessionStart?.some((k)=>k.hooks?.some((I)=>I.command?.includes("session-start.js")||I.command?.includes("claude-mem"))),L=V.hooks?.Stop?.some((k)=>k.hooks?.some((I)=>I.command?.includes("stop.js")||I.command?.includes("claude-mem"))),R=V.hooks?.UserPromptSubmit?.some((k)=>k.hooks?.some((I)=>I.command?.includes("user-prompt-submit.js")||I.command?.includes("claude-mem"))),b=V.hooks?.PostToolUse?.some((k)=>k.hooks?.some((I)=>I.command?.includes("post-tool-use.js")||I.command?.includes("claude-mem")));console.log(` SessionStart: ${j?"✅":"❌"}`),console.log(` Stop: ${L?"✅":"❌"}`),console.log(` UserPromptSubmit: ${R?"✅":"❌"}`),console.log(` PostToolUse: ${b?"✅":"❌"}`)}catch(V){console.log(" ⚠️ Could not parse settings")}};C("Global",D.getClaudeSettingsPath()),C("Project",SF(process.cwd(),".claude","settings.json")),console.log(""),console.log("\uD83D\uDCE6 Compressed Transcripts:");let W=SF(D.getClaudeConfigDirectory(),"projects");if(C8(W))try{let A=0,K=0,V=(j,L=0)=>{if(L>3)return;let R=jW(j);for(let b of R){let k=SF(j,b);if(RW(k).isDirectory()&&!b.startsWith("."))V(k,L+1);else if(b.endsWith(".jsonl.compressed"))A++;else if(b.endsWith(".jsonl.archive"))K++}};V(W),console.log(` Compressed files: ${A}`),console.log(` Archive files: ${K}`)}catch(A){console.log(" ⚠️ Could not scan projects directory")}else console.log(" No Claude projects directory found");console.log(""),console.log("\uD83D\uDD27 Runtime Environment:");let z=(A,K)=>{try{let V=OW(`${A} --version`,{encoding:"utf8"}).trim();console.log(`${K}: ${V}`)}catch{console.log(`${K}: Not found`)}};z("node","Node.js"),z("bun","Bun"),console.log(""),console.log("\uD83E\uDDE0 Chroma Storage Status:"),console.log(" ✅ Storage backend: Chroma MCP"),console.log(` \uD83D\uDCCD Data location: ${D.getChromaDirectory()}`),console.log(" \uD83D\uDD0D Features: Vector search, semantic similarity, document storage"),console.log(""),console.log("\uD83E\uDD16 Claude Agent SDK Sessions:");try{await WF.getInstance().initialize();let V=new J8().getAll();if(V.length===0)console.log(BD.gray(" No active sessions"));else{let j=V.filter((L)=>{return(Date.now()-L.last_used_epoch)/86400000<7}).length;console.log(` \uD83D\uDCCA Total sessions: ${V.length}`),console.log(` ✅ Active (< 7 days): ${j}`),console.log(BD.dim(" \uD83D\uDCA1 View details: claude-mem sessions list"))}}catch(A){console.log(BD.gray(" ⚠️ Could not load session info"))}console.log(""),console.log("\uD83D\uDCCA Summary:");let G=D.getClaudeSettingsPath(),q=SF(process.cwd(),".claude","settings.json"),E=!1,U="Not installed";try{if(C8(G)){let A=JSON.parse(q7(G,"utf8"));if(A.hooks?.SessionStart||A.hooks?.Stop||A.hooks?.PostToolUse)E=!0,U="Global"}if(C8(q)){let A=JSON.parse(q7(q,"utf8"));if(A.hooks?.SessionStart||A.hooks?.Stop||A.hooks?.PostToolUse)E=!0,U=U==="Global"?"Global + Project":"Project"}}catch{}if(E)console.log(` ✅ Claude Memory System is installed (${U})`),console.log(""),console.log("\uD83D\uDCA1 To test: Use /compact in Claude Code");else console.log(" ❌ Claude Memory System is not installed"),console.log(""),console.log("\uD83D\uDCA1 To install: claude-mem install")}E0();import{readFileSync as wW,readdirSync as TW,statSync as PW}from"fs";import{join as V5}from"path";async function SW(D,F,Q){try{let J=wW(D,"utf8").split(`
`).filter((X)=>X.trim()).slice(-Q);if(console.log(`\uD83D\uDCCB ${F} Logs (last ${Q} lines):`),console.log(` File: ${D}`),console.log(""),J.length===0)console.log(" No log entries found");else J.forEach((X)=>{console.log(` ${X}`)});console.log("")}catch(B){console.log(`❌ Could not read ${F.toLowerCase()} log: ${D}`)}}async function L5(D={}){let F=YD.getLogsDirectory(),Q=parseInt(D.tail)||20;try{let Y=TW(F).filter((J)=>J.startsWith("claude-mem-")&&J.endsWith(".log")).map((J)=>({name:J,path:V5(F,J),mtime:PW(V5(F,J)).mtime})).sort((J,X)=>X.mtime.getTime()-J.mtime.getTime());if(Y.length===0){console.log("❌ No log files found in ~/.claude-mem/logs/");return}if(await SW(Y[0].path,"Most Recent",Q),D.all&&Y.length>1)console.log(`\uD83D\uDCDA Found ${Y.length} total log files`)}catch(B){console.log("❌ Could not read logs directory: ~/.claude-mem/logs/"),console.log(" Run a compression first to generate logs")}if(D.follow)console.log("Following logs... (Press Ctrl+C to stop)"),setInterval(()=>{},1000)}E0();import G8 from"fs";import{join as cW}from"path";function M5(D){try{let F=D instanceof Date?D:new Date(D),B=new Date().getTime()-F.getTime(),Y=Math.floor(B/1000),J=Math.floor(Y/60),X=Math.floor(J/60),C=Math.floor(X/24),W=Math.floor(C/7),z=Math.floor(C/30);if(Y<60)return"Just now";else if(J<60)return J===1?"1 minute ago":`${J} minutes ago`;else if(X<24)return X===1?"1 hour ago":`${X} hours ago`;else if(C===1)return"Yesterday";else if(C<7)return`${C} days ago`;else if(W===1)return"1 week ago";else if(W<4)return`${W} weeks ago`;else if(z===1)return"1 month ago";else if(z<12)return`${z} months ago`;else{let G=Math.floor(z/12);return G===1?"1 year ago":`${G} years ago`}}catch(F){return"Recently"}}function j6(){let D=process.env.CLAUDE_MEM_WRAP_WIDTH;if(D){let F=parseInt(D,10);if(!Number.isNaN(F)&&F>40&&F<=200)return F}return 80}function bW(D,F){if(!D)return"";if(/^[\-=\u2014_\u2500\u2550]{5,}$/.test(D.trim()))return D;if(D.length<=F)return D;let Q=D.match(/^\s*/),B=Q?Q[0]:"",Y=D.slice(B.length),J=Math.max(10,F-B.length),X=Y.split(/(\s+)/),C=[],W="",z=()=>{C.push(B+W.trimEnd()),W=""};for(let G of X){if(G==="")continue;if(!/\s/.test(G)&&G.length>J){if(W.trim().length>0)z();let q=0;while(q<G.length){let E=G.slice(q,q+J);C.push(B+E),q+=J}W="";continue}if(B.length+W.length+G.length>F)z();W+=G}if(W.trim().length>0||C.length===0)z();return C.join(`
`)}function g0(D,F){if(!D)return"";return D.split(`
`).map((Q)=>bW(Q,F)).join(`
`)}function N6(D="─",F=j6()){if(!D||D.length===0)D="-";return D.repeat(F).slice(0,F)}function K7(D,F,Q){let B=F!==void 0?` (${F} items)`:"",Y=Q?`
${Q}`:"",J=j6();return g0(`${D} completed successfully${B}${Y}`,J)}function H7(D,F,Q){let B=Q?`
\uD83D\uDCA1 ${Q}`:"",Y=j6();return g0(`${D} encountered an issue: ${F}${B}`,Y)}var kW={NO_MEMORIES:(D)=>({message:`No previous memories found for ${D}`,suggestion:"This appears to be your first session. Memories will be created as you work."}),CONNECTION_FAILED:()=>({message:"Could not connect to memory system",suggestion:"Try restarting Claude Code or check if the MCP server is properly configured."}),SEARCH_FAILED:(D)=>({message:`Search for "${D}" didn't return any results`,suggestion:"Try using different keywords or check if memories exist for this project."}),LOAD_TIMEOUT:()=>({message:"Memory loading timed out",suggestion:"The operation is taking longer than expected. You can continue without loaded context."})};function W8(D,...F){let Q=kW[D](...F);return H7("Memory system",Q.message,Q.suggestion)}function N5(D){let F=typeof D==="string"?new Date(D):D,B=new Date().getTime()-F.getTime(),Y=Math.floor(B/60000),J=Math.floor(B/3600000),X=Math.floor(B/86400000);if(Y<1)return"just now";if(Y<60)return`${Y} minute${Y>1?"s":""} ago`;if(J<24)return`${J} hour${J>1?"s":""} ago`;if(X<7)return`${X} day${X>1?"s":""} ago`;return F.toLocaleDateString()}function vW(D){if(D.length===0)return[];return D.filter((F)=>F.type==="memory").map((F)=>{let Q={summary:F.text||"",sessionId:F.session_id||""};if(F.keywords)Q.keywords=F.keywords;if(F.document_id&&!F.document_id.includes("Session:"))Q.location=F.document_id;return Q}).filter((F)=>F.summary.length>0)}function xW(D){let F=new Map;return D.forEach((Q)=>{let B=Q.sessionId;if(B){if(!F.has(B))F.set(B,[]);F.get(B).push(Q)}}),Array.from(F.entries()).map(([Q,B])=>{let Y=B.map((J,X)=>({...J,number:X+1}));return{sessionId:Q,memories:Y}})}function uW(D){let F=new Map;return D.forEach((Q)=>{let B=Q.sessionId||"unknown";if(!F.has(B))F.set(B,[]);F.get(B).push(Q)}),Array.from(F.entries()).map(([Q,B])=>{let Y=B.map((X)=>X.timestamp).filter((X)=>X!==void 0).sort((X,C)=>X.getTime()-C.getTime()),J={sessionId:Q,overviews:B};if(Y.length>0)J.earliestTimestamp=Y[0],J.timeAgo=M5(Y[0]);return J})}function j5(D){let{projectName:F,memoryCount:Q,lastSessionTime:B,recentObjects:Y}=D,J=j6(),C=new Date().toLocaleString("en-US",{weekday:"long",year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit",timeZoneName:"short"});console.log(""),console.log(g0(`\uD83D\uDCC5 ${C}`,J)),console.log(N6("─",J));let W=extractOverviews(Y,10,F);console.error(`[DEBUG] recentObjects has ${Y.length} items`),console.error(`[DEBUG] overviews extracted: ${W.length}`);let z=vW(Y),G=(q,E)=>{let U=q.includes(",")||q.includes(`
`)?q.split(/[\n,]+/):[q];for(let A of U){let K=A.trim();if(!K)continue;let V=K.toLowerCase();if(!E.has(V))E.set(V,K)}};if(z.length>0){let q=xW(z);console.log(""),console.log(""),console.log(g0("\uD83D\uDCDA Memories",J)),q.forEach((E)=>{console.log(N6("─",J)),console.log(""),console.log(g0(`\uD83D\uDD0D ${E.sessionId}`,J));let U=new Map;E.memories.forEach((K)=>{if(console.log(""),console.log(g0(`${K.number}. ${K.summary}`,J)),K.keywords)G(K.keywords,U)});let A=Array.from(U.values());if(A.length>0)console.log(""),console.log(g0(`\uD83C\uDFF7 ${A.join(", ")}`,J));console.log("")})}if(W.length>0){let q=uW(W);q.sort((E,U)=>{let A=E.earliestTimestamp?.getTime()||0,K=U.earliestTimestamp?.getTime()||0;return A-K}),console.log(""),console.log(g0("\uD83E\uDDE0 Overviews",J)),console.log(N6("─",J)),q.forEach((E)=>{console.log(""),console.log(g0(`\uD83D\uDD0D ${E.sessionId}`,J)),E.overviews.forEach((U,A)=>{if(console.log(""),console.log(g0(`${A+1}. ${U.content}`,J)),console.log(""),U.timeAgo)console.log(g0(`\uD83D\uDCC5 ${U.timeAgo}`,J))}),console.log(""),console.log(N6("─",J))})}else if(z.length===0)console.log(g0(`\uD83E\uDDE0 No recent context found for ${F}`,J))}E0();import aF from"fs";LF();M6();E7();A7();L7();N7();j7();async function s0(){let{DatabaseManager:D}=await Promise.resolve().then(() => (LF(),E5)),{migrations:F}=await Promise.resolve().then(() => (j7(),S5)),Q=D.getInstance();for(let z of F)Q.registerMigration(z);let B=await Q.initialize(),{SessionStore:Y}=await Promise.resolve().then(() => (M6(),Z5)),{MemoryStore:J}=await Promise.resolve().then(() => (E7(),R5)),{OverviewStore:X}=await Promise.resolve().then(() => (A7(),_5)),{DiagnosticsStore:C}=await Promise.resolve().then(() => (L7(),O5)),{TranscriptEventStore:W}=await Promise.resolve().then(() => (N7(),I5));return{sessions:new Y(B),memories:new J(B),overviews:new X(B),diagnostics:new C(B),transcriptEvents:new W(B)}}class R7{backend="sqlite";stores;async getStores(){if(!this.stores)this.stores=await s0();return this.stores}async isAvailable(){try{return await this.getStores(),!0}catch(D){return!1}}async createSession(D){return(await this.getStores()).sessions.create(D)}async getSession(D){return(await this.getStores()).sessions.getBySessionId(D)}async hasSession(D){return(await this.getStores()).sessions.has(D)}async getAllSessionIds(){return(await this.getStores()).sessions.getAllSessionIds()}async getRecentSessions(D=5){return(await this.getStores()).sessions.getRecent(D)}async getRecentSessionsForProject(D,F=5){return(await this.getStores()).sessions.getRecentForProject(D,F)}async createMemory(D){return(await this.getStores()).memories.create(D)}async createMemories(D){(await this.getStores()).memories.createMany(D)}async getRecentMemories(D=10){return(await this.getStores()).memories.getRecent(D)}async getRecentMemoriesForProject(D,F=10){return(await this.getStores()).memories.getRecentForProject(D,F)}async hasDocumentId(D){return(await this.getStores()).memories.hasDocumentId(D)}async createOverview(D){return(await this.getStores()).overviews.create(D)}async upsertOverview(D){return(await this.getStores()).overviews.upsert(D)}async getRecentOverviews(D=5){return(await this.getStores()).overviews.getRecent(D)}async getRecentOverviewsForProject(D,F=5){return(await this.getStores()).overviews.getRecentForProject(D,F)}async createDiagnostic(D){return(await this.getStores()).diagnostics.create(D)}}class b5{backend="jsonl";pathDiscovery=YD.getInstance();async isAvailable(){try{let D=this.pathDiscovery.getDataDirectory();return aF.mkdirSync(D,{recursive:!0}),!0}catch{return!1}}appendToIndex(D){let F=this.pathDiscovery.getIndexPath();aF.appendFileSync(F,JSON.stringify(D)+"\\n","utf8")}async createSession(D){let F={type:"session",session_id:D.session_id,project:D.project,timestamp:D.created_at};this.appendToIndex(F)}async getSession(){return null}async hasSession(D){return(await this.getAllSessionIds()).has(D)}async getAllSessionIds(){let D=this.pathDiscovery.getIndexPath();if(!aF.existsSync(D))return new Set;let Q=aF.readFileSync(D,"utf-8").trim().split("\\n").filter((Y)=>Y.trim()),B=new Set;for(let Y of Q)try{let J=JSON.parse(Y);if(J.session_id)B.add(J.session_id)}catch{}return B}async getRecentSessions(){return[]}async getRecentSessionsForProject(){return[]}async createMemory(D){let F={type:"memory",text:D.text,document_id:D.document_id,keywords:D.keywords,session_id:D.session_id,project:D.project,timestamp:D.created_at,archive:D.archive_basename};this.appendToIndex(F)}async createMemories(D){for(let F of D)await this.createMemory(F)}async getRecentMemories(){return[]}async getRecentMemoriesForProject(){return[]}async hasDocumentId(D){let F=this.pathDiscovery.getIndexPath();if(!aF.existsSync(F))return!1;let B=aF.readFileSync(F,"utf-8").trim().split("\\n").filter((Y)=>Y.trim());for(let Y of B)try{let J=JSON.parse(Y);if(J.type==="memory"&&J.document_id===D)return!0}catch{}return!1}async createOverview(D){let F={type:"overview",content:D.content,session_id:D.session_id,project:D.project,timestamp:D.created_at};this.appendToIndex(F)}async upsertOverview(D){await this.createOverview(D)}async getRecentOverviews(){return[]}async getRecentOverviewsForProject(){return[]}async createDiagnostic(D){let F={type:"diagnostic",message:D.message,session_id:D.session_id,project:D.project,timestamp:D.created_at};this.appendToIndex(F)}}var V2=null;async function k5(){if(V2)return V2;let D=new R7;if(await D.isAvailable())return V2=D,V2;let F=new b5;if(await F.isAvailable())return V2=F,V2;throw new Error("No storage backend available")}async function v5(){let F=YD.getInstance().getIndexPath();if(aF.existsSync(F)){if(!await new R7().isAvailable())return!0;try{return(await s0()).sessions.count()===0}catch{return!0}}return!1}import{readFileSync as yW,existsSync as fW}from"fs";import{join as gW}from"path";E0();class _7{pathDiscovery;constructor(){this.pathDiscovery=YD.getInstance()}getConfigDir(){return this.pathDiscovery.getDataDirectory()}getIndexDir(){return this.pathDiscovery.getIndexDirectory()}getIndexPath(){return this.pathDiscovery.getIndexPath()}getArchiveDir(){return this.pathDiscovery.getArchivesDirectory()}getProjectArchiveDir(D){return this.pathDiscovery.getProjectArchiveDirectory(D)}getLogsDir(){return this.pathDiscovery.getLogsDirectory()}static ensureDirectory(D){YD.getInstance().ensureDirectory(D)}static ensureDirectories(D){YD.getInstance().ensureDirectories(D)}static extractProjectName(D){return YD.extractProjectName(D)}static getCurrentProjectPrefix(){return YD.getCurrentProjectName()}static getCurrentProjectName(){return YD.getCurrentProjectName()}}class O7{static settingsPath;static cachedSettings=null;static{let D=new _7;this.settingsPath=gW(D.getConfigDir(),"settings.json")}static readSettings(){if(this.cachedSettings!==null)return this.cachedSettings;try{if(fW(this.settingsPath)){let F=yW(this.settingsPath,"utf-8"),Q=JSON.parse(F);return this.cachedSettings=Q,Q}}catch{}let D={};return this.cachedSettings=D,D}static getSetting(D,F){return this.readSettings()[D]??F}static getClaudePath(){return this.getSetting("claudePath","claude")}static clearCache(){this.cachedSettings=null}}function z8(){return O7.getClaudePath()}function x5(){return O7.readSettings()}var L2={captureEnabled:!0,summaryEnabled:!0,sessionStartEnabled:!0,chunkTokenLimit:600,chunkOverlapTokens:200,summaryTurnLimit:20};function I7(D,F){if(typeof D==="boolean")return D;if(typeof D==="string"){let Q=D.toLowerCase();if(Q==="true")return!0;if(Q==="false")return!1}return F}function w7(D,F){if(typeof D==="number"&&Number.isFinite(D))return D;if(typeof D==="string"){let Q=Number(D);if(!Number.isNaN(Q)&&Number.isFinite(Q))return Q}return F}function u5(){let D=x5();return{captureEnabled:I7(D.rollingCaptureEnabled,L2.captureEnabled),summaryEnabled:I7(D.rollingSummaryEnabled,L2.summaryEnabled),sessionStartEnabled:I7(D.rollingSessionStartEnabled,L2.sessionStartEnabled),chunkTokenLimit:w7(D.rollingChunkTokens,L2.chunkTokenLimit),chunkOverlapTokens:w7(D.rollingChunkOverlapTokens,L2.chunkOverlapTokens),summaryTurnLimit:w7(D.rollingSummaryTurnLimit,L2.summaryTurnLimit)}}E0();import{appendFileSync as $W,existsSync as hW,mkdirSync as mW}from"fs";import{join as lW}from"path";var R6=null;function dW(){if(R6)return R6;let F=YD.getInstance().getLogsDirectory();if(!hW(F))mW(F,{recursive:!0});return R6=lW(F,"rolling-memory.log"),R6}function _6(D,F,Q={}){try{let B=dW(),Y={timestamp:new Date().toISOString(),level:D,message:F,...Q};$W(B,`${JSON.stringify(Y)}
`,"utf8")}catch{}}function y5(D=new Date){return D.toLocaleString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric",hour:"2-digit",minute:"2-digit",timeZoneName:"short"})}function T7(D,F,Q){let B=D.split(" "),Y=[],J=Q,X=" ".repeat(Q.length);for(let C of B){let z=J+(J!==Q&&J!==X?" ":"")+C;if(z.length<=F)J=z;else{if(J.trim())Y.push(J);J=X+C}}if(J.trim())Y.push(J);return Y.join(`
`)}function pW(D){let F=new Set;return F.add(D),F.add(D.replace(/-/g,"_")),F.add(D.replace(/_/g,"-")),(Q)=>!!Q&&F.has(Q)}function P7(D){if(D===0)return"0 B";let F=1024,Q=["B","KB","MB","GB"],B=Math.floor(Math.log(D)/Math.log(F));return parseFloat((D/Math.pow(F,B)).toFixed(1))+" "+Q[B]}function S7(){let D=YD.getInstance().getTrashDirectory();if(!G8.existsSync(D))return{folderCount:0,fileCount:0,totalSize:0,isEmpty:!0};let F=G8.readdirSync(D);if(F.length===0)return{folderCount:0,fileCount:0,totalSize:0,isEmpty:!0};let Q=0,B=0,Y=0;for(let J of F){let X=cW(D,J),C=G8.statSync(X);if(C.isDirectory())Q++;else B++;Y+=C.size}return{folderCount:Q,fileCount:B,totalSize:Y,isEmpty:!1}}async function nW(D){if(!u5().sessionStartEnabled){console.log("Rolling session-start output disabled in settings."),_6("info","session-start output skipped (disabled)",{project:D});return}let Q=await s0(),B=D||YD.getCurrentProjectName(),J=Q.overviews.getAllForProject(B).slice(-10);if(J.length===0){console.log("==============================================================================="),console.log(`What's new | ${y5()}`),console.log("==============================================================================="),console.log("No previous sessions found for this project."),console.log("Start working and claude-mem will automatically capture context for future sessions."),console.log("===============================================================================");let C=S7();if(!C.isEmpty){let W=P7(C.totalSize);console.log(`\uD83D\uDDD1 Trash ${C.folderCount} folders | ${C.fileCount} files | ${W} use \`claude-mem restore\``),console.log("===============================================================================")}return}console.log("==============================================================================="),console.log(`What's new | ${y5()}`),console.log("==============================================================================="),J.forEach((C)=>{let W=new Date(C.created_at),z=W.getFullYear(),G=String(W.getMonth()+1).padStart(2,"0"),q=String(W.getDate()).padStart(2,"0"),E=W.getHours(),U=String(W.getMinutes()).padStart(2,"0"),A=E>=12?"PM":"AM",K=E%12||12;console.log(`[${z}-${G}-${q} at ${K}:${U} ${A}]`);let V=Q.memories.getBySessionId(C.session_id),j=V.map((b)=>({title:b.title,subtitle:b.subtitle})).filter((b)=>b.title),L=new Set,R=new Set;if(V.forEach((b)=>{if(b.files_touched)try{let k=JSON.parse(b.files_touched);if(Array.isArray(k))k.forEach((I)=>L.add(I))}catch(k){}if(b.keywords)b.keywords.split(",").forEach((k)=>R.add(k.trim()))}),console.log(""),console.log(T7(C.content,80,"")),L.size>0)console.log(""),console.log(T7(`- ${Array.from(L).join(", ")}`,80,""));if(R.size>0)console.log(""),console.log(T7(`Tags: ${Array.from(R).join(", ")}`,80,""));console.log("")}),console.log("===============================================================================");let X=S7();if(!X.isEmpty){let C=P7(X.totalSize);console.log(`\uD83D\uDDD1 Trash ${X.folderCount} folders | ${X.fileCount} files | ${C} use \`claude-mem restore\``),console.log("===============================================================================")}}async function f5(D={}){try{if(await v5())console.warn("⚠️ JSONL to SQLite migration recommended. Run: claude-mem migrate-index");let F=await k5();if(F.backend==="jsonl")return await iW(D);let Q=[],B=[],Y=D.project;if(!Y&&D.format==="session-start")Y=YD.getCurrentProjectName();if(D.format==="session-start"){await nW(Y);return}let J=D.format==="json"?5:3;if(Y)Q=await F.getRecentMemoriesForProject(Y,10),B=await F.getRecentOverviewsForProject(Y,J);else Q=await F.getRecentMemories(10),B=await F.getRecentOverviews(J);let X=Q.map((W)=>({type:"memory",text:W.text,document_id:W.document_id,keywords:W.keywords,session_id:W.session_id,project:W.project,timestamp:W.created_at,archive:W.archive_basename})),C=B.map((W)=>({type:"overview",content:W.content,session_id:W.session_id,project:W.project,timestamp:W.created_at}));if(X.length===0&&C.length===0)return;if(D.format==="json"){let W=[...X,...C];console.log(JSON.stringify(W))}else{let W=X.length+C.length;console.log(K7("Context loading",W,"recent entries found")),X.forEach((z)=>{console.log(`${z.text} | ${z.document_id} | ${z.keywords}`)}),C.forEach((z)=>{console.log(`**Overview:** ${z.content}`)})}if(D.format!=="json"){let W=S7();if(!W.isEmpty){let z=P7(W.totalSize);console.log(`\uD83D\uDDD1 Trash ${W.folderCount} folders | ${W.fileCount} files | ${z} use \`claude-mem restore\``),console.log("")}}}catch(F){let Q=F instanceof Error?F.message:String(F);if(D.format==="session-start")console.log(W8("CONNECTION_FAILED",Q));else console.log(H7("Context loading",Q,"Check file permissions and try again"))}}async function iW(D={}){let Q=YD.getInstance().getIndexPath(),B=D.project;if(!B&&D.format==="session-start")B=YD.getCurrentProjectName();if(!G8.existsSync(Q)){if(D.format==="session-start")console.log(W8("NO_MEMORIES",B||"this project"));return}let J=G8.readFileSync(Q,"utf-8").trim().split(`
`).filter((U)=>U.trim());if(J.length===0){if(D.format==="session-start")console.log(W8("NO_MEMORIES",B||"this project"));return}let X=[];for(let U of J)try{if(!U.trim().startsWith("{"))continue;let A=JSON.parse(U);X.push(A)}catch(A){continue}if(X.length===0){if(D.format==="session-start")console.log(W8("NO_MEMORIES",B||"this project"));return}let C=X.filter((U)=>U.type==="memory"),W=X.filter((U)=>U.type==="overview"),z=X.filter((U)=>U.type==="session"),G=C,q=W,E=z;if(B){let U=pW(B);G=C.filter((A)=>U(A.project)),q=W.filter((A)=>U(A.project)),E=z.filter((A)=>U(A.project))}if(D.format==="session-start"){let U=G.slice(-10),A=q.slice(-10),V=[...E.slice(-10),...U,...A],j="recently",L=V.map((R)=>{return R.timestamp?new Date(R.timestamp):null}).filter((R)=>R!==null).sort((R,b)=>b.getTime()-R.getTime());if(L.length>0)j=N5(L[0]);j5({projectName:B||"your project",memoryCount:U.length,lastSessionTime:j,recentObjects:V})}else if(D.format==="json"){let U=G.slice(-10),A=q.slice(-3),K=[...U,...A];console.log(JSON.stringify(K))}else{let U=G.slice(-10),A=q.slice(-3),K=U.length+A.length;console.log(K7("Context loading",K,"recent entries found")),U.forEach((V)=>{console.log(`${V.text} | ${V.document_id} | ${V.keywords}`)}),A.forEach((V)=>{console.log(`**Overview:** ${V.content}`)})}}import{renameSync as kG,existsSync as kB,mkdirSync as vG,statSync as xG}from"fs";import{join as uG,basename as yG}from"path";var b7=(D,F,Q)=>{let B=D instanceof RegExp?g5(D,Q):D,Y=F instanceof RegExp?g5(F,Q):F,J=B!==null&&Y!=null&&aW(B,Y,Q);return J&&{start:J[0],end:J[1],pre:Q.slice(0,J[0]),body:Q.slice(J[0]+B.length,J[1]),post:Q.slice(J[1]+Y.length)}},g5=(D,F)=>{let Q=F.match(D);return Q?Q[0]:null},aW=(D,F,Q)=>{let B,Y,J,X=void 0,C,W=Q.indexOf(D),z=Q.indexOf(F,W+1),G=W;if(W>=0&&z>0){if(D===F)return[W,z];B=[],J=Q.length;while(G>=0&&!C){if(G===W)B.push(G),W=Q.indexOf(D,G+1);else if(B.length===1){let q=B.pop();if(q!==void 0)C=[q,z]}else{if(Y=B.pop(),Y!==void 0&&Y<J)J=Y,X=z;z=Q.indexOf(F,G+1)}G=W<z&&W>=0?W:z}if(B.length&&X!==void 0)C=[J,X]}return C};var $5="\x00SLASH"+Math.random()+"\x00",h5="\x00OPEN"+Math.random()+"\x00",v7="\x00CLOSE"+Math.random()+"\x00",m5="\x00COMMA"+Math.random()+"\x00",l5="\x00PERIOD"+Math.random()+"\x00",rW=new RegExp($5,"g"),oW=new RegExp(h5,"g"),sW=new RegExp(v7,"g"),tW=new RegExp(m5,"g"),eW=new RegExp(l5,"g"),Dz=/\\\\/g,Fz=/\\{/g,Bz=/\\}/g,Qz=/\\,/g,Xz=/\\./g;function k7(D){return!isNaN(D)?parseInt(D,10):D.charCodeAt(0)}function Yz(D){return D.replace(Dz,$5).replace(Fz,h5).replace(Bz,v7).replace(Qz,m5).replace(Xz,l5)}function Jz(D){return D.replace(rW,"\\").replace(oW,"{").replace(sW,"}").replace(tW,",").replace(eW,".")}function d5(D){if(!D)return[""];let F=[],Q=b7("{","}",D);if(!Q)return D.split(",");let{pre:B,body:Y,post:J}=Q,X=B.split(",");X[X.length-1]+="{"+Y+"}";let C=d5(J);if(J.length)X[X.length-1]+=C.shift(),X.push.apply(X,C);return F.push.apply(F,X),F}function c5(D){if(!D)return[];if(D.slice(0,2)==="{}")D="\\{\\}"+D.slice(2);return q8(Yz(D),!0).map(Jz)}function Cz(D){return"{"+D+"}"}function Wz(D){return/^-?0\d/.test(D)}function zz(D,F){return D<=F}function Gz(D,F){return D>=F}function q8(D,F){let Q=[],B=b7("{","}",D);if(!B)return[D];let Y=B.pre,J=B.post.length?q8(B.post,!1):[""];if(/\$$/.test(B.pre))for(let X=0;X<J.length;X++){let C=Y+"{"+B.body+"}"+J[X];Q.push(C)}else{let X=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(B.body),C=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(B.body),W=X||C,z=B.body.indexOf(",")>=0;if(!W&&!z){if(B.post.match(/,(?!,).*\}/))return D=B.pre+"{"+B.body+v7+B.post,q8(D);return[D]}let G;if(W)G=B.body.split(/\.\./);else if(G=d5(B.body),G.length===1&&G[0]!==void 0){if(G=q8(G[0],!1).map(Cz),G.length===1)return J.map((E)=>B.pre+G[0]+E)}let q;if(W&&G[0]!==void 0&&G[1]!==void 0){let E=k7(G[0]),U=k7(G[1]),A=Math.max(G[0].length,G[1].length),K=G.length===3&&G[2]!==void 0?Math.abs(k7(G[2])):1,V=zz;if(U<E)K*=-1,V=Gz;let L=G.some(Wz);q=[];for(let R=E;V(R,U);R+=K){let b;if(C){if(b=String.fromCharCode(R),b==="\\")b=""}else if(b=String(R),L){let k=A-b.length;if(k>0){let I=new Array(k+1).join("0");if(R<0)b="-"+I+b.slice(1);else b=I+b}}q.push(b)}}else{q=[];for(let E=0;E<G.length;E++)q.push.apply(q,q8(G[E],!1))}for(let E=0;E<q.length;E++)for(let U=0;U<J.length;U++){let A=Y+q[E]+J[U];if(!F||W||A)Q.push(A)}}return Q}var K8=(D)=>{if(typeof D!=="string")throw new TypeError("invalid pattern");if(D.length>65536)throw new TypeError("pattern is too long")};var qz={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},H8=(D)=>D.replace(/[[\]\\-]/g,"\\$&"),Kz=(D)=>D.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),p5=(D)=>D.join(""),n5=(D,F)=>{let Q=F;if(D.charAt(Q)!=="[")throw new Error("not in a brace expression");let B=[],Y=[],J=Q+1,X=!1,C=!1,W=!1,z=!1,G=Q,q="";D:while(J<D.length){let K=D.charAt(J);if((K==="!"||K==="^")&&J===Q+1){z=!0,J++;continue}if(K==="]"&&X&&!W){G=J+1;break}if(X=!0,K==="\\"){if(!W){W=!0,J++;continue}}if(K==="["&&!W){for(let[V,[j,L,R]]of Object.entries(qz))if(D.startsWith(V,J)){if(q)return["$.",!1,D.length-Q,!0];if(J+=V.length,R)Y.push(j);else B.push(j);C=C||L;continue D}}if(W=!1,q){if(K>q)B.push(H8(q)+"-"+H8(K));else if(K===q)B.push(H8(K));q="",J++;continue}if(D.startsWith("-]",J+1)){B.push(H8(K+"-")),J+=2;continue}if(D.startsWith("-",J+1)){q=K,J+=2;continue}B.push(H8(K)),J++}if(G<J)return["",!1,0,!1];if(!B.length&&!Y.length)return["$.",!1,D.length-Q,!0];if(Y.length===0&&B.length===1&&/^\\?.$/.test(B[0])&&!z){let K=B[0].length===2?B[0].slice(-1):B[0];return[Kz(K),!1,G-Q,!1]}let E="["+(z?"^":"")+p5(B)+"]",U="["+(z?"":"^")+p5(Y)+"]";return[B.length&&Y.length?"("+E+"|"+U+")":B.length?E:U,C,G-Q,!0]};var t0=(D,{windowsPathsNoEscape:F=!1}={})=>{return F?D.replace(/\[([^\/\\])\]/g,"$1"):D.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var Hz=new Set(["!","?","+","*","@"]),i5=(D)=>Hz.has(D),Uz="(?!(?:^|/)\\.\\.?(?:$|/))",O6="(?!\\.)",Ez=new Set(["[","."]),Zz=new Set(["..","."]),Az=new Set("().*{}+?[]^$\\!"),Vz=(D)=>D.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),x7="[^/]",a5=x7+"*?",r5=x7+"+?";class Y0{type;#D;#F;#Y=!1;#X=[];#J;#M;#V;#G=!1;#C;#K;#q=!1;constructor(D,F,Q={}){if(this.type=D,D)this.#F=!0;if(this.#J=F,this.#D=this.#J?this.#J.#D:this,this.#C=this.#D===this?Q:this.#D.#C,this.#V=this.#D===this?[]:this.#D.#V,D==="!"&&!this.#D.#G)this.#V.push(this);this.#M=this.#J?this.#J.#X.length:0}get hasMagic(){if(this.#F!==void 0)return this.#F;for(let D of this.#X){if(typeof D==="string")continue;if(D.type||D.hasMagic)return this.#F=!0}return this.#F}toString(){if(this.#K!==void 0)return this.#K;if(!this.type)return this.#K=this.#X.map((D)=>String(D)).join("");else return this.#K=this.type+"("+this.#X.map((D)=>String(D)).join("|")+")"}#W(){if(this!==this.#D)throw new Error("should only call on root");if(this.#G)return this;this.toString(),this.#G=!0;let D;while(D=this.#V.pop()){if(D.type!=="!")continue;let F=D,Q=F.#J;while(Q){for(let B=F.#M+1;!Q.type&&B<Q.#X.length;B++)for(let Y of D.#X){if(typeof Y==="string")throw new Error("string part in extglob AST??");Y.copyIn(Q.#X[B])}F=Q,Q=F.#J}}return this}push(...D){for(let F of D){if(F==="")continue;if(typeof F!=="string"&&!(F instanceof Y0&&F.#J===this))throw new Error("invalid part: "+F);this.#X.push(F)}}toJSON(){let D=this.type===null?this.#X.slice().map((F)=>typeof F==="string"?F:F.toJSON()):[this.type,...this.#X.map((F)=>F.toJSON())];if(this.isStart()&&!this.type)D.unshift([]);if(this.isEnd()&&(this===this.#D||this.#D.#G&&this.#J?.type==="!"))D.push({});return D}isStart(){if(this.#D===this)return!0;if(!this.#J?.isStart())return!1;if(this.#M===0)return!0;let D=this.#J;for(let F=0;F<this.#M;F++){let Q=D.#X[F];if(!(Q instanceof Y0&&Q.type==="!"))return!1}return!0}isEnd(){if(this.#D===this)return!0;if(this.#J?.type==="!")return!0;if(!this.#J?.isEnd())return!1;if(!this.type)return this.#J?.isEnd();let D=this.#J?this.#J.#X.length:0;return this.#M===D-1}copyIn(D){if(typeof D==="string")this.push(D);else this.push(D.clone(this))}clone(D){let F=new Y0(this.type,D);for(let Q of this.#X)F.copyIn(Q);return F}static#B(D,F,Q,B){let Y=!1,J=!1,X=-1,C=!1;if(F.type===null){let E=Q,U="";while(E<D.length){let A=D.charAt(E++);if(Y||A==="\\"){Y=!Y,U+=A;continue}if(J){if(E===X+1){if(A==="^"||A==="!")C=!0}else if(A==="]"&&!(E===X+2&&C))J=!1;U+=A;continue}else if(A==="["){J=!0,X=E,C=!1,U+=A;continue}if(!B.noext&&i5(A)&&D.charAt(E)==="("){F.push(U),U="";let K=new Y0(A,F);E=Y0.#B(D,K,E,B),F.push(K);continue}U+=A}return F.push(U),E}let W=Q+1,z=new Y0(null,F),G=[],q="";while(W<D.length){let E=D.charAt(W++);if(Y||E==="\\"){Y=!Y,q+=E;continue}if(J){if(W===X+1){if(E==="^"||E==="!")C=!0}else if(E==="]"&&!(W===X+2&&C))J=!1;q+=E;continue}else if(E==="["){J=!0,X=W,C=!1,q+=E;continue}if(i5(E)&&D.charAt(W)==="("){z.push(q),q="";let U=new Y0(E,z);z.push(U),W=Y0.#B(D,U,W,B);continue}if(E==="|"){z.push(q),q="",G.push(z),z=new Y0(null,F);continue}if(E===")"){if(q===""&&F.#X.length===0)F.#q=!0;return z.push(q),q="",F.push(...G,z),W}q+=E}return F.type=null,F.#F=void 0,F.#X=[D.substring(Q-1)],W}static fromGlob(D,F={}){let Q=new Y0(null,void 0,F);return Y0.#B(D,Q,0,F),Q}toMMPattern(){if(this!==this.#D)return this.#D.toMMPattern();let D=this.toString(),[F,Q,B,Y]=this.toRegExpSource();if(!(B||this.#F||this.#C.nocase&&!this.#C.nocaseMagicOnly&&D.toUpperCase()!==D.toLowerCase()))return Q;let X=(this.#C.nocase?"i":"")+(Y?"u":"");return Object.assign(new RegExp(`^${F}$`,X),{_src:F,_glob:D})}get options(){return this.#C}toRegExpSource(D){let F=D??!!this.#C.dot;if(this.#D===this)this.#W();if(!this.type){let C=this.isStart()&&this.isEnd(),W=this.#X.map((E)=>{let[U,A,K,V]=typeof E==="string"?Y0.#N(E,this.#F,C):E.toRegExpSource(D);return this.#F=this.#F||K,this.#Y=this.#Y||V,U}).join(""),z="";if(this.isStart()){if(typeof this.#X[0]==="string"){if(!(this.#X.length===1&&Zz.has(this.#X[0]))){let U=Ez,A=F&&U.has(W.charAt(0))||W.startsWith("\\.")&&U.has(W.charAt(2))||W.startsWith("\\.\\.")&&U.has(W.charAt(4)),K=!F&&!D&&U.has(W.charAt(0));z=A?Uz:K?O6:""}}}let G="";if(this.isEnd()&&this.#D.#G&&this.#J?.type==="!")G="(?:$|\\/)";return[z+W+G,t0(W),this.#F=!!this.#F,this.#Y]}let Q=this.type==="*"||this.type==="+",B=this.type==="!"?"(?:(?!(?:":"(?:",Y=this.#U(F);if(this.isStart()&&this.isEnd()&&!Y&&this.type!=="!"){let C=this.toString();return this.#X=[C],this.type=null,this.#F=void 0,[C,t0(this.toString()),!1,!1]}let J=!Q||D||F||!O6?"":this.#U(!0);if(J===Y)J="";if(J)Y=`(?:${Y})(?:${J})*?`;let X="";if(this.type==="!"&&this.#q)X=(this.isStart()&&!F?O6:"")+r5;else{let C=this.type==="!"?"))"+(this.isStart()&&!F&&!D?O6:"")+a5+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&J?")":this.type==="*"&&J?")?":`)${this.type}`;X=B+Y+C}return[X,t0(Y),this.#F=!!this.#F,this.#Y]}#U(D){return this.#X.map((F)=>{if(typeof F==="string")throw new Error("string type in extglob ast??");let[Q,B,Y,J]=F.toRegExpSource(D);return this.#Y=this.#Y||J,Q}).filter((F)=>!(this.isStart()&&this.isEnd())||!!F).join("|")}static#N(D,F,Q=!1){let B=!1,Y="",J=!1;for(let X=0;X<D.length;X++){let C=D.charAt(X);if(B){B=!1,Y+=(Az.has(C)?"\\":"")+C;continue}if(C==="\\"){if(X===D.length-1)Y+="\\\\";else B=!0;continue}if(C==="["){let[W,z,G,q]=n5(D,X);if(G){Y+=W,J=J||z,X+=G-1,F=F||q;continue}}if(C==="*"){if(Q&&D==="*")Y+=r5;else Y+=a5;F=!0;continue}if(C==="?"){Y+=x7,F=!0;continue}Y+=Vz(C)}return[Y,t0(D),!!F,J]}}var M2=(D,{windowsPathsNoEscape:F=!1}={})=>{return F?D.replace(/[?*()[\]]/g,"[$&]"):D.replace(/[?*()[\]\\]/g,"\\$&")};var Z0=(D,F,Q={})=>{if(K8(F),!Q.nocomment&&F.charAt(0)==="#")return!1;return new h0(F,Q).match(D)},Lz=/^\*+([^+@!?\*\[\(]*)$/,Mz=(D)=>(F)=>!F.startsWith(".")&&F.endsWith(D),Nz=(D)=>(F)=>F.endsWith(D),jz=(D)=>{return D=D.toLowerCase(),(F)=>!F.startsWith(".")&&F.toLowerCase().endsWith(D)},Rz=(D)=>{return D=D.toLowerCase(),(F)=>F.toLowerCase().endsWith(D)},_z=/^\*+\.\*+$/,Oz=(D)=>!D.startsWith(".")&&D.includes("."),Iz=(D)=>D!=="."&&D!==".."&&D.includes("."),wz=/^\.\*+$/,Tz=(D)=>D!=="."&&D!==".."&&D.startsWith("."),Pz=/^\*+$/,Sz=(D)=>D.length!==0&&!D.startsWith("."),bz=(D)=>D.length!==0&&D!=="."&&D!=="..",kz=/^\?+([^+@!?\*\[\(]*)?$/,vz=([D,F=""])=>{let Q=t5([D]);if(!F)return Q;return F=F.toLowerCase(),(B)=>Q(B)&&B.toLowerCase().endsWith(F)},xz=([D,F=""])=>{let Q=e5([D]);if(!F)return Q;return F=F.toLowerCase(),(B)=>Q(B)&&B.toLowerCase().endsWith(F)},uz=([D,F=""])=>{let Q=e5([D]);return!F?Q:(B)=>Q(B)&&B.endsWith(F)},yz=([D,F=""])=>{let Q=t5([D]);return!F?Q:(B)=>Q(B)&&B.endsWith(F)},t5=([D])=>{let F=D.length;return(Q)=>Q.length===F&&!Q.startsWith(".")},e5=([D])=>{let F=D.length;return(Q)=>Q.length===F&&Q!=="."&&Q!==".."},DB=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",o5={win32:{sep:"\\"},posix:{sep:"/"}},fz=DB==="win32"?o5.win32.sep:o5.posix.sep;Z0.sep=fz;var J0=Symbol("globstar **");Z0.GLOBSTAR=J0;var gz="[^/]",$z=gz+"*?",hz="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",mz="(?:(?!(?:\\/|^)\\.).)*?",lz=(D,F={})=>(Q)=>Z0(Q,D,F);Z0.filter=lz;var $0=(D,F={})=>Object.assign({},D,F),dz=(D)=>{if(!D||typeof D!=="object"||!Object.keys(D).length)return Z0;let F=Z0;return Object.assign((B,Y,J={})=>F(B,Y,$0(D,J)),{Minimatch:class B extends F.Minimatch{constructor(Y,J={}){super(Y,$0(D,J))}static defaults(Y){return F.defaults($0(D,Y)).Minimatch}},AST:class B extends F.AST{constructor(Y,J,X={}){super(Y,J,$0(D,X))}static fromGlob(Y,J={}){return F.AST.fromGlob(Y,$0(D,J))}},unescape:(B,Y={})=>F.unescape(B,$0(D,Y)),escape:(B,Y={})=>F.escape(B,$0(D,Y)),filter:(B,Y={})=>F.filter(B,$0(D,Y)),defaults:(B)=>F.defaults($0(D,B)),makeRe:(B,Y={})=>F.makeRe(B,$0(D,Y)),braceExpand:(B,Y={})=>F.braceExpand(B,$0(D,Y)),match:(B,Y,J={})=>F.match(B,Y,$0(D,J)),sep:F.sep,GLOBSTAR:J0})};Z0.defaults=dz;var FB=(D,F={})=>{if(K8(D),F.nobrace||!/\{(?:(?!\{).)*\}/.test(D))return[D];return c5(D)};Z0.braceExpand=FB;var cz=(D,F={})=>new h0(D,F).makeRe();Z0.makeRe=cz;var pz=(D,F,Q={})=>{let B=new h0(F,Q);if(D=D.filter((Y)=>B.match(Y)),B.options.nonull&&!D.length)D.push(F);return D};Z0.match=pz;var s5=/[?*]|[+@!]\(.*?\)|\[|\]/,nz=(D)=>D.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class h0{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(D,F={}){if(K8(D),F=F||{},this.options=F,this.pattern=D,this.platform=F.platform||DB,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!F.windowsPathsNoEscape||F.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!F.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!F.nonegate,this.comment=!1,this.empty=!1,this.partial=!!F.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=F.windowsNoMagicRoot!==void 0?F.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let D of this.set)for(let F of D)if(typeof F!=="string")return!0;return!1}debug(...D){}make(){let D=this.pattern,F=this.options;if(!F.nocomment&&D.charAt(0)==="#"){this.comment=!0;return}if(!D){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],F.debug)this.debug=(...Y)=>console.error(...Y);this.debug(this.pattern,this.globSet);let Q=this.globSet.map((Y)=>this.slashSplit(Y));this.globParts=this.preprocess(Q),this.debug(this.pattern,this.globParts);let B=this.globParts.map((Y,J,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let C=Y[0]===""&&Y[1]===""&&(Y[2]==="?"||!s5.test(Y[2]))&&!s5.test(Y[3]),W=/^[a-z]:/i.test(Y[0]);if(C)return[...Y.slice(0,4),...Y.slice(4).map((z)=>this.parse(z))];else if(W)return[Y[0],...Y.slice(1).map((z)=>this.parse(z))]}return Y.map((C)=>this.parse(C))});if(this.debug(this.pattern,B),this.set=B.filter((Y)=>Y.indexOf(!1)===-1),this.isWindows)for(let Y=0;Y<this.set.length;Y++){let J=this.set[Y];if(J[0]===""&&J[1]===""&&this.globParts[Y][2]==="?"&&typeof J[3]==="string"&&/^[a-z]:$/i.test(J[3]))J[2]="?"}this.debug(this.pattern,this.set)}preprocess(D){if(this.options.noglobstar){for(let Q=0;Q<D.length;Q++)for(let B=0;B<D[Q].length;B++)if(D[Q][B]==="**")D[Q][B]="*"}let{optimizationLevel:F=1}=this.options;if(F>=2)D=this.firstPhasePreProcess(D),D=this.secondPhasePreProcess(D);else if(F>=1)D=this.levelOneOptimize(D);else D=this.adjascentGlobstarOptimize(D);return D}adjascentGlobstarOptimize(D){return D.map((F)=>{let Q=-1;while((Q=F.indexOf("**",Q+1))!==-1){let B=Q;while(F[B+1]==="**")B++;if(B!==Q)F.splice(Q,B-Q)}return F})}levelOneOptimize(D){return D.map((F)=>{return F=F.reduce((Q,B)=>{let Y=Q[Q.length-1];if(B==="**"&&Y==="**")return Q;if(B===".."){if(Y&&Y!==".."&&Y!=="."&&Y!=="**")return Q.pop(),Q}return Q.push(B),Q},[]),F.length===0?[""]:F})}levelTwoFileOptimize(D){if(!Array.isArray(D))D=this.slashSplit(D);let F=!1;do{if(F=!1,!this.preserveMultipleSlashes){for(let B=1;B<D.length-1;B++){let Y=D[B];if(B===1&&Y===""&&D[0]==="")continue;if(Y==="."||Y==="")F=!0,D.splice(B,1),B--}if(D[0]==="."&&D.length===2&&(D[1]==="."||D[1]===""))F=!0,D.pop()}let Q=0;while((Q=D.indexOf("..",Q+1))!==-1){let B=D[Q-1];if(B&&B!=="."&&B!==".."&&B!=="**")F=!0,D.splice(Q-1,2),Q-=2}}while(F);return D.length===0?[""]:D}firstPhasePreProcess(D){let F=!1;do{F=!1;for(let Q of D){let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let J=B;while(Q[J+1]==="**")J++;if(J>B)Q.splice(B+1,J-B);let X=Q[B+1],C=Q[B+2],W=Q[B+3];if(X!=="..")continue;if(!C||C==="."||C===".."||!W||W==="."||W==="..")continue;F=!0,Q.splice(B,1);let z=Q.slice(0);z[B]="**",D.push(z),B--}if(!this.preserveMultipleSlashes){for(let J=1;J<Q.length-1;J++){let X=Q[J];if(J===1&&X===""&&Q[0]==="")continue;if(X==="."||X==="")F=!0,Q.splice(J,1),J--}if(Q[0]==="."&&Q.length===2&&(Q[1]==="."||Q[1]===""))F=!0,Q.pop()}let Y=0;while((Y=Q.indexOf("..",Y+1))!==-1){let J=Q[Y-1];if(J&&J!=="."&&J!==".."&&J!=="**"){F=!0;let C=Y===1&&Q[Y+1]==="**"?["."]:[];if(Q.splice(Y-1,2,...C),Q.length===0)Q.push("");Y-=2}}}}while(F);return D}secondPhasePreProcess(D){for(let F=0;F<D.length-1;F++)for(let Q=F+1;Q<D.length;Q++){let B=this.partsMatch(D[F],D[Q],!this.preserveMultipleSlashes);if(B){D[F]=[],D[Q]=B;break}}return D.filter((F)=>F.length)}partsMatch(D,F,Q=!1){let B=0,Y=0,J=[],X="";while(B<D.length&&Y<F.length)if(D[B]===F[Y])J.push(X==="b"?F[Y]:D[B]),B++,Y++;else if(Q&&D[B]==="**"&&F[Y]===D[B+1])J.push(D[B]),B++;else if(Q&&F[Y]==="**"&&D[B]===F[Y+1])J.push(F[Y]),Y++;else if(D[B]==="*"&&F[Y]&&(this.options.dot||!F[Y].startsWith("."))&&F[Y]!=="**"){if(X==="b")return!1;X="a",J.push(D[B]),B++,Y++}else if(F[Y]==="*"&&D[B]&&(this.options.dot||!D[B].startsWith("."))&&D[B]!=="**"){if(X==="a")return!1;X="b",J.push(F[Y]),B++,Y++}else return!1;return D.length===F.length&&J}parseNegate(){if(this.nonegate)return;let D=this.pattern,F=!1,Q=0;for(let B=0;B<D.length&&D.charAt(B)==="!";B++)F=!F,Q++;if(Q)this.pattern=D.slice(Q);this.negate=F}matchOne(D,F,Q=!1){let B=this.options;if(this.isWindows){let A=typeof D[0]==="string"&&/^[a-z]:$/i.test(D[0]),K=!A&&D[0]===""&&D[1]===""&&D[2]==="?"&&/^[a-z]:$/i.test(D[3]),V=typeof F[0]==="string"&&/^[a-z]:$/i.test(F[0]),j=!V&&F[0]===""&&F[1]===""&&F[2]==="?"&&typeof F[3]==="string"&&/^[a-z]:$/i.test(F[3]),L=K?3:A?0:void 0,R=j?3:V?0:void 0;if(typeof L==="number"&&typeof R==="number"){let[b,k]=[D[L],F[R]];if(b.toLowerCase()===k.toLowerCase()){if(F[R]=b,R>L)F=F.slice(R);else if(L>R)D=D.slice(L)}}}let{optimizationLevel:Y=1}=this.options;if(Y>=2)D=this.levelTwoFileOptimize(D);this.debug("matchOne",this,{file:D,pattern:F}),this.debug("matchOne",D.length,F.length);for(var J=0,X=0,C=D.length,W=F.length;J<C&&X<W;J++,X++){this.debug("matchOne loop");var z=F[X],G=D[J];if(this.debug(F,z,G),z===!1)return!1;if(z===J0){this.debug("GLOBSTAR",[F,z,G]);var q=J,E=X+1;if(E===W){this.debug("** at the end");for(;J<C;J++)if(D[J]==="."||D[J]===".."||!B.dot&&D[J].charAt(0)===".")return!1;return!0}while(q<C){var U=D[q];if(this.debug(`
globstar while`,D,q,F,E,U),this.matchOne(D.slice(q),F.slice(E),Q))return this.debug("globstar found match!",q,C,U),!0;else{if(U==="."||U===".."||!B.dot&&U.charAt(0)==="."){this.debug("dot detected!",D,q,F,E);break}this.debug("globstar swallow a segment, and continue"),q++}}if(Q){if(this.debug(`
>>> no match, partial?`,D,q,F,E),q===C)return!0}return!1}let A;if(typeof z==="string")A=G===z,this.debug("string match",z,G,A);else A=z.test(G),this.debug("pattern match",z,G,A);if(!A)return!1}if(J===C&&X===W)return!0;else if(J===C)return Q;else if(X===W)return J===C-1&&D[J]==="";else throw new Error("wtf?")}braceExpand(){return FB(this.pattern,this.options)}parse(D){K8(D);let F=this.options;if(D==="**")return J0;if(D==="")return"";let Q,B=null;if(Q=D.match(Pz))B=F.dot?bz:Sz;else if(Q=D.match(Lz))B=(F.nocase?F.dot?Rz:jz:F.dot?Nz:Mz)(Q[1]);else if(Q=D.match(kz))B=(F.nocase?F.dot?xz:vz:F.dot?uz:yz)(Q);else if(Q=D.match(_z))B=F.dot?Iz:Oz;else if(Q=D.match(wz))B=Tz;let Y=Y0.fromGlob(D,this.options).toMMPattern();if(B&&typeof Y==="object")Reflect.defineProperty(Y,"test",{value:B});return Y}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let D=this.set;if(!D.length)return this.regexp=!1,this.regexp;let F=this.options,Q=F.noglobstar?$z:F.dot?hz:mz,B=new Set(F.nocase?["i"]:[]),Y=D.map((C)=>{let W=C.map((z)=>{if(z instanceof RegExp)for(let G of z.flags.split(""))B.add(G);return typeof z==="string"?nz(z):z===J0?J0:z._src});return W.forEach((z,G)=>{let q=W[G+1],E=W[G-1];if(z!==J0||E===J0)return;if(E===void 0)if(q!==void 0&&q!==J0)W[G+1]="(?:\\/|"+Q+"\\/)?"+q;else W[G]=Q;else if(q===void 0)W[G-1]=E+"(?:\\/|"+Q+")?";else if(q!==J0)W[G-1]=E+"(?:\\/|\\/"+Q+"\\/)"+q,W[G+1]=J0}),W.filter((z)=>z!==J0).join("/")}).join("|"),[J,X]=D.length>1?["(?:",")"]:["",""];if(Y="^"+J+Y+X+"$",this.negate)Y="^(?!"+Y+").+$";try{this.regexp=new RegExp(Y,[...B].join(""))}catch(C){this.regexp=!1}return this.regexp}slashSplit(D){if(this.preserveMultipleSlashes)return D.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(D))return["",...D.split(/\/+/)];else return D.split(/\/+/)}match(D,F=this.partial){if(this.debug("match",D,this.pattern),this.comment)return!1;if(this.empty)return D==="";if(D==="/"&&F)return!0;let Q=this.options;if(this.isWindows)D=D.split("\\").join("/");let B=this.slashSplit(D);this.debug(this.pattern,"split",B);let Y=this.set;this.debug(this.pattern,"set",Y);let J=B[B.length-1];if(!J)for(let X=B.length-2;!J&&X>=0;X--)J=B[X];for(let X=0;X<Y.length;X++){let C=Y[X],W=B;if(Q.matchBase&&C.length===1)W=[J];if(this.matchOne(W,C,F)){if(Q.flipNegate)return!0;return!this.negate}}if(Q.flipNegate)return!1;return this.negate}static defaults(D){return Z0.defaults(D).Minimatch}}Z0.AST=Y0;Z0.Minimatch=h0;Z0.escape=M2;Z0.unescape=t0;import{fileURLToPath as OG}from"node:url";var iz=typeof performance==="object"&&performance&&typeof performance.now==="function"?performance:Date,QB=new Set,u7=typeof process==="object"&&!!process?process:{},XB=(D,F,Q,B)=>{typeof u7.emitWarning==="function"?u7.emitWarning(D,F,Q,B):console.error(`[${Q}] ${F}: ${D}`)},I6=globalThis.AbortController,BB=globalThis.AbortSignal;if(typeof I6==="undefined"){BB=class Q{onabort;_onabort=[];reason;aborted=!1;addEventListener(B,Y){this._onabort.push(Y)}},I6=class Q{constructor(){F()}signal=new BB;abort(B){if(this.signal.aborted)return;this.signal.reason=B,this.signal.aborted=!0;for(let Y of this.signal._onabort)Y(B);this.signal.onabort?.(B)}};let D=u7.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",F=()=>{if(!D)return;D=!1,XB("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",F)}}var az=(D)=>!QB.has(D),XL=Symbol("type"),bF=(D)=>D&&D===Math.floor(D)&&D>0&&isFinite(D),YB=(D)=>!bF(D)?null:D<=Math.pow(2,8)?Uint8Array:D<=Math.pow(2,16)?Uint16Array:D<=Math.pow(2,32)?Uint32Array:D<=Number.MAX_SAFE_INTEGER?U8:null;class U8 extends Array{constructor(D){super(D);this.fill(0)}}class N2{heap;length;static#D=!1;static create(D){let F=YB(D);if(!F)return[];N2.#D=!0;let Q=new N2(D,F);return N2.#D=!1,Q}constructor(D,F){if(!N2.#D)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new F(D),this.length=0}push(D){this.heap[this.length++]=D}pop(){return this.heap[--this.length]}}class E8{#D;#F;#Y;#X;#J;#M;#V;#G;get perf(){return this.#G}ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#C;#K;#q;#W;#B;#U;#N;#L;#E;#T;#Z;#R;#I;#A;#j;#w;#H;#Q;static unsafeExposeInternals(D){return{starts:D.#I,ttls:D.#A,sizes:D.#R,keyMap:D.#q,keyList:D.#W,valList:D.#B,next:D.#U,prev:D.#N,get head(){return D.#L},get tail(){return D.#E},free:D.#T,isBackgroundFetch:(F)=>D.#z(F),backgroundFetch:(F,Q,B,Y)=>D.#d(F,Q,B,Y),moveToTail:(F)=>D.#f(F),indexes:(F)=>D.#S(F),rindexes:(F)=>D.#k(F),isStale:(F)=>D.#O(F)}}get max(){return this.#D}get maxSize(){return this.#F}get calculatedSize(){return this.#K}get size(){return this.#C}get fetchMethod(){return this.#M}get memoMethod(){return this.#V}get dispose(){return this.#Y}get onInsert(){return this.#X}get disposeAfter(){return this.#J}constructor(D){let{max:F=0,ttl:Q,ttlResolution:B=1,ttlAutopurge:Y,updateAgeOnGet:J,updateAgeOnHas:X,allowStale:C,dispose:W,onInsert:z,disposeAfter:G,noDisposeOnSet:q,noUpdateTTL:E,maxSize:U=0,maxEntrySize:A=0,sizeCalculation:K,fetchMethod:V,memoMethod:j,noDeleteOnFetchRejection:L,noDeleteOnStaleGet:R,allowStaleOnFetchRejection:b,allowStaleOnFetchAbort:k,ignoreFetchAbort:I,perf:u}=D;if(u!==void 0){if(typeof u?.now!=="function")throw new TypeError("perf option must have a now() method if specified")}if(this.#G=u??iz,F!==0&&!bF(F))throw new TypeError("max option must be a nonnegative integer");let f=F?YB(F):Array;if(!f)throw new Error("invalid max value: "+F);if(this.#D=F,this.#F=U,this.maxEntrySize=A||this.#F,this.sizeCalculation=K,this.sizeCalculation){if(!this.#F&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw new TypeError("sizeCalculation set to non-function")}if(j!==void 0&&typeof j!=="function")throw new TypeError("memoMethod must be a function if defined");if(this.#V=j,V!==void 0&&typeof V!=="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#M=V,this.#w=!!V,this.#q=new Map,this.#W=new Array(F).fill(void 0),this.#B=new Array(F).fill(void 0),this.#U=new f(F),this.#N=new f(F),this.#L=0,this.#E=0,this.#T=N2.create(F),this.#C=0,this.#K=0,typeof W==="function")this.#Y=W;if(typeof z==="function")this.#X=z;if(typeof G==="function")this.#J=G,this.#Z=[];else this.#J=void 0,this.#Z=void 0;if(this.#j=!!this.#Y,this.#Q=!!this.#X,this.#H=!!this.#J,this.noDisposeOnSet=!!q,this.noUpdateTTL=!!E,this.noDeleteOnFetchRejection=!!L,this.allowStaleOnFetchRejection=!!b,this.allowStaleOnFetchAbort=!!k,this.ignoreFetchAbort=!!I,this.maxEntrySize!==0){if(this.#F!==0){if(!bF(this.#F))throw new TypeError("maxSize must be a positive integer if specified")}if(!bF(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#g()}if(this.allowStale=!!C,this.noDeleteOnStaleGet=!!R,this.updateAgeOnGet=!!J,this.updateAgeOnHas=!!X,this.ttlResolution=bF(B)||B===0?B:1,this.ttlAutopurge=!!Y,this.ttl=Q||0,this.ttl){if(!bF(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#v()}if(this.#D===0&&this.ttl===0&&this.#F===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#D&&!this.#F){if(az("LRU_CACHE_UNBOUNDED"))QB.add("LRU_CACHE_UNBOUNDED"),XB("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",E8)}}getRemainingTTL(D){return this.#q.has(D)?1/0:0}#v(){let D=new U8(this.#D),F=new U8(this.#D);this.#A=D,this.#I=F,this.#m=(Y,J,X=this.#G.now())=>{if(F[Y]=J!==0?X:0,D[Y]=J,J!==0&&this.ttlAutopurge){let C=setTimeout(()=>{if(this.#O(Y))this.#b(this.#W[Y],"expire")},J+1);if(C.unref)C.unref()}},this.#P=(Y)=>{F[Y]=D[Y]!==0?this.#G.now():0},this.#_=(Y,J)=>{if(D[J]){let X=D[J],C=F[J];if(!X||!C)return;Y.ttl=X,Y.start=C,Y.now=Q||B();let W=Y.now-C;Y.remainingTTL=X-W}};let Q=0,B=()=>{let Y=this.#G.now();if(this.ttlResolution>0){Q=Y;let J=setTimeout(()=>Q=0,this.ttlResolution);if(J.unref)J.unref()}return Y};this.getRemainingTTL=(Y)=>{let J=this.#q.get(Y);if(J===void 0)return 0;let X=D[J],C=F[J];if(!X||!C)return 1/0;let W=(Q||B())-C;return X-W},this.#O=(Y)=>{let J=F[Y],X=D[Y];return!!X&&!!J&&(Q||B())-J>X}}#P=()=>{};#_=()=>{};#m=()=>{};#O=()=>!1;#g(){let D=new U8(this.#D);this.#K=0,this.#R=D,this.#x=(F)=>{this.#K-=D[F],D[F]=0},this.#u=(F,Q,B,Y)=>{if(this.#z(Q))return 0;if(!bF(B))if(Y){if(typeof Y!=="function")throw new TypeError("sizeCalculation must be a function");if(B=Y(Q,F),!bF(B))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return B},this.#$=(F,Q,B)=>{if(D[F]=Q,this.#F){let Y=this.#F-D[F];while(this.#K>Y)this.#y(!0)}if(this.#K+=D[F],B)B.entrySize=Q,B.totalCalculatedSize=this.#K}}#x=(D)=>{};#$=(D,F,Q)=>{};#u=(D,F,Q,B)=>{if(Q||B)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#S({allowStale:D=this.allowStale}={}){if(this.#C)for(let F=this.#E;;){if(!this.#l(F))break;if(D||!this.#O(F))yield F;if(F===this.#L)break;else F=this.#N[F]}}*#k({allowStale:D=this.allowStale}={}){if(this.#C)for(let F=this.#L;;){if(!this.#l(F))break;if(D||!this.#O(F))yield F;if(F===this.#E)break;else F=this.#U[F]}}#l(D){return D!==void 0&&this.#q.get(this.#W[D])===D}*entries(){for(let D of this.#S())if(this.#B[D]!==void 0&&this.#W[D]!==void 0&&!this.#z(this.#B[D]))yield[this.#W[D],this.#B[D]]}*rentries(){for(let D of this.#k())if(this.#B[D]!==void 0&&this.#W[D]!==void 0&&!this.#z(this.#B[D]))yield[this.#W[D],this.#B[D]]}*keys(){for(let D of this.#S()){let F=this.#W[D];if(F!==void 0&&!this.#z(this.#B[D]))yield F}}*rkeys(){for(let D of this.#k()){let F=this.#W[D];if(F!==void 0&&!this.#z(this.#B[D]))yield F}}*values(){for(let D of this.#S())if(this.#B[D]!==void 0&&!this.#z(this.#B[D]))yield this.#B[D]}*rvalues(){for(let D of this.#k())if(this.#B[D]!==void 0&&!this.#z(this.#B[D]))yield this.#B[D]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(D,F={}){for(let Q of this.#S()){let B=this.#B[Q],Y=this.#z(B)?B.__staleWhileFetching:B;if(Y===void 0)continue;if(D(Y,this.#W[Q],this))return this.get(this.#W[Q],F)}}forEach(D,F=this){for(let Q of this.#S()){let B=this.#B[Q],Y=this.#z(B)?B.__staleWhileFetching:B;if(Y===void 0)continue;D.call(F,Y,this.#W[Q],this)}}rforEach(D,F=this){for(let Q of this.#k()){let B=this.#B[Q],Y=this.#z(B)?B.__staleWhileFetching:B;if(Y===void 0)continue;D.call(F,Y,this.#W[Q],this)}}purgeStale(){let D=!1;for(let F of this.#k({allowStale:!0}))if(this.#O(F))this.#b(this.#W[F],"expire"),D=!0;return D}info(D){let F=this.#q.get(D);if(F===void 0)return;let Q=this.#B[F],B=this.#z(Q)?Q.__staleWhileFetching:Q;if(B===void 0)return;let Y={value:B};if(this.#A&&this.#I){let J=this.#A[F],X=this.#I[F];if(J&&X){let C=J-(this.#G.now()-X);Y.ttl=C,Y.start=Date.now()}}if(this.#R)Y.size=this.#R[F];return Y}dump(){let D=[];for(let F of this.#S({allowStale:!0})){let Q=this.#W[F],B=this.#B[F],Y=this.#z(B)?B.__staleWhileFetching:B;if(Y===void 0||Q===void 0)continue;let J={value:Y};if(this.#A&&this.#I){J.ttl=this.#A[F];let X=this.#G.now()-this.#I[F];J.start=Math.floor(Date.now()-X)}if(this.#R)J.size=this.#R[F];D.unshift([Q,J])}return D}load(D){this.clear();for(let[F,Q]of D){if(Q.start){let B=Date.now()-Q.start;Q.start=this.#G.now()-B}this.set(F,Q.value,Q)}}set(D,F,Q={}){if(F===void 0)return this.delete(D),this;let{ttl:B=this.ttl,start:Y,noDisposeOnSet:J=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:C}=Q,{noUpdateTTL:W=this.noUpdateTTL}=Q,z=this.#u(D,F,Q.size||0,X);if(this.maxEntrySize&&z>this.maxEntrySize){if(C)C.set="miss",C.maxEntrySizeExceeded=!0;return this.#b(D,"set"),this}let G=this.#C===0?void 0:this.#q.get(D);if(G===void 0){if(G=this.#C===0?this.#E:this.#T.length!==0?this.#T.pop():this.#C===this.#D?this.#y(!1):this.#C,this.#W[G]=D,this.#B[G]=F,this.#q.set(D,G),this.#U[this.#E]=G,this.#N[G]=this.#E,this.#E=G,this.#C++,this.#$(G,z,C),C)C.set="add";if(W=!1,this.#Q)this.#X?.(F,D,"add")}else{this.#f(G);let q=this.#B[G];if(F!==q){if(this.#w&&this.#z(q)){q.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:E}=q;if(E!==void 0&&!J){if(this.#j)this.#Y?.(E,D,"set");if(this.#H)this.#Z?.push([E,D,"set"])}}else if(!J){if(this.#j)this.#Y?.(q,D,"set");if(this.#H)this.#Z?.push([q,D,"set"])}if(this.#x(G),this.#$(G,z,C),this.#B[G]=F,C){C.set="replace";let E=q&&this.#z(q)?q.__staleWhileFetching:q;if(E!==void 0)C.oldValue=E}}else if(C)C.set="update";if(this.#Q)this.onInsert?.(F,D,F===q?"update":"replace")}if(B!==0&&!this.#A)this.#v();if(this.#A){if(!W)this.#m(G,B,Y);if(C)this.#_(C,G)}if(!J&&this.#H&&this.#Z){let q=this.#Z,E;while(E=q?.shift())this.#J?.(...E)}return this}pop(){try{while(this.#C){let D=this.#B[this.#L];if(this.#y(!0),this.#z(D)){if(D.__staleWhileFetching)return D.__staleWhileFetching}else if(D!==void 0)return D}}finally{if(this.#H&&this.#Z){let D=this.#Z,F;while(F=D?.shift())this.#J?.(...F)}}}#y(D){let F=this.#L,Q=this.#W[F],B=this.#B[F];if(this.#w&&this.#z(B))B.__abortController.abort(new Error("evicted"));else if(this.#j||this.#H){if(this.#j)this.#Y?.(B,Q,"evict");if(this.#H)this.#Z?.push([B,Q,"evict"])}if(this.#x(F),D)this.#W[F]=void 0,this.#B[F]=void 0,this.#T.push(F);if(this.#C===1)this.#L=this.#E=0,this.#T.length=0;else this.#L=this.#U[F];return this.#q.delete(Q),this.#C--,F}has(D,F={}){let{updateAgeOnHas:Q=this.updateAgeOnHas,status:B}=F,Y=this.#q.get(D);if(Y!==void 0){let J=this.#B[Y];if(this.#z(J)&&J.__staleWhileFetching===void 0)return!1;if(!this.#O(Y)){if(Q)this.#P(Y);if(B)B.has="hit",this.#_(B,Y);return!0}else if(B)B.has="stale",this.#_(B,Y)}else if(B)B.has="miss";return!1}peek(D,F={}){let{allowStale:Q=this.allowStale}=F,B=this.#q.get(D);if(B===void 0||!Q&&this.#O(B))return;let Y=this.#B[B];return this.#z(Y)?Y.__staleWhileFetching:Y}#d(D,F,Q,B){let Y=F===void 0?void 0:this.#B[F];if(this.#z(Y))return Y;let J=new I6,{signal:X}=Q;X?.addEventListener("abort",()=>J.abort(X.reason),{signal:J.signal});let C={signal:J.signal,options:Q,context:B},W=(A,K=!1)=>{let{aborted:V}=J.signal,j=Q.ignoreFetchAbort&&A!==void 0;if(Q.status)if(V&&!K){if(Q.status.fetchAborted=!0,Q.status.fetchError=J.signal.reason,j)Q.status.fetchAbortIgnored=!0}else Q.status.fetchResolved=!0;if(V&&!j&&!K)return G(J.signal.reason);let L=E;if(this.#B[F]===E)if(A===void 0)if(L.__staleWhileFetching!==void 0)this.#B[F]=L.__staleWhileFetching;else this.#b(D,"fetch");else{if(Q.status)Q.status.fetchUpdated=!0;this.set(D,A,C.options)}return A},z=(A)=>{if(Q.status)Q.status.fetchRejected=!0,Q.status.fetchError=A;return G(A)},G=(A)=>{let{aborted:K}=J.signal,V=K&&Q.allowStaleOnFetchAbort,j=V||Q.allowStaleOnFetchRejection,L=j||Q.noDeleteOnFetchRejection,R=E;if(this.#B[F]===E){if(!L||R.__staleWhileFetching===void 0)this.#b(D,"fetch");else if(!V)this.#B[F]=R.__staleWhileFetching}if(j){if(Q.status&&R.__staleWhileFetching!==void 0)Q.status.returnedStale=!0;return R.__staleWhileFetching}else if(R.__returned===R)throw A},q=(A,K)=>{let V=this.#M?.(D,Y,C);if(V&&V instanceof Promise)V.then((j)=>A(j===void 0?void 0:j),K);J.signal.addEventListener("abort",()=>{if(!Q.ignoreFetchAbort||Q.allowStaleOnFetchAbort){if(A(void 0),Q.allowStaleOnFetchAbort)A=(j)=>W(j,!0)}})};if(Q.status)Q.status.fetchDispatched=!0;let E=new Promise(q).then(W,z),U=Object.assign(E,{__abortController:J,__staleWhileFetching:Y,__returned:void 0});if(F===void 0)this.set(D,U,{...C.options,status:void 0}),F=this.#q.get(D);else this.#B[F]=U;return U}#z(D){if(!this.#w)return!1;let F=D;return!!F&&F instanceof Promise&&F.hasOwnProperty("__staleWhileFetching")&&F.__abortController instanceof I6}async fetch(D,F={}){let{allowStale:Q=this.allowStale,updateAgeOnGet:B=this.updateAgeOnGet,noDeleteOnStaleGet:Y=this.noDeleteOnStaleGet,ttl:J=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:C=0,sizeCalculation:W=this.sizeCalculation,noUpdateTTL:z=this.noUpdateTTL,noDeleteOnFetchRejection:G=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:q=this.allowStaleOnFetchRejection,ignoreFetchAbort:E=this.ignoreFetchAbort,allowStaleOnFetchAbort:U=this.allowStaleOnFetchAbort,context:A,forceRefresh:K=!1,status:V,signal:j}=F;if(!this.#w){if(V)V.fetch="get";return this.get(D,{allowStale:Q,updateAgeOnGet:B,noDeleteOnStaleGet:Y,status:V})}let L={allowStale:Q,updateAgeOnGet:B,noDeleteOnStaleGet:Y,ttl:J,noDisposeOnSet:X,size:C,sizeCalculation:W,noUpdateTTL:z,noDeleteOnFetchRejection:G,allowStaleOnFetchRejection:q,allowStaleOnFetchAbort:U,ignoreFetchAbort:E,status:V,signal:j},R=this.#q.get(D);if(R===void 0){if(V)V.fetch="miss";let b=this.#d(D,R,L,A);return b.__returned=b}else{let b=this.#B[R];if(this.#z(b)){let O=Q&&b.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",O)V.returnedStale=!0}return O?b.__staleWhileFetching:b.__returned=b}let k=this.#O(R);if(!K&&!k){if(V)V.fetch="hit";if(this.#f(R),B)this.#P(R);if(V)this.#_(V,R);return b}let I=this.#d(D,R,L,A),f=I.__staleWhileFetching!==void 0&&Q;if(V){if(V.fetch=k?"stale":"refresh",f&&k)V.returnedStale=!0}return f?I.__staleWhileFetching:I.__returned=I}}async forceFetch(D,F={}){let Q=await this.fetch(D,F);if(Q===void 0)throw new Error("fetch() returned undefined");return Q}memo(D,F={}){let Q=this.#V;if(!Q)throw new Error("no memoMethod provided to constructor");let{context:B,forceRefresh:Y,...J}=F,X=this.get(D,J);if(!Y&&X!==void 0)return X;let C=Q(D,X,{options:J,context:B});return this.set(D,C,J),C}get(D,F={}){let{allowStale:Q=this.allowStale,updateAgeOnGet:B=this.updateAgeOnGet,noDeleteOnStaleGet:Y=this.noDeleteOnStaleGet,status:J}=F,X=this.#q.get(D);if(X!==void 0){let C=this.#B[X],W=this.#z(C);if(J)this.#_(J,X);if(this.#O(X)){if(J)J.get="stale";if(!W){if(!Y)this.#b(D,"expire");if(J&&Q)J.returnedStale=!0;return Q?C:void 0}else{if(J&&Q&&C.__staleWhileFetching!==void 0)J.returnedStale=!0;return Q?C.__staleWhileFetching:void 0}}else{if(J)J.get="hit";if(W)return C.__staleWhileFetching;if(this.#f(X),B)this.#P(X);return C}}else if(J)J.get="miss"}#c(D,F){this.#N[F]=D,this.#U[D]=F}#f(D){if(D!==this.#E){if(D===this.#L)this.#L=this.#U[D];else this.#c(this.#N[D],this.#U[D]);this.#c(this.#E,D),this.#E=D}}delete(D){return this.#b(D,"delete")}#b(D,F){let Q=!1;if(this.#C!==0){let B=this.#q.get(D);if(B!==void 0)if(Q=!0,this.#C===1)this.#h(F);else{this.#x(B);let Y=this.#B[B];if(this.#z(Y))Y.__abortController.abort(new Error("deleted"));else if(this.#j||this.#H){if(this.#j)this.#Y?.(Y,D,F);if(this.#H)this.#Z?.push([Y,D,F])}if(this.#q.delete(D),this.#W[B]=void 0,this.#B[B]=void 0,B===this.#E)this.#E=this.#N[B];else if(B===this.#L)this.#L=this.#U[B];else{let J=this.#N[B];this.#U[J]=this.#U[B];let X=this.#U[B];this.#N[X]=this.#N[B]}this.#C--,this.#T.push(B)}}if(this.#H&&this.#Z?.length){let B=this.#Z,Y;while(Y=B?.shift())this.#J?.(...Y)}return Q}clear(){return this.#h("delete")}#h(D){for(let F of this.#k({allowStale:!0})){let Q=this.#B[F];if(this.#z(Q))Q.__abortController.abort(new Error("deleted"));else{let B=this.#W[F];if(this.#j)this.#Y?.(Q,B,D);if(this.#H)this.#Z?.push([Q,B,D])}}if(this.#q.clear(),this.#B.fill(void 0),this.#W.fill(void 0),this.#A&&this.#I)this.#A.fill(0),this.#I.fill(0);if(this.#R)this.#R.fill(0);if(this.#L=0,this.#E=0,this.#T.length=0,this.#K=0,this.#C=0,this.#H&&this.#Z){let F=this.#Z,Q;while(Q=F?.shift())this.#J?.(...Q)}}}import{posix as YG,win32 as p7}from"node:path";import{fileURLToPath as JG}from"node:url";import{lstatSync as CG,readdir as WG,readdirSync as zG,readlinkSync as GG,realpathSync as qG}from"fs";import*as KG from"node:fs";import{lstat as UG,readdir as EG,readlink as ZG,realpath as AG}from"node:fs/promises";import{EventEmitter as m7}from"node:events";import GB from"node:stream";import{StringDecoder as rz}from"node:string_decoder";var JB=typeof process==="object"&&process?process:{stdout:null,stderr:null},oz=(D)=>!!D&&typeof D==="object"&&(D instanceof oF||D instanceof GB||sz(D)||tz(D)),sz=(D)=>!!D&&typeof D==="object"&&D instanceof m7&&typeof D.pipe==="function"&&D.pipe!==GB.Writable.prototype.pipe,tz=(D)=>!!D&&typeof D==="object"&&D instanceof m7&&typeof D.write==="function"&&typeof D.end==="function",MF=Symbol("EOF"),NF=Symbol("maybeEmitEnd"),kF=Symbol("emittedEnd"),w6=Symbol("emittingEnd"),Z8=Symbol("emittedError"),T6=Symbol("closed"),CB=Symbol("read"),P6=Symbol("flush"),WB=Symbol("flushChunk"),e0=Symbol("encoding"),j2=Symbol("decoder"),D0=Symbol("flowing"),A8=Symbol("paused"),R2=Symbol("resume"),F0=Symbol("buffer"),A0=Symbol("pipes"),B0=Symbol("bufferLength"),y7=Symbol("bufferPush"),S6=Symbol("bufferShift"),G0=Symbol("objectMode"),rD=Symbol("destroyed"),f7=Symbol("error"),g7=Symbol("emitData"),zB=Symbol("emitEnd"),$7=Symbol("emitEnd2"),zF=Symbol("async"),h7=Symbol("abort"),b6=Symbol("aborted"),V8=Symbol("signal"),rF=Symbol("dataListeners"),S0=Symbol("discarded"),L8=(D)=>Promise.resolve().then(D),ez=(D)=>D(),DG=(D)=>D==="end"||D==="finish"||D==="prefinish",FG=(D)=>D instanceof ArrayBuffer||!!D&&typeof D==="object"&&D.constructor&&D.constructor.name==="ArrayBuffer"&&D.byteLength>=0,BG=(D)=>!Buffer.isBuffer(D)&&ArrayBuffer.isView(D);class l7{src;dest;opts;ondrain;constructor(D,F,Q){this.src=D,this.dest=F,this.opts=Q,this.ondrain=()=>D[R2](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(D){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class qB extends l7{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(D,F,Q){super(D,F,Q);this.proxyErrors=(B)=>F.emit("error",B),D.on("error",this.proxyErrors)}}var QG=(D)=>!!D.objectMode,XG=(D)=>!D.objectMode&&!!D.encoding&&D.encoding!=="buffer";class oF extends m7{[D0]=!1;[A8]=!1;[A0]=[];[F0]=[];[G0];[e0];[zF];[j2];[MF]=!1;[kF]=!1;[w6]=!1;[T6]=!1;[Z8]=null;[B0]=0;[rD]=!1;[V8];[b6]=!1;[rF]=0;[S0]=!1;writable=!0;readable=!0;constructor(...D){let F=D[0]||{};super();if(F.objectMode&&typeof F.encoding==="string")throw new TypeError("Encoding and objectMode may not be used together");if(QG(F))this[G0]=!0,this[e0]=null;else if(XG(F))this[e0]=F.encoding,this[G0]=!1;else this[G0]=!1,this[e0]=null;if(this[zF]=!!F.async,this[j2]=this[e0]?new rz(this[e0]):null,F&&F.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[F0]});if(F&&F.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[A0]});let{signal:Q}=F;if(Q)if(this[V8]=Q,Q.aborted)this[h7]();else Q.addEventListener("abort",()=>this[h7]())}get bufferLength(){return this[B0]}get encoding(){return this[e0]}set encoding(D){throw new Error("Encoding must be set at instantiation time")}setEncoding(D){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[G0]}set objectMode(D){throw new Error("objectMode must be set at instantiation time")}get["async"](){return this[zF]}set["async"](D){this[zF]=this[zF]||!!D}[h7](){this[b6]=!0,this.emit("abort",this[V8]?.reason),this.destroy(this[V8]?.reason)}get aborted(){return this[b6]}set aborted(D){}write(D,F,Q){if(this[b6])return!1;if(this[MF])throw new Error("write after end");if(this[rD])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof F==="function")Q=F,F="utf8";if(!F)F="utf8";let B=this[zF]?L8:ez;if(!this[G0]&&!Buffer.isBuffer(D)){if(BG(D))D=Buffer.from(D.buffer,D.byteOffset,D.byteLength);else if(FG(D))D=Buffer.from(D);else if(typeof D!=="string")throw new Error("Non-contiguous data written to non-objectMode stream")}if(this[G0]){if(this[D0]&&this[B0]!==0)this[P6](!0);if(this[D0])this.emit("data",D);else this[y7](D);if(this[B0]!==0)this.emit("readable");if(Q)B(Q);return this[D0]}if(!D.length){if(this[B0]!==0)this.emit("readable");if(Q)B(Q);return this[D0]}if(typeof D==="string"&&!(F===this[e0]&&!this[j2]?.lastNeed))D=Buffer.from(D,F);if(Buffer.isBuffer(D)&&this[e0])D=this[j2].write(D);if(this[D0]&&this[B0]!==0)this[P6](!0);if(this[D0])this.emit("data",D);else this[y7](D);if(this[B0]!==0)this.emit("readable");if(Q)B(Q);return this[D0]}read(D){if(this[rD])return null;if(this[S0]=!1,this[B0]===0||D===0||D&&D>this[B0])return this[NF](),null;if(this[G0])D=null;if(this[F0].length>1&&!this[G0])this[F0]=[this[e0]?this[F0].join(""):Buffer.concat(this[F0],this[B0])];let F=this[CB](D||null,this[F0][0]);return this[NF](),F}[CB](D,F){if(this[G0])this[S6]();else{let Q=F;if(D===Q.length||D===null)this[S6]();else if(typeof Q==="string")this[F0][0]=Q.slice(D),F=Q.slice(0,D),this[B0]-=D;else this[F0][0]=Q.subarray(D),F=Q.subarray(0,D),this[B0]-=D}if(this.emit("data",F),!this[F0].length&&!this[MF])this.emit("drain");return F}end(D,F,Q){if(typeof D==="function")Q=D,D=void 0;if(typeof F==="function")Q=F,F="utf8";if(D!==void 0)this.write(D,F);if(Q)this.once("end",Q);if(this[MF]=!0,this.writable=!1,this[D0]||!this[A8])this[NF]();return this}[R2](){if(this[rD])return;if(!this[rF]&&!this[A0].length)this[S0]=!0;if(this[A8]=!1,this[D0]=!0,this.emit("resume"),this[F0].length)this[P6]();else if(this[MF])this[NF]();else this.emit("drain")}resume(){return this[R2]()}pause(){this[D0]=!1,this[A8]=!0,this[S0]=!1}get destroyed(){return this[rD]}get flowing(){return this[D0]}get paused(){return this[A8]}[y7](D){if(this[G0])this[B0]+=1;else this[B0]+=D.length;this[F0].push(D)}[S6](){if(this[G0])this[B0]-=1;else this[B0]-=this[F0][0].length;return this[F0].shift()}[P6](D=!1){do;while(this[WB](this[S6]())&&this[F0].length);if(!D&&!this[F0].length&&!this[MF])this.emit("drain")}[WB](D){return this.emit("data",D),this[D0]}pipe(D,F){if(this[rD])return D;this[S0]=!1;let Q=this[kF];if(F=F||{},D===JB.stdout||D===JB.stderr)F.end=!1;else F.end=F.end!==!1;if(F.proxyErrors=!!F.proxyErrors,Q){if(F.end)D.end()}else if(this[A0].push(!F.proxyErrors?new l7(this,D,F):new qB(this,D,F)),this[zF])L8(()=>this[R2]());else this[R2]();return D}unpipe(D){let F=this[A0].find((Q)=>Q.dest===D);if(F){if(this[A0].length===1){if(this[D0]&&this[rF]===0)this[D0]=!1;this[A0]=[]}else this[A0].splice(this[A0].indexOf(F),1);F.unpipe()}}addListener(D,F){return this.on(D,F)}on(D,F){let Q=super.on(D,F);if(D==="data"){if(this[S0]=!1,this[rF]++,!this[A0].length&&!this[D0])this[R2]()}else if(D==="readable"&&this[B0]!==0)super.emit("readable");else if(DG(D)&&this[kF])super.emit(D),this.removeAllListeners(D);else if(D==="error"&&this[Z8]){let B=F;if(this[zF])L8(()=>B.call(this,this[Z8]));else B.call(this,this[Z8])}return Q}removeListener(D,F){return this.off(D,F)}off(D,F){let Q=super.off(D,F);if(D==="data"){if(this[rF]=this.listeners("data").length,this[rF]===0&&!this[S0]&&!this[A0].length)this[D0]=!1}return Q}removeAllListeners(D){let F=super.removeAllListeners(D);if(D==="data"||D===void 0){if(this[rF]=0,!this[S0]&&!this[A0].length)this[D0]=!1}return F}get emittedEnd(){return this[kF]}[NF](){if(!this[w6]&&!this[kF]&&!this[rD]&&this[F0].length===0&&this[MF]){if(this[w6]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[T6])this.emit("close");this[w6]=!1}}emit(D,...F){let Q=F[0];if(D!=="error"&&D!=="close"&&D!==rD&&this[rD])return!1;else if(D==="data")return!this[G0]&&!Q?!1:this[zF]?(L8(()=>this[g7](Q)),!0):this[g7](Q);else if(D==="end")return this[zB]();else if(D==="close"){if(this[T6]=!0,!this[kF]&&!this[rD])return!1;let Y=super.emit("close");return this.removeAllListeners("close"),Y}else if(D==="error"){this[Z8]=Q,super.emit(f7,Q);let Y=!this[V8]||this.listeners("error").length?super.emit("error",Q):!1;return this[NF](),Y}else if(D==="resume"){let Y=super.emit("resume");return this[NF](),Y}else if(D==="finish"||D==="prefinish"){let Y=super.emit(D);return this.removeAllListeners(D),Y}let B=super.emit(D,...F);return this[NF](),B}[g7](D){for(let Q of this[A0])if(Q.dest.write(D)===!1)this.pause();let F=this[S0]?!1:super.emit("data",D);return this[NF](),F}[zB](){if(this[kF])return!1;return this[kF]=!0,this.readable=!1,this[zF]?(L8(()=>this[$7]()),!0):this[$7]()}[$7](){if(this[j2]){let F=this[j2].end();if(F){for(let Q of this[A0])Q.dest.write(F);if(!this[S0])super.emit("data",F)}}for(let F of this[A0])F.end();let D=super.emit("end");return this.removeAllListeners("end"),D}async collect(){let D=Object.assign([],{dataLength:0});if(!this[G0])D.dataLength=0;let F=this.promise();return this.on("data",(Q)=>{if(D.push(Q),!this[G0])D.dataLength+=Q.length}),await F,D}async concat(){if(this[G0])throw new Error("cannot concat in objectMode");let D=await this.collect();return this[e0]?D.join(""):Buffer.concat(D,D.dataLength)}async promise(){return new Promise((D,F)=>{this.on(rD,()=>F(new Error("stream destroyed"))),this.on("error",(Q)=>F(Q)),this.on("end",()=>D())})}[Symbol.asyncIterator](){this[S0]=!1;let D=!1,F=async()=>{return this.pause(),D=!0,{value:void 0,done:!0}};return{next:()=>{if(D)return F();let B=this.read();if(B!==null)return Promise.resolve({done:!1,value:B});if(this[MF])return F();let Y,J,X=(G)=>{this.off("data",C),this.off("end",W),this.off(rD,z),F(),J(G)},C=(G)=>{this.off("error",X),this.off("end",W),this.off(rD,z),this.pause(),Y({value:G,done:!!this[MF]})},W=()=>{this.off("error",X),this.off("data",C),this.off(rD,z),F(),Y({done:!0,value:void 0})},z=()=>X(new Error("stream destroyed"));return new Promise((G,q)=>{J=q,Y=G,this.once(rD,z),this.once("error",X),this.once("end",W),this.once("data",C)})},throw:F,return:F,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[S0]=!1;let D=!1,F=()=>{return this.pause(),this.off(f7,F),this.off(rD,F),this.off("end",F),D=!0,{done:!0,value:void 0}},Q=()=>{if(D)return F();let B=this.read();return B===null?F():{done:!1,value:B}};return this.once("end",F),this.once(f7,F),this.once(rD,F),{next:Q,throw:F,return:F,[Symbol.iterator](){return this}}}destroy(D){if(this[rD]){if(D)this.emit("error",D);else this.emit(rD);return this}this[rD]=!0,this[S0]=!0,this[F0].length=0,this[B0]=0;let F=this;if(typeof F.close==="function"&&!this[T6])F.close();if(D)this.emit("error",D);else this.emit(rD);return this}static get isStream(){return oz}}var HG=qG.native,N8={lstatSync:CG,readdir:WG,readdirSync:zG,readlinkSync:GG,realpathSync:HG,promises:{lstat:UG,readdir:EG,readlink:ZG,realpath:AG}},ZB=(D)=>!D||D===N8||D===KG?N8:{...N8,...D,promises:{...N8.promises,...D.promises||{}}},AB=/^\\\\\?\\([a-z]:)\\?$/i,VG=(D)=>D.replace(/\//g,"\\").replace(AB,"$1\\"),LG=/[\\\/]/,l0=0,VB=1,LB=2,GF=4,MB=6,NB=8,sF=10,jB=12,m0=15,M8=~m0,d7=16,KB=32,j8=64,DF=128,k6=256,x6=512,HB=j8|DF|x6,MG=1023,c7=(D)=>D.isFile()?NB:D.isDirectory()?GF:D.isSymbolicLink()?sF:D.isCharacterDevice()?LB:D.isBlockDevice()?MB:D.isSocket()?jB:D.isFIFO()?VB:l0,UB=new Map,R8=(D)=>{let F=UB.get(D);if(F)return F;let Q=D.normalize("NFKD");return UB.set(D,Q),Q},EB=new Map,v6=(D)=>{let F=EB.get(D);if(F)return F;let Q=R8(D.toLowerCase());return EB.set(D,Q),Q};class n7 extends E8{constructor(){super({max:256})}}class RB extends E8{constructor(D=16384){super({maxSize:D,sizeCalculation:(F)=>F.length+1})}}var _B=Symbol("PathScurry setAsCwd");class V0{name;root;roots;parent;nocase;isCWD=!1;#D;#F;get dev(){return this.#F}#Y;get mode(){return this.#Y}#X;get nlink(){return this.#X}#J;get uid(){return this.#J}#M;get gid(){return this.#M}#V;get rdev(){return this.#V}#G;get blksize(){return this.#G}#C;get ino(){return this.#C}#K;get size(){return this.#K}#q;get blocks(){return this.#q}#W;get atimeMs(){return this.#W}#B;get mtimeMs(){return this.#B}#U;get ctimeMs(){return this.#U}#N;get birthtimeMs(){return this.#N}#L;get atime(){return this.#L}#E;get mtime(){return this.#E}#T;get ctime(){return this.#T}#Z;get birthtime(){return this.#Z}#R;#I;#A;#j;#w;#H;#Q;#v;#P;#_;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(D,F=l0,Q,B,Y,J,X){if(this.name=D,this.#R=Y?v6(D):R8(D),this.#Q=F&MG,this.nocase=Y,this.roots=B,this.root=Q||this,this.#v=J,this.#A=X.fullpath,this.#w=X.relative,this.#H=X.relativePosix,this.parent=X.parent,this.parent)this.#D=this.parent.#D;else this.#D=ZB(X.fs)}depth(){if(this.#I!==void 0)return this.#I;if(!this.parent)return this.#I=0;return this.#I=this.parent.depth()+1}childrenCache(){return this.#v}resolve(D){if(!D)return this;let F=this.getRootString(D),B=D.substring(F.length).split(this.splitSep);return F?this.getRoot(F).#m(B):this.#m(B)}#m(D){let F=this;for(let Q of D)F=F.child(Q);return F}children(){let D=this.#v.get(this);if(D)return D;let F=Object.assign([],{provisional:0});return this.#v.set(this,F),this.#Q&=~d7,F}child(D,F){if(D===""||D===".")return this;if(D==="..")return this.parent||this;let Q=this.children(),B=this.nocase?v6(D):R8(D);for(let C of Q)if(C.#R===B)return C;let Y=this.parent?this.sep:"",J=this.#A?this.#A+Y+D:void 0,X=this.newChild(D,l0,{...F,parent:this,fullpath:J});if(!this.canReaddir())X.#Q|=DF;return Q.push(X),X}relative(){if(this.isCWD)return"";if(this.#w!==void 0)return this.#w;let D=this.name,F=this.parent;if(!F)return this.#w=this.name;let Q=F.relative();return Q+(!Q||!F.parent?"":this.sep)+D}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let D=this.name,F=this.parent;if(!F)return this.#H=this.fullpathPosix();let Q=F.relativePosix();return Q+(!Q||!F.parent?"":"/")+D}fullpath(){if(this.#A!==void 0)return this.#A;let D=this.name,F=this.parent;if(!F)return this.#A=this.name;let B=F.fullpath()+(!F.parent?"":this.sep)+D;return this.#A=B}fullpathPosix(){if(this.#j!==void 0)return this.#j;if(this.sep==="/")return this.#j=this.fullpath();if(!this.parent){let B=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(B))return this.#j=`//?/${B}`;else return this.#j=B}let D=this.parent,F=D.fullpathPosix(),Q=F+(!F||!D.parent?"":"/")+this.name;return this.#j=Q}isUnknown(){return(this.#Q&m0)===l0}isType(D){return this[`is${D}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#Q&m0)===NB}isDirectory(){return(this.#Q&m0)===GF}isCharacterDevice(){return(this.#Q&m0)===LB}isBlockDevice(){return(this.#Q&m0)===MB}isFIFO(){return(this.#Q&m0)===VB}isSocket(){return(this.#Q&m0)===jB}isSymbolicLink(){return(this.#Q&sF)===sF}lstatCached(){return this.#Q&KB?this:void 0}readlinkCached(){return this.#P}realpathCached(){return this.#_}readdirCached(){let D=this.children();return D.slice(0,D.provisional)}canReadlink(){if(this.#P)return!0;if(!this.parent)return!1;let D=this.#Q&m0;return!(D!==l0&&D!==sF||this.#Q&k6||this.#Q&DF)}calledReaddir(){return!!(this.#Q&d7)}isENOENT(){return!!(this.#Q&DF)}isNamed(D){return!this.nocase?this.#R===R8(D):this.#R===v6(D)}async readlink(){let D=this.#P;if(D)return D;if(!this.canReadlink())return;if(!this.parent)return;try{let F=await this.#D.promises.readlink(this.fullpath()),Q=(await this.parent.realpath())?.resolve(F);if(Q)return this.#P=Q}catch(F){this.#l(F.code);return}}readlinkSync(){let D=this.#P;if(D)return D;if(!this.canReadlink())return;if(!this.parent)return;try{let F=this.#D.readlinkSync(this.fullpath()),Q=this.parent.realpathSync()?.resolve(F);if(Q)return this.#P=Q}catch(F){this.#l(F.code);return}}#O(D){this.#Q|=d7;for(let F=D.provisional;F<D.length;F++){let Q=D[F];if(Q)Q.#g()}}#g(){if(this.#Q&DF)return;this.#Q=(this.#Q|DF)&M8,this.#x()}#x(){let D=this.children();D.provisional=0;for(let F of D)F.#g()}#$(){this.#Q|=x6,this.#u()}#u(){if(this.#Q&j8)return;let D=this.#Q;if((D&m0)===GF)D&=M8;this.#Q=D|j8,this.#x()}#S(D=""){if(D==="ENOTDIR"||D==="EPERM")this.#u();else if(D==="ENOENT")this.#g();else this.children().provisional=0}#k(D=""){if(D==="ENOTDIR")this.parent.#u();else if(D==="ENOENT")this.#g()}#l(D=""){let F=this.#Q;if(F|=k6,D==="ENOENT")F|=DF;if(D==="EINVAL"||D==="UNKNOWN")F&=M8;if(this.#Q=F,D==="ENOTDIR"&&this.parent)this.parent.#u()}#y(D,F){return this.#z(D,F)||this.#d(D,F)}#d(D,F){let Q=c7(D),B=this.newChild(D.name,Q,{parent:this}),Y=B.#Q&m0;if(Y!==GF&&Y!==sF&&Y!==l0)B.#Q|=j8;return F.unshift(B),F.provisional++,B}#z(D,F){for(let Q=F.provisional;Q<F.length;Q++){let B=F[Q];if((this.nocase?v6(D.name):R8(D.name))!==B.#R)continue;return this.#c(D,B,Q,F)}}#c(D,F,Q,B){let Y=F.name;if(F.#Q=F.#Q&M8|c7(D),Y!==D.name)F.name=D.name;if(Q!==B.provisional){if(Q===B.length-1)B.pop();else B.splice(Q,1);B.unshift(F)}return B.provisional++,F}async lstat(){if((this.#Q&DF)===0)try{return this.#f(await this.#D.promises.lstat(this.fullpath())),this}catch(D){this.#k(D.code)}}lstatSync(){if((this.#Q&DF)===0)try{return this.#f(this.#D.lstatSync(this.fullpath())),this}catch(D){this.#k(D.code)}}#f(D){let{atime:F,atimeMs:Q,birthtime:B,birthtimeMs:Y,blksize:J,blocks:X,ctime:C,ctimeMs:W,dev:z,gid:G,ino:q,mode:E,mtime:U,mtimeMs:A,nlink:K,rdev:V,size:j,uid:L}=D;this.#L=F,this.#W=Q,this.#Z=B,this.#N=Y,this.#G=J,this.#q=X,this.#T=C,this.#U=W,this.#F=z,this.#M=G,this.#C=q,this.#Y=E,this.#E=U,this.#B=A,this.#X=K,this.#V=V,this.#K=j,this.#J=L;let R=c7(D);if(this.#Q=this.#Q&M8|R|KB,R!==l0&&R!==GF&&R!==sF)this.#Q|=j8}#b=[];#h=!1;#n(D){this.#h=!1;let F=this.#b.slice();this.#b.length=0,F.forEach((Q)=>Q(null,D))}readdirCB(D,F=!1){if(!this.canReaddir()){if(F)D(null,[]);else queueMicrotask(()=>D(null,[]));return}let Q=this.children();if(this.calledReaddir()){let Y=Q.slice(0,Q.provisional);if(F)D(null,Y);else queueMicrotask(()=>D(null,Y));return}if(this.#b.push(D),this.#h)return;this.#h=!0;let B=this.fullpath();this.#D.readdir(B,{withFileTypes:!0},(Y,J)=>{if(Y)this.#S(Y.code),Q.provisional=0;else{for(let X of J)this.#y(X,Q);this.#O(Q)}this.#n(Q.slice(0,Q.provisional));return})}#p;async readdir(){if(!this.canReaddir())return[];let D=this.children();if(this.calledReaddir())return D.slice(0,D.provisional);let F=this.fullpath();if(this.#p)await this.#p;else{let Q=()=>{};this.#p=new Promise((B)=>Q=B);try{for(let B of await this.#D.promises.readdir(F,{withFileTypes:!0}))this.#y(B,D);this.#O(D)}catch(B){this.#S(B.code),D.provisional=0}this.#p=void 0,Q()}return D.slice(0,D.provisional)}readdirSync(){if(!this.canReaddir())return[];let D=this.children();if(this.calledReaddir())return D.slice(0,D.provisional);let F=this.fullpath();try{for(let Q of this.#D.readdirSync(F,{withFileTypes:!0}))this.#y(Q,D);this.#O(D)}catch(Q){this.#S(Q.code),D.provisional=0}return D.slice(0,D.provisional)}canReaddir(){if(this.#Q&HB)return!1;let D=m0&this.#Q;if(!(D===l0||D===GF||D===sF))return!1;return!0}shouldWalk(D,F){return(this.#Q&GF)===GF&&!(this.#Q&HB)&&!D.has(this)&&(!F||F(this))}async realpath(){if(this.#_)return this.#_;if((x6|k6|DF)&this.#Q)return;try{let D=await this.#D.promises.realpath(this.fullpath());return this.#_=this.resolve(D)}catch(D){this.#$()}}realpathSync(){if(this.#_)return this.#_;if((x6|k6|DF)&this.#Q)return;try{let D=this.#D.realpathSync(this.fullpath());return this.#_=this.resolve(D)}catch(D){this.#$()}}[_B](D){if(D===this)return;D.isCWD=!1,this.isCWD=!0;let F=new Set([]),Q=[],B=this;while(B&&B.parent)F.add(B),B.#w=Q.join(this.sep),B.#H=Q.join("/"),B=B.parent,Q.push("..");B=D;while(B&&B.parent&&!F.has(B))B.#w=void 0,B.#H=void 0,B=B.parent}}class u6 extends V0{sep="\\";splitSep=LG;constructor(D,F=l0,Q,B,Y,J,X){super(D,F,Q,B,Y,J,X)}newChild(D,F=l0,Q={}){return new u6(D,F,this.root,this.roots,this.nocase,this.childrenCache(),Q)}getRootString(D){return p7.parse(D).root}getRoot(D){if(D=VG(D.toUpperCase()),D===this.root.name)return this.root;for(let[F,Q]of Object.entries(this.roots))if(this.sameRoot(D,F))return this.roots[D]=Q;return this.roots[D]=new _8(D,this).root}sameRoot(D,F=this.root.name){return D=D.toUpperCase().replace(/\//g,"\\").replace(AB,"$1\\"),D===F}}class y6 extends V0{splitSep="/";sep="/";constructor(D,F=l0,Q,B,Y,J,X){super(D,F,Q,B,Y,J,X)}getRootString(D){return D.startsWith("/")?"/":""}getRoot(D){return this.root}newChild(D,F=l0,Q={}){return new y6(D,F,this.root,this.roots,this.nocase,this.childrenCache(),Q)}}class i7{root;rootPath;roots;cwd;#D;#F;#Y;nocase;#X;constructor(D=process.cwd(),F,Q,{nocase:B,childrenCacheSize:Y=16384,fs:J=N8}={}){if(this.#X=ZB(J),D instanceof URL||D.startsWith("file://"))D=JG(D);let X=F.resolve(D);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#D=new n7,this.#F=new n7,this.#Y=new RB(Y);let C=X.substring(this.rootPath.length).split(Q);if(C.length===1&&!C[0])C.pop();if(B===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=B,this.root=this.newRoot(this.#X),this.roots[this.rootPath]=this.root;let W=this.root,z=C.length-1,G=F.sep,q=this.rootPath,E=!1;for(let U of C){let A=z--;W=W.child(U,{relative:new Array(A).fill("..").join(G),relativePosix:new Array(A).fill("..").join("/"),fullpath:q+=(E?"":G)+U}),E=!0}this.cwd=W}depth(D=this.cwd){if(typeof D==="string")D=this.cwd.resolve(D);return D.depth()}childrenCache(){return this.#Y}resolve(...D){let F="";for(let Y=D.length-1;Y>=0;Y--){let J=D[Y];if(!J||J===".")continue;if(F=F?`${J}/${F}`:J,this.isAbsolute(J))break}let Q=this.#D.get(F);if(Q!==void 0)return Q;let B=this.cwd.resolve(F).fullpath();return this.#D.set(F,B),B}resolvePosix(...D){let F="";for(let Y=D.length-1;Y>=0;Y--){let J=D[Y];if(!J||J===".")continue;if(F=F?`${J}/${F}`:J,this.isAbsolute(J))break}let Q=this.#F.get(F);if(Q!==void 0)return Q;let B=this.cwd.resolve(F).fullpathPosix();return this.#F.set(F,B),B}relative(D=this.cwd){if(typeof D==="string")D=this.cwd.resolve(D);return D.relative()}relativePosix(D=this.cwd){if(typeof D==="string")D=this.cwd.resolve(D);return D.relativePosix()}basename(D=this.cwd){if(typeof D==="string")D=this.cwd.resolve(D);return D.name}dirname(D=this.cwd){if(typeof D==="string")D=this.cwd.resolve(D);return(D.parent||D).fullpath()}async readdir(D=this.cwd,F={withFileTypes:!0}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;let{withFileTypes:Q}=F;if(!D.canReaddir())return[];else{let B=await D.readdir();return Q?B:B.map((Y)=>Y.name)}}readdirSync(D=this.cwd,F={withFileTypes:!0}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;let{withFileTypes:Q=!0}=F;if(!D.canReaddir())return[];else if(Q)return D.readdirSync();else return D.readdirSync().map((B)=>B.name)}async lstat(D=this.cwd){if(typeof D==="string")D=this.cwd.resolve(D);return D.lstat()}lstatSync(D=this.cwd){if(typeof D==="string")D=this.cwd.resolve(D);return D.lstatSync()}async readlink(D=this.cwd,{withFileTypes:F}={withFileTypes:!1}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D.withFileTypes,D=this.cwd;let Q=await D.readlink();return F?Q:Q?.fullpath()}readlinkSync(D=this.cwd,{withFileTypes:F}={withFileTypes:!1}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D.withFileTypes,D=this.cwd;let Q=D.readlinkSync();return F?Q:Q?.fullpath()}async realpath(D=this.cwd,{withFileTypes:F}={withFileTypes:!1}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D.withFileTypes,D=this.cwd;let Q=await D.realpath();return F?Q:Q?.fullpath()}realpathSync(D=this.cwd,{withFileTypes:F}={withFileTypes:!1}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D.withFileTypes,D=this.cwd;let Q=D.realpathSync();return F?Q:Q?.fullpath()}async walk(D=this.cwd,F={}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;let{withFileTypes:Q=!0,follow:B=!1,filter:Y,walkFilter:J}=F,X=[];if(!Y||Y(D))X.push(Q?D:D.fullpath());let C=new Set,W=(G,q)=>{C.add(G),G.readdirCB((E,U)=>{if(E)return q(E);let A=U.length;if(!A)return q();let K=()=>{if(--A===0)q()};for(let V of U){if(!Y||Y(V))X.push(Q?V:V.fullpath());if(B&&V.isSymbolicLink())V.realpath().then((j)=>j?.isUnknown()?j.lstat():j).then((j)=>j?.shouldWalk(C,J)?W(j,K):K());else if(V.shouldWalk(C,J))W(V,K);else K()}},!0)},z=D;return new Promise((G,q)=>{W(z,(E)=>{if(E)return q(E);G(X)})})}walkSync(D=this.cwd,F={}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;let{withFileTypes:Q=!0,follow:B=!1,filter:Y,walkFilter:J}=F,X=[];if(!Y||Y(D))X.push(Q?D:D.fullpath());let C=new Set([D]);for(let W of C){let z=W.readdirSync();for(let G of z){if(!Y||Y(G))X.push(Q?G:G.fullpath());let q=G;if(G.isSymbolicLink()){if(!(B&&(q=G.realpathSync())))continue;if(q.isUnknown())q.lstatSync()}if(q.shouldWalk(C,J))C.add(q)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(D=this.cwd,F={}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;return this.stream(D,F)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(D=this.cwd,F={}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;let{withFileTypes:Q=!0,follow:B=!1,filter:Y,walkFilter:J}=F;if(!Y||Y(D))yield Q?D:D.fullpath();let X=new Set([D]);for(let C of X){let W=C.readdirSync();for(let z of W){if(!Y||Y(z))yield Q?z:z.fullpath();let G=z;if(z.isSymbolicLink()){if(!(B&&(G=z.realpathSync())))continue;if(G.isUnknown())G.lstatSync()}if(G.shouldWalk(X,J))X.add(G)}}}stream(D=this.cwd,F={}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;let{withFileTypes:Q=!0,follow:B=!1,filter:Y,walkFilter:J}=F,X=new oF({objectMode:!0});if(!Y||Y(D))X.write(Q?D:D.fullpath());let C=new Set,W=[D],z=0,G=()=>{let q=!1;while(!q){let E=W.shift();if(!E){if(z===0)X.end();return}z++,C.add(E);let U=(K,V,j=!1)=>{if(K)return X.emit("error",K);if(B&&!j){let L=[];for(let R of V)if(R.isSymbolicLink())L.push(R.realpath().then((b)=>b?.isUnknown()?b.lstat():b));if(L.length){Promise.all(L).then(()=>U(null,V,!0));return}}for(let L of V)if(L&&(!Y||Y(L))){if(!X.write(Q?L:L.fullpath()))q=!0}z--;for(let L of V){let R=L.realpathCached()||L;if(R.shouldWalk(C,J))W.push(R)}if(q&&!X.flowing)X.once("drain",G);else if(!A)G()},A=!0;E.readdirCB(U,!0),A=!1}};return G(),X}streamSync(D=this.cwd,F={}){if(typeof D==="string")D=this.cwd.resolve(D);else if(!(D instanceof V0))F=D,D=this.cwd;let{withFileTypes:Q=!0,follow:B=!1,filter:Y,walkFilter:J}=F,X=new oF({objectMode:!0}),C=new Set;if(!Y||Y(D))X.write(Q?D:D.fullpath());let W=[D],z=0,G=()=>{let q=!1;while(!q){let E=W.shift();if(!E){if(z===0)X.end();return}z++,C.add(E);let U=E.readdirSync();for(let A of U)if(!Y||Y(A)){if(!X.write(Q?A:A.fullpath()))q=!0}z--;for(let A of U){let K=A;if(A.isSymbolicLink()){if(!(B&&(K=A.realpathSync())))continue;if(K.isUnknown())K.lstatSync()}if(K.shouldWalk(C,J))W.push(K)}}if(q&&!X.flowing)X.once("drain",G)};return G(),X}chdir(D=this.cwd){let F=this.cwd;this.cwd=typeof D==="string"?this.cwd.resolve(D):D,this.cwd[_B](F)}}class _8 extends i7{sep="\\";constructor(D=process.cwd(),F={}){let{nocase:Q=!0}=F;super(D,p7,"\\",{...F,nocase:Q});this.nocase=Q;for(let B=this.cwd;B;B=B.parent)B.nocase=this.nocase}parseRootPath(D){return p7.parse(D).root.toUpperCase()}newRoot(D){return new u6(this.rootPath,GF,void 0,this.roots,this.nocase,this.childrenCache(),{fs:D})}isAbsolute(D){return D.startsWith("/")||D.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(D)}}class O8 extends i7{sep="/";constructor(D=process.cwd(),F={}){let{nocase:Q=!1}=F;super(D,YG,"/",{...F,nocase:Q});this.nocase=Q}parseRootPath(D){return"/"}newRoot(D){return new y6(this.rootPath,GF,void 0,this.roots,this.nocase,this.childrenCache(),{fs:D})}isAbsolute(D){return D.startsWith("/")}}class f6 extends O8{constructor(D=process.cwd(),F={}){let{nocase:Q=!0}=F;super(D,{...F,nocase:Q})}}var ZL=process.platform==="win32"?u6:y6,OB=process.platform==="win32"?_8:process.platform==="darwin"?f6:O8;var NG=(D)=>D.length>=1,jG=(D)=>D.length>=1;class _2{#D;#F;#Y;length;#X;#J;#M;#V;#G;#C;#K=!0;constructor(D,F,Q,B){if(!NG(D))throw new TypeError("empty pattern list");if(!jG(F))throw new TypeError("empty glob list");if(F.length!==D.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=D.length,Q<0||Q>=this.length)throw new TypeError("index out of range");if(this.#D=D,this.#F=F,this.#Y=Q,this.#X=B,this.#Y===0){if(this.isUNC()){let[Y,J,X,C,...W]=this.#D,[z,G,q,E,...U]=this.#F;if(W[0]==="")W.shift(),U.shift();let A=[Y,J,X,C,""].join("/"),K=[z,G,q,E,""].join("/");this.#D=[A,...W],this.#F=[K,...U],this.length=this.#D.length}else if(this.isDrive()||this.isAbsolute()){let[Y,...J]=this.#D,[X,...C]=this.#F;if(J[0]==="")J.shift(),C.shift();let W=Y+"/",z=X+"/";this.#D=[W,...J],this.#F=[z,...C],this.length=this.#D.length}}}pattern(){return this.#D[this.#Y]}isString(){return typeof this.#D[this.#Y]==="string"}isGlobstar(){return this.#D[this.#Y]===J0}isRegExp(){return this.#D[this.#Y]instanceof RegExp}globString(){return this.#M=this.#M||(this.#Y===0?this.isAbsolute()?this.#F[0]+this.#F.slice(1).join("/"):this.#F.join("/"):this.#F.slice(this.#Y).join("/"))}hasMore(){return this.length>this.#Y+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new _2(this.#D,this.#F,this.#Y+1,this.#X),this.#J.#C=this.#C,this.#J.#G=this.#G,this.#J.#V=this.#V,this.#J}isUNC(){let D=this.#D;return this.#G!==void 0?this.#G:this.#G=this.#X==="win32"&&this.#Y===0&&D[0]===""&&D[1]===""&&typeof D[2]==="string"&&!!D[2]&&typeof D[3]==="string"&&!!D[3]}isDrive(){let D=this.#D;return this.#V!==void 0?this.#V:this.#V=this.#X==="win32"&&this.#Y===0&&this.length>1&&typeof D[0]==="string"&&/^[a-z]:$/i.test(D[0])}isAbsolute(){let D=this.#D;return this.#C!==void 0?this.#C:this.#C=D[0]===""&&D.length>1||this.isDrive()||this.isUNC()}root(){let D=this.#D[0];return typeof D==="string"&&this.isAbsolute()&&this.#Y===0?D:""}checkFollowGlobstar(){return!(this.#Y===0||!this.isGlobstar()||!this.#K)}markFollowGlobstar(){if(this.#Y===0||!this.isGlobstar()||!this.#K)return!1;return this.#K=!1,!0}}var RG=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class I8{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(D,{nobrace:F,nocase:Q,noext:B,noglobstar:Y,platform:J=RG}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=J,this.mmopts={dot:!0,nobrace:F,nocase:Q,noext:B,noglobstar:Y,optimizationLevel:2,platform:J,nocomment:!0,nonegate:!0};for(let X of D)this.add(X)}add(D){let F=new h0(D,this.mmopts);for(let Q=0;Q<F.set.length;Q++){let B=F.set[Q],Y=F.globParts[Q];if(!B||!Y)throw new Error("invalid pattern object");while(B[0]==="."&&Y[0]===".")B.shift(),Y.shift();let J=new _2(B,Y,0,this.platform),X=new h0(J.globString(),this.mmopts),C=Y[Y.length-1]==="**",W=J.isAbsolute();if(W)this.absolute.push(X);else this.relative.push(X);if(C)if(W)this.absoluteChildren.push(X);else this.relativeChildren.push(X)}}ignored(D){let F=D.fullpath(),Q=`${F}/`,B=D.relative()||".",Y=`${B}/`;for(let J of this.relative)if(J.match(B)||J.match(Y))return!0;for(let J of this.absolute)if(J.match(F)||J.match(Q))return!0;return!1}childrenIgnored(D){let F=D.fullpath()+"/",Q=(D.relative()||".")+"/";for(let B of this.relativeChildren)if(B.match(Q))return!0;for(let B of this.absoluteChildren)if(B.match(F))return!0;return!1}}class a7{store;constructor(D=new Map){this.store=D}copy(){return new a7(new Map(this.store))}hasWalked(D,F){return this.store.get(D.fullpath())?.has(F.globString())}storeWalked(D,F){let Q=D.fullpath(),B=this.store.get(Q);if(B)B.add(F.globString());else this.store.set(Q,new Set([F.globString()]))}}class IB{store=new Map;add(D,F,Q){let B=(F?2:0)|(Q?1:0),Y=this.store.get(D);this.store.set(D,Y===void 0?B:B&Y)}entries(){return[...this.store.entries()].map(([D,F])=>[D,!!(F&2),!!(F&1)])}}class wB{store=new Map;add(D,F){if(!D.canReaddir())return;let Q=this.store.get(D);if(Q){if(!Q.find((B)=>B.globString()===F.globString()))Q.push(F)}else this.store.set(D,[F])}get(D){let F=this.store.get(D);if(!F)throw new Error("attempting to walk unknown path");return F}entries(){return this.keys().map((D)=>[D,this.store.get(D)])}keys(){return[...this.store.keys()].filter((D)=>D.canReaddir())}}class w8{hasWalkedCache;matches=new IB;subwalks=new wB;patterns;follow;dot;opts;constructor(D,F){this.opts=D,this.follow=!!D.follow,this.dot=!!D.dot,this.hasWalkedCache=F?F.copy():new a7}processPatterns(D,F){this.patterns=F;let Q=F.map((B)=>[D,B]);for(let[B,Y]of Q){this.hasWalkedCache.storeWalked(B,Y);let J=Y.root(),X=Y.isAbsolute()&&this.opts.absolute!==!1;if(J){B=B.resolve(J==="/"&&this.opts.root!==void 0?this.opts.root:J);let G=Y.rest();if(!G){this.matches.add(B,!0,!1);continue}else Y=G}if(B.isENOENT())continue;let C,W,z=!1;while(typeof(C=Y.pattern())==="string"&&(W=Y.rest()))B=B.resolve(C),Y=W,z=!0;if(C=Y.pattern(),W=Y.rest(),z){if(this.hasWalkedCache.hasWalked(B,Y))continue;this.hasWalkedCache.storeWalked(B,Y)}if(typeof C==="string"){let G=C===".."||C===""||C===".";this.matches.add(B.resolve(C),X,G);continue}else if(C===J0){if(!B.isSymbolicLink()||this.follow||Y.checkFollowGlobstar())this.subwalks.add(B,Y);let G=W?.pattern(),q=W?.rest();if(!W||(G===""||G===".")&&!q)this.matches.add(B,X,G===""||G===".");else if(G===".."){let E=B.parent||B;if(!q)this.matches.add(E,X,!0);else if(!this.hasWalkedCache.hasWalked(E,q))this.subwalks.add(E,q)}}else if(C instanceof RegExp)this.subwalks.add(B,Y)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new w8(this.opts,this.hasWalkedCache)}filterEntries(D,F){let Q=this.subwalks.get(D),B=this.child();for(let Y of F)for(let J of Q){let X=J.isAbsolute(),C=J.pattern(),W=J.rest();if(C===J0)B.testGlobstar(Y,J,W,X);else if(C instanceof RegExp)B.testRegExp(Y,C,W,X);else B.testString(Y,C,W,X)}return B}testGlobstar(D,F,Q,B){if(this.dot||!D.name.startsWith(".")){if(!F.hasMore())this.matches.add(D,B,!1);if(D.canReaddir()){if(this.follow||!D.isSymbolicLink())this.subwalks.add(D,F);else if(D.isSymbolicLink()){if(Q&&F.checkFollowGlobstar())this.subwalks.add(D,Q);else if(F.markFollowGlobstar())this.subwalks.add(D,F)}}}if(Q){let Y=Q.pattern();if(typeof Y==="string"&&Y!==".."&&Y!==""&&Y!==".")this.testString(D,Y,Q.rest(),B);else if(Y===".."){let J=D.parent||D;this.subwalks.add(J,Q)}else if(Y instanceof RegExp)this.testRegExp(D,Y,Q.rest(),B)}}testRegExp(D,F,Q,B){if(!F.test(D.name))return;if(!Q)this.matches.add(D,B,!1);else this.subwalks.add(D,Q)}testString(D,F,Q,B){if(!D.isNamed(F))return;if(!Q)this.matches.add(D,B,!1);else this.subwalks.add(D,Q)}}var _G=(D,F)=>typeof D==="string"?new I8([D],F):Array.isArray(D)?new I8(D,F):D;class r7{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#D=[];#F;#Y;signal;maxDepth;includeChildMatches;constructor(D,F,Q){if(this.patterns=D,this.path=F,this.opts=Q,this.#Y=!Q.posix&&Q.platform==="win32"?"\\":"/",this.includeChildMatches=Q.includeChildMatches!==!1,Q.ignore||!this.includeChildMatches){if(this.#F=_G(Q.ignore??[],Q),!this.includeChildMatches&&typeof this.#F.add!=="function")throw new Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=Q.maxDepth||1/0,Q.signal)this.signal=Q.signal,this.signal.addEventListener("abort",()=>{this.#D.length=0})}#X(D){return this.seen.has(D)||!!this.#F?.ignored?.(D)}#J(D){return!!this.#F?.childrenIgnored?.(D)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let D=void 0;while(!this.paused&&(D=this.#D.shift()))D()}onResume(D){if(this.signal?.aborted)return;if(!this.paused)D();else this.#D.push(D)}async matchCheck(D,F){if(F&&this.opts.nodir)return;let Q;if(this.opts.realpath){if(Q=D.realpathCached()||await D.realpath(),!Q)return;D=Q}let Y=D.isUnknown()||this.opts.stat?await D.lstat():D;if(this.opts.follow&&this.opts.nodir&&Y?.isSymbolicLink()){let J=await Y.realpath();if(J&&(J.isUnknown()||this.opts.stat))await J.lstat()}return this.matchCheckTest(Y,F)}matchCheckTest(D,F){return D&&(this.maxDepth===1/0||D.depth()<=this.maxDepth)&&(!F||D.canReaddir())&&(!this.opts.nodir||!D.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!D.isSymbolicLink()||!D.realpathCached()?.isDirectory())&&!this.#X(D)?D:void 0}matchCheckSync(D,F){if(F&&this.opts.nodir)return;let Q;if(this.opts.realpath){if(Q=D.realpathCached()||D.realpathSync(),!Q)return;D=Q}let Y=D.isUnknown()||this.opts.stat?D.lstatSync():D;if(this.opts.follow&&this.opts.nodir&&Y?.isSymbolicLink()){let J=Y.realpathSync();if(J&&(J?.isUnknown()||this.opts.stat))J.lstatSync()}return this.matchCheckTest(Y,F)}matchFinish(D,F){if(this.#X(D))return;if(!this.includeChildMatches&&this.#F?.add){let Y=`${D.relativePosix()}/**`;this.#F.add(Y)}let Q=this.opts.absolute===void 0?F:this.opts.absolute;this.seen.add(D);let B=this.opts.mark&&D.isDirectory()?this.#Y:"";if(this.opts.withFileTypes)this.matchEmit(D);else if(Q){let Y=this.opts.posix?D.fullpathPosix():D.fullpath();this.matchEmit(Y+B)}else{let Y=this.opts.posix?D.relativePosix():D.relative(),J=this.opts.dotRelative&&!Y.startsWith(".."+this.#Y)?"."+this.#Y:"";this.matchEmit(!Y?"."+B:J+Y+B)}}async match(D,F,Q){let B=await this.matchCheck(D,Q);if(B)this.matchFinish(B,F)}matchSync(D,F,Q){let B=this.matchCheckSync(D,Q);if(B)this.matchFinish(B,F)}walkCB(D,F,Q){if(this.signal?.aborted)Q();this.walkCB2(D,F,new w8(this.opts),Q)}walkCB2(D,F,Q,B){if(this.#J(D))return B();if(this.signal?.aborted)B();if(this.paused){this.onResume(()=>this.walkCB2(D,F,Q,B));return}Q.processPatterns(D,F);let Y=1,J=()=>{if(--Y===0)B()};for(let[X,C,W]of Q.matches.entries()){if(this.#X(X))continue;Y++,this.match(X,C,W).then(()=>J())}for(let X of Q.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;Y++;let C=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,C,Q,J);else X.readdirCB((W,z)=>this.walkCB3(X,z,Q,J),!0)}J()}walkCB3(D,F,Q,B){Q=Q.filterEntries(D,F);let Y=1,J=()=>{if(--Y===0)B()};for(let[X,C,W]of Q.matches.entries()){if(this.#X(X))continue;Y++,this.match(X,C,W).then(()=>J())}for(let[X,C]of Q.subwalks.entries())Y++,this.walkCB2(X,C,Q.child(),J);J()}walkCBSync(D,F,Q){if(this.signal?.aborted)Q();this.walkCB2Sync(D,F,new w8(this.opts),Q)}walkCB2Sync(D,F,Q,B){if(this.#J(D))return B();if(this.signal?.aborted)B();if(this.paused){this.onResume(()=>this.walkCB2Sync(D,F,Q,B));return}Q.processPatterns(D,F);let Y=1,J=()=>{if(--Y===0)B()};for(let[X,C,W]of Q.matches.entries()){if(this.#X(X))continue;this.matchSync(X,C,W)}for(let X of Q.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;Y++;let C=X.readdirSync();this.walkCB3Sync(X,C,Q,J)}J()}walkCB3Sync(D,F,Q,B){Q=Q.filterEntries(D,F);let Y=1,J=()=>{if(--Y===0)B()};for(let[X,C,W]of Q.matches.entries()){if(this.#X(X))continue;this.matchSync(X,C,W)}for(let[X,C]of Q.subwalks.entries())Y++,this.walkCB2Sync(X,C,Q.child(),J);J()}}class g6 extends r7{matches=new Set;constructor(D,F,Q){super(D,F,Q)}matchEmit(D){this.matches.add(D)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((D,F)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)F(this.signal.reason);else D(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class $6 extends r7{results;constructor(D,F,Q){super(D,F,Q);this.results=new oF({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(D){if(this.results.write(D),!this.results.flowing)this.pause()}stream(){let D=this.path;if(D.isUnknown())D.lstat().then(()=>{this.walkCB(D,this.patterns,()=>this.results.end())});else this.walkCB(D,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var IG=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class qF{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(D,F){if(!F)throw new TypeError("glob options required");if(this.withFileTypes=!!F.withFileTypes,this.signal=F.signal,this.follow=!!F.follow,this.dot=!!F.dot,this.dotRelative=!!F.dotRelative,this.nodir=!!F.nodir,this.mark=!!F.mark,!F.cwd)this.cwd="";else if(F.cwd instanceof URL||F.cwd.startsWith("file://"))F.cwd=OG(F.cwd);if(this.cwd=F.cwd||"",this.root=F.root,this.magicalBraces=!!F.magicalBraces,this.nobrace=!!F.nobrace,this.noext=!!F.noext,this.realpath=!!F.realpath,this.absolute=F.absolute,this.includeChildMatches=F.includeChildMatches!==!1,this.noglobstar=!!F.noglobstar,this.matchBase=!!F.matchBase,this.maxDepth=typeof F.maxDepth==="number"?F.maxDepth:1/0,this.stat=!!F.stat,this.ignore=F.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof D==="string")D=[D];if(this.windowsPathsNoEscape=!!F.windowsPathsNoEscape||F.allowWindowsEscape===!1,this.windowsPathsNoEscape)D=D.map((C)=>C.replace(/\\/g,"/"));if(this.matchBase){if(F.noglobstar)throw new TypeError("base matching requires globstar");D=D.map((C)=>C.includes("/")?C:`./**/${C}`)}if(this.pattern=D,this.platform=F.platform||IG,this.opts={...F,platform:this.platform},F.scurry){if(this.scurry=F.scurry,F.nocase!==void 0&&F.nocase!==F.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let C=F.platform==="win32"?_8:F.platform==="darwin"?f6:F.platform?O8:OB;this.scurry=new C(this.cwd,{nocase:F.nocase,fs:F.fs})}this.nocase=this.scurry.nocase;let Q=this.platform==="darwin"||this.platform==="win32",B={...F,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:Q,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},Y=this.pattern.map((C)=>new h0(C,B)),[J,X]=Y.reduce((C,W)=>{return C[0].push(...W.set),C[1].push(...W.globParts),C},[[],[]]);this.patterns=J.map((C,W)=>{let z=X[W];if(!z)throw new Error("invalid pattern object");return new _2(C,z,0,this.platform)})}async walk(){return[...await new g6(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new g6(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new $6(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new $6(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var o7=(D,F={})=>{if(!Array.isArray(D))D=[D];for(let Q of D)if(new h0(Q,F).hasMagic())return!0;return!1};function m6(D,F={}){return new qF(D,F).streamSync()}function PB(D,F={}){return new qF(D,F).stream()}function SB(D,F={}){return new qF(D,F).walkSync()}async function TB(D,F={}){return new qF(D,F).walk()}function l6(D,F={}){return new qF(D,F).iterateSync()}function bB(D,F={}){return new qF(D,F).iterate()}var wG=m6,TG=Object.assign(PB,{sync:m6}),PG=l6,SG=Object.assign(bB,{sync:l6}),bG=Object.assign(SB,{stream:m6,iterate:l6}),h6=Object.assign(TB,{glob:TB,globSync:SB,sync:bG,globStream:PB,stream:TG,globStreamSync:m6,streamSync:wG,globIterate:bB,iterate:SG,globIterateSync:l6,iterateSync:PG,Glob:qF,hasMagic:o7,escape:M2,unescape:t0});h6.glob=h6;E0();async function vB(D,F={}){let Q=YD.getInstance().getTrashDirectory();if(!kB(Q))vG(Q,{recursive:!0});let B=Array.isArray(D)?D:[D];for(let Y of B){let J=await h6(Y),X=J.length>0?J:[Y];for(let C of X)try{if(!kB(C)){if(!F.force){console.error(`trash: ${C}: No such file or directory`);continue}continue}if(xG(C).isDirectory()&&!F.recursive){if(!F.force){console.error(`trash: ${C}: is a directory`);continue}}let z=yG(C),G=Date.now(),q=uG(Q,`${z}.${G}`);kG(C,q),console.log(`Moved ${z} to trash`)}catch(W){if(!F.force){let z=W instanceof Error?W.message:String(W);console.error(`trash: ${C}: ${z}`)}}}}import{readdirSync as uB,statSync as yB}from"fs";import{join as fB}from"path";E0();function fG(D){let F=D.lastIndexOf(".");if(F===-1)return{name:D,timestamp:0};let Q=parseInt(D.substring(F+1));if(isNaN(Q))return{name:D,timestamp:0};return{name:D.substring(0,F),timestamp:Q}}function xB(D){if(D===0)return"0 B";let F=1024,Q=["B","KB","MB","GB"],B=Math.floor(Math.log(D)/Math.log(F));return parseFloat((D/Math.pow(F,B)).toFixed(2))+" "+Q[B]}function gB(D){let F=0,Q=uB(D);for(let B of Q){let Y=fB(D,B),J=yB(Y);if(J.isDirectory())F+=gB(Y);else F+=J.size}return F}async function $B(){let D=YD.getInstance().getTrashDirectory();try{let F=uB(D);if(F.length===0){tD.info("\uD83D\uDDD1 Trash is empty");return}let Q=F.map((X)=>{let C=fB(D,X),W=yB(C),{name:z,timestamp:G}=fG(X),q=W.isDirectory()?gB(C):W.size;return{originalName:z,trashedName:X,size:q,trashedAt:new Date(G),isDirectory:W.isDirectory()}});Q.sort((X,C)=>C.trashedAt.getTime()-X.trashedAt.getTime()),console.log(`
\uD83D\uDDD1 Trash Contents
`),console.log("─".repeat(80));let B=0,Y=0,J=0;for(let X of Q){if(B+=X.size,X.isDirectory)Y++;else J++;let C=X.isDirectory?"\uD83D\uDCC1":"\uD83D\uDCC4",W=X.trashedAt.toLocaleString(),z=xB(X.size);console.log(`${C} ${X.originalName}`),console.log(` Size: ${z} | Trashed: ${W}`),console.log(` ID: ${X.trashedName}`),console.log()}console.log("─".repeat(80)),console.log(`Total: ${Y} folders, ${J} files (${xB(B)})`),console.log(`
To restore files: claude-mem restore`),console.log("To empty trash: claude-mem trash empty")}catch(F){if(F.code==="ENOENT")tD.info("\uD83D\uDDD1 Trash is empty");else tD.error("Failed to read trash directory"),console.error(F)}}import{rmSync as gG,readdirSync as $G,existsSync as hG,statSync as mG}from"fs";import{join as hB}from"path";E0();async function mB(D={}){let F=YD.getInstance().getTrashDirectory();if(!hG(F)){tD.info("\uD83D\uDDD1 Trash is already empty");return}try{let Q=$G(F);if(Q.length===0){tD.info("\uD83D\uDDD1 Trash is already empty");return}let B=0,Y=0;for(let X of Q){let C=hB(F,X);if(mG(C).isDirectory())B++;else Y++}if(!D.force){let X=await K2({message:`Permanently delete ${B} folders and ${Y} files from trash?`,initialValue:!1});if(u0(X)||!X){tD.info("Cancelled - trash not emptied");return}}let J=t8();J.start("Emptying trash...");for(let X of Q){let C=hB(F,X);gG(C,{recursive:!0,force:!0})}J.stop(`\uD83D\uDDD1 Trash emptied - permanently deleted ${B} folders and ${Y} files`)}catch(Q){tD.error("Failed to empty trash"),console.error(Q),process.exit(1)}}import{readdirSync as lG,renameSync as dG}from"fs";import{join as lB}from"path";E0();async function dB(){let D=YD.getInstance().getTrashDirectory(),F=lG(D);if(F.length===0){console.log("Trash is empty");return}let Q=await s8({message:"Select file to restore:",options:F.map((B)=>({value:B,label:B}))});if(u0(Q))return;dG(lB(D,Q),lB(process.cwd(),Q)),console.log(`Restored ${Q}`)}import{join as aB}from"path";import{fileURLToPath as Sq}from"url";import{setMaxListeners as bq}from"events";import{spawn as vq}from"child_process";import{createInterface as xq}from"readline";import*as zD from"fs";import{stat as uq,open as EM}from"fs/promises";var{create:cG,getPrototypeOf:pG,defineProperty:t7,getOwnPropertyNames:nG}=Object,iG=Object.prototype.hasOwnProperty,aG=(D,F,Q)=>{Q=D!=null?cG(pG(D)):{};let B=F||!D||!D.__esModule?t7(Q,"default",{value:D,enumerable:!0}):Q;for(let Y of nG(D))if(!iG.call(B,Y))t7(B,Y,{get:()=>D[Y],enumerable:!0});return B},HD=(D,F)=>()=>(F||D((F={exports:{}}).exports,F),F.exports),rG=(D,F)=>{for(var Q in F)t7(D,Q,{get:F[Q],enumerable:!0,configurable:!0,set:(B)=>F[Q]=()=>B})},oG=HD((D,F)=>{(function(Q,B){typeof D==="object"&&typeof F!=="undefined"?B(D):typeof define==="function"&&define.amd?define(["exports"],B):B(Q.URI=Q.URI||{})})(D,function(Q){function B(){for(var P=arguments.length,M=Array(P),v=0;v<P;v++)M[v]=arguments[v];if(M.length>1){M[0]=M[0].slice(0,-1);var $=M.length-1;for(var m=1;m<$;++m)M[m]=M[m].slice(1,-1);return M[$]=M[$].slice(1),M.join("")}else return M[0]}function Y(P){return"(?:"+P+")"}function J(P){return P===void 0?"undefined":P===null?"null":Object.prototype.toString.call(P).split(" ").pop().split("]").shift().toLowerCase()}function X(P){return P.toUpperCase()}function C(P){return P!==void 0&&P!==null?P instanceof Array?P:typeof P.length!=="number"||P.split||P.setInterval||P.call?[P]:Array.prototype.slice.call(P):[]}function W(P,M){var v=P;if(M)for(var $ in M)v[$]=M[$];return v}function z(P){var M="[A-Za-z]",v="[\\x0D]",$="[0-9]",m="[\\x22]",t=B($,"[A-Fa-f]"),ZD="[\\x0A]",RD="[\\x20]",wD=Y(Y("%[EFef]"+t+"%"+t+t+"%"+t+t)+"|"+Y("%[89A-Fa-f]"+t+"%"+t+t)+"|"+Y("%"+t+t)),oD="[\\:\\/\\?\\#\\[\\]\\@]",ND="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",gD=B(oD,ND),sD=P?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]",vD=P?"[\\uE000-\\uF8FF]":"[]",OD=B(M,$,"[\\-\\.\\_\\~]",sD),$D=Y(M+B(M,$,"[\\+\\-\\.]")+"*"),PD=Y(Y(wD+"|"+B(OD,ND,"[\\:]"))+"*"),fF=Y(Y("25[0-5]")+"|"+Y("2[0-4]"+$)+"|"+Y("1"+$+$)+"|"+Y("[1-9]"+$)+"|"+$),_0=Y(Y("25[0-5]")+"|"+Y("2[0-4]"+$)+"|"+Y("1"+$+$)+"|"+Y("0?[1-9]"+$)+"|0?0?"+$),v0=Y(_0+"\\."+_0+"\\."+_0+"\\."+_0),SD=Y(t+"{1,4}"),O0=Y(Y(SD+"\\:"+SD)+"|"+v0),x0=Y(Y(SD+"\\:")+"{6}"+O0),JF=Y("\\:\\:"+Y(SD+"\\:")+"{5}"+O0),gF=Y(Y(SD)+"?\\:\\:"+Y(SD+"\\:")+"{4}"+O0),EF=Y(Y(Y(SD+"\\:")+"{0,1}"+SD)+"?\\:\\:"+Y(SD+"\\:")+"{3}"+O0),p2=Y(Y(Y(SD+"\\:")+"{0,2}"+SD)+"?\\:\\:"+Y(SD+"\\:")+"{2}"+O0),$8=Y(Y(Y(SD+"\\:")+"{0,3}"+SD)+"?\\:\\:"+SD+"\\:"+O0),h8=Y(Y(Y(SD+"\\:")+"{0,4}"+SD)+"?\\:\\:"+O0),X2=Y(Y(Y(SD+"\\:")+"{0,5}"+SD)+"?\\:\\:"+SD),Y2=Y(Y(Y(SD+"\\:")+"{0,6}"+SD)+"?\\:\\:"),ZF=Y([x0,JF,gF,EF,p2,$8,h8,X2,Y2].join("|")),J2=Y(Y(OD+"|"+wD)+"+"),D1=Y(ZF+"\\%25"+J2),$F=Y(ZF+Y("\\%25|\\%(?!"+t+"{2})")+J2),zX=Y("[vV]"+t+"+\\."+B(OD,ND,"[\\:]")+"+"),GX=Y("\\["+Y($F+"|"+ZF+"|"+zX)+"\\]"),R9=Y(Y(wD+"|"+B(OD,ND))+"*"),n2=Y(GX+"|"+v0+"(?!"+R9+")|"+R9),i2=Y($+"*"),_9=Y(Y(PD+"@")+"?"+n2+Y("\\:"+i2)+"?"),a2=Y(wD+"|"+B(OD,ND,"[\\:\\@]")),qX=Y(a2+"*"),O9=Y(a2+"+"),KX=Y(Y(wD+"|"+B(OD,ND,"[\\@]"))+"+"),AF=Y(Y("\\/"+qX)+"*"),C2=Y("\\/"+Y(O9+AF)+"?"),F1=Y(KX+AF),m8=Y(O9+AF),W2="(?!"+a2+")",KU=Y(AF+"|"+C2+"|"+F1+"|"+m8+"|"+W2),z2=Y(Y(a2+"|"+B("[\\/\\?]",vD))+"*"),r2=Y(Y(a2+"|[\\/\\?]")+"*"),I9=Y(Y("\\/\\/"+_9+AF)+"|"+C2+"|"+m8+"|"+W2),HX=Y($D+"\\:"+I9+Y("\\?"+z2)+"?"+Y("\\#"+r2)+"?"),UX=Y(Y("\\/\\/"+_9+AF)+"|"+C2+"|"+F1+"|"+W2),EX=Y(UX+Y("\\?"+z2)+"?"+Y("\\#"+r2)+"?"),HU=Y(HX+"|"+EX),UU=Y($D+"\\:"+I9+Y("\\?"+z2)+"?"),EU="^("+$D+")\\:"+Y(Y("\\/\\/("+Y("("+PD+")@")+"?("+n2+")"+Y("\\:("+i2+")")+"?)")+"?("+AF+"|"+C2+"|"+m8+"|"+W2+")")+Y("\\?("+z2+")")+"?"+Y("\\#("+r2+")")+"?$",ZU="^(){0}"+Y(Y("\\/\\/("+Y("("+PD+")@")+"?("+n2+")"+Y("\\:("+i2+")")+"?)")+"?("+AF+"|"+C2+"|"+F1+"|"+W2+")")+Y("\\?("+z2+")")+"?"+Y("\\#("+r2+")")+"?$",AU="^("+$D+")\\:"+Y(Y("\\/\\/("+Y("("+PD+")@")+"?("+n2+")"+Y("\\:("+i2+")")+"?)")+"?("+AF+"|"+C2+"|"+m8+"|"+W2+")")+Y("\\?("+z2+")")+"?$",VU="^"+Y("\\#("+r2+")")+"?$",LU="^"+Y("("+PD+")@")+"?("+n2+")"+Y("\\:("+i2+")")+"?$";return{NOT_SCHEME:new RegExp(B("[^]",M,$,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(B("[^\\%\\:]",OD,ND),"g"),NOT_HOST:new RegExp(B("[^\\%\\[\\]\\:]",OD,ND),"g"),NOT_PATH:new RegExp(B("[^\\%\\/\\:\\@]",OD,ND),"g"),NOT_PATH_NOSCHEME:new RegExp(B("[^\\%\\/\\@]",OD,ND),"g"),NOT_QUERY:new RegExp(B("[^\\%]",OD,ND,"[\\:\\@\\/\\?]",vD),"g"),NOT_FRAGMENT:new RegExp(B("[^\\%]",OD,ND,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(B("[^]",OD,ND),"g"),UNRESERVED:new RegExp(OD,"g"),OTHER_CHARS:new RegExp(B("[^\\%]",OD,gD),"g"),PCT_ENCODED:new RegExp(wD,"g"),IPV4ADDRESS:new RegExp("^("+v0+")$"),IPV6ADDRESS:new RegExp("^\\[?("+ZF+")"+Y(Y("\\%25|\\%(?!"+t+"{2})")+"("+J2+")")+"?\\]?$")}}var G=z(!1),q=z(!0),E=function(){function P(M,v){var $=[],m=!0,t=!1,ZD=void 0;try{for(var RD=M[Symbol.iterator](),wD;!(m=(wD=RD.next()).done);m=!0)if($.push(wD.value),v&&$.length===v)break}catch(oD){t=!0,ZD=oD}finally{try{if(!m&&RD.return)RD.return()}finally{if(t)throw ZD}}return $}return function(M,v){if(Array.isArray(M))return M;else if(Symbol.iterator in Object(M))return P(M,v);else throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),U=function(P){if(Array.isArray(P)){for(var M=0,v=Array(P.length);M<P.length;M++)v[M]=P[M];return v}else return Array.from(P)},A=2147483647,K=36,V=1,j=26,L=38,R=700,b=72,k=128,I="-",u=/^xn--/,f=/[^\0-\x7E]/,O=/[\x2E\u3002\uFF0E\uFF61]/g,y={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},x=K-V,w=Math.floor,S=String.fromCharCode;function g(P){throw new RangeError(y[P])}function d(P,M){var v=[],$=P.length;while($--)v[$]=M(P[$]);return v}function n(P,M){var v=P.split("@"),$="";if(v.length>1)$=v[0]+"@",P=v[1];P=P.replace(O,".");var m=P.split("."),t=d(m,M).join(".");return $+t}function a(P){var M=[],v=0,$=P.length;while(v<$){var m=P.charCodeAt(v++);if(m>=55296&&m<=56319&&v<$){var t=P.charCodeAt(v++);if((t&64512)==56320)M.push(((m&1023)<<10)+(t&1023)+65536);else M.push(m),v--}else M.push(m)}return M}var DD=function P(M){return String.fromCodePoint.apply(String,U(M))},o=function P(M){if(M-48<10)return M-22;if(M-65<26)return M-65;if(M-97<26)return M-97;return K},JD=function P(M,v){return M+22+75*(M<26)-((v!=0)<<5)},CD=function P(M,v,$){var m=0;M=$?w(M/R):M>>1,M+=w(M/v);for(;M>x*j>>1;m+=K)M=w(M/x);return w(m+(x+1)*M/(M+L))},FD=function P(M){var v=[],$=M.length,m=0,t=k,ZD=b,RD=M.lastIndexOf(I);if(RD<0)RD=0;for(var wD=0;wD<RD;++wD){if(M.charCodeAt(wD)>=128)g("not-basic");v.push(M.charCodeAt(wD))}for(var oD=RD>0?RD+1:0;oD<$;){var ND=m;for(var gD=1,sD=K;;sD+=K){if(oD>=$)g("invalid-input");var vD=o(M.charCodeAt(oD++));if(vD>=K||vD>w((A-m)/gD))g("overflow");m+=vD*gD;var OD=sD<=ZD?V:sD>=ZD+j?j:sD-ZD;if(vD<OD)break;var $D=K-OD;if(gD>w(A/$D))g("overflow");gD*=$D}var PD=v.length+1;if(ZD=CD(m-ND,PD,ND==0),w(m/PD)>A-t)g("overflow");t+=w(m/PD),m%=PD,v.splice(m++,0,t)}return String.fromCodePoint.apply(String,v)},MD=function P(M){var v=[];M=a(M);var $=M.length,m=k,t=0,ZD=b,RD=!0,wD=!1,oD=void 0;try{for(var ND=M[Symbol.iterator](),gD;!(RD=(gD=ND.next()).done);RD=!0){var sD=gD.value;if(sD<128)v.push(S(sD))}}catch($F){wD=!0,oD=$F}finally{try{if(!RD&&ND.return)ND.return()}finally{if(wD)throw oD}}var vD=v.length,OD=vD;if(vD)v.push(I);while(OD<$){var $D=A,PD=!0,fF=!1,_0=void 0;try{for(var v0=M[Symbol.iterator](),SD;!(PD=(SD=v0.next()).done);PD=!0){var O0=SD.value;if(O0>=m&&O0<$D)$D=O0}}catch($F){fF=!0,_0=$F}finally{try{if(!PD&&v0.return)v0.return()}finally{if(fF)throw _0}}var x0=OD+1;if($D-m>w((A-t)/x0))g("overflow");t+=($D-m)*x0,m=$D;var JF=!0,gF=!1,EF=void 0;try{for(var p2=M[Symbol.iterator](),$8;!(JF=($8=p2.next()).done);JF=!0){var h8=$8.value;if(h8<m&&++t>A)g("overflow");if(h8==m){var X2=t;for(var Y2=K;;Y2+=K){var ZF=Y2<=ZD?V:Y2>=ZD+j?j:Y2-ZD;if(X2<ZF)break;var J2=X2-ZF,D1=K-ZF;v.push(S(JD(ZF+J2%D1,0))),X2=w(J2/D1)}v.push(S(JD(X2,0))),ZD=CD(t,x0,OD==vD),t=0,++OD}}}catch($F){gF=!0,EF=$F}finally{try{if(!JF&&p2.return)p2.return()}finally{if(gF)throw EF}}++t,++m}return v.join("")},dD=function P(M){return n(M,function(v){return u.test(v)?FD(v.slice(4).toLowerCase()):v})},nD=function P(M){return n(M,function(v){return f.test(v)?"xn--"+MD(v):v})},N={version:"2.1.0",ucs2:{decode:a,encode:DD},decode:FD,encode:MD,toASCII:nD,toUnicode:dD},_={};function H(P){var M=P.charCodeAt(0),v=void 0;if(M<16)v="%0"+M.toString(16).toUpperCase();else if(M<128)v="%"+M.toString(16).toUpperCase();else if(M<2048)v="%"+(M>>6|192).toString(16).toUpperCase()+"%"+(M&63|128).toString(16).toUpperCase();else v="%"+(M>>12|224).toString(16).toUpperCase()+"%"+(M>>6&63|128).toString(16).toUpperCase()+"%"+(M&63|128).toString(16).toUpperCase();return v}function T(P){var M="",v=0,$=P.length;while(v<$){var m=parseInt(P.substr(v+1,2),16);if(m<128)M+=String.fromCharCode(m),v+=3;else if(m>=194&&m<224){if($-v>=6){var t=parseInt(P.substr(v+4,2),16);M+=String.fromCharCode((m&31)<<6|t&63)}else M+=P.substr(v,6);v+=6}else if(m>=224){if($-v>=9){var ZD=parseInt(P.substr(v+4,2),16),RD=parseInt(P.substr(v+7,2),16);M+=String.fromCharCode((m&15)<<12|(ZD&63)<<6|RD&63)}else M+=P.substr(v,9);v+=9}else M+=P.substr(v,3),v+=3}return M}function h(P,M){function v($){var m=T($);return!m.match(M.UNRESERVED)?$:m}if(P.scheme)P.scheme=String(P.scheme).replace(M.PCT_ENCODED,v).toLowerCase().replace(M.NOT_SCHEME,"");if(P.userinfo!==void 0)P.userinfo=String(P.userinfo).replace(M.PCT_ENCODED,v).replace(M.NOT_USERINFO,H).replace(M.PCT_ENCODED,X);if(P.host!==void 0)P.host=String(P.host).replace(M.PCT_ENCODED,v).toLowerCase().replace(M.NOT_HOST,H).replace(M.PCT_ENCODED,X);if(P.path!==void 0)P.path=String(P.path).replace(M.PCT_ENCODED,v).replace(P.scheme?M.NOT_PATH:M.NOT_PATH_NOSCHEME,H).replace(M.PCT_ENCODED,X);if(P.query!==void 0)P.query=String(P.query).replace(M.PCT_ENCODED,v).replace(M.NOT_QUERY,H).replace(M.PCT_ENCODED,X);if(P.fragment!==void 0)P.fragment=String(P.fragment).replace(M.PCT_ENCODED,v).replace(M.NOT_FRAGMENT,H).replace(M.PCT_ENCODED,X);return P}function c(P){return P.replace(/^0*(.*)/,"$1")||"0"}function l(P,M){var v=P.match(M.IPV4ADDRESS)||[],$=E(v,2),m=$[1];if(m)return m.split(".").map(c).join(".");else return P}function p(P,M){var v=P.match(M.IPV6ADDRESS)||[],$=E(v,3),m=$[1],t=$[2];if(m){var ZD=m.toLowerCase().split("::").reverse(),RD=E(ZD,2),wD=RD[0],oD=RD[1],ND=oD?oD.split(":").map(c):[],gD=wD.split(":").map(c),sD=M.IPV4ADDRESS.test(gD[gD.length-1]),vD=sD?7:8,OD=gD.length-vD,$D=Array(vD);for(var PD=0;PD<vD;++PD)$D[PD]=ND[PD]||gD[OD+PD]||"";if(sD)$D[vD-1]=l($D[vD-1],M);var fF=$D.reduce(function(x0,JF,gF){if(!JF||JF==="0"){var EF=x0[x0.length-1];if(EF&&EF.index+EF.length===gF)EF.length++;else x0.push({index:gF,length:1})}return x0},[]),_0=fF.sort(function(x0,JF){return JF.length-x0.length})[0],v0=void 0;if(_0&&_0.length>1){var SD=$D.slice(0,_0.index),O0=$D.slice(_0.index+_0.length);v0=SD.join(":")+"::"+O0.join(":")}else v0=$D.join(":");if(t)v0+="%"+t;return v0}else return P}var QD=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,KD="".match(/(){0}/)[1]===void 0;function WD(P){var M=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},v={},$=M.iri!==!1?q:G;if(M.reference==="suffix")P=(M.scheme?M.scheme+":":"")+"//"+P;var m=P.match(QD);if(m){if(KD){if(v.scheme=m[1],v.userinfo=m[3],v.host=m[4],v.port=parseInt(m[5],10),v.path=m[6]||"",v.query=m[7],v.fragment=m[8],isNaN(v.port))v.port=m[5]}else if(v.scheme=m[1]||void 0,v.userinfo=P.indexOf("@")!==-1?m[3]:void 0,v.host=P.indexOf("//")!==-1?m[4]:void 0,v.port=parseInt(m[5],10),v.path=m[6]||"",v.query=P.indexOf("?")!==-1?m[7]:void 0,v.fragment=P.indexOf("#")!==-1?m[8]:void 0,isNaN(v.port))v.port=P.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?m[4]:void 0;if(v.host)v.host=p(l(v.host,$),$);if(v.scheme===void 0&&v.userinfo===void 0&&v.host===void 0&&v.port===void 0&&!v.path&&v.query===void 0)v.reference="same-document";else if(v.scheme===void 0)v.reference="relative";else if(v.fragment===void 0)v.reference="absolute";else v.reference="uri";if(M.reference&&M.reference!=="suffix"&&M.reference!==v.reference)v.error=v.error||"URI is not a "+M.reference+" reference.";var t=_[(M.scheme||v.scheme||"").toLowerCase()];if(!M.unicodeSupport&&(!t||!t.unicodeSupport)){if(v.host&&(M.domainHost||t&&t.domainHost))try{v.host=N.toASCII(v.host.replace($.PCT_ENCODED,T).toLowerCase())}catch(ZD){v.error=v.error||"Host's domain name can not be converted to ASCII via punycode: "+ZD}h(v,G)}else h(v,$);if(t&&t.parse)t.parse(v,M)}else v.error=v.error||"URI can not be parsed.";return v}function AD(P,M){var v=M.iri!==!1?q:G,$=[];if(P.userinfo!==void 0)$.push(P.userinfo),$.push("@");if(P.host!==void 0)$.push(p(l(String(P.host),v),v).replace(v.IPV6ADDRESS,function(m,t,ZD){return"["+t+(ZD?"%25"+ZD:"")+"]"}));if(typeof P.port==="number"||typeof P.port==="string")$.push(":"),$.push(String(P.port));return $.length?$.join(""):void 0}var bD=/^\.\.?\//,_D=/^\/\.(\/|$)/,Q0=/^\/\.\.(\/|$)/,cD=/^\/?(?:.|\n)*?(?=\/|$)/;function H0(P){var M=[];while(P.length)if(P.match(bD))P=P.replace(bD,"");else if(P.match(_D))P=P.replace(_D,"/");else if(P.match(Q0))P=P.replace(Q0,"/"),M.pop();else if(P==="."||P==="..")P="";else{var v=P.match(cD);if(v){var $=v[0];P=P.slice($.length),M.push($)}else throw new Error("Unexpected dot segment condition")}return M.join("")}function kD(P){var M=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},v=M.iri?q:G,$=[],m=_[(M.scheme||P.scheme||"").toLowerCase()];if(m&&m.serialize)m.serialize(P,M);if(P.host){if(v.IPV6ADDRESS.test(P.host));else if(M.domainHost||m&&m.domainHost)try{P.host=!M.iri?N.toASCII(P.host.replace(v.PCT_ENCODED,T).toLowerCase()):N.toUnicode(P.host)}catch(RD){P.error=P.error||"Host's domain name can not be converted to "+(!M.iri?"ASCII":"Unicode")+" via punycode: "+RD}}if(h(P,v),M.reference!=="suffix"&&P.scheme)$.push(P.scheme),$.push(":");var t=AD(P,M);if(t!==void 0){if(M.reference!=="suffix")$.push("//");if($.push(t),P.path&&P.path.charAt(0)!=="/")$.push("/")}if(P.path!==void 0){var ZD=P.path;if(!M.absolutePath&&(!m||!m.absolutePath))ZD=H0(ZD);if(t===void 0)ZD=ZD.replace(/^\/\//,"/%2F");$.push(ZD)}if(P.query!==void 0)$.push("?"),$.push(P.query);if(P.fragment!==void 0)$.push("#"),$.push(P.fragment);return $.join("")}function eD(P,M){var v=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},$=arguments[3],m={};if(!$)P=WD(kD(P,v),v),M=WD(kD(M,v),v);if(v=v||{},!v.tolerant&&M.scheme)m.scheme=M.scheme,m.userinfo=M.userinfo,m.host=M.host,m.port=M.port,m.path=H0(M.path||""),m.query=M.query;else{if(M.userinfo!==void 0||M.host!==void 0||M.port!==void 0)m.userinfo=M.userinfo,m.host=M.host,m.port=M.port,m.path=H0(M.path||""),m.query=M.query;else{if(!M.path)if(m.path=P.path,M.query!==void 0)m.query=M.query;else m.query=P.query;else{if(M.path.charAt(0)==="/")m.path=H0(M.path);else{if((P.userinfo!==void 0||P.host!==void 0||P.port!==void 0)&&!P.path)m.path="/"+M.path;else if(!P.path)m.path=M.path;else m.path=P.path.slice(0,P.path.lastIndexOf("/")+1)+M.path;m.path=H0(m.path)}m.query=M.query}m.userinfo=P.userinfo,m.host=P.host,m.port=P.port}m.scheme=P.scheme}return m.fragment=M.fragment,m}function k0(P,M,v){var $=W({scheme:"null"},v);return kD(eD(WD(P,$),WD(M,$),$,!0),$)}function R0(P,M){if(typeof P==="string")P=kD(WD(P,M),M);else if(J(P)==="object")P=WD(kD(P,M),M);return P}function g8(P,M,v){if(typeof P==="string")P=kD(WD(P,v),v);else if(J(P)==="object")P=kD(P,v);if(typeof M==="string")M=kD(WD(M,v),v);else if(J(M)==="object")M=kD(M,v);return P===M}function t6(P,M){return P&&P.toString().replace(!M||!M.iri?G.ESCAPE:q.ESCAPE,H)}function n0(P,M){return P&&P.toString().replace(!M||!M.iri?G.PCT_ENCODED:q.PCT_ENCODED,T)}var d2={scheme:"http",domainHost:!0,parse:function P(M,v){if(!M.host)M.error=M.error||"HTTP URIs must have a host.";return M},serialize:function P(M,v){var $=String(M.scheme).toLowerCase()==="https";if(M.port===($?443:80)||M.port==="")M.port=void 0;if(!M.path)M.path="/";return M}},E9={scheme:"https",domainHost:d2.domainHost,parse:d2.parse,serialize:d2.serialize};function Z9(P){return typeof P.secure==="boolean"?P.secure:String(P.scheme).toLowerCase()==="wss"}var c2={scheme:"ws",domainHost:!0,parse:function P(M,v){var $=M;return $.secure=Z9($),$.resourceName=($.path||"/")+($.query?"?"+$.query:""),$.path=void 0,$.query=void 0,$},serialize:function P(M,v){if(M.port===(Z9(M)?443:80)||M.port==="")M.port=void 0;if(typeof M.secure==="boolean")M.scheme=M.secure?"wss":"ws",M.secure=void 0;if(M.resourceName){var $=M.resourceName.split("?"),m=E($,2),t=m[0],ZD=m[1];M.path=t&&t!=="/"?t:void 0,M.query=ZD,M.resourceName=void 0}return M.fragment=void 0,M}},A9={scheme:"wss",domainHost:c2.domainHost,parse:c2.parse,serialize:c2.serialize},sQ={},tQ=!0,V9="[A-Za-z0-9\\-\\.\\_\\~"+(tQ?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",YF="[0-9A-Fa-f]",eQ=Y(Y("%[EFef]"+YF+"%"+YF+YF+"%"+YF+YF)+"|"+Y("%[89A-Fa-f]"+YF+"%"+YF+YF)+"|"+Y("%"+YF+YF)),DX="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",FX="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",BX=B(FX,"[\\\"\\\\]"),QX="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",XX=new RegExp(V9,"g"),Q2=new RegExp(eQ,"g"),YX=new RegExp(B("[^]",DX,"[\\.]","[\\\"]",BX),"g"),L9=new RegExp(B("[^]",V9,QX),"g"),JX=L9;function e6(P){var M=T(P);return!M.match(XX)?P:M}var M9={scheme:"mailto",parse:function P(M,v){var $=M,m=$.to=$.path?$.path.split(","):[];if($.path=void 0,$.query){var t=!1,ZD={},RD=$.query.split("&");for(var wD=0,oD=RD.length;wD<oD;++wD){var ND=RD[wD].split("=");switch(ND[0]){case"to":var gD=ND[1].split(",");for(var sD=0,vD=gD.length;sD<vD;++sD)m.push(gD[sD]);break;case"subject":$.subject=n0(ND[1],v);break;case"body":$.body=n0(ND[1],v);break;default:t=!0,ZD[n0(ND[0],v)]=n0(ND[1],v);break}}if(t)$.headers=ZD}$.query=void 0;for(var OD=0,$D=m.length;OD<$D;++OD){var PD=m[OD].split("@");if(PD[0]=n0(PD[0]),!v.unicodeSupport)try{PD[1]=N.toASCII(n0(PD[1],v).toLowerCase())}catch(fF){$.error=$.error||"Email address's domain name can not be converted to ASCII via punycode: "+fF}else PD[1]=n0(PD[1],v).toLowerCase();m[OD]=PD.join("@")}return $},serialize:function P(M,v){var $=M,m=C(M.to);if(m){for(var t=0,ZD=m.length;t<ZD;++t){var RD=String(m[t]),wD=RD.lastIndexOf("@"),oD=RD.slice(0,wD).replace(Q2,e6).replace(Q2,X).replace(YX,H),ND=RD.slice(wD+1);try{ND=!v.iri?N.toASCII(n0(ND,v).toLowerCase()):N.toUnicode(ND)}catch(OD){$.error=$.error||"Email address's domain name can not be converted to "+(!v.iri?"ASCII":"Unicode")+" via punycode: "+OD}m[t]=oD+"@"+ND}$.path=m.join(",")}var gD=M.headers=M.headers||{};if(M.subject)gD.subject=M.subject;if(M.body)gD.body=M.body;var sD=[];for(var vD in gD)if(gD[vD]!==sQ[vD])sD.push(vD.replace(Q2,e6).replace(Q2,X).replace(L9,H)+"="+gD[vD].replace(Q2,e6).replace(Q2,X).replace(JX,H));if(sD.length)$.query=sD.join("&");return $}},CX=/^([^\:]+)\:(.*)/,N9={scheme:"urn",parse:function P(M,v){var $=M.path&&M.path.match(CX),m=M;if($){var t=v.scheme||m.scheme||"urn",ZD=$[1].toLowerCase(),RD=$[2],wD=t+":"+(v.nid||ZD),oD=_[wD];if(m.nid=ZD,m.nss=RD,m.path=void 0,oD)m=oD.parse(m,v)}else m.error=m.error||"URN can not be parsed.";return m},serialize:function P(M,v){var $=v.scheme||M.scheme||"urn",m=M.nid,t=$+":"+(v.nid||m),ZD=_[t];if(ZD)M=ZD.serialize(M,v);var RD=M,wD=M.nss;return RD.path=(m||v.nid)+":"+wD,RD}},WX=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,j9={scheme:"urn:uuid",parse:function P(M,v){var $=M;if($.uuid=$.nss,$.nss=void 0,!v.tolerant&&(!$.uuid||!$.uuid.match(WX)))$.error=$.error||"UUID is not valid.";return $},serialize:function P(M,v){var $=M;return $.nss=(M.uuid||"").toLowerCase(),$}};_[d2.scheme]=d2,_[E9.scheme]=E9,_[c2.scheme]=c2,_[A9.scheme]=A9,_[M9.scheme]=M9,_[N9.scheme]=N9,_[j9.scheme]=j9,Q.SCHEMES=_,Q.pctEncChar=H,Q.pctDecChars=T,Q.parse=WD,Q.removeDotSegments=H0,Q.serialize=kD,Q.resolveComponents=eD,Q.resolve=k0,Q.normalize=R0,Q.equal=g8,Q.escapeComponent=t6,Q.unescapeComponent=n0,Object.defineProperty(Q,"__esModule",{value:!0})})}),Y9=HD((D,F)=>{F.exports=function Q(B,Y){if(B===Y)return!0;if(B&&Y&&typeof B=="object"&&typeof Y=="object"){if(B.constructor!==Y.constructor)return!1;var J,X,C;if(Array.isArray(B)){if(J=B.length,J!=Y.length)return!1;for(X=J;X--!==0;)if(!Q(B[X],Y[X]))return!1;return!0}if(B.constructor===RegExp)return B.source===Y.source&&B.flags===Y.flags;if(B.valueOf!==Object.prototype.valueOf)return B.valueOf()===Y.valueOf();if(B.toString!==Object.prototype.toString)return B.toString()===Y.toString();if(C=Object.keys(B),J=C.length,J!==Object.keys(Y).length)return!1;for(X=J;X--!==0;)if(!Object.prototype.hasOwnProperty.call(Y,C[X]))return!1;for(X=J;X--!==0;){var W=C[X];if(!Q(B[W],Y[W]))return!1}return!0}return B!==B&&Y!==Y}}),sG=HD((D,F)=>{F.exports=function Q(B){var Y=0,J=B.length,X=0,C;while(X<J)if(Y++,C=B.charCodeAt(X++),C>=55296&&C<=56319&&X<J){if(C=B.charCodeAt(X),(C&64512)==56320)X++}return Y}}),m2=HD((D,F)=>{F.exports={copy:Q,checkDataType:B,checkDataTypes:Y,coerceToTypes:X,toHash:C,getProperty:G,escapeQuotes:q,equal:Y9(),ucs2length:sG(),varOccurences:E,varReplace:U,schemaHasRules:A,schemaHasRulesExcept:K,schemaUnknownRules:V,toQuotedString:j,getPathExpr:L,getPath:R,getData:I,unescapeFragment:f,unescapeJsonPointer:x,escapeFragment:O,escapeJsonPointer:y};function Q(w,S){S=S||{};for(var g in w)S[g]=w[g];return S}function B(w,S,g,d){var n=d?" !== ":" === ",a=d?" || ":" && ",DD=d?"!":"",o=d?"":"!";switch(w){case"null":return S+n+"null";case"array":return DD+"Array.isArray("+S+")";case"object":return"("+DD+S+a+"typeof "+S+n+'"object"'+a+o+"Array.isArray("+S+"))";case"integer":return"(typeof "+S+n+'"number"'+a+o+"("+S+" % 1)"+a+S+n+S+(g?a+DD+"isFinite("+S+")":"")+")";case"number":return"(typeof "+S+n+'"'+w+'"'+(g?a+DD+"isFinite("+S+")":"")+")";default:return"typeof "+S+n+'"'+w+'"'}}function Y(w,S,g){switch(w.length){case 1:return B(w[0],S,g,!0);default:var d="",n=C(w);if(n.array&&n.object)d=n.null?"(":"(!"+S+" || ",d+="typeof "+S+' !== "object")',delete n.null,delete n.array,delete n.object;if(n.number)delete n.integer;for(var a in n)d+=(d?" && ":"")+B(a,S,g,!0);return d}}var J=C(["string","number","integer","boolean","null"]);function X(w,S){if(Array.isArray(S)){var g=[];for(var d=0;d<S.length;d++){var n=S[d];if(J[n])g[g.length]=n;else if(w==="array"&&n==="array")g[g.length]=n}if(g.length)return g}else if(J[S])return[S];else if(w==="array"&&S==="array")return["array"]}function C(w){var S={};for(var g=0;g<w.length;g++)S[w[g]]=!0;return S}var W=/^[a-z$_][a-z$_0-9]*$/i,z=/'|\\/g;function G(w){return typeof w=="number"?"["+w+"]":W.test(w)?"."+w:"['"+q(w)+"']"}function q(w){return w.replace(z,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}function E(w,S){S+="[^0-9]";var g=w.match(new RegExp(S,"g"));return g?g.length:0}function U(w,S,g){return S+="([^0-9])",g=g.replace(/\$/g,"$$$$"),w.replace(new RegExp(S,"g"),g+"$1")}function A(w,S){if(typeof w=="boolean")return!w;for(var g in w)if(S[g])return!0}function K(w,S,g){if(typeof w=="boolean")return!w&&g!="not";for(var d in w)if(d!=g&&S[d])return!0}function V(w,S){if(typeof w=="boolean")return;for(var g in w)if(!S[g])return g}function j(w){return"'"+q(w)+"'"}function L(w,S,g,d){var n=g?"'/' + "+S+(d?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):d?"'[' + "+S+" + ']'":"'[\\'' + "+S+" + '\\']'";return u(w,n)}function R(w,S,g){var d=g?j("/"+y(S)):j(G(S));return u(w,d)}var b=/^\/(?:[^~]|~0|~1)*$/,k=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function I(w,S,g){var d,n,a,DD;if(w==="")return"rootData";if(w[0]=="/"){if(!b.test(w))throw new Error("Invalid JSON-pointer: "+w);n=w,a="rootData"}else{if(DD=w.match(k),!DD)throw new Error("Invalid JSON-pointer: "+w);if(d=+DD[1],n=DD[2],n=="#"){if(d>=S)throw new Error("Cannot access property/index "+d+" levels up, current level is "+S);return g[S-d]}if(d>S)throw new Error("Cannot access data "+d+" levels up, current level is "+S);if(a="data"+(S-d||""),!n)return a}var o=a,JD=n.split("/");for(var CD=0;CD<JD.length;CD++){var FD=JD[CD];if(FD)a+=G(x(FD)),o+=" && "+a}return o}function u(w,S){if(w=='""')return S;return(w+" + "+S).replace(/([^\\])' \+ '/g,"$1")}function f(w){return x(decodeURIComponent(w))}function O(w){return encodeURIComponent(y(w))}function y(w){return w.replace(/~/g,"~0").replace(/\//g,"~1")}function x(w){return w.replace(/~1/g,"/").replace(/~0/g,"~")}}),DQ=HD((D,F)=>{var Q=m2();F.exports=B;function B(Y){Q.copy(Y,this)}}),tG=HD((D,F)=>{var Q=F.exports=function(J,X,C){if(typeof X=="function")C=X,X={};C=X.cb||C;var W=typeof C=="function"?C:C.pre||function(){},z=C.post||function(){};B(X,W,z,J,"",J)};Q.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},Q.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},Q.propsKeywords={definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},Q.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function B(J,X,C,W,z,G,q,E,U,A){if(W&&typeof W=="object"&&!Array.isArray(W)){X(W,z,G,q,E,U,A);for(var K in W){var V=W[K];if(Array.isArray(V)){if(K in Q.arrayKeywords)for(var j=0;j<V.length;j++)B(J,X,C,V[j],z+"/"+K+"/"+j,G,z,K,W,j)}else if(K in Q.propsKeywords){if(V&&typeof V=="object")for(var L in V)B(J,X,C,V[L],z+"/"+K+"/"+Y(L),G,z,K,W,L)}else if(K in Q.keywords||J.allKeys&&!(K in Q.skipKeywords))B(J,X,C,V,z+"/"+K,G,z,K,W)}C(W,z,G,q,E,U,A)}}function Y(J){return J.replace(/~/g,"~0").replace(/\//g,"~1")}}),J9=HD((D,F)=>{var Q=oG(),B=Y9(),Y=m2(),J=DQ(),X=tG();F.exports=C,C.normalizeId=R,C.fullPath=V,C.url=b,C.ids=k,C.inlineRef=U,C.schema=W;function C(I,u,f){var O=this._refs[f];if(typeof O=="string")if(this._refs[O])O=this._refs[O];else return C.call(this,I,u,O);if(O=O||this._schemas[f],O instanceof J)return U(O.schema,this._opts.inlineRefs)?O.schema:O.validate||this._compile(O);var y=W.call(this,u,f),x,w,S;if(y)x=y.schema,u=y.root,S=y.baseId;if(x instanceof J)w=x.validate||I.call(this,x.schema,u,void 0,S);else if(x!==void 0)w=U(x,this._opts.inlineRefs)?x:I.call(this,x,u,void 0,S);return w}function W(I,u){var f=Q.parse(u),O=j(f),y=V(this._getId(I.schema));if(Object.keys(I.schema).length===0||O!==y){var x=R(O),w=this._refs[x];if(typeof w=="string")return z.call(this,I,w,f);else if(w instanceof J){if(!w.validate)this._compile(w);I=w}else if(w=this._schemas[x],w instanceof J){if(!w.validate)this._compile(w);if(x==R(u))return{schema:w,root:I,baseId:y};I=w}else return;if(!I.schema)return;y=V(this._getId(I.schema))}return q.call(this,f,y,I.schema,I)}function z(I,u,f){var O=W.call(this,I,u);if(O){var{schema:y,baseId:x}=O;I=O.root;var w=this._getId(y);if(w)x=b(x,w);return q.call(this,f,x,y,I)}}var G=Y.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function q(I,u,f,O){if(I.fragment=I.fragment||"",I.fragment.slice(0,1)!="/")return;var y=I.fragment.split("/");for(var x=1;x<y.length;x++){var w=y[x];if(w){if(w=Y.unescapeFragment(w),f=f[w],f===void 0)break;var S;if(!G[w]){if(S=this._getId(f),S)u=b(u,S);if(f.$ref){var g=b(u,f.$ref),d=W.call(this,O,g);if(d)f=d.schema,O=d.root,u=d.baseId}}}}if(f!==void 0&&f!==O.schema)return{schema:f,root:O,baseId:u}}var E=Y.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function U(I,u){if(u===!1)return!1;if(u===void 0||u===!0)return A(I);else if(u)return K(I)<=u}function A(I){var u;if(Array.isArray(I)){for(var f=0;f<I.length;f++)if(u=I[f],typeof u=="object"&&!A(u))return!1}else for(var O in I){if(O=="$ref")return!1;if(u=I[O],typeof u=="object"&&!A(u))return!1}return!0}function K(I){var u=0,f;if(Array.isArray(I))for(var O=0;O<I.length;O++){if(f=I[O],typeof f=="object")u+=K(f);if(u==1/0)return 1/0}else for(var y in I){if(y=="$ref")return 1/0;if(E[y])u++;else{if(f=I[y],typeof f=="object")u+=K(f)+1;if(u==1/0)return 1/0}}return u}function V(I,u){if(u!==!1)I=R(I);var f=Q.parse(I);return j(f)}function j(I){return Q.serialize(I).split("#")[0]+"#"}var L=/#\/?$/;function R(I){return I?I.replace(L,""):""}function b(I,u){return u=R(u),Q.resolve(I,u)}function k(I){var u=R(this._getId(I)),f={"":u},O={"":V(u,!1)},y={},x=this;return X(I,{allKeys:!0},function(w,S,g,d,n,a,DD){if(S==="")return;var o=x._getId(w),JD=f[d],CD=O[d]+"/"+n;if(DD!==void 0)CD+="/"+(typeof DD=="number"?DD:Y.escapeFragment(DD));if(typeof o=="string"){o=JD=R(JD?Q.resolve(JD,o):o);var FD=x._refs[o];if(typeof FD=="string")FD=x._refs[FD];if(FD&&FD.schema){if(!B(w,FD.schema))throw new Error('id "'+o+'" resolves to more than one schema')}else if(o!=R(CD))if(o[0]=="#"){if(y[o]&&!B(w,y[o]))throw new Error('id "'+o+'" resolves to more than one schema');y[o]=w}else x._refs[o]=CD}f[S]=JD,O[S]=CD}),y}}),C9=HD((D,F)=>{var Q=J9();F.exports={Validation:J(B),MissingRef:J(Y)};function B(X){this.message="validation failed",this.errors=X,this.ajv=this.validation=!0}Y.message=function(X,C){return"can't resolve reference "+C+" from id "+X};function Y(X,C,W){this.message=W||Y.message(X,C),this.missingRef=Q.url(X,C),this.missingSchema=Q.normalizeId(Q.fullPath(this.missingRef))}function J(X){return X.prototype=Object.create(Error.prototype),X.prototype.constructor=X,X}}),FQ=HD((D,F)=>{F.exports=function(Q,B){if(!B)B={};if(typeof B==="function")B={cmp:B};var Y=typeof B.cycles==="boolean"?B.cycles:!1,J=B.cmp&&function(C){return function(W){return function(z,G){var q={key:z,value:W[z]},E={key:G,value:W[G]};return C(q,E)}}}(B.cmp),X=[];return function C(W){if(W&&W.toJSON&&typeof W.toJSON==="function")W=W.toJSON();if(W===void 0)return;if(typeof W=="number")return isFinite(W)?""+W:"null";if(typeof W!=="object")return JSON.stringify(W);var z,G;if(Array.isArray(W)){G="[";for(z=0;z<W.length;z++){if(z)G+=",";G+=C(W[z])||"null"}return G+"]"}if(W===null)return"null";if(X.indexOf(W)!==-1){if(Y)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var q=X.push(W)-1,E=Object.keys(W).sort(J&&J(W));G="";for(z=0;z<E.length;z++){var U=E[z],A=C(W[U]);if(!A)continue;if(G)G+=",";G+=JSON.stringify(U)+":"+A}return X.splice(q,1),"{"+G+"}"}(Q)}}),BQ=HD((D,F)=>{F.exports=function Q(B,Y,J){var X="",C=B.schema.$async===!0,W=B.util.schemaHasRulesExcept(B.schema,B.RULES.all,"$ref"),z=B.self._getId(B.schema);if(B.opts.strictKeywords){var G=B.util.schemaUnknownRules(B.schema,B.RULES.keywords);if(G){var q="unknown keyword: "+G;if(B.opts.strictKeywords==="log")B.logger.warn(q);else throw new Error(q)}}if(B.isTop){if(X+=" var validate = ",C)B.async=!0,X+="async ";if(X+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",z&&(B.opts.sourceCode||B.opts.processCode))X+=" "+("/*# sourceURL="+z+" */")+" "}if(typeof B.schema=="boolean"||!(W||B.schema.$ref)){var Y="false schema",E=B.level,U=B.dataLevel,A=B.schema[Y],K=B.schemaPath+B.util.getProperty(Y),V=B.errSchemaPath+"/"+Y,u=!B.opts.allErrors,y,j="data"+(U||""),I="valid"+E;if(B.schema===!1){if(B.isTop)u=!0;else X+=" var "+I+" = false; ";var L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(y||"false schema")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(V)+" , params: {} ",B.opts.messages!==!1)X+=" , message: 'boolean schema is false' ";if(B.opts.verbose)X+=" , schema: false , parentSchema: validate.schema"+B.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&u)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else if(B.isTop)if(C)X+=" return data; ";else X+=" validate.errors = null; return true; ";else X+=" var "+I+" = true; ";if(B.isTop)X+=" }; return validate; ";return X}if(B.isTop){var b=B.isTop,E=B.level=0,U=B.dataLevel=0,j="data";if(B.rootId=B.resolve.fullPath(B.self._getId(B.root.schema)),B.baseId=B.baseId||B.rootId,delete B.isTop,B.dataPathArr=[""],B.schema.default!==void 0&&B.opts.useDefaults&&B.opts.strictDefaults){var k="default is ignored in the schema root";if(B.opts.strictDefaults==="log")B.logger.warn(k);else throw new Error(k)}X+=" var vErrors = null; ",X+=" var errors = 0; ",X+=" if (rootData === undefined) rootData = data; "}else{var{level:E,dataLevel:U}=B,j="data"+(U||"");if(z)B.baseId=B.resolve.url(B.baseId,z);if(C&&!B.async)throw new Error("async schema in sync schema");X+=" var errs_"+E+" = errors;"}var I="valid"+E,u=!B.opts.allErrors,f="",O="",y,x=B.schema.type,w=Array.isArray(x);if(x&&B.opts.nullable&&B.schema.nullable===!0){if(w){if(x.indexOf("null")==-1)x=x.concat("null")}else if(x!="null")x=[x,"null"],w=!0}if(w&&x.length==1)x=x[0],w=!1;if(B.schema.$ref&&W){if(B.opts.extendRefs=="fail")throw new Error('$ref: validation keywords used in schema at path "'+B.errSchemaPath+'" (see option extendRefs)');else if(B.opts.extendRefs!==!0)W=!1,B.logger.warn('$ref: keywords ignored in schema at path "'+B.errSchemaPath+'"')}if(B.schema.$comment&&B.opts.$comment)X+=" "+B.RULES.all.$comment.code(B,"$comment");if(x){if(B.opts.coerceTypes)var S=B.util.coerceToTypes(B.opts.coerceTypes,x);var g=B.RULES.types[x];if(S||w||g===!0||g&&!cD(g)){var K=B.schemaPath+".type",V=B.errSchemaPath+"/type",K=B.schemaPath+".type",V=B.errSchemaPath+"/type",d=w?"checkDataTypes":"checkDataType";if(X+=" if ("+B.util[d](x,j,B.opts.strictNumbers,!0)+") { ",S){var n="dataType"+E,a="coerced"+E;if(X+=" var "+n+" = typeof "+j+"; var "+a+" = undefined; ",B.opts.coerceTypes=="array")X+=" if ("+n+" == 'object' && Array.isArray("+j+") && "+j+".length == 1) { "+j+" = "+j+"[0]; "+n+" = typeof "+j+"; if ("+B.util.checkDataType(B.schema.type,j,B.opts.strictNumbers)+") "+a+" = "+j+"; } ";X+=" if ("+a+" !== undefined) ; ";var DD=S;if(DD){var o,JD=-1,CD=DD.length-1;while(JD<CD)if(o=DD[JD+=1],o=="string")X+=" else if ("+n+" == 'number' || "+n+" == 'boolean') "+a+" = '' + "+j+"; else if ("+j+" === null) "+a+" = ''; ";else if(o=="number"||o=="integer"){if(X+=" else if ("+n+" == 'boolean' || "+j+" === null || ("+n+" == 'string' && "+j+" && "+j+" == +"+j+" ",o=="integer")X+=" && !("+j+" % 1)";X+=")) "+a+" = +"+j+"; "}else if(o=="boolean")X+=" else if ("+j+" === 'false' || "+j+" === 0 || "+j+" === null) "+a+" = false; else if ("+j+" === 'true' || "+j+" === 1) "+a+" = true; ";else if(o=="null")X+=" else if ("+j+" === '' || "+j+" === 0 || "+j+" === false) "+a+" = null; ";else if(B.opts.coerceTypes=="array"&&o=="array")X+=" else if ("+n+" == 'string' || "+n+" == 'number' || "+n+" == 'boolean' || "+j+" == null) "+a+" = ["+j+"]; "}X+=" else { ";var L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(y||"type")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(V)+" , params: { type: '",w)X+=""+x.join(",");else X+=""+x;if(X+="' } ",B.opts.messages!==!1){if(X+=" , message: 'should be ",w)X+=""+x.join(",");else X+=""+x;X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+K+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&u)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } if ("+a+" !== undefined) { ";var FD=U?"data"+(U-1||""):"parentData",MD=U?B.dataPathArr[U]:"parentDataProperty";if(X+=" "+j+" = "+a+"; ",!U)X+="if ("+FD+" !== undefined)";X+=" "+FD+"["+MD+"] = "+a+"; } "}else{var L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(y||"type")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(V)+" , params: { type: '",w)X+=""+x.join(",");else X+=""+x;if(X+="' } ",B.opts.messages!==!1){if(X+=" , message: 'should be ",w)X+=""+x.join(",");else X+=""+x;X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+K+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&u)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}X+=" } "}}if(B.schema.$ref&&!W){if(X+=" "+B.RULES.all.$ref.code(B,"$ref")+" ",u){if(X+=" } if (errors === ",b)X+="0";else X+="errs_"+E;X+=") { ",O+="}"}}else{var dD=B.RULES;if(dD){var g,nD=-1,N=dD.length-1;while(nD<N)if(g=dD[nD+=1],cD(g)){if(g.type)X+=" if ("+B.util.checkDataType(g.type,j,B.opts.strictNumbers)+") { ";if(B.opts.useDefaults){if(g.type=="object"&&B.schema.properties){var A=B.schema.properties,_=Object.keys(A),H=_;if(H){var T,h=-1,c=H.length-1;while(h<c){T=H[h+=1];var l=A[T];if(l.default!==void 0){var p=j+B.util.getProperty(T);if(B.compositeRule){if(B.opts.strictDefaults){var k="default is ignored for: "+p;if(B.opts.strictDefaults==="log")B.logger.warn(k);else throw new Error(k)}}else{if(X+=" if ("+p+" === undefined ",B.opts.useDefaults=="empty")X+=" || "+p+" === null || "+p+" === '' ";if(X+=" ) "+p+" = ",B.opts.useDefaults=="shared")X+=" "+B.useDefault(l.default)+" ";else X+=" "+JSON.stringify(l.default)+" ";X+="; "}}}}}else if(g.type=="array"&&Array.isArray(B.schema.items)){var QD=B.schema.items;if(QD){var l,JD=-1,KD=QD.length-1;while(JD<KD)if(l=QD[JD+=1],l.default!==void 0){var p=j+"["+JD+"]";if(B.compositeRule){if(B.opts.strictDefaults){var k="default is ignored for: "+p;if(B.opts.strictDefaults==="log")B.logger.warn(k);else throw new Error(k)}}else{if(X+=" if ("+p+" === undefined ",B.opts.useDefaults=="empty")X+=" || "+p+" === null || "+p+" === '' ";if(X+=" ) "+p+" = ",B.opts.useDefaults=="shared")X+=" "+B.useDefault(l.default)+" ";else X+=" "+JSON.stringify(l.default)+" ";X+="; "}}}}}var WD=g.rules;if(WD){var AD,bD=-1,_D=WD.length-1;while(bD<_D)if(AD=WD[bD+=1],H0(AD)){var Q0=AD.code(B,AD.keyword,g.type);if(Q0){if(X+=" "+Q0+" ",u)f+="}"}}}if(u)X+=" "+f+" ",f="";if(g.type){if(X+=" } ",x&&x===g.type&&!S){X+=" else { ";var K=B.schemaPath+".type",V=B.errSchemaPath+"/type",L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(y||"type")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(V)+" , params: { type: '",w)X+=""+x.join(",");else X+=""+x;if(X+="' } ",B.opts.messages!==!1){if(X+=" , message: 'should be ",w)X+=""+x.join(",");else X+=""+x;X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+K+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&u)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } "}}if(u){if(X+=" if (errors === ",b)X+="0";else X+="errs_"+E;X+=") { ",O+="}"}}}}if(u)X+=" "+O+" ";if(b){if(C)X+=" if (errors === 0) return data; ",X+=" else throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; ",X+=" return errors === 0; ";X+=" }; return validate;"}else X+=" var "+I+" = errors === errs_"+E+";";function cD(eD){var k0=eD.rules;for(var R0=0;R0<k0.length;R0++)if(H0(k0[R0]))return!0}function H0(eD){return B.schema[eD.keyword]!==void 0||eD.implements&&kD(eD)}function kD(eD){var k0=eD.implements;for(var R0=0;R0<k0.length;R0++)if(B.schema[k0[R0]]!==void 0)return!0}return X}}),eG=HD((D,F)=>{var Q=J9(),B=m2(),Y=C9(),J=FQ(),X=BQ(),C=B.ucs2length,W=Y9(),z=Y.Validation;F.exports=G;function G(R,b,k,I){var u=this,f=this._opts,O=[void 0],y={},x=[],w={},S=[],g={},d=[];b=b||{schema:R,refVal:O,refs:y};var n=q.call(this,R,b,I),a=this._compilations[n.index];if(n.compiling)return a.callValidate=FD;var DD=this._formats,o=this.RULES;try{var JD=MD(R,b,k,I);a.validate=JD;var CD=a.callValidate;if(CD){if(CD.schema=JD.schema,CD.errors=null,CD.refs=JD.refs,CD.refVal=JD.refVal,CD.root=JD.root,CD.$async=JD.$async,f.sourceCode)CD.source=JD.source}return JD}finally{E.call(this,R,b,I)}function FD(){var l=a.validate,p=l.apply(this,arguments);return FD.errors=l.errors,p}function MD(l,p,QD,KD){var WD=!p||p&&p.schema==l;if(p.schema!=b.schema)return G.call(u,l,p,QD,KD);var AD=l.$async===!0,bD=X({isTop:!0,schema:l,isRoot:WD,baseId:KD,root:p,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:Y.MissingRef,RULES:o,validate:X,util:B,resolve:Q,resolveRef:dD,usePattern:T,useDefault:h,useCustomRule:c,opts:f,formats:DD,logger:u.logger,self:u});if(bD=L(O,V)+L(x,A)+L(S,K)+L(d,j)+bD,f.processCode)bD=f.processCode(bD,l);var _D;try{var Q0=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",bD);_D=Q0(u,o,DD,b,O,S,d,W,C,z),O[0]=_D}catch(cD){throw u.logger.error("Error compiling schema, function code:",bD),cD}if(_D.schema=l,_D.errors=null,_D.refs=y,_D.refVal=O,_D.root=WD?_D:p,AD)_D.$async=!0;if(f.sourceCode===!0)_D.source={code:bD,patterns:x,defaults:S};return _D}function dD(l,p,QD){p=Q.url(l,p);var KD=y[p],WD,AD;if(KD!==void 0)return WD=O[KD],AD="refVal["+KD+"]",H(WD,AD);if(!QD&&b.refs){var bD=b.refs[p];if(bD!==void 0)return WD=b.refVal[bD],AD=nD(p,WD),H(WD,AD)}AD=nD(p);var _D=Q.call(u,MD,b,p);if(_D===void 0){var Q0=k&&k[p];if(Q0)_D=Q.inlineRef(Q0,f.inlineRefs)?Q0:G.call(u,Q0,b,k,l)}if(_D===void 0)N(p);else return _(p,_D),H(_D,AD)}function nD(l,p){var QD=O.length;return O[QD]=p,y[l]=QD,"refVal"+QD}function N(l){delete y[l]}function _(l,p){var QD=y[l];O[QD]=p}function H(l,p){return typeof l=="object"||typeof l=="boolean"?{code:p,schema:l,inline:!0}:{code:p,$async:l&&!!l.$async}}function T(l){var p=w[l];if(p===void 0)p=w[l]=x.length,x[p]=l;return"pattern"+p}function h(l){switch(typeof l){case"boolean":case"number":return""+l;case"string":return B.toQuotedString(l);case"object":if(l===null)return"null";var p=J(l),QD=g[p];if(QD===void 0)QD=g[p]=S.length,S[QD]=l;return"default"+QD}}function c(l,p,QD,KD){if(u._opts.validateSchema!==!1){var WD=l.definition.dependencies;if(WD&&!WD.every(function(k0){return Object.prototype.hasOwnProperty.call(QD,k0)}))throw new Error("parent schema must have all required keywords: "+WD.join(","));var AD=l.definition.validateSchema;if(AD){var bD=AD(p);if(!bD){var _D="keyword schema is invalid: "+u.errorsText(AD.errors);if(u._opts.validateSchema=="log")u.logger.error(_D);else throw new Error(_D)}}}var Q0=l.definition.compile,cD=l.definition.inline,H0=l.definition.macro,kD;if(Q0)kD=Q0.call(u,p,QD,KD);else if(H0){if(kD=H0.call(u,p,QD,KD),f.validateSchema!==!1)u.validateSchema(kD,!0)}else if(cD)kD=cD.call(u,KD,l.keyword,p,QD);else if(kD=l.definition.validate,!kD)return;if(kD===void 0)throw new Error('custom keyword "'+l.keyword+'"failed to compile');var eD=d.length;return d[eD]=kD,{code:"customRule"+eD,validate:kD}}}function q(R,b,k){var I=U.call(this,R,b,k);if(I>=0)return{index:I,compiling:!0};return I=this._compilations.length,this._compilations[I]={schema:R,root:b,baseId:k},{index:I,compiling:!1}}function E(R,b,k){var I=U.call(this,R,b,k);if(I>=0)this._compilations.splice(I,1)}function U(R,b,k){for(var I=0;I<this._compilations.length;I++){var u=this._compilations[I];if(u.schema==R&&u.root==b&&u.baseId==k)return I}return-1}function A(R,b){return"var pattern"+R+" = new RegExp("+B.toQuotedString(b[R])+");"}function K(R){return"var default"+R+" = defaults["+R+"];"}function V(R,b){return b[R]===void 0?"":"var refVal"+R+" = refVal["+R+"];"}function j(R){return"var customRule"+R+" = customRules["+R+"];"}function L(R,b){if(!R.length)return"";var k="";for(var I=0;I<R.length;I++)k+=b(I,R);return k}}),Dq=HD((D,F)=>{var Q=F.exports=function B(){this._cache={}};Q.prototype.put=function B(Y,J){this._cache[Y]=J},Q.prototype.get=function B(Y){return this._cache[Y]},Q.prototype.del=function B(Y){delete this._cache[Y]},Q.prototype.clear=function B(){this._cache={}}}),Fq=HD((D,F)=>{var Q=m2(),B=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Y=[0,31,28,31,30,31,30,31,31,30,31,30,31],J=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,X=/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,C=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,W=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,z=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,G=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,q=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,E=/^(?:\/(?:[^~/]|~0|~1)*)*$/,U=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,A=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;F.exports=K;function K(O){return O=O=="full"?"full":"fast",Q.copy(K[O])}K.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":z,url:G,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:X,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:f,uuid:q,"json-pointer":E,"json-pointer-uri-fragment":U,"relative-json-pointer":A},K.full={date:j,time:L,"date-time":b,uri:I,"uri-reference":W,"uri-template":z,url:G,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:X,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:f,uuid:q,"json-pointer":E,"json-pointer-uri-fragment":U,"relative-json-pointer":A};function V(O){return O%4===0&&(O%100!==0||O%400===0)}function j(O){var y=O.match(B);if(!y)return!1;var x=+y[1],w=+y[2],S=+y[3];return w>=1&&w<=12&&S>=1&&S<=(w==2&&V(x)?29:Y[w])}function L(O,y){var x=O.match(J);if(!x)return!1;var w=x[1],S=x[2],g=x[3],d=x[5];return(w<=23&&S<=59&&g<=59||w==23&&S==59&&g==60)&&(!y||d)}var R=/t|\s/i;function b(O){var y=O.split(R);return y.length==2&&j(y[0])&&L(y[1],!0)}var k=/\/|:/;function I(O){return k.test(O)&&C.test(O)}var u=/[^\\]\\Z/;function f(O){if(u.test(O))return!1;try{return new RegExp(O),!0}catch(y){return!1}}}),Bq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.errSchemaPath+"/"+Y,q=!B.opts.allErrors,E="data"+(W||""),U="valid"+C,A,K;if(z=="#"||z=="#/")if(B.isRoot)A=B.async,K="validate";else A=B.root.schema.$async===!0,K="root.refVal[0]";else{var V=B.resolveRef(B.baseId,z,B.isRoot);if(V===void 0){var j=B.MissingRefError.message(B.baseId,z);if(B.opts.missingRefs=="fail"){B.logger.error(j);var L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(G)+" , params: { ref: '"+B.util.escapeQuotes(z)+"' } ",B.opts.messages!==!1)X+=" , message: 'can\\'t resolve reference "+B.util.escapeQuotes(z)+"' ";if(B.opts.verbose)X+=" , schema: "+B.util.toQuotedString(z)+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+E+" ";X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&q)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(q)X+=" if (false) { "}else if(B.opts.missingRefs=="ignore"){if(B.logger.warn(j),q)X+=" if (true) { "}else throw new B.MissingRefError(B.baseId,z,j)}else if(V.inline){var b=B.util.copy(B);b.level++;var k="valid"+b.level;b.schema=V.schema,b.schemaPath="",b.errSchemaPath=z;var I=B.validate(b).replace(/validate\.schema/g,V.code);if(X+=" "+I+" ",q)X+=" if ("+k+") { "}else A=V.$async===!0||B.async&&V.$async!==!1,K=V.code}if(K){var L=L||[];if(L.push(X),X="",B.opts.passContext)X+=" "+K+".call(this, ";else X+=" "+K+"( ";if(X+=" "+E+", (dataPath || '')",B.errorPath!='""')X+=" + "+B.errorPath;var u=W?"data"+(W-1||""):"parentData",f=W?B.dataPathArr[W]:"parentDataProperty";X+=" , "+u+" , "+f+", rootData) ";var O=X;if(X=L.pop(),A){if(!B.async)throw new Error("async schema referenced by sync schema");if(q)X+=" var "+U+"; ";if(X+=" try { await "+O+"; ",q)X+=" "+U+" = true; ";if(X+=" } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ",q)X+=" "+U+" = false; ";if(X+=" } ",q)X+=" if ("+U+") { "}else if(X+=" if (!"+O+") { if (vErrors === null) vErrors = "+K+".errors; else vErrors = vErrors.concat("+K+".errors); errors = vErrors.length; } ",q)X+=" else { "}return X}}),Qq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.schema[Y],W=B.schemaPath+B.util.getProperty(Y),z=B.errSchemaPath+"/"+Y,G=!B.opts.allErrors,q=B.util.copy(B),E="";q.level++;var U="valid"+q.level,A=q.baseId,K=!0,V=C;if(V){var j,L=-1,R=V.length-1;while(L<R)if(j=V[L+=1],B.opts.strictKeywords?typeof j=="object"&&Object.keys(j).length>0||j===!1:B.util.schemaHasRules(j,B.RULES.all)){if(K=!1,q.schema=j,q.schemaPath=W+"["+L+"]",q.errSchemaPath=z+"/"+L,X+=" "+B.validate(q)+" ",q.baseId=A,G)X+=" if ("+U+") { ",E+="}"}}if(G)if(K)X+=" if (true) { ";else X+=" "+E.slice(0,-1)+" ";return X}}),Xq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K="errs__"+C,V=B.util.copy(B),j="";V.level++;var L="valid"+V.level,R=z.every(function(y){return B.opts.strictKeywords?typeof y=="object"&&Object.keys(y).length>0||y===!1:B.util.schemaHasRules(y,B.RULES.all)});if(R){var b=V.baseId;X+=" var "+K+" = errors; var "+A+" = false; ";var k=B.compositeRule;B.compositeRule=V.compositeRule=!0;var I=z;if(I){var u,f=-1,O=I.length-1;while(f<O)u=I[f+=1],V.schema=u,V.schemaPath=G+"["+f+"]",V.errSchemaPath=q+"/"+f,X+=" "+B.validate(V)+" ",V.baseId=b,X+=" "+A+" = "+A+" || "+L+"; if (!"+A+") { ",j+="}"}if(B.compositeRule=V.compositeRule=k,X+=" "+j+" if (!"+A+") { var err = ",B.createErrors!==!1){if(X+=" { keyword: 'anyOf' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: {} ",B.opts.messages!==!1)X+=" , message: 'should match some schema in anyOf' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(X+=" } else { errors = "+K+"; if (vErrors !== null) { if ("+K+") vErrors.length = "+K+"; else vErrors = null; } ",B.opts.allErrors)X+=" } "}else if(E)X+=" if (true) { ";return X}}),Yq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.schema[Y],W=B.errSchemaPath+"/"+Y,z=!B.opts.allErrors,G=B.util.toQuotedString(C);if(B.opts.$comment===!0)X+=" console.log("+G+");";else if(typeof B.opts.$comment=="function")X+=" self._opts.$comment("+G+", "+B.util.toQuotedString(W)+", validate.root.schema);";return X}}),Jq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K=B.opts.$data&&z&&z.$data,V;if(K)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",V="schema"+C;else V=z;if(!K)X+=" var schema"+C+" = validate.schema"+G+";";X+="var "+A+" = equal("+U+", schema"+C+"); if (!"+A+") { ";var j=j||[];if(j.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'const' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { allowedValue: schema"+C+" } ",B.opts.messages!==!1)X+=" , message: 'should be equal to constant' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var L=X;if(X=j.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+L+"]); ";else X+=" validate.errors = ["+L+"]; return false; ";else X+=" var err = "+L+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" }",E)X+=" else { ";return X}}),Cq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K="errs__"+C,V=B.util.copy(B),j="";V.level++;var L="valid"+V.level,R="i"+C,b=V.dataLevel=B.dataLevel+1,k="data"+b,I=B.baseId,u=B.opts.strictKeywords?typeof z=="object"&&Object.keys(z).length>0||z===!1:B.util.schemaHasRules(z,B.RULES.all);if(X+="var "+K+" = errors;var "+A+";",u){var f=B.compositeRule;B.compositeRule=V.compositeRule=!0,V.schema=z,V.schemaPath=G,V.errSchemaPath=q,X+=" var "+L+" = false; for (var "+R+" = 0; "+R+" < "+U+".length; "+R+"++) { ",V.errorPath=B.util.getPathExpr(B.errorPath,R,B.opts.jsonPointers,!0);var O=U+"["+R+"]";V.dataPathArr[b]=R;var y=B.validate(V);if(V.baseId=I,B.util.varOccurences(y,k)<2)X+=" "+B.util.varReplace(y,k,O)+" ";else X+=" var "+k+" = "+O+"; "+y+" ";X+=" if ("+L+") break; } ",B.compositeRule=V.compositeRule=f,X+=" "+j+" if (!"+L+") {"}else X+=" if ("+U+".length == 0) {";var x=x||[];if(x.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'contains' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: {} ",B.opts.messages!==!1)X+=" , message: 'should contain a valid item' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var w=X;if(X=x.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+w+"]); ";else X+=" validate.errors = ["+w+"]; return false; ";else X+=" var err = "+w+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } else { ",u)X+=" errors = "+K+"; if (vErrors !== null) { if ("+K+") vErrors.length = "+K+"; else vErrors = null; } ";if(B.opts.allErrors)X+=" } ";return X}}),Wq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="errs__"+C,K=B.util.copy(B),V="";K.level++;var j="valid"+K.level,L={},R={},b=B.opts.ownProperties;for(f in z){if(f=="__proto__")continue;var k=z[f],I=Array.isArray(k)?R:L;I[f]=k}X+="var "+A+" = errors;";var u=B.errorPath;X+="var missing"+C+";";for(var f in R)if(I=R[f],I.length){if(X+=" if ( "+U+B.util.getProperty(f)+" !== undefined ",b)X+=" && Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(f)+"') ";if(E){X+=" && ( ";var O=I;if(O){var y,x=-1,w=O.length-1;while(x<w){if(y=O[x+=1],x)X+=" || ";var S=B.util.getProperty(y),g=U+S;if(X+=" ( ( "+g+" === undefined ",b)X+=" || ! Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(y)+"') ";X+=") && (missing"+C+" = "+B.util.toQuotedString(B.opts.jsonPointers?y:S)+") ) "}}X+=")) { ";var d="missing"+C,n="' + "+d+" + '";if(B.opts._errorDataPathProperty)B.errorPath=B.opts.jsonPointers?B.util.getPathExpr(u,d,!0):u+" + "+d;var a=a||[];if(a.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { property: '"+B.util.escapeQuotes(f)+"', missingProperty: '"+n+"', depsCount: "+I.length+", deps: '"+B.util.escapeQuotes(I.length==1?I[0]:I.join(", "))+"' } ",B.opts.messages!==!1){if(X+=" , message: 'should have ",I.length==1)X+="property "+B.util.escapeQuotes(I[0]);else X+="properties "+B.util.escapeQuotes(I.join(", "));X+=" when property "+B.util.escapeQuotes(f)+" is present' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var DD=X;if(X=a.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+DD+"]); ";else X+=" validate.errors = ["+DD+"]; return false; ";else X+=" var err = "+DD+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else{X+=" ) { ";var o=I;if(o){var y,JD=-1,CD=o.length-1;while(JD<CD){y=o[JD+=1];var S=B.util.getProperty(y),n=B.util.escapeQuotes(y),g=U+S;if(B.opts._errorDataPathProperty)B.errorPath=B.util.getPath(u,y,B.opts.jsonPointers);if(X+=" if ( "+g+" === undefined ",b)X+=" || ! Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(y)+"') ";if(X+=") { var err = ",B.createErrors!==!1){if(X+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { property: '"+B.util.escapeQuotes(f)+"', missingProperty: '"+n+"', depsCount: "+I.length+", deps: '"+B.util.escapeQuotes(I.length==1?I[0]:I.join(", "))+"' } ",B.opts.messages!==!1){if(X+=" , message: 'should have ",I.length==1)X+="property "+B.util.escapeQuotes(I[0]);else X+="properties "+B.util.escapeQuotes(I.join(", "));X+=" when property "+B.util.escapeQuotes(f)+" is present' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}if(X+=" } ",E)V+="}",X+=" else { "}B.errorPath=u;var FD=K.baseId;for(var f in L){var k=L[f];if(B.opts.strictKeywords?typeof k=="object"&&Object.keys(k).length>0||k===!1:B.util.schemaHasRules(k,B.RULES.all)){if(X+=" "+j+" = true; if ( "+U+B.util.getProperty(f)+" !== undefined ",b)X+=" && Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(f)+"') ";if(X+=") { ",K.schema=k,K.schemaPath=G+B.util.getProperty(f),K.errSchemaPath=q+"/"+B.util.escapeFragment(f),X+=" "+B.validate(K)+" ",K.baseId=FD,X+=" } ",E)X+=" if ("+j+") { ",V+="}"}}if(E)X+=" "+V+" if ("+A+" == errors) {";return X}}),zq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K=B.opts.$data&&z&&z.$data,V;if(K)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",V="schema"+C;else V=z;var j="i"+C,L="schema"+C;if(!K)X+=" var "+L+" = validate.schema"+G+";";if(X+="var "+A+";",K)X+=" if (schema"+C+" === undefined) "+A+" = true; else if (!Array.isArray(schema"+C+")) "+A+" = false; else {";if(X+=""+A+" = false;for (var "+j+"=0; "+j+"<"+L+".length; "+j+"++) if (equal("+U+", "+L+"["+j+"])) { "+A+" = true; break; }",K)X+=" } ";X+=" if (!"+A+") { ";var R=R||[];if(R.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { allowedValues: schema"+C+" } ",B.opts.messages!==!1)X+=" , message: 'should be equal to one of the allowed values' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var b=X;if(X=R.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+b+"]); ";else X+=" validate.errors = ["+b+"]; return false; ";else X+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" }",E)X+=" else { ";return X}}),Gq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||"");if(B.opts.format===!1){if(E)X+=" if (true) { ";return X}var A=B.opts.$data&&z&&z.$data,K;if(A)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",K="schema"+C;else K=z;var V=B.opts.unknownFormats,j=Array.isArray(V);if(A){var L="format"+C,R="isObject"+C,b="formatType"+C;if(X+=" var "+L+" = formats["+K+"]; var "+R+" = typeof "+L+" == 'object' && !("+L+" instanceof RegExp) && "+L+".validate; var "+b+" = "+R+" && "+L+".type || 'string'; if ("+R+") { ",B.async)X+=" var async"+C+" = "+L+".async; ";if(X+=" "+L+" = "+L+".validate; } if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'string') || ";if(X+=" (",V!="ignore"){if(X+=" ("+K+" && !"+L+" ",j)X+=" && self._opts.unknownFormats.indexOf("+K+") == -1 ";X+=") || "}if(X+=" ("+L+" && "+b+" == '"+J+"' && !(typeof "+L+" == 'function' ? ",B.async)X+=" (async"+C+" ? await "+L+"("+U+") : "+L+"("+U+")) ";else X+=" "+L+"("+U+") ";X+=" : "+L+".test("+U+"))))) {"}else{var L=B.formats[z];if(!L)if(V=="ignore"){if(B.logger.warn('unknown format "'+z+'" ignored in schema at path "'+B.errSchemaPath+'"'),E)X+=" if (true) { ";return X}else if(j&&V.indexOf(z)>=0){if(E)X+=" if (true) { ";return X}else throw new Error('unknown format "'+z+'" is used in schema at path "'+B.errSchemaPath+'"');var R=typeof L=="object"&&!(L instanceof RegExp)&&L.validate,b=R&&L.type||"string";if(R){var k=L.async===!0;L=L.validate}if(b!=J){if(E)X+=" if (true) { ";return X}if(k){if(!B.async)throw new Error("async format in sync schema");var I="formats"+B.util.getProperty(z)+".validate";X+=" if (!(await "+I+"("+U+"))) { "}else{X+=" if (! ";var I="formats"+B.util.getProperty(z);if(R)I+=".validate";if(typeof L=="function")X+=" "+I+"("+U+") ";else X+=" "+I+".test("+U+") ";X+=") { "}}var u=u||[];if(u.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'format' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { format: ",A)X+=""+K;else X+=""+B.util.toQuotedString(z);if(X+=" } ",B.opts.messages!==!1){if(X+=` , message: 'should match format "`,A)X+="' + "+K+" + '";else X+=""+B.util.escapeQuotes(z);X+=`"' `}if(B.opts.verbose){if(X+=" , schema: ",A)X+="validate.schema"+G;else X+=""+B.util.toQuotedString(z);X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var f=X;if(X=u.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+f+"]); ";else X+=" validate.errors = ["+f+"]; return false; ";else X+=" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",E)X+=" else { ";return X}}),qq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K="errs__"+C,V=B.util.copy(B);V.level++;var j="valid"+V.level,L=B.schema.then,R=B.schema.else,b=L!==void 0&&(B.opts.strictKeywords?typeof L=="object"&&Object.keys(L).length>0||L===!1:B.util.schemaHasRules(L,B.RULES.all)),k=R!==void 0&&(B.opts.strictKeywords?typeof R=="object"&&Object.keys(R).length>0||R===!1:B.util.schemaHasRules(R,B.RULES.all)),I=V.baseId;if(b||k){var u;V.createErrors=!1,V.schema=z,V.schemaPath=G,V.errSchemaPath=q,X+=" var "+K+" = errors; var "+A+" = true; ";var f=B.compositeRule;if(B.compositeRule=V.compositeRule=!0,X+=" "+B.validate(V)+" ",V.baseId=I,V.createErrors=!0,X+=" errors = "+K+"; if (vErrors !== null) { if ("+K+") vErrors.length = "+K+"; else vErrors = null; } ",B.compositeRule=V.compositeRule=f,b){if(X+=" if ("+j+") { ",V.schema=B.schema.then,V.schemaPath=B.schemaPath+".then",V.errSchemaPath=B.errSchemaPath+"/then",X+=" "+B.validate(V)+" ",V.baseId=I,X+=" "+A+" = "+j+"; ",b&&k)u="ifClause"+C,X+=" var "+u+" = 'then'; ";else u="'then'";if(X+=" } ",k)X+=" else { "}else X+=" if (!"+j+") { ";if(k){if(V.schema=B.schema.else,V.schemaPath=B.schemaPath+".else",V.errSchemaPath=B.errSchemaPath+"/else",X+=" "+B.validate(V)+" ",V.baseId=I,X+=" "+A+" = "+j+"; ",b&&k)u="ifClause"+C,X+=" var "+u+" = 'else'; ";else u="'else'";X+=" } "}if(X+=" if (!"+A+") { var err = ",B.createErrors!==!1){if(X+=" { keyword: 'if' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { failingKeyword: "+u+" } ",B.opts.messages!==!1)X+=` , message: 'should match "' + `+u+` + '" schema' `;if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(X+=" } ",E)X+=" else { "}else if(E)X+=" if (true) { ";return X}}),Kq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K="errs__"+C,V=B.util.copy(B),j="";V.level++;var L="valid"+V.level,R="i"+C,b=V.dataLevel=B.dataLevel+1,k="data"+b,I=B.baseId;if(X+="var "+K+" = errors;var "+A+";",Array.isArray(z)){var u=B.schema.additionalItems;if(u===!1){X+=" "+A+" = "+U+".length <= "+z.length+"; ";var f=q;q=B.errSchemaPath+"/additionalItems",X+=" if (!"+A+") { ";var O=O||[];if(O.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { limit: "+z.length+" } ",B.opts.messages!==!1)X+=" , message: 'should NOT have more than "+z.length+" items' ";if(B.opts.verbose)X+=" , schema: false , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var y=X;if(X=O.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+y+"]); ";else X+=" validate.errors = ["+y+"]; return false; ";else X+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",q=f,E)j+="}",X+=" else { "}var x=z;if(x){var w,S=-1,g=x.length-1;while(S<g)if(w=x[S+=1],B.opts.strictKeywords?typeof w=="object"&&Object.keys(w).length>0||w===!1:B.util.schemaHasRules(w,B.RULES.all)){X+=" "+L+" = true; if ("+U+".length > "+S+") { ";var d=U+"["+S+"]";V.schema=w,V.schemaPath=G+"["+S+"]",V.errSchemaPath=q+"/"+S,V.errorPath=B.util.getPathExpr(B.errorPath,S,B.opts.jsonPointers,!0),V.dataPathArr[b]=S;var n=B.validate(V);if(V.baseId=I,B.util.varOccurences(n,k)<2)X+=" "+B.util.varReplace(n,k,d)+" ";else X+=" var "+k+" = "+d+"; "+n+" ";if(X+=" } ",E)X+=" if ("+L+") { ",j+="}"}}if(typeof u=="object"&&(B.opts.strictKeywords?typeof u=="object"&&Object.keys(u).length>0||u===!1:B.util.schemaHasRules(u,B.RULES.all))){V.schema=u,V.schemaPath=B.schemaPath+".additionalItems",V.errSchemaPath=B.errSchemaPath+"/additionalItems",X+=" "+L+" = true; if ("+U+".length > "+z.length+") { for (var "+R+" = "+z.length+"; "+R+" < "+U+".length; "+R+"++) { ",V.errorPath=B.util.getPathExpr(B.errorPath,R,B.opts.jsonPointers,!0);var d=U+"["+R+"]";V.dataPathArr[b]=R;var n=B.validate(V);if(V.baseId=I,B.util.varOccurences(n,k)<2)X+=" "+B.util.varReplace(n,k,d)+" ";else X+=" var "+k+" = "+d+"; "+n+" ";if(E)X+=" if (!"+L+") break; ";if(X+=" } } ",E)X+=" if ("+L+") { ",j+="}"}}else if(B.opts.strictKeywords?typeof z=="object"&&Object.keys(z).length>0||z===!1:B.util.schemaHasRules(z,B.RULES.all)){V.schema=z,V.schemaPath=G,V.errSchemaPath=q,X+=" for (var "+R+" = 0; "+R+" < "+U+".length; "+R+"++) { ",V.errorPath=B.util.getPathExpr(B.errorPath,R,B.opts.jsonPointers,!0);var d=U+"["+R+"]";V.dataPathArr[b]=R;var n=B.validate(V);if(V.baseId=I,B.util.varOccurences(n,k)<2)X+=" "+B.util.varReplace(n,k,d)+" ";else X+=" var "+k+" = "+d+"; "+n+" ";if(E)X+=" if (!"+L+") break; ";X+=" }"}if(E)X+=" "+j+" if ("+K+" == errors) {";return X}}),cB=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,I,U="data"+(W||""),A=B.opts.$data&&z&&z.$data,K;if(A)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",K="schema"+C;else K=z;var V=Y=="maximum",j=V?"exclusiveMaximum":"exclusiveMinimum",L=B.schema[j],R=B.opts.$data&&L&&L.$data,b=V?"<":">",k=V?">":"<",I=void 0;if(!(A||typeof z=="number"||z===void 0))throw new Error(Y+" must be number");if(!(R||L===void 0||typeof L=="number"||typeof L=="boolean"))throw new Error(j+" must be number or boolean");if(R){var u=B.util.getData(L.$data,W,B.dataPathArr),f="exclusive"+C,O="exclType"+C,y="exclIsNumber"+C,x="op"+C,w="' + "+x+" + '";X+=" var schemaExcl"+C+" = "+u+"; ",u="schemaExcl"+C,X+=" var "+f+"; var "+O+" = typeof "+u+"; if ("+O+" != 'boolean' && "+O+" != 'undefined' && "+O+" != 'number') { ";var I=j,S=S||[];if(S.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(I||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: {} ",B.opts.messages!==!1)X+=" , message: '"+j+" should be boolean' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var g=X;if(X=S.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+g+"]); ";else X+=" validate.errors = ["+g+"]; return false; ";else X+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } else if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'number') || ";if(X+=" "+O+" == 'number' ? ( ("+f+" = "+K+" === undefined || "+u+" "+b+"= "+K+") ? "+U+" "+k+"= "+u+" : "+U+" "+k+" "+K+" ) : ( ("+f+" = "+u+" === true) ? "+U+" "+k+"= "+K+" : "+U+" "+k+" "+K+" ) || "+U+" !== "+U+") { var op"+C+" = "+f+" ? '"+b+"' : '"+b+"='; ",z===void 0)I=j,q=B.errSchemaPath+"/"+j,K=u,A=R}else{var y=typeof L=="number",w=b;if(y&&A){var x="'"+w+"'";if(X+=" if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'number') || ";X+=" ( "+K+" === undefined || "+L+" "+b+"= "+K+" ? "+U+" "+k+"= "+L+" : "+U+" "+k+" "+K+" ) || "+U+" !== "+U+") { "}else{if(y&&z===void 0)f=!0,I=j,q=B.errSchemaPath+"/"+j,K=L,k+="=";else{if(y)K=Math[V?"min":"max"](L,z);if(L===(y?K:!0))f=!0,I=j,q=B.errSchemaPath+"/"+j,k+="=";else f=!1,w+="="}var x="'"+w+"'";if(X+=" if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'number') || ";X+=" "+U+" "+k+" "+K+" || "+U+" !== "+U+") { "}}I=I||Y;var S=S||[];if(S.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(I||"_limit")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { comparison: "+x+", limit: "+K+", exclusive: "+f+" } ",B.opts.messages!==!1)if(X+=" , message: 'should be "+w+" ",A)X+="' + "+K;else X+=""+K+"'";if(B.opts.verbose){if(X+=" , schema: ",A)X+="validate.schema"+G;else X+=""+z;X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var g=X;if(X=S.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+g+"]); ";else X+=" validate.errors = ["+g+"]; return false; ";else X+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",E)X+=" else { ";return X}}),pB=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,j,U="data"+(W||""),A=B.opts.$data&&z&&z.$data,K;if(A)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",K="schema"+C;else K=z;if(!(A||typeof z=="number"))throw new Error(Y+" must be number");var V=Y=="maxItems"?">":"<";if(X+="if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'number') || ";X+=" "+U+".length "+V+" "+K+") { ";var j=Y,L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(j||"_limitItems")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { limit: "+K+" } ",B.opts.messages!==!1){if(X+=" , message: 'should NOT have ",Y=="maxItems")X+="more";else X+="fewer";if(X+=" than ",A)X+="' + "+K+" + '";else X+=""+z;X+=" items' "}if(B.opts.verbose){if(X+=" , schema: ",A)X+="validate.schema"+G;else X+=""+z;X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",E)X+=" else { ";return X}}),nB=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,j,U="data"+(W||""),A=B.opts.$data&&z&&z.$data,K;if(A)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",K="schema"+C;else K=z;if(!(A||typeof z=="number"))throw new Error(Y+" must be number");var V=Y=="maxLength"?">":"<";if(X+="if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'number') || ";if(B.opts.unicode===!1)X+=" "+U+".length ";else X+=" ucs2length("+U+") ";X+=" "+V+" "+K+") { ";var j=Y,L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(j||"_limitLength")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { limit: "+K+" } ",B.opts.messages!==!1){if(X+=" , message: 'should NOT be ",Y=="maxLength")X+="longer";else X+="shorter";if(X+=" than ",A)X+="' + "+K+" + '";else X+=""+z;X+=" characters' "}if(B.opts.verbose){if(X+=" , schema: ",A)X+="validate.schema"+G;else X+=""+z;X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",E)X+=" else { ";return X}}),iB=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,j,U="data"+(W||""),A=B.opts.$data&&z&&z.$data,K;if(A)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",K="schema"+C;else K=z;if(!(A||typeof z=="number"))throw new Error(Y+" must be number");var V=Y=="maxProperties"?">":"<";if(X+="if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'number') || ";X+=" Object.keys("+U+").length "+V+" "+K+") { ";var j=Y,L=L||[];if(L.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(j||"_limitProperties")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { limit: "+K+" } ",B.opts.messages!==!1){if(X+=" , message: 'should NOT have ",Y=="maxProperties")X+="more";else X+="fewer";if(X+=" than ",A)X+="' + "+K+" + '";else X+=""+z;X+=" properties' "}if(B.opts.verbose){if(X+=" , schema: ",A)X+="validate.schema"+G;else X+=""+z;X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var R=X;if(X=L.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",E)X+=" else { ";return X}}),Hq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A=B.opts.$data&&z&&z.$data,K;if(A)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",K="schema"+C;else K=z;if(!(A||typeof z=="number"))throw new Error(Y+" must be number");if(X+="var division"+C+";if (",A)X+=" "+K+" !== undefined && ( typeof "+K+" != 'number' || ";if(X+=" (division"+C+" = "+U+" / "+K+", ",B.opts.multipleOfPrecision)X+=" Math.abs(Math.round(division"+C+") - division"+C+") > 1e-"+B.opts.multipleOfPrecision+" ";else X+=" division"+C+" !== parseInt(division"+C+") ";if(X+=" ) ",A)X+=" ) ";X+=" ) { ";var V=V||[];if(V.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { multipleOf: "+K+" } ",B.opts.messages!==!1)if(X+=" , message: 'should be multiple of ",A)X+="' + "+K;else X+=""+K+"'";if(B.opts.verbose){if(X+=" , schema: ",A)X+="validate.schema"+G;else X+=""+z;X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var j=X;if(X=V.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+j+"]); ";else X+=" validate.errors = ["+j+"]; return false; ";else X+=" var err = "+j+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",E)X+=" else { ";return X}}),Uq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="errs__"+C,K=B.util.copy(B);K.level++;var V="valid"+K.level;if(B.opts.strictKeywords?typeof z=="object"&&Object.keys(z).length>0||z===!1:B.util.schemaHasRules(z,B.RULES.all)){K.schema=z,K.schemaPath=G,K.errSchemaPath=q,X+=" var "+A+" = errors; ";var j=B.compositeRule;B.compositeRule=K.compositeRule=!0,K.createErrors=!1;var L;if(K.opts.allErrors)L=K.opts.allErrors,K.opts.allErrors=!1;if(X+=" "+B.validate(K)+" ",K.createErrors=!0,L)K.opts.allErrors=L;B.compositeRule=K.compositeRule=j,X+=" if ("+V+") { ";var R=R||[];if(R.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'not' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: {} ",B.opts.messages!==!1)X+=" , message: 'should NOT be valid' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var b=X;if(X=R.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+b+"]); ";else X+=" validate.errors = ["+b+"]; return false; ";else X+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } else { errors = "+A+"; if (vErrors !== null) { if ("+A+") vErrors.length = "+A+"; else vErrors = null; } ",B.opts.allErrors)X+=" } "}else{if(X+=" var err = ",B.createErrors!==!1){if(X+=" { keyword: 'not' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: {} ",B.opts.messages!==!1)X+=" , message: 'should NOT be valid' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",E)X+=" if (false) { "}return X}}),Eq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K="errs__"+C,V=B.util.copy(B),j="";V.level++;var L="valid"+V.level,R=V.baseId,b="prevValid"+C,k="passingSchemas"+C;X+="var "+K+" = errors , "+b+" = false , "+A+" = false , "+k+" = null; ";var I=B.compositeRule;B.compositeRule=V.compositeRule=!0;var u=z;if(u){var f,O=-1,y=u.length-1;while(O<y){if(f=u[O+=1],B.opts.strictKeywords?typeof f=="object"&&Object.keys(f).length>0||f===!1:B.util.schemaHasRules(f,B.RULES.all))V.schema=f,V.schemaPath=G+"["+O+"]",V.errSchemaPath=q+"/"+O,X+=" "+B.validate(V)+" ",V.baseId=R;else X+=" var "+L+" = true; ";if(O)X+=" if ("+L+" && "+b+") { "+A+" = false; "+k+" = ["+k+", "+O+"]; } else { ",j+="}";X+=" if ("+L+") { "+A+" = "+b+" = true; "+k+" = "+O+"; }"}}if(B.compositeRule=V.compositeRule=I,X+=""+j+"if (!"+A+") { var err = ",B.createErrors!==!1){if(X+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { passingSchemas: "+k+" } ",B.opts.messages!==!1)X+=" , message: 'should match exactly one schema in oneOf' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(X+="} else { errors = "+K+"; if (vErrors !== null) { if ("+K+") vErrors.length = "+K+"; else vErrors = null; }",B.opts.allErrors)X+=" } ";return X}}),Zq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A=B.opts.$data&&z&&z.$data,K;if(A)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",K="schema"+C;else K=z;var V=A?"(new RegExp("+K+"))":B.usePattern(z);if(X+="if ( ",A)X+=" ("+K+" !== undefined && typeof "+K+" != 'string') || ";X+=" !"+V+".test("+U+") ) { ";var j=j||[];if(j.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { pattern: ",A)X+=""+K;else X+=""+B.util.toQuotedString(z);if(X+=" } ",B.opts.messages!==!1){if(X+=` , message: 'should match pattern "`,A)X+="' + "+K+" + '";else X+=""+B.util.escapeQuotes(z);X+=`"' `}if(B.opts.verbose){if(X+=" , schema: ",A)X+="validate.schema"+G;else X+=""+B.util.toQuotedString(z);X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var L=X;if(X=j.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+L+"]); ";else X+=" validate.errors = ["+L+"]; return false; ";else X+=" var err = "+L+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",E)X+=" else { ";return X}}),Aq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="errs__"+C,K=B.util.copy(B),V="";K.level++;var j="valid"+K.level,L="key"+C,R="idx"+C,b=K.dataLevel=B.dataLevel+1,k="data"+b,I="dataProperties"+C,u=Object.keys(z||{}).filter(JD),f=B.schema.patternProperties||{},O=Object.keys(f).filter(JD),y=B.schema.additionalProperties,x=u.length||O.length,w=y===!1,S=typeof y=="object"&&Object.keys(y).length,g=B.opts.removeAdditional,d=w||S||g,n=B.opts.ownProperties,a=B.baseId,DD=B.schema.required;if(DD&&!(B.opts.$data&&DD.$data)&&DD.length<B.opts.loopRequired)var o=B.util.toHash(DD);function JD(n0){return n0!=="__proto__"}if(X+="var "+A+" = errors;var "+j+" = true;",n)X+=" var "+I+" = undefined;";if(d){if(n)X+=" "+I+" = "+I+" || Object.keys("+U+"); for (var "+R+"=0; "+R+"<"+I+".length; "+R+"++) { var "+L+" = "+I+"["+R+"]; ";else X+=" for (var "+L+" in "+U+") { ";if(x){if(X+=" var isAdditional"+C+" = !(false ",u.length)if(u.length>8)X+=" || validate.schema"+G+".hasOwnProperty("+L+") ";else{var CD=u;if(CD){var FD,MD=-1,dD=CD.length-1;while(MD<dD)FD=CD[MD+=1],X+=" || "+L+" == "+B.util.toQuotedString(FD)+" "}}if(O.length){var nD=O;if(nD){var N,_=-1,H=nD.length-1;while(_<H)N=nD[_+=1],X+=" || "+B.usePattern(N)+".test("+L+") "}}X+=" ); if (isAdditional"+C+") { "}if(g=="all")X+=" delete "+U+"["+L+"]; ";else{var T=B.errorPath,h="' + "+L+" + '";if(B.opts._errorDataPathProperty)B.errorPath=B.util.getPathExpr(B.errorPath,L,B.opts.jsonPointers);if(w)if(g)X+=" delete "+U+"["+L+"]; ";else{X+=" "+j+" = false; ";var c=q;q=B.errSchemaPath+"/additionalProperties";var l=l||[];if(l.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'additionalProperties' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { additionalProperty: '"+h+"' } ",B.opts.messages!==!1){if(X+=" , message: '",B.opts._errorDataPathProperty)X+="is an invalid additional property";else X+="should NOT have additional properties";X+="' "}if(B.opts.verbose)X+=" , schema: false , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var p=X;if(X=l.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+p+"]); ";else X+=" validate.errors = ["+p+"]; return false; ";else X+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(q=c,E)X+=" break; "}else if(S)if(g=="failing"){X+=" var "+A+" = errors; ";var QD=B.compositeRule;B.compositeRule=K.compositeRule=!0,K.schema=y,K.schemaPath=B.schemaPath+".additionalProperties",K.errSchemaPath=B.errSchemaPath+"/additionalProperties",K.errorPath=B.opts._errorDataPathProperty?B.errorPath:B.util.getPathExpr(B.errorPath,L,B.opts.jsonPointers);var KD=U+"["+L+"]";K.dataPathArr[b]=L;var WD=B.validate(K);if(K.baseId=a,B.util.varOccurences(WD,k)<2)X+=" "+B.util.varReplace(WD,k,KD)+" ";else X+=" var "+k+" = "+KD+"; "+WD+" ";X+=" if (!"+j+") { errors = "+A+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+U+"["+L+"]; } ",B.compositeRule=K.compositeRule=QD}else{K.schema=y,K.schemaPath=B.schemaPath+".additionalProperties",K.errSchemaPath=B.errSchemaPath+"/additionalProperties",K.errorPath=B.opts._errorDataPathProperty?B.errorPath:B.util.getPathExpr(B.errorPath,L,B.opts.jsonPointers);var KD=U+"["+L+"]";K.dataPathArr[b]=L;var WD=B.validate(K);if(K.baseId=a,B.util.varOccurences(WD,k)<2)X+=" "+B.util.varReplace(WD,k,KD)+" ";else X+=" var "+k+" = "+KD+"; "+WD+" ";if(E)X+=" if (!"+j+") break; "}B.errorPath=T}if(x)X+=" } ";if(X+=" } ",E)X+=" if ("+j+") { ",V+="}"}var AD=B.opts.useDefaults&&!B.compositeRule;if(u.length){var bD=u;if(bD){var FD,_D=-1,Q0=bD.length-1;while(_D<Q0){FD=bD[_D+=1];var cD=z[FD];if(B.opts.strictKeywords?typeof cD=="object"&&Object.keys(cD).length>0||cD===!1:B.util.schemaHasRules(cD,B.RULES.all)){var H0=B.util.getProperty(FD),KD=U+H0,kD=AD&&cD.default!==void 0;K.schema=cD,K.schemaPath=G+H0,K.errSchemaPath=q+"/"+B.util.escapeFragment(FD),K.errorPath=B.util.getPath(B.errorPath,FD,B.opts.jsonPointers),K.dataPathArr[b]=B.util.toQuotedString(FD);var WD=B.validate(K);if(K.baseId=a,B.util.varOccurences(WD,k)<2){WD=B.util.varReplace(WD,k,KD);var eD=KD}else{var eD=k;X+=" var "+k+" = "+KD+"; "}if(kD)X+=" "+WD+" ";else{if(o&&o[FD]){if(X+=" if ( "+eD+" === undefined ",n)X+=" || ! Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(FD)+"') ";X+=") { "+j+" = false; ";var T=B.errorPath,c=q,k0=B.util.escapeQuotes(FD);if(B.opts._errorDataPathProperty)B.errorPath=B.util.getPath(T,FD,B.opts.jsonPointers);q=B.errSchemaPath+"/required";var l=l||[];if(l.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { missingProperty: '"+k0+"' } ",B.opts.messages!==!1){if(X+=" , message: '",B.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+k0+"\\'";X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var p=X;if(X=l.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+p+"]); ";else X+=" validate.errors = ["+p+"]; return false; ";else X+=" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";q=c,B.errorPath=T,X+=" } else { "}else if(E){if(X+=" if ( "+eD+" === undefined ",n)X+=" || ! Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(FD)+"') ";X+=") { "+j+" = true; } else { "}else{if(X+=" if ("+eD+" !== undefined ",n)X+=" && Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(FD)+"') ";X+=" ) { "}X+=" "+WD+" } "}}if(E)X+=" if ("+j+") { ",V+="}"}}}if(O.length){var R0=O;if(R0){var N,g8=-1,t6=R0.length-1;while(g8<t6){N=R0[g8+=1];var cD=f[N];if(B.opts.strictKeywords?typeof cD=="object"&&Object.keys(cD).length>0||cD===!1:B.util.schemaHasRules(cD,B.RULES.all)){if(K.schema=cD,K.schemaPath=B.schemaPath+".patternProperties"+B.util.getProperty(N),K.errSchemaPath=B.errSchemaPath+"/patternProperties/"+B.util.escapeFragment(N),n)X+=" "+I+" = "+I+" || Object.keys("+U+"); for (var "+R+"=0; "+R+"<"+I+".length; "+R+"++) { var "+L+" = "+I+"["+R+"]; ";else X+=" for (var "+L+" in "+U+") { ";X+=" if ("+B.usePattern(N)+".test("+L+")) { ",K.errorPath=B.util.getPathExpr(B.errorPath,L,B.opts.jsonPointers);var KD=U+"["+L+"]";K.dataPathArr[b]=L;var WD=B.validate(K);if(K.baseId=a,B.util.varOccurences(WD,k)<2)X+=" "+B.util.varReplace(WD,k,KD)+" ";else X+=" var "+k+" = "+KD+"; "+WD+" ";if(E)X+=" if (!"+j+") break; ";if(X+=" } ",E)X+=" else "+j+" = true; ";if(X+=" } ",E)X+=" if ("+j+") { ",V+="}"}}}}if(E)X+=" "+V+" if ("+A+" == errors) {";return X}}),Vq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="errs__"+C,K=B.util.copy(B),V="";K.level++;var j="valid"+K.level;if(X+="var "+A+" = errors;",B.opts.strictKeywords?typeof z=="object"&&Object.keys(z).length>0||z===!1:B.util.schemaHasRules(z,B.RULES.all)){K.schema=z,K.schemaPath=G,K.errSchemaPath=q;var L="key"+C,R="idx"+C,b="i"+C,k="' + "+L+" + '",I=K.dataLevel=B.dataLevel+1,u="data"+I,f="dataProperties"+C,O=B.opts.ownProperties,y=B.baseId;if(O)X+=" var "+f+" = undefined; ";if(O)X+=" "+f+" = "+f+" || Object.keys("+U+"); for (var "+R+"=0; "+R+"<"+f+".length; "+R+"++) { var "+L+" = "+f+"["+R+"]; ";else X+=" for (var "+L+" in "+U+") { ";X+=" var startErrs"+C+" = errors; ";var x=L,w=B.compositeRule;B.compositeRule=K.compositeRule=!0;var S=B.validate(K);if(K.baseId=y,B.util.varOccurences(S,u)<2)X+=" "+B.util.varReplace(S,u,x)+" ";else X+=" var "+u+" = "+x+"; "+S+" ";if(B.compositeRule=K.compositeRule=w,X+=" if (!"+j+") { for (var "+b+"=startErrs"+C+"; "+b+"<errors; "+b+"++) { vErrors["+b+"].propertyName = "+L+"; } var err = ",B.createErrors!==!1){if(X+=" { keyword: 'propertyNames' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { propertyName: '"+k+"' } ",B.opts.messages!==!1)X+=" , message: 'property name \\'"+k+"\\' is invalid' ";if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(E)X+=" break; ";X+=" } }"}if(E)X+=" "+V+" if ("+A+" == errors) {";return X}}),Lq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K=B.opts.$data&&z&&z.$data,V;if(K)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",V="schema"+C;else V=z;var j="schema"+C;if(!K)if(z.length<B.opts.loopRequired&&B.schema.properties&&Object.keys(B.schema.properties).length){var L=[],R=z;if(R){var b,k=-1,I=R.length-1;while(k<I){b=R[k+=1];var u=B.schema.properties[b];if(!(u&&(B.opts.strictKeywords?typeof u=="object"&&Object.keys(u).length>0||u===!1:B.util.schemaHasRules(u,B.RULES.all))))L[L.length]=b}}}else var L=z;if(K||L.length){var f=B.errorPath,O=K||L.length>=B.opts.loopRequired,y=B.opts.ownProperties;if(E)if(X+=" var missing"+C+"; ",O){if(!K)X+=" var "+j+" = validate.schema"+G+"; ";var x="i"+C,w="schema"+C+"["+x+"]",S="' + "+w+" + '";if(B.opts._errorDataPathProperty)B.errorPath=B.util.getPathExpr(f,w,B.opts.jsonPointers);if(X+=" var "+A+" = true; ",K)X+=" if (schema"+C+" === undefined) "+A+" = true; else if (!Array.isArray(schema"+C+")) "+A+" = false; else {";if(X+=" for (var "+x+" = 0; "+x+" < "+j+".length; "+x+"++) { "+A+" = "+U+"["+j+"["+x+"]] !== undefined ",y)X+=" && Object.prototype.hasOwnProperty.call("+U+", "+j+"["+x+"]) ";if(X+="; if (!"+A+") break; } ",K)X+=" } ";X+=" if (!"+A+") { ";var g=g||[];if(g.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { missingProperty: '"+S+"' } ",B.opts.messages!==!1){if(X+=" , message: '",B.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+S+"\\'";X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var d=X;if(X=g.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+d+"]); ";else X+=" validate.errors = ["+d+"]; return false; ";else X+=" var err = "+d+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } else { "}else{X+=" if ( ";var n=L;if(n){var a,x=-1,DD=n.length-1;while(x<DD){if(a=n[x+=1],x)X+=" || ";var o=B.util.getProperty(a),JD=U+o;if(X+=" ( ( "+JD+" === undefined ",y)X+=" || ! Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(a)+"') ";X+=") && (missing"+C+" = "+B.util.toQuotedString(B.opts.jsonPointers?a:o)+") ) "}}X+=") { ";var w="missing"+C,S="' + "+w+" + '";if(B.opts._errorDataPathProperty)B.errorPath=B.opts.jsonPointers?B.util.getPathExpr(f,w,!0):f+" + "+w;var g=g||[];if(g.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { missingProperty: '"+S+"' } ",B.opts.messages!==!1){if(X+=" , message: '",B.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+S+"\\'";X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";var d=X;if(X=g.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+d+"]); ";else X+=" validate.errors = ["+d+"]; return false; ";else X+=" var err = "+d+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } else { "}else if(O){if(!K)X+=" var "+j+" = validate.schema"+G+"; ";var x="i"+C,w="schema"+C+"["+x+"]",S="' + "+w+" + '";if(B.opts._errorDataPathProperty)B.errorPath=B.util.getPathExpr(f,w,B.opts.jsonPointers);if(K){if(X+=" if ("+j+" && !Array.isArray("+j+")) { var err = ",B.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { missingProperty: '"+S+"' } ",B.opts.messages!==!1){if(X+=" , message: '",B.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+S+"\\'";X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if ("+j+" !== undefined) { "}if(X+=" for (var "+x+" = 0; "+x+" < "+j+".length; "+x+"++) { if ("+U+"["+j+"["+x+"]] === undefined ",y)X+=" || ! Object.prototype.hasOwnProperty.call("+U+", "+j+"["+x+"]) ";if(X+=") { var err = ",B.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { missingProperty: '"+S+"' } ",B.opts.messages!==!1){if(X+=" , message: '",B.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+S+"\\'";X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",K)X+=" } "}else{var CD=L;if(CD){var a,FD=-1,MD=CD.length-1;while(FD<MD){a=CD[FD+=1];var o=B.util.getProperty(a),S=B.util.escapeQuotes(a),JD=U+o;if(B.opts._errorDataPathProperty)B.errorPath=B.util.getPath(f,a,B.opts.jsonPointers);if(X+=" if ( "+JD+" === undefined ",y)X+=" || ! Object.prototype.hasOwnProperty.call("+U+", '"+B.util.escapeQuotes(a)+"') ";if(X+=") { var err = ",B.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { missingProperty: '"+S+"' } ",B.opts.messages!==!1){if(X+=" , message: '",B.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+S+"\\'";X+="' "}if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" ";X+=" } "}else X+=" {} ";X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}B.errorPath=f}else if(E)X+=" if (true) {";return X}}),Mq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U="data"+(W||""),A="valid"+C,K=B.opts.$data&&z&&z.$data,V;if(K)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",V="schema"+C;else V=z;if((z||K)&&B.opts.uniqueItems!==!1){if(K)X+=" var "+A+"; if ("+V+" === false || "+V+" === undefined) "+A+" = true; else if (typeof "+V+" != 'boolean') "+A+" = false; else { ";X+=" var i = "+U+".length , "+A+" = true , j; if (i > 1) { ";var j=B.schema.items&&B.schema.items.type,L=Array.isArray(j);if(!j||j=="object"||j=="array"||L&&(j.indexOf("object")>=0||j.indexOf("array")>=0))X+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+U+"[i], "+U+"[j])) { "+A+" = false; break outer; } } } ";else{X+=" var itemIndices = {}, item; for (;i--;) { var item = "+U+"[i]; ";var R="checkDataType"+(L?"s":"");if(X+=" if ("+B.util[R](j,"item",B.opts.strictNumbers,!0)+") continue; ",L)X+=` if (typeof item == 'string') item = '"' + item; `;X+=" if (typeof itemIndices[item] == 'number') { "+A+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "}if(X+=" } ",K)X+=" } ";X+=" if (!"+A+") { ";var b=b||[];if(b.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { i: i, j: j } ",B.opts.messages!==!1)X+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' ";if(B.opts.verbose){if(X+=" , schema: ",K)X+="validate.schema"+G;else X+=""+z;X+=" , parentSchema: validate.schema"+B.schemaPath+" , data: "+U+" "}X+=" } "}else X+=" {} ";var k=X;if(X=b.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+k+"]); ";else X+=" validate.errors = ["+k+"]; return false; ";else X+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",E)X+=" else { "}else if(E)X+=" if (true) { ";return X}}),Nq=HD((D,F)=>{F.exports={$ref:Bq(),allOf:Qq(),anyOf:Xq(),$comment:Yq(),const:Jq(),contains:Cq(),dependencies:Wq(),enum:zq(),format:Gq(),if:qq(),items:Kq(),maximum:cB(),minimum:cB(),maxItems:pB(),minItems:pB(),maxLength:nB(),minLength:nB(),maxProperties:iB(),minProperties:iB(),multipleOf:Hq(),not:Uq(),oneOf:Eq(),pattern:Zq(),properties:Aq(),propertyNames:Vq(),required:Lq(),uniqueItems:Mq(),validate:BQ()}}),jq=HD((D,F)=>{var Q=Nq(),B=m2().toHash;F.exports=function Y(){var J=[{type:"number",rules:[{maximum:["exclusiveMaximum"]},{minimum:["exclusiveMinimum"]},"multipleOf","format"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","items","contains","uniqueItems"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","propertyNames",{properties:["additionalProperties","patternProperties"]}]},{rules:["$ref","const","enum","not","anyOf","oneOf","allOf","if"]}],X=["type","$comment"],C=["$schema","$id","id","$data","$async","title","description","default","definitions","examples","readOnly","writeOnly","contentMediaType","contentEncoding","additionalItems","then","else"],W=["number","integer","string","array","object","boolean","null"];return J.all=B(X),J.types=B(W),J.forEach(function(z){if(z.rules=z.rules.map(function(G){var q;if(typeof G=="object"){var E=Object.keys(G)[0];q=G[E],G=E,q.forEach(function(A){X.push(A),J.all[A]=!0})}X.push(G);var U=J.all[G]={keyword:G,code:Q[G],implements:q};return U}),J.all.$comment={keyword:"$comment",code:Q.$comment},z.type)J.types[z.type]=z}),J.keywords=B(X.concat(C)),J.custom={},J}}),Rq=HD((D,F)=>{var Q=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","additionalItems","maxItems","minItems","uniqueItems","maxProperties","minProperties","required","additionalProperties","enum","format","const"];F.exports=function(B,Y){for(var J=0;J<Y.length;J++){B=JSON.parse(JSON.stringify(B));var X=Y[J].split("/"),C=B,W;for(W=1;W<X.length;W++)C=C[X[W]];for(W=0;W<Q.length;W++){var z=Q[W],G=C[z];if(G)C[z]={anyOf:[G,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]}}}return B}}),_q=HD((D,F)=>{var Q=C9().MissingRef;F.exports=B;function B(Y,J,X){var C=this;if(typeof this._opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");if(typeof J=="function")X=J,J=void 0;var W=z(Y).then(function(){var q=C._addSchema(Y,void 0,J);return q.validate||G(q)});if(X)W.then(function(q){X(null,q)},X);return W;function z(q){var E=q.$schema;return E&&!C.getSchema(E)?B.call(C,{$ref:E},!0):Promise.resolve()}function G(q){try{return C._compile(q)}catch(U){if(U instanceof Q)return E(U);throw U}function E(U){var A=U.missingSchema;if(j(A))throw new Error("Schema "+A+" is loaded but "+U.missingRef+" cannot be resolved");var K=C._loadingSchemas[A];if(!K)K=C._loadingSchemas[A]=C._opts.loadSchema(A),K.then(V,V);return K.then(function(L){if(!j(A))return z(L).then(function(){if(!j(A))C.addSchema(L,A,void 0,J)})}).then(function(){return G(q)});function V(){delete C._loadingSchemas[A]}function j(L){return C._refs[L]||C._schemas[L]}}}}}),Oq=HD((D,F)=>{F.exports=function Q(B,Y,J){var X=" ",C=B.level,W=B.dataLevel,z=B.schema[Y],G=B.schemaPath+B.util.getProperty(Y),q=B.errSchemaPath+"/"+Y,E=!B.opts.allErrors,U,A="data"+(W||""),K="valid"+C,V="errs__"+C,j=B.opts.$data&&z&&z.$data,L;if(j)X+=" var schema"+C+" = "+B.util.getData(z.$data,W,B.dataPathArr)+"; ",L="schema"+C;else L=z;var R=this,b="definition"+C,k=R.definition,I="",u,f,O,y,x;if(j&&k.$data){x="keywordValidate"+C;var w=k.validateSchema;X+=" var "+b+" = RULES.custom['"+Y+"'].definition; var "+x+" = "+b+".validate;"}else{if(y=B.useCustomRule(R,z,B.schema,B),!y)return;L="validate.schema"+G,x=y.code,u=k.compile,f=k.inline,O=k.macro}var S=x+".errors",g="i"+C,d="ruleErr"+C,n=k.async;if(n&&!B.async)throw new Error("async keyword in sync schema");if(!(f||O))X+=""+S+" = null;";if(X+="var "+V+" = errors;var "+K+";",j&&k.$data){if(I+="}",X+=" if ("+L+" === undefined) { "+K+" = true; } else { ",w)I+="}",X+=" "+K+" = "+b+".validateSchema("+L+"); if ("+K+") { "}if(f)if(k.statements)X+=" "+y.validate+" ";else X+=" "+K+" = "+y.validate+"; ";else if(O){var a=B.util.copy(B),I="";a.level++;var DD="valid"+a.level;a.schema=y.validate,a.schemaPath="";var o=B.compositeRule;B.compositeRule=a.compositeRule=!0;var JD=B.validate(a).replace(/validate\.schema/g,x);B.compositeRule=a.compositeRule=o,X+=" "+JD}else{var CD=CD||[];if(CD.push(X),X="",X+=" "+x+".call( ",B.opts.passContext)X+="this";else X+="self";if(u||k.schema===!1)X+=" , "+A+" ";else X+=" , "+L+" , "+A+" , validate.schema"+B.schemaPath+" ";if(X+=" , (dataPath || '')",B.errorPath!='""')X+=" + "+B.errorPath;var FD=W?"data"+(W-1||""):"parentData",MD=W?B.dataPathArr[W]:"parentDataProperty";X+=" , "+FD+" , "+MD+" , rootData ) ";var dD=X;if(X=CD.pop(),k.errors===!1){if(X+=" "+K+" = ",n)X+="await ";X+=""+dD+"; "}else if(n)S="customErrors"+C,X+=" var "+S+" = null; try { "+K+" = await "+dD+"; } catch (e) { "+K+" = false; if (e instanceof ValidationError) "+S+" = e.errors; else throw e; } ";else X+=" "+S+" = null; "+K+" = "+dD+"; "}if(k.modifying)X+=" if ("+FD+") "+A+" = "+FD+"["+MD+"];";if(X+=""+I,k.valid){if(E)X+=" if (true) { "}else{if(X+=" if ( ",k.valid===void 0)if(X+=" !",O)X+=""+DD;else X+=""+K;else X+=" "+!k.valid+" ";X+=") { ",U=R.keyword;var CD=CD||[];CD.push(X),X="";var CD=CD||[];if(CD.push(X),X="",B.createErrors!==!1){if(X+=" { keyword: '"+(U||"custom")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { keyword: '"+R.keyword+"' } ",B.opts.messages!==!1)X+=` , message: 'should pass "`+R.keyword+`" keyword validation' `;if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+A+" ";X+=" } "}else X+=" {} ";var nD=X;if(X=CD.pop(),!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(["+nD+"]); ";else X+=" validate.errors = ["+nD+"]; return false; ";else X+=" var err = "+nD+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var N=X;if(X=CD.pop(),f)if(k.errors){if(k.errors!="full"){if(X+=" for (var "+g+"="+V+"; "+g+"<errors; "+g+"++) { var "+d+" = vErrors["+g+"]; if ("+d+".dataPath === undefined) "+d+".dataPath = (dataPath || '') + "+B.errorPath+"; if ("+d+".schemaPath === undefined) { "+d+'.schemaPath = "'+q+'"; } ',B.opts.verbose)X+=" "+d+".schema = "+L+"; "+d+".data = "+A+"; ";X+=" } "}}else if(k.errors===!1)X+=" "+N+" ";else{if(X+=" if ("+V+" == errors) { "+N+" } else { for (var "+g+"="+V+"; "+g+"<errors; "+g+"++) { var "+d+" = vErrors["+g+"]; if ("+d+".dataPath === undefined) "+d+".dataPath = (dataPath || '') + "+B.errorPath+"; if ("+d+".schemaPath === undefined) { "+d+'.schemaPath = "'+q+'"; } ',B.opts.verbose)X+=" "+d+".schema = "+L+"; "+d+".data = "+A+"; ";X+=" } } "}else if(O){if(X+=" var err = ",B.createErrors!==!1){if(X+=" { keyword: '"+(U||"custom")+"' , dataPath: (dataPath || '') + "+B.errorPath+" , schemaPath: "+B.util.toQuotedString(q)+" , params: { keyword: '"+R.keyword+"' } ",B.opts.messages!==!1)X+=` , message: 'should pass "`+R.keyword+`" keyword validation' `;if(B.opts.verbose)X+=" , schema: validate.schema"+G+" , parentSchema: validate.schema"+B.schemaPath+" , data: "+A+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!B.compositeRule&&E)if(B.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; "}else if(k.errors===!1)X+=" "+N+" ";else{if(X+=" if (Array.isArray("+S+")) { if (vErrors === null) vErrors = "+S+"; else vErrors = vErrors.concat("+S+"); errors = vErrors.length; for (var "+g+"="+V+"; "+g+"<errors; "+g+"++) { var "+d+" = vErrors["+g+"]; if ("+d+".dataPath === undefined) "+d+".dataPath = (dataPath || '') + "+B.errorPath+"; "+d+'.schemaPath = "'+q+'"; ',B.opts.verbose)X+=" "+d+".schema = "+L+"; "+d+".data = "+A+"; ";X+=" } } else { "+N+" } "}if(X+=" } ",E)X+=" else { "}return X}}),QQ=HD((D,F)=>{F.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}),Iq=HD((D,F)=>{var Q=QQ();F.exports={$id:"https://github.com/ajv-validator/ajv/blob/master/lib/definition_schema.js",definitions:{simpleTypes:Q.definitions.simpleTypes},type:"object",dependencies:{schema:["validate"],$data:["validate"],statements:["inline"],valid:{not:{required:["macro"]}}},properties:{type:Q.properties.type,schema:{type:"boolean"},statements:{type:"boolean"},dependencies:{type:"array",items:{type:"string"}},metaSchema:{type:"object"},modifying:{type:"boolean"},valid:{type:"boolean"},$data:{type:"boolean"},async:{type:"boolean"},errors:{anyOf:[{type:"boolean"},{const:"full"}]}}}}),wq=HD((D,F)=>{var Q=/^[a-z_$][a-z0-9_$-]*$/i,B=Oq(),Y=Iq();F.exports={add:J,get:X,remove:C,validate:W};function J(z,G){var q=this.RULES;if(q.keywords[z])throw new Error("Keyword "+z+" is already defined");if(!Q.test(z))throw new Error("Keyword "+z+" is not a valid identifier");if(G){this.validateKeyword(G,!0);var E=G.type;if(Array.isArray(E))for(var U=0;U<E.length;U++)K(z,E[U],G);else K(z,E,G);var A=G.metaSchema;if(A){if(G.$data&&this._opts.$data)A={anyOf:[A,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]};G.validateSchema=this.compile(A,!0)}}q.keywords[z]=q.all[z]=!0;function K(V,j,L){var R;for(var b=0;b<q.length;b++){var k=q[b];if(k.type==j){R=k;break}}if(!R)R={type:j,rules:[]},q.push(R);var I={keyword:V,definition:L,custom:!0,code:B,implements:L.implements};R.rules.push(I),q.custom[V]=I}return this}function X(z){var G=this.RULES.custom[z];return G?G.definition:this.RULES.keywords[z]||!1}function C(z){var G=this.RULES;delete G.keywords[z],delete G.all[z],delete G.custom[z];for(var q=0;q<G.length;q++){var E=G[q].rules;for(var U=0;U<E.length;U++)if(E[U].keyword==z){E.splice(U,1);break}}return this}function W(z,G){W.errors=null;var q=this._validateKeyword=this._validateKeyword||this.compile(Y,!0);if(q(z))return!0;if(W.errors=q.errors,G)throw new Error("custom keyword definition is invalid: "+this.errorsText(q.errors));else return!1}}),Tq=HD((D,F)=>{F.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON Schema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}}),Pq=HD((D,F)=>{var Q=eG(),B=J9(),Y=Dq(),J=DQ(),X=FQ(),C=Fq(),W=jq(),z=Rq(),G=m2();F.exports=V,V.prototype.validate=j,V.prototype.compile=L,V.prototype.addSchema=R,V.prototype.addMetaSchema=b,V.prototype.validateSchema=k,V.prototype.getSchema=u,V.prototype.removeSchema=y,V.prototype.addFormat=o,V.prototype.errorsText=DD,V.prototype._addSchema=w,V.prototype._compile=S,V.prototype.compileAsync=_q();var q=wq();V.prototype.addKeyword=q.add,V.prototype.getKeyword=q.get,V.prototype.removeKeyword=q.remove,V.prototype.validateKeyword=q.validate;var E=C9();V.ValidationError=E.Validation,V.MissingRefError=E.MissingRef,V.$dataMetaSchema=z;var U="http://json-schema.org/draft-07/schema",A=["removeAdditional","useDefaults","coerceTypes","strictDefaults"],K=["/properties"];function V(H){if(!(this instanceof V))return new V(H);if(H=this._opts=G.copy(H)||{},N(this),this._schemas={},this._refs={},this._fragments={},this._formats=C(H.format),this._cache=H.cache||new Y,this._loadingSchemas={},this._compilations=[],this.RULES=W(),this._getId=g(H),H.loopRequired=H.loopRequired||1/0,H.errorDataPath=="property")H._errorDataPathProperty=!0;if(H.serialize===void 0)H.serialize=X;if(this._metaOpts=nD(this),H.formats)FD(this);if(H.keywords)MD(this);if(JD(this),typeof H.meta=="object")this.addMetaSchema(H.meta);if(H.nullable)this.addKeyword("nullable",{metaSchema:{type:"boolean"}});CD(this)}function j(H,T){var h;if(typeof H=="string"){if(h=this.getSchema(H),!h)throw new Error('no schema with key or ref "'+H+'"')}else{var c=this._addSchema(H);h=c.validate||this._compile(c)}var l=h(T);if(h.$async!==!0)this.errors=h.errors;return l}function L(H,T){var h=this._addSchema(H,void 0,T);return h.validate||this._compile(h)}function R(H,T,h,c){if(Array.isArray(H)){for(var l=0;l<H.length;l++)this.addSchema(H[l],void 0,h,c);return this}var p=this._getId(H);if(p!==void 0&&typeof p!="string")throw new Error("schema id must be string");return T=B.normalizeId(T||p),dD(this,T),this._schemas[T]=this._addSchema(H,h,c,!0),this}function b(H,T,h){return this.addSchema(H,T,h,!0),this}function k(H,T){var h=H.$schema;if(h!==void 0&&typeof h!="string")throw new Error("$schema must be a string");if(h=h||this._opts.defaultMeta||I(this),!h)return this.logger.warn("meta-schema not available"),this.errors=null,!0;var c=this.validate(h,H);if(!c&&T){var l="schema is invalid: "+this.errorsText();if(this._opts.validateSchema=="log")this.logger.error(l);else throw new Error(l)}return c}function I(H){var T=H._opts.meta;return H._opts.defaultMeta=typeof T=="object"?H._getId(T)||T:H.getSchema(U)?U:void 0,H._opts.defaultMeta}function u(H){var T=O(this,H);switch(typeof T){case"object":return T.validate||this._compile(T);case"string":return this.getSchema(T);case"undefined":return f(this,H)}}function f(H,T){var h=B.schema.call(H,{schema:{}},T);if(h){var{schema:c,root:l,baseId:p}=h,QD=Q.call(H,c,l,void 0,p);return H._fragments[T]=new J({ref:T,fragment:!0,schema:c,root:l,baseId:p,validate:QD}),QD}}function O(H,T){return T=B.normalizeId(T),H._schemas[T]||H._refs[T]||H._fragments[T]}function y(H){if(H instanceof RegExp)return x(this,this._schemas,H),x(this,this._refs,H),this;switch(typeof H){case"undefined":return x(this,this._schemas),x(this,this._refs),this._cache.clear(),this;case"string":var T=O(this,H);if(T)this._cache.del(T.cacheKey);return delete this._schemas[H],delete this._refs[H],this;case"object":var h=this._opts.serialize,c=h?h(H):H;this._cache.del(c);var l=this._getId(H);if(l)l=B.normalizeId(l),delete this._schemas[l],delete this._refs[l]}return this}function x(H,T,h){for(var c in T){var l=T[c];if(!l.meta&&(!h||h.test(c)))H._cache.del(l.cacheKey),delete T[c]}}function w(H,T,h,c){if(typeof H!="object"&&typeof H!="boolean")throw new Error("schema should be object or boolean");var l=this._opts.serialize,p=l?l(H):H,QD=this._cache.get(p);if(QD)return QD;c=c||this._opts.addUsedSchema!==!1;var KD=B.normalizeId(this._getId(H));if(KD&&c)dD(this,KD);var WD=this._opts.validateSchema!==!1&&!T,AD;if(WD&&!(AD=KD&&KD==B.normalizeId(H.$schema)))this.validateSchema(H,!0);var bD=B.ids.call(this,H),_D=new J({id:KD,schema:H,localRefs:bD,cacheKey:p,meta:h});if(KD[0]!="#"&&c)this._refs[KD]=_D;if(this._cache.put(p,_D),WD&&AD)this.validateSchema(H,!0);return _D}function S(H,T){if(H.compiling){if(H.validate=l,l.schema=H.schema,l.errors=null,l.root=T?T:l,H.schema.$async===!0)l.$async=!0;return l}H.compiling=!0;var h;if(H.meta)h=this._opts,this._opts=this._metaOpts;var c;try{c=Q.call(this,H.schema,T,H.localRefs)}catch(p){throw delete H.validate,p}finally{if(H.compiling=!1,H.meta)this._opts=h}return H.validate=c,H.refs=c.refs,H.refVal=c.refVal,H.root=c.root,c;function l(){var p=H.validate,QD=p.apply(this,arguments);return l.errors=p.errors,QD}}function g(H){switch(H.schemaId){case"auto":return a;case"id":return d;default:return n}}function d(H){if(H.$id)this.logger.warn("schema $id ignored",H.$id);return H.id}function n(H){if(H.id)this.logger.warn("schema id ignored",H.id);return H.$id}function a(H){if(H.$id&&H.id&&H.$id!=H.id)throw new Error("schema $id is different from id");return H.$id||H.id}function DD(H,T){if(H=H||this.errors,!H)return"No errors";T=T||{};var h=T.separator===void 0?", ":T.separator,c=T.dataVar===void 0?"data":T.dataVar,l="";for(var p=0;p<H.length;p++){var QD=H[p];if(QD)l+=c+QD.dataPath+" "+QD.message+h}return l.slice(0,-h.length)}function o(H,T){if(typeof T=="string")T=new RegExp(T);return this._formats[H]=T,this}function JD(H){var T;if(H._opts.$data)T=Tq(),H.addMetaSchema(T,T.$id,!0);if(H._opts.meta===!1)return;var h=QQ();if(H._opts.$data)h=z(h,K);H.addMetaSchema(h,U,!0),H._refs["http://json-schema.org/schema"]=U}function CD(H){var T=H._opts.schemas;if(!T)return;if(Array.isArray(T))H.addSchema(T);else for(var h in T)H.addSchema(T[h],h)}function FD(H){for(var T in H._opts.formats){var h=H._opts.formats[T];H.addFormat(T,h)}}function MD(H){for(var T in H._opts.keywords){var h=H._opts.keywords[T];H.addKeyword(T,h)}}function dD(H,T){if(H._schemas[T]||H._refs[T])throw new Error('schema with key or id "'+T+'" already exists')}function nD(H){var T=G.copy(H._opts);for(var h=0;h<A.length;h++)delete T[A[h]];return T}function N(H){var T=H._opts.logger;if(T===!1)H.logger={log:_,warn:_,error:_};else{if(T===void 0)T=console;if(!(typeof T=="object"&&T.log&&T.warn&&T.error))throw new Error("logger must implement log, warn and error methods");H.logger=T}}function _(){}}),kq=50;function XQ(D=kq){let F=new AbortController;return bq(D,F.signal),F}var yq={accessSync(D,F){zD.accessSync(D,F)},cwd(){return process.cwd()},chmodSync(D,F){zD.chmodSync(D,F)},existsSync(D){return zD.existsSync(D)},async stat(D){return uq(D)},statSync(D){return zD.statSync(D)},readFileSync(D,F){return zD.readFileSync(D,{encoding:F.encoding})},readFileBytesSync(D){return zD.readFileSync(D)},readSync(D,F){let Q=void 0;try{Q=zD.openSync(D,"r");let B=Buffer.alloc(F.length),Y=zD.readSync(Q,B,0,F.length,0);return{buffer:B,bytesRead:Y}}finally{if(Q)zD.closeSync(Q)}},writeFileSync(D,F,Q){if(!Q.flush){let Y={encoding:Q.encoding};if(Q.mode!==void 0)Y.mode=Q.mode;zD.writeFileSync(D,F,Y);return}let B;try{let Y=Q.mode!==void 0?Q.mode:void 0;B=zD.openSync(D,"w",Y),zD.writeFileSync(B,F,{encoding:Q.encoding}),zD.fsyncSync(B)}finally{if(B)zD.closeSync(B)}},appendFileSync(D,F){zD.appendFileSync(D,F)},copyFileSync(D,F){zD.copyFileSync(D,F)},unlinkSync(D){zD.unlinkSync(D)},renameSync(D,F){zD.renameSync(D,F)},linkSync(D,F){zD.linkSync(D,F)},symlinkSync(D,F){zD.symlinkSync(D,F)},readlinkSync(D){return zD.readlinkSync(D)},realpathSync(D){return zD.realpathSync(D)},mkdirSync(D){if(!zD.existsSync(D))zD.mkdirSync(D,{recursive:!0,mode:448})},readdirSync(D){return zD.readdirSync(D,{withFileTypes:!0})},readdirStringSync(D){return zD.readdirSync(D)},isDirEmptySync(D){return this.readdirSync(D).length===0},rmdirSync(D){zD.rmdirSync(D)},rmSync(D,F){zD.rmSync(D,F)},createWriteStream(D){return zD.createWriteStream(D)}},fq=yq;function gq(){return fq}class I2 extends Error{}function YQ(){return process.versions.bun!==void 0}class JQ{options;child;childStdin;childStdout;ready=!1;abortController;exitError;exitListeners=[];processExitHandler;abortHandler;constructor(D){this.options=D,this.abortController=D.abortController||XQ(),this.initialize()}initialize(){try{let{additionalDirectories:D=[],agents:F,cwd:Q,executable:B=YQ()?"bun":"node",executableArgs:Y=[],extraArgs:J={},pathToClaudeCodeExecutable:X,env:C={...process.env},stderr:W,customSystemPrompt:z,appendSystemPrompt:G,maxTurns:q,model:E,fallbackModel:U,permissionMode:A,permissionPromptToolName:K,continueConversation:V,resume:j,settingSources:L,allowedTools:R=[],disallowedTools:b=[],mcpServers:k,strictMcpConfig:I,canUseTool:u,includePartialMessages:f}=this.options,O=["--output-format","stream-json","--verbose","--input-format","stream-json"];if(typeof z==="string")O.push("--system-prompt",z);if(G)O.push("--append-system-prompt",G);if(q)O.push("--max-turns",q.toString());if(E)O.push("--model",E);if(C.DEBUG)O.push("--debug-to-stderr");if(u){if(K)throw new Error("canUseTool callback cannot be used with permissionPromptToolName. Please use one or the other.");O.push("--permission-prompt-tool","stdio")}else if(K)O.push("--permission-prompt-tool",K);if(V)O.push("--continue");if(j)O.push("--resume",j);if(R.length>0)O.push("--allowedTools",R.join(","));if(b.length>0)O.push("--disallowedTools",b.join(","));if(k&&Object.keys(k).length>0)O.push("--mcp-config",JSON.stringify({mcpServers:k}));if(F&&Object.keys(F).length>0)O.push("--agents",JSON.stringify(F));if(L)O.push("--setting-sources",L.join(","));if(I)O.push("--strict-mcp-config");if(A)O.push("--permission-mode",A);if(U){if(E&&U===E)throw new Error("Fallback model cannot be the same as the main model. Please specify a different model for fallbackModel option.");O.push("--fallback-model",U)}if(f)O.push("--include-partial-messages");for(let n of D)O.push("--add-dir",n);if(this.options.forkSession)O.push("--fork-session");if(this.options.resumeSessionAt)O.push("--resume-session-at",this.options.resumeSessionAt);for(let[n,a]of Object.entries(J))if(a===null)O.push(`--${n}`);else O.push(`--${n}`,a);if(!C.CLAUDE_CODE_ENTRYPOINT)C.CLAUDE_CODE_ENTRYPOINT="sdk-ts";if(!gq().existsSync(X)){let n=rB(X)?`Claude Code native binary not found at ${X}. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.`:`Claude Code executable not found at ${X}. Is options.pathToClaudeCodeExecutable set?`;throw new ReferenceError(n)}let x=rB(X),w=x?X:B,S=x?O:[...Y,X,...O];this.logForDebugging(x?`Spawning Claude Code native binary: ${X} ${O.join(" ")}`:`Spawning Claude Code process: ${B} ${[...Y,X,...O].join(" ")}`);let g=C.DEBUG||W?"pipe":"ignore";if(this.child=vq(w,S,{cwd:Q,stdio:["pipe","pipe",g],signal:this.abortController.signal,env:C}),this.childStdin=this.child.stdin,this.childStdout=this.child.stdout,C.DEBUG||W)this.child.stderr.on("data",(n)=>{if(this.logForDebugging(`Claude Code stderr: ${n.toString()}`),W)W(n.toString())});let d=()=>{if(this.child&&!this.child.killed)this.child.kill("SIGTERM")};this.processExitHandler=d,this.abortHandler=d,process.on("exit",this.processExitHandler),this.abortController.signal.addEventListener("abort",this.abortHandler),this.child.on("error",(n)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new I2("Claude Code process aborted by user");else this.exitError=new Error(`Failed to spawn Claude Code process: ${n.message}`),this.logForDebugging(this.exitError.message)}),this.child.on("close",(n,a)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new I2("Claude Code process aborted by user");else{let DD=this.getProcessExitError(n,a);if(DD)this.exitError=DD,this.logForDebugging(DD.message)}}),this.ready=!0}catch(D){throw this.ready=!1,D}}getProcessExitError(D,F){if(D!==0&&D!==null)return new Error(`Claude Code process exited with code ${D}`);else if(F)return new Error(`Claude Code process terminated by signal ${F}`);return}logForDebugging(D){if(process.env.DEBUG)process.stderr.write(`${D}
`);if(this.options.stderr)this.options.stderr(D)}write(D){if(this.abortController.signal.aborted)throw new I2("Operation aborted");if(!this.ready||!this.childStdin)throw new Error("ProcessTransport is not ready for writing");if(this.child?.killed||this.child?.exitCode!==null)throw new Error("Cannot write to terminated process");if(this.exitError)throw new Error(`Cannot write to process that exited with error: ${this.exitError.message}`);if(process.env.DEBUG_SDK)process.stderr.write(`[ProcessTransport] Writing to stdin: ${D.substring(0,100)}
`);try{if(!this.childStdin.write(D)&&process.env.DEBUG_SDK)console.warn("[ProcessTransport] Write buffer full, data queued")}catch(F){throw this.ready=!1,new Error(`Failed to write to process stdin: ${F.message}`)}}close(){if(this.childStdin)this.childStdin.end(),this.childStdin=void 0;if(this.processExitHandler)process.off("exit",this.processExitHandler),this.processExitHandler=void 0;if(this.abortHandler)this.abortController.signal.removeEventListener("abort",this.abortHandler),this.abortHandler=void 0;for(let{handler:D}of this.exitListeners)this.child?.off("exit",D);if(this.exitListeners=[],this.child&&!this.child.killed)this.child.kill("SIGTERM"),setTimeout(()=>{if(this.child&&!this.child.killed)this.child.kill("SIGKILL")},5000);this.ready=!1}isReady(){return this.ready}async*readMessages(){if(!this.childStdout)throw new Error("ProcessTransport output stream not available");let D=xq({input:this.childStdout});try{for await(let F of D)if(F.trim())yield JSON.parse(F);await this.waitForExit()}catch(F){throw F}finally{D.close()}}endInput(){if(this.childStdin)this.childStdin.end()}getInputStream(){return this.childStdin}onExit(D){if(!this.child)return()=>{};let F=(Q,B)=>{let Y=this.getProcessExitError(Q,B);D(Y)};return this.child.on("exit",F),this.exitListeners.push({callback:D,handler:F}),()=>{if(this.child)this.child.off("exit",F);let Q=this.exitListeners.findIndex((B)=>B.handler===F);if(Q!==-1)this.exitListeners.splice(Q,1)}}async waitForExit(){if(!this.child){if(this.exitError)throw this.exitError;return}if(this.child.exitCode!==null||this.child.killed){if(this.exitError)throw this.exitError;return}return new Promise((D,F)=>{let Q=(Y,J)=>{if(this.abortController.signal.aborted){F(new I2("Operation aborted"));return}let X=this.getProcessExitError(Y,J);if(X)F(X);else D()};this.child.once("exit",Q);let B=(Y)=>{this.child.off("exit",Q),F(Y)};this.child.once("error",B),this.child.once("exit",()=>{this.child.off("error",B)})})}}function rB(D){return![".js",".mjs",".tsx",".ts",".jsx"].some((Q)=>D.endsWith(Q))}class CQ{returned;queue=[];readResolve;readReject;isDone=!1;hasError;started=!1;constructor(D){this.returned=D}[Symbol.asyncIterator](){if(this.started)throw new Error("Stream can only be iterated once");return this.started=!0,this}next(){if(this.queue.length>0)return Promise.resolve({done:!1,value:this.queue.shift()});if(this.isDone)return Promise.resolve({done:!0,value:void 0});if(this.hasError)return Promise.reject(this.hasError);return new Promise((D,F)=>{this.readResolve=D,this.readReject=F})}enqueue(D){if(this.readResolve){let F=this.readResolve;this.readResolve=void 0,this.readReject=void 0,F({done:!1,value:D})}else this.queue.push(D)}done(){if(this.isDone=!0,this.readResolve){let D=this.readResolve;this.readResolve=void 0,this.readReject=void 0,D({done:!0,value:void 0})}}error(D){if(this.hasError=D,this.readReject){let F=this.readReject;this.readResolve=void 0,this.readReject=void 0,F(D)}}return(){if(this.isDone=!0,this.returned)this.returned();return Promise.resolve({done:!0,value:void 0})}}class WQ{sendMcpMessage;isClosed=!1;constructor(D){this.sendMcpMessage=D}onclose;onerror;onmessage;async start(){}async send(D){if(this.isClosed)throw new Error("Transport is closed");this.sendMcpMessage(D)}async close(){if(this.isClosed)return;this.isClosed=!0,this.onclose?.()}}class zQ{transport;isSingleUserTurn;canUseTool;hooks;abortController;pendingControlResponses=new Map;cleanupPerformed=!1;sdkMessages;inputStream=new CQ;initialization;cancelControllers=new Map;hookCallbacks=new Map;nextCallbackId=0;sdkMcpTransports=new Map;pendingMcpResponses=new Map;firstResultReceivedPromise;firstResultReceivedResolve;constructor(D,F,Q,B,Y,J=new Map){this.transport=D,this.isSingleUserTurn=F,this.canUseTool=Q,this.hooks=B,this.abortController=Y;for(let[X,C]of J){let W=new WQ((z)=>this.sendMcpServerMessageToCli(X,z));this.sdkMcpTransports.set(X,W),C.connect(W)}this.sdkMessages=this.readSdkMessages(),this.firstResultReceivedPromise=new Promise((X)=>{this.firstResultReceivedResolve=X}),this.readMessages(),this.initialization=this.initialize(),this.initialization.catch(()=>{})}setError(D){this.inputStream.error(D)}cleanup(D){if(this.cleanupPerformed)return;this.cleanupPerformed=!0;try{if(this.transport.close(),this.pendingControlResponses.clear(),this.pendingMcpResponses.clear(),D)this.inputStream.error(D);else this.inputStream.done()}catch(F){}}next(...[D]){return this.sdkMessages.next(...[D])}return(D){return this.sdkMessages.return(D)}throw(D){return this.sdkMessages.throw(D)}[Symbol.asyncIterator](){return this.sdkMessages}[Symbol.asyncDispose](){return this.sdkMessages[Symbol.asyncDispose]()}async readMessages(){try{for await(let D of this.transport.readMessages()){if(D.type==="control_response"){let F=this.pendingControlResponses.get(D.response.request_id);if(F)F(D.response);continue}else if(D.type==="control_request"){this.handleControlRequest(D);continue}else if(D.type==="control_cancel_request"){this.handleControlCancelRequest(D);continue}else if(D.type==="keep_alive")continue;if(D.type==="result"){if(this.firstResultReceivedResolve)this.firstResultReceivedResolve();if(this.isSingleUserTurn)this.transport.endInput()}this.inputStream.enqueue(D)}this.inputStream.done(),this.cleanup()}catch(D){this.inputStream.error(D),this.cleanup(D)}}async handleControlRequest(D){let F=new AbortController;this.cancelControllers.set(D.request_id,F);try{let Q=await this.processControlRequest(D,F.signal),B={type:"control_response",response:{subtype:"success",request_id:D.request_id,response:Q}};await Promise.resolve(this.transport.write(JSON.stringify(B)+`
`))}catch(Q){let B={type:"control_response",response:{subtype:"error",request_id:D.request_id,error:Q.message||String(Q)}};await Promise.resolve(this.transport.write(JSON.stringify(B)+`
`))}finally{this.cancelControllers.delete(D.request_id)}}handleControlCancelRequest(D){let F=this.cancelControllers.get(D.request_id);if(F)F.abort(),this.cancelControllers.delete(D.request_id)}async processControlRequest(D,F){if(D.request.subtype==="can_use_tool"){if(!this.canUseTool)throw new Error("canUseTool callback is not provided.");return this.canUseTool(D.request.tool_name,D.request.input,{signal:F,suggestions:D.request.permission_suggestions})}else if(D.request.subtype==="hook_callback")return await this.handleHookCallbacks(D.request.callback_id,D.request.input,D.request.tool_use_id,F);else if(D.request.subtype==="mcp_message"){let Q=D.request,B=this.sdkMcpTransports.get(Q.server_name);if(!B)throw new Error(`SDK MCP server not found: ${Q.server_name}`);if("method"in Q.message&&"id"in Q.message&&Q.message.id!==null)return{mcp_response:await this.handleMcpControlRequest(Q.server_name,Q,B)};else{if(B.onmessage)B.onmessage(Q.message);return{mcp_response:{jsonrpc:"2.0",result:{},id:0}}}}throw new Error("Unsupported control request subtype: "+D.request.subtype)}async*readSdkMessages(){for await(let D of this.inputStream)yield D}async initialize(){let D;if(this.hooks){D={};for(let[Y,J]of Object.entries(this.hooks))if(J.length>0)D[Y]=J.map((X)=>{let C=[];for(let W of X.hooks){let z=`hook_${this.nextCallbackId++}`;this.hookCallbacks.set(z,W),C.push(z)}return{matcher:X.matcher,hookCallbackIds:C}})}let F=this.sdkMcpTransports.size>0?Array.from(this.sdkMcpTransports.keys()):void 0,Q={subtype:"initialize",hooks:D,sdkMcpServers:F};return(await this.request(Q)).response}async interrupt(){await this.request({subtype:"interrupt"})}async setPermissionMode(D){await this.request({subtype:"set_permission_mode",mode:D})}async setModel(D){await this.request({subtype:"set_model",model:D})}request(D){let F=Math.random().toString(36).substring(2,15),Q={request_id:F,type:"control_request",request:D};return new Promise((B,Y)=>{this.pendingControlResponses.set(F,(J)=>{if(J.subtype==="success")B(J);else Y(new Error(J.error))}),Promise.resolve(this.transport.write(JSON.stringify(Q)+`
`))})}async supportedCommands(){return(await this.initialization).commands}async supportedModels(){return(await this.initialization).models}async mcpServerStatus(){return(await this.request({subtype:"mcp_status"})).response.mcpServers}async streamInput(D){try{for await(let F of D){if(this.abortController?.signal.aborted)break;await Promise.resolve(this.transport.write(JSON.stringify(F)+`
`))}if(this.sdkMcpTransports.size>0&&this.firstResultReceivedPromise){let Q;if(await Promise.race([this.firstResultReceivedPromise.then(()=>{if(Q)clearTimeout(Q)}),new Promise((B)=>{Q=setTimeout(()=>{B()},1e4)})]),Q)clearTimeout(Q)}this.transport.endInput()}catch(F){if(!(F instanceof I2))throw F}}handleHookCallbacks(D,F,Q,B){let Y=this.hookCallbacks.get(D);if(!Y)throw new Error(`No hook callback found for ID: ${D}`);return Y(F,Q,{signal:B})}sendMcpServerMessageToCli(D,F){if("id"in F&&F.id!==null&&F.id!==void 0){let Q=`${D}:${F.id}`,B=this.pendingMcpResponses.get(Q);if(B){B.resolve(F),this.pendingMcpResponses.delete(Q);return}}throw new Error("No pending request found")}handleMcpControlRequest(D,F,Q){let B="id"in F.message?F.message.id:null,Y=`${D}:${B}`;return new Promise((J,X)=>{let C=null,W=()=>{if(C)clearTimeout(C);this.pendingMcpResponses.delete(Y)},z=(q)=>{W(),J(q)},G=(q)=>{W(),X(q)};if(this.pendingMcpResponses.set(Y,{resolve:z,reject:G}),Q.onmessage)Q.onmessage(F.message);else{W(),X(new Error("No message handler registered"));return}C=setTimeout(()=>{if(this.pendingMcpResponses.has(Y))W(),X(new Error("Request timeout"))},30000)})}}function $q({prompt:D,options:{abortController:F=XQ(),additionalDirectories:Q=[],agents:B,allowedTools:Y=[],appendSystemPrompt:J,canUseTool:X,continue:C,customSystemPrompt:W,cwd:z,disallowedTools:G=[],env:q,executable:E=YQ()?"bun":"node",executableArgs:U=[],extraArgs:A={},fallbackModel:K,forkSession:V,hooks:j,includePartialMessages:L,maxTurns:R,mcpServers:b,model:k,pathToClaudeCodeExecutable:I,permissionMode:u="default",permissionPromptToolName:f,resume:O,resumeSessionAt:y,settingSources:x,stderr:w,strictMcpConfig:S}={}}){if(!q)q={...process.env};if(!q.CLAUDE_CODE_ENTRYPOINT)q.CLAUDE_CODE_ENTRYPOINT="sdk-ts";if(!I)throw new Error("pathToClaudeCodeExecutable is required");let g={},d=new Map;if(b)for(let[o,JD]of Object.entries(b))if(JD.type==="sdk"&&"instance"in JD)d.set(o,JD.instance),g[o]={type:"sdk",name:o};else g[o]=JD;let n=typeof D==="string",a=new JQ({abortController:F,additionalDirectories:Q,agents:B,cwd:z,executable:E,executableArgs:U,extraArgs:A,pathToClaudeCodeExecutable:I,env:q,forkSession:V,stderr:w,customSystemPrompt:W,appendSystemPrompt:J,maxTurns:R,model:k,fallbackModel:K,permissionMode:u,permissionPromptToolName:f,continueConversation:C,resume:O,resumeSessionAt:y,settingSources:x,allowedTools:Y,disallowedTools:G,mcpServers:g,strictMcpConfig:S,canUseTool:!!X,hooks:!!j,includePartialMessages:L}),DD=new zQ(a,n,X,j,F,d);if(typeof D==="string")a.write(JSON.stringify({type:"user",session_id:"",message:{role:"user",content:[{type:"text",text:D}]},parent_tool_use_id:null})+`
`);else DD.streamInput(D);return DD}var Z={};rG(Z,{void:()=>RK,util:()=>jD,unknown:()=>NK,union:()=>wK,undefined:()=>VK,tuple:()=>SK,transformer:()=>tB,symbol:()=>AK,string:()=>ZQ,strictObject:()=>IK,setErrorMap:()=>lq,set:()=>vK,record:()=>bK,quotelessJson:()=>hq,promise:()=>$K,preprocess:()=>lK,pipeline:()=>dK,ostring:()=>cK,optional:()=>hK,onumber:()=>pK,oboolean:()=>nK,objectUtil:()=>e7,object:()=>OK,number:()=>AQ,nullable:()=>mK,null:()=>LK,never:()=>jK,nativeEnum:()=>gK,nan:()=>UK,map:()=>kK,makeIssue:()=>c6,literal:()=>yK,lazy:()=>uK,late:()=>KK,isValid:()=>tF,isDirty:()=>F9,isAsync:()=>T8,isAborted:()=>D9,intersection:()=>PK,instanceof:()=>HK,getParsedType:()=>RF,getErrorMap:()=>d6,function:()=>xK,enum:()=>fK,effect:()=>tB,discriminatedUnion:()=>TK,defaultErrorMap:()=>P2,datetimeRegex:()=>HQ,date:()=>ZK,custom:()=>EQ,coerce:()=>iK,boolean:()=>VQ,bigint:()=>EK,array:()=>_K,any:()=>MK,addIssueToContext:()=>r,ZodVoid:()=>S8,ZodUnknown:()=>vF,ZodUnion:()=>v2,ZodUndefined:()=>b2,ZodType:()=>ED,ZodTuple:()=>HF,ZodTransformer:()=>d0,ZodSymbol:()=>P8,ZodString:()=>FF,ZodSet:()=>F2,ZodSchema:()=>ED,ZodRecord:()=>b8,ZodReadonly:()=>h2,ZodPromise:()=>B2,ZodPipeline:()=>x8,ZodParsedType:()=>e,ZodOptional:()=>QF,ZodObject:()=>lD,ZodNumber:()=>xF,ZodNullable:()=>_F,ZodNull:()=>k2,ZodNever:()=>KF,ZodNativeEnum:()=>f2,ZodNaN:()=>v8,ZodMap:()=>k8,ZodLiteral:()=>y2,ZodLazy:()=>u2,ZodIssueCode:()=>i,ZodIntersection:()=>x2,ZodFunction:()=>T2,ZodFirstPartyTypeKind:()=>qD,ZodError:()=>b0,ZodEnum:()=>yF,ZodEffects:()=>d0,ZodDiscriminatedUnion:()=>p6,ZodDefault:()=>g2,ZodDate:()=>eF,ZodCatch:()=>$2,ZodBranded:()=>n6,ZodBoolean:()=>S2,ZodBigInt:()=>uF,ZodArray:()=>BF,ZodAny:()=>D2,Schema:()=>ED,ParseStatus:()=>q0,OK:()=>L0,NEVER:()=>aK,INVALID:()=>GD,EMPTY_PATH:()=>dq,DIRTY:()=>w2,BRAND:()=>qK});var jD;(function(D){D.assertEqual=(Y)=>{};function F(Y){}D.assertIs=F;function Q(Y){throw new Error}D.assertNever=Q,D.arrayToEnum=(Y)=>{let J={};for(let X of Y)J[X]=X;return J},D.getValidEnumValues=(Y)=>{let J=D.objectKeys(Y).filter((C)=>typeof Y[Y[C]]!=="number"),X={};for(let C of J)X[C]=Y[C];return D.objectValues(X)},D.objectValues=(Y)=>{return D.objectKeys(Y).map(function(J){return Y[J]})},D.objectKeys=typeof Object.keys==="function"?(Y)=>Object.keys(Y):(Y)=>{let J=[];for(let X in Y)if(Object.prototype.hasOwnProperty.call(Y,X))J.push(X);return J},D.find=(Y,J)=>{for(let X of Y)if(J(X))return X;return},D.isInteger=typeof Number.isInteger==="function"?(Y)=>Number.isInteger(Y):(Y)=>typeof Y==="number"&&Number.isFinite(Y)&&Math.floor(Y)===Y;function B(Y,J=" | "){return Y.map((X)=>typeof X==="string"?`'${X}'`:X).join(J)}D.joinValues=B,D.jsonStringifyReplacer=(Y,J)=>{if(typeof J==="bigint")return J.toString();return J}})(jD||(jD={}));var e7;(function(D){D.mergeShapes=(F,Q)=>{return{...F,...Q}}})(e7||(e7={}));var e=jD.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),RF=(D)=>{switch(typeof D){case"undefined":return e.undefined;case"string":return e.string;case"number":return Number.isNaN(D)?e.nan:e.number;case"boolean":return e.boolean;case"function":return e.function;case"bigint":return e.bigint;case"symbol":return e.symbol;case"object":if(Array.isArray(D))return e.array;if(D===null)return e.null;if(D.then&&typeof D.then==="function"&&D.catch&&typeof D.catch==="function")return e.promise;if(typeof Map!=="undefined"&&D instanceof Map)return e.map;if(typeof Set!=="undefined"&&D instanceof Set)return e.set;if(typeof Date!=="undefined"&&D instanceof Date)return e.date;return e.object;default:return e.unknown}},i=jD.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"]),hq=(D)=>{return JSON.stringify(D,null,2).replace(/"([^"]+)":/g,"$1:")};class b0 extends Error{get errors(){return this.issues}constructor(D){super();this.issues=[],this.addIssue=(Q)=>{this.issues=[...this.issues,Q]},this.addIssues=(Q=[])=>{this.issues=[...this.issues,...Q]};let F=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,F);else this.__proto__=F;this.name="ZodError",this.issues=D}format(D){let F=D||function(Y){return Y.message},Q={_errors:[]},B=(Y)=>{for(let J of Y.issues)if(J.code==="invalid_union")J.unionErrors.map(B);else if(J.code==="invalid_return_type")B(J.returnTypeError);else if(J.code==="invalid_arguments")B(J.argumentsError);else if(J.path.length===0)Q._errors.push(F(J));else{let X=Q,C=0;while(C<J.path.length){let W=J.path[C];if(C!==J.path.length-1)X[W]=X[W]||{_errors:[]};else X[W]=X[W]||{_errors:[]},X[W]._errors.push(F(J));X=X[W],C++}}};return B(this),Q}static assert(D){if(!(D instanceof b0))throw new Error(`Not a ZodError: ${D}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,jD.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(D=(F)=>F.message){let F={},Q=[];for(let B of this.issues)if(B.path.length>0){let Y=B.path[0];F[Y]=F[Y]||[],F[Y].push(D(B))}else Q.push(D(B));return{formErrors:Q,fieldErrors:F}}get formErrors(){return this.flatten()}}b0.create=(D)=>{return new b0(D)};var mq=(D,F)=>{let Q;switch(D.code){case i.invalid_type:if(D.received===e.undefined)Q="Required";else Q=`Expected ${D.expected}, received ${D.received}`;break;case i.invalid_literal:Q=`Invalid literal value, expected ${JSON.stringify(D.expected,jD.jsonStringifyReplacer)}`;break;case i.unrecognized_keys:Q=`Unrecognized key(s) in object: ${jD.joinValues(D.keys,", ")}`;break;case i.invalid_union:Q="Invalid input";break;case i.invalid_union_discriminator:Q=`Invalid discriminator value. Expected ${jD.joinValues(D.options)}`;break;case i.invalid_enum_value:Q=`Invalid enum value. Expected ${jD.joinValues(D.options)}, received '${D.received}'`;break;case i.invalid_arguments:Q="Invalid function arguments";break;case i.invalid_return_type:Q="Invalid function return type";break;case i.invalid_date:Q="Invalid date";break;case i.invalid_string:if(typeof D.validation==="object")if("includes"in D.validation){if(Q=`Invalid input: must include "${D.validation.includes}"`,typeof D.validation.position==="number")Q=`${Q} at one or more positions greater than or equal to ${D.validation.position}`}else if("startsWith"in D.validation)Q=`Invalid input: must start with "${D.validation.startsWith}"`;else if("endsWith"in D.validation)Q=`Invalid input: must end with "${D.validation.endsWith}"`;else jD.assertNever(D.validation);else if(D.validation!=="regex")Q=`Invalid ${D.validation}`;else Q="Invalid";break;case i.too_small:if(D.type==="array")Q=`Array must contain ${D.exact?"exactly":D.inclusive?"at least":"more than"} ${D.minimum} element(s)`;else if(D.type==="string")Q=`String must contain ${D.exact?"exactly":D.inclusive?"at least":"over"} ${D.minimum} character(s)`;else if(D.type==="number")Q=`Number must be ${D.exact?"exactly equal to ":D.inclusive?"greater than or equal to ":"greater than "}${D.minimum}`;else if(D.type==="bigint")Q=`Number must be ${D.exact?"exactly equal to ":D.inclusive?"greater than or equal to ":"greater than "}${D.minimum}`;else if(D.type==="date")Q=`Date must be ${D.exact?"exactly equal to ":D.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(D.minimum))}`;else Q="Invalid input";break;case i.too_big:if(D.type==="array")Q=`Array must contain ${D.exact?"exactly":D.inclusive?"at most":"less than"} ${D.maximum} element(s)`;else if(D.type==="string")Q=`String must contain ${D.exact?"exactly":D.inclusive?"at most":"under"} ${D.maximum} character(s)`;else if(D.type==="number")Q=`Number must be ${D.exact?"exactly":D.inclusive?"less than or equal to":"less than"} ${D.maximum}`;else if(D.type==="bigint")Q=`BigInt must be ${D.exact?"exactly":D.inclusive?"less than or equal to":"less than"} ${D.maximum}`;else if(D.type==="date")Q=`Date must be ${D.exact?"exactly":D.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(D.maximum))}`;else Q="Invalid input";break;case i.custom:Q="Invalid input";break;case i.invalid_intersection_types:Q="Intersection results could not be merged";break;case i.not_multiple_of:Q=`Number must be a multiple of ${D.multipleOf}`;break;case i.not_finite:Q="Number must be finite";break;default:Q=F.defaultError,jD.assertNever(D)}return{message:Q}},P2=mq,GQ=P2;function lq(D){GQ=D}function d6(){return GQ}var c6=(D)=>{let{data:F,path:Q,errorMaps:B,issueData:Y}=D,J=[...Q,...Y.path||[]],X={...Y,path:J};if(Y.message!==void 0)return{...Y,path:J,message:Y.message};let C="",W=B.filter((z)=>!!z).slice().reverse();for(let z of W)C=z(X,{data:F,defaultError:C}).message;return{...Y,path:J,message:C}},dq=[];function r(D,F){let Q=d6(),B=c6({issueData:F,data:D.data,path:D.path,errorMaps:[D.common.contextualErrorMap,D.schemaErrorMap,Q,Q===P2?void 0:P2].filter((Y)=>!!Y)});D.common.issues.push(B)}class q0{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(D,F){let Q=[];for(let B of F){if(B.status==="aborted")return GD;if(B.status==="dirty")D.dirty();Q.push(B.value)}return{status:D.value,value:Q}}static async mergeObjectAsync(D,F){let Q=[];for(let B of F){let Y=await B.key,J=await B.value;Q.push({key:Y,value:J})}return q0.mergeObjectSync(D,Q)}static mergeObjectSync(D,F){let Q={};for(let B of F){let{key:Y,value:J}=B;if(Y.status==="aborted")return GD;if(J.status==="aborted")return GD;if(Y.status==="dirty")D.dirty();if(J.status==="dirty")D.dirty();if(Y.value!=="__proto__"&&(typeof J.value!=="undefined"||B.alwaysSet))Q[Y.value]=J.value}return{status:D.value,value:Q}}}var GD=Object.freeze({status:"aborted"}),w2=(D)=>({status:"dirty",value:D}),L0=(D)=>({status:"valid",value:D}),D9=(D)=>D.status==="aborted",F9=(D)=>D.status==="dirty",tF=(D)=>D.status==="valid",T8=(D)=>typeof Promise!=="undefined"&&D instanceof Promise,XD;(function(D){D.errToObj=(F)=>typeof F==="string"?{message:F}:F||{},D.toString=(F)=>typeof F==="string"?F:F?.message})(XD||(XD={}));class XF{constructor(D,F,Q,B){this._cachedPath=[],this.parent=D,this.data=F,this._path=Q,this._key=B}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 oB=(D,F)=>{if(tF(F))return{success:!0,data:F.value};else{if(!D.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let Q=new b0(D.common.issues);return this._error=Q,this._error}}}};function UD(D){if(!D)return{};let{errorMap:F,invalid_type_error:Q,required_error:B,description:Y}=D;if(F&&(Q||B))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(F)return{errorMap:F,description:Y};return{errorMap:(X,C)=>{let{message:W}=D;if(X.code==="invalid_enum_value")return{message:W??C.defaultError};if(typeof C.data==="undefined")return{message:W??B??C.defaultError};if(X.code!=="invalid_type")return{message:C.defaultError};return{message:W??Q??C.defaultError}},description:Y}}class ED{get description(){return this._def.description}_getType(D){return RF(D.data)}_getOrReturnCtx(D,F){return F||{common:D.parent.common,data:D.data,parsedType:RF(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}_processInputParams(D){return{status:new q0,ctx:{common:D.parent.common,data:D.data,parsedType:RF(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}}_parseSync(D){let F=this._parse(D);if(T8(F))throw new Error("Synchronous parse encountered promise.");return F}_parseAsync(D){let F=this._parse(D);return Promise.resolve(F)}parse(D,F){let Q=this.safeParse(D,F);if(Q.success)return Q.data;throw Q.error}safeParse(D,F){let Q={common:{issues:[],async:F?.async??!1,contextualErrorMap:F?.errorMap},path:F?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:RF(D)},B=this._parseSync({data:D,path:Q.path,parent:Q});return oB(Q,B)}"~validate"(D){let F={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:RF(D)};if(!this["~standard"].async)try{let Q=this._parseSync({data:D,path:[],parent:F});return tF(Q)?{value:Q.value}:{issues:F.common.issues}}catch(Q){if(Q?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;F.common={issues:[],async:!0}}return this._parseAsync({data:D,path:[],parent:F}).then((Q)=>tF(Q)?{value:Q.value}:{issues:F.common.issues})}async parseAsync(D,F){let Q=await this.safeParseAsync(D,F);if(Q.success)return Q.data;throw Q.error}async safeParseAsync(D,F){let Q={common:{issues:[],contextualErrorMap:F?.errorMap,async:!0},path:F?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:RF(D)},B=this._parse({data:D,path:Q.path,parent:Q}),Y=await(T8(B)?B:Promise.resolve(B));return oB(Q,Y)}refine(D,F){let Q=(B)=>{if(typeof F==="string"||typeof F==="undefined")return{message:F};else if(typeof F==="function")return F(B);else return F};return this._refinement((B,Y)=>{let J=D(B),X=()=>Y.addIssue({code:i.custom,...Q(B)});if(typeof Promise!=="undefined"&&J instanceof Promise)return J.then((C)=>{if(!C)return X(),!1;else return!0});if(!J)return X(),!1;else return!0})}refinement(D,F){return this._refinement((Q,B)=>{if(!D(Q))return B.addIssue(typeof F==="function"?F(Q,B):F),!1;else return!0})}_refinement(D){return new d0({schema:this,typeName:qD.ZodEffects,effect:{type:"refinement",refinement:D}})}superRefine(D){return this._refinement(D)}constructor(D){this.spa=this.safeParseAsync,this._def=D,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:(F)=>this["~validate"](F)}}optional(){return QF.create(this,this._def)}nullable(){return _F.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return BF.create(this)}promise(){return B2.create(this,this._def)}or(D){return v2.create([this,D],this._def)}and(D){return x2.create(this,D,this._def)}transform(D){return new d0({...UD(this._def),schema:this,typeName:qD.ZodEffects,effect:{type:"transform",transform:D}})}default(D){let F=typeof D==="function"?D:()=>D;return new g2({...UD(this._def),innerType:this,defaultValue:F,typeName:qD.ZodDefault})}brand(){return new n6({typeName:qD.ZodBranded,type:this,...UD(this._def)})}catch(D){let F=typeof D==="function"?D:()=>D;return new $2({...UD(this._def),innerType:this,catchValue:F,typeName:qD.ZodCatch})}describe(D){return new this.constructor({...this._def,description:D})}pipe(D){return x8.create(this,D)}readonly(){return h2.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var cq=/^c[^\s-]{8,}$/i,pq=/^[0-9a-z]+$/,nq=/^[0-9A-HJKMNP-TV-Z]{26}$/i,iq=/^[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,aq=/^[a-z0-9_-]{21}$/i,rq=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,oq=/^[-+]?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)?)??$/,sq=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,tq="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",s7,eq=/^(?:(?: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])$/,DK=/^(?:(?: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])$/,FK=/^(([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]))$/,BK=/^(([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])$/,QK=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,XK=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,qQ="((\\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])))",YK=new RegExp(`^${qQ}$`);function KQ(D){let F="[0-5]\\d";if(D.precision)F=`${F}\\.\\d{${D.precision}}`;else if(D.precision==null)F=`${F}(\\.\\d+)?`;let Q=D.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${F})${Q}`}function JK(D){return new RegExp(`^${KQ(D)}$`)}function HQ(D){let F=`${qQ}T${KQ(D)}`,Q=[];if(Q.push(D.local?"Z?":"Z"),D.offset)Q.push("([+-]\\d{2}:?\\d{2})");return F=`${F}(${Q.join("|")})`,new RegExp(`^${F}$`)}function CK(D,F){if((F==="v4"||!F)&&eq.test(D))return!0;if((F==="v6"||!F)&&FK.test(D))return!0;return!1}function WK(D,F){if(!rq.test(D))return!1;try{let[Q]=D.split(".");if(!Q)return!1;let B=Q.replace(/-/g,"+").replace(/_/g,"/").padEnd(Q.length+(4-Q.length%4)%4,"="),Y=JSON.parse(atob(B));if(typeof Y!=="object"||Y===null)return!1;if("typ"in Y&&Y?.typ!=="JWT")return!1;if(!Y.alg)return!1;if(F&&Y.alg!==F)return!1;return!0}catch{return!1}}function zK(D,F){if((F==="v4"||!F)&&DK.test(D))return!0;if((F==="v6"||!F)&&BK.test(D))return!0;return!1}class FF extends ED{_parse(D){if(this._def.coerce)D.data=String(D.data);if(this._getType(D)!==e.string){let Y=this._getOrReturnCtx(D);return r(Y,{code:i.invalid_type,expected:e.string,received:Y.parsedType}),GD}let Q=new q0,B=void 0;for(let Y of this._def.checks)if(Y.kind==="min"){if(D.data.length<Y.value)B=this._getOrReturnCtx(D,B),r(B,{code:i.too_small,minimum:Y.value,type:"string",inclusive:!0,exact:!1,message:Y.message}),Q.dirty()}else if(Y.kind==="max"){if(D.data.length>Y.value)B=this._getOrReturnCtx(D,B),r(B,{code:i.too_big,maximum:Y.value,type:"string",inclusive:!0,exact:!1,message:Y.message}),Q.dirty()}else if(Y.kind==="length"){let J=D.data.length>Y.value,X=D.data.length<Y.value;if(J||X){if(B=this._getOrReturnCtx(D,B),J)r(B,{code:i.too_big,maximum:Y.value,type:"string",inclusive:!0,exact:!0,message:Y.message});else if(X)r(B,{code:i.too_small,minimum:Y.value,type:"string",inclusive:!0,exact:!0,message:Y.message});Q.dirty()}}else if(Y.kind==="email"){if(!sq.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"email",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="emoji"){if(!s7)s7=new RegExp(tq,"u");if(!s7.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"emoji",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="uuid"){if(!iq.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"uuid",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="nanoid"){if(!aq.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"nanoid",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="cuid"){if(!cq.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"cuid",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="cuid2"){if(!pq.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"cuid2",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="ulid"){if(!nq.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"ulid",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="url")try{new URL(D.data)}catch{B=this._getOrReturnCtx(D,B),r(B,{validation:"url",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="regex"){if(Y.regex.lastIndex=0,!Y.regex.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"regex",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="trim")D.data=D.data.trim();else if(Y.kind==="includes"){if(!D.data.includes(Y.value,Y.position))B=this._getOrReturnCtx(D,B),r(B,{code:i.invalid_string,validation:{includes:Y.value,position:Y.position},message:Y.message}),Q.dirty()}else if(Y.kind==="toLowerCase")D.data=D.data.toLowerCase();else if(Y.kind==="toUpperCase")D.data=D.data.toUpperCase();else if(Y.kind==="startsWith"){if(!D.data.startsWith(Y.value))B=this._getOrReturnCtx(D,B),r(B,{code:i.invalid_string,validation:{startsWith:Y.value},message:Y.message}),Q.dirty()}else if(Y.kind==="endsWith"){if(!D.data.endsWith(Y.value))B=this._getOrReturnCtx(D,B),r(B,{code:i.invalid_string,validation:{endsWith:Y.value},message:Y.message}),Q.dirty()}else if(Y.kind==="datetime"){if(!HQ(Y).test(D.data))B=this._getOrReturnCtx(D,B),r(B,{code:i.invalid_string,validation:"datetime",message:Y.message}),Q.dirty()}else if(Y.kind==="date"){if(!YK.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{code:i.invalid_string,validation:"date",message:Y.message}),Q.dirty()}else if(Y.kind==="time"){if(!JK(Y).test(D.data))B=this._getOrReturnCtx(D,B),r(B,{code:i.invalid_string,validation:"time",message:Y.message}),Q.dirty()}else if(Y.kind==="duration"){if(!oq.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"duration",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="ip"){if(!CK(D.data,Y.version))B=this._getOrReturnCtx(D,B),r(B,{validation:"ip",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="jwt"){if(!WK(D.data,Y.alg))B=this._getOrReturnCtx(D,B),r(B,{validation:"jwt",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="cidr"){if(!zK(D.data,Y.version))B=this._getOrReturnCtx(D,B),r(B,{validation:"cidr",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="base64"){if(!QK.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"base64",code:i.invalid_string,message:Y.message}),Q.dirty()}else if(Y.kind==="base64url"){if(!XK.test(D.data))B=this._getOrReturnCtx(D,B),r(B,{validation:"base64url",code:i.invalid_string,message:Y.message}),Q.dirty()}else jD.assertNever(Y);return{status:Q.value,value:D.data}}_regex(D,F,Q){return this.refinement((B)=>D.test(B),{validation:F,code:i.invalid_string,...XD.errToObj(Q)})}_addCheck(D){return new FF({...this._def,checks:[...this._def.checks,D]})}email(D){return this._addCheck({kind:"email",...XD.errToObj(D)})}url(D){return this._addCheck({kind:"url",...XD.errToObj(D)})}emoji(D){return this._addCheck({kind:"emoji",...XD.errToObj(D)})}uuid(D){return this._addCheck({kind:"uuid",...XD.errToObj(D)})}nanoid(D){return this._addCheck({kind:"nanoid",...XD.errToObj(D)})}cuid(D){return this._addCheck({kind:"cuid",...XD.errToObj(D)})}cuid2(D){return this._addCheck({kind:"cuid2",...XD.errToObj(D)})}ulid(D){return this._addCheck({kind:"ulid",...XD.errToObj(D)})}base64(D){return this._addCheck({kind:"base64",...XD.errToObj(D)})}base64url(D){return this._addCheck({kind:"base64url",...XD.errToObj(D)})}jwt(D){return this._addCheck({kind:"jwt",...XD.errToObj(D)})}ip(D){return this._addCheck({kind:"ip",...XD.errToObj(D)})}cidr(D){return this._addCheck({kind:"cidr",...XD.errToObj(D)})}datetime(D){if(typeof D==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:D});return this._addCheck({kind:"datetime",precision:typeof D?.precision==="undefined"?null:D?.precision,offset:D?.offset??!1,local:D?.local??!1,...XD.errToObj(D?.message)})}date(D){return this._addCheck({kind:"date",message:D})}time(D){if(typeof D==="string")return this._addCheck({kind:"time",precision:null,message:D});return this._addCheck({kind:"time",precision:typeof D?.precision==="undefined"?null:D?.precision,...XD.errToObj(D?.message)})}duration(D){return this._addCheck({kind:"duration",...XD.errToObj(D)})}regex(D,F){return this._addCheck({kind:"regex",regex:D,...XD.errToObj(F)})}includes(D,F){return this._addCheck({kind:"includes",value:D,position:F?.position,...XD.errToObj(F?.message)})}startsWith(D,F){return this._addCheck({kind:"startsWith",value:D,...XD.errToObj(F)})}endsWith(D,F){return this._addCheck({kind:"endsWith",value:D,...XD.errToObj(F)})}min(D,F){return this._addCheck({kind:"min",value:D,...XD.errToObj(F)})}max(D,F){return this._addCheck({kind:"max",value:D,...XD.errToObj(F)})}length(D,F){return this._addCheck({kind:"length",value:D,...XD.errToObj(F)})}nonempty(D){return this.min(1,XD.errToObj(D))}trim(){return new FF({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new FF({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new FF({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((D)=>D.kind==="datetime")}get isDate(){return!!this._def.checks.find((D)=>D.kind==="date")}get isTime(){return!!this._def.checks.find((D)=>D.kind==="time")}get isDuration(){return!!this._def.checks.find((D)=>D.kind==="duration")}get isEmail(){return!!this._def.checks.find((D)=>D.kind==="email")}get isURL(){return!!this._def.checks.find((D)=>D.kind==="url")}get isEmoji(){return!!this._def.checks.find((D)=>D.kind==="emoji")}get isUUID(){return!!this._def.checks.find((D)=>D.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((D)=>D.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((D)=>D.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((D)=>D.kind==="cuid2")}get isULID(){return!!this._def.checks.find((D)=>D.kind==="ulid")}get isIP(){return!!this._def.checks.find((D)=>D.kind==="ip")}get isCIDR(){return!!this._def.checks.find((D)=>D.kind==="cidr")}get isBase64(){return!!this._def.checks.find((D)=>D.kind==="base64")}get isBase64url(){return!!this._def.checks.find((D)=>D.kind==="base64url")}get minLength(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D}get maxLength(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D}}FF.create=(D)=>{return new FF({checks:[],typeName:qD.ZodString,coerce:D?.coerce??!1,...UD(D)})};function GK(D,F){let Q=(D.toString().split(".")[1]||"").length,B=(F.toString().split(".")[1]||"").length,Y=Q>B?Q:B,J=Number.parseInt(D.toFixed(Y).replace(".","")),X=Number.parseInt(F.toFixed(Y).replace(".",""));return J%X/10**Y}class xF extends ED{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(D){if(this._def.coerce)D.data=Number(D.data);if(this._getType(D)!==e.number){let Y=this._getOrReturnCtx(D);return r(Y,{code:i.invalid_type,expected:e.number,received:Y.parsedType}),GD}let Q=void 0,B=new q0;for(let Y of this._def.checks)if(Y.kind==="int"){if(!jD.isInteger(D.data))Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.invalid_type,expected:"integer",received:"float",message:Y.message}),B.dirty()}else if(Y.kind==="min"){if(Y.inclusive?D.data<Y.value:D.data<=Y.value)Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.too_small,minimum:Y.value,type:"number",inclusive:Y.inclusive,exact:!1,message:Y.message}),B.dirty()}else if(Y.kind==="max"){if(Y.inclusive?D.data>Y.value:D.data>=Y.value)Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.too_big,maximum:Y.value,type:"number",inclusive:Y.inclusive,exact:!1,message:Y.message}),B.dirty()}else if(Y.kind==="multipleOf"){if(GK(D.data,Y.value)!==0)Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.not_multiple_of,multipleOf:Y.value,message:Y.message}),B.dirty()}else if(Y.kind==="finite"){if(!Number.isFinite(D.data))Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.not_finite,message:Y.message}),B.dirty()}else jD.assertNever(Y);return{status:B.value,value:D.data}}gte(D,F){return this.setLimit("min",D,!0,XD.toString(F))}gt(D,F){return this.setLimit("min",D,!1,XD.toString(F))}lte(D,F){return this.setLimit("max",D,!0,XD.toString(F))}lt(D,F){return this.setLimit("max",D,!1,XD.toString(F))}setLimit(D,F,Q,B){return new xF({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:Q,message:XD.toString(B)}]})}_addCheck(D){return new xF({...this._def,checks:[...this._def.checks,D]})}int(D){return this._addCheck({kind:"int",message:XD.toString(D)})}positive(D){return this._addCheck({kind:"min",value:0,inclusive:!1,message:XD.toString(D)})}negative(D){return this._addCheck({kind:"max",value:0,inclusive:!1,message:XD.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:0,inclusive:!0,message:XD.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:0,inclusive:!0,message:XD.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:XD.toString(F)})}finite(D){return this._addCheck({kind:"finite",message:XD.toString(D)})}safe(D){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:XD.toString(D)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:XD.toString(D)})}get minValue(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D}get maxValue(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D}get isInt(){return!!this._def.checks.find((D)=>D.kind==="int"||D.kind==="multipleOf"&&jD.isInteger(D.value))}get isFinite(){let D=null,F=null;for(let Q of this._def.checks)if(Q.kind==="finite"||Q.kind==="int"||Q.kind==="multipleOf")return!0;else if(Q.kind==="min"){if(F===null||Q.value>F)F=Q.value}else if(Q.kind==="max"){if(D===null||Q.value<D)D=Q.value}return Number.isFinite(F)&&Number.isFinite(D)}}xF.create=(D)=>{return new xF({checks:[],typeName:qD.ZodNumber,coerce:D?.coerce||!1,...UD(D)})};class uF extends ED{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(D){if(this._def.coerce)try{D.data=BigInt(D.data)}catch{return this._getInvalidInput(D)}if(this._getType(D)!==e.bigint)return this._getInvalidInput(D);let Q=void 0,B=new q0;for(let Y of this._def.checks)if(Y.kind==="min"){if(Y.inclusive?D.data<Y.value:D.data<=Y.value)Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.too_small,type:"bigint",minimum:Y.value,inclusive:Y.inclusive,message:Y.message}),B.dirty()}else if(Y.kind==="max"){if(Y.inclusive?D.data>Y.value:D.data>=Y.value)Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.too_big,type:"bigint",maximum:Y.value,inclusive:Y.inclusive,message:Y.message}),B.dirty()}else if(Y.kind==="multipleOf"){if(D.data%Y.value!==BigInt(0))Q=this._getOrReturnCtx(D,Q),r(Q,{code:i.not_multiple_of,multipleOf:Y.value,message:Y.message}),B.dirty()}else jD.assertNever(Y);return{status:B.value,value:D.data}}_getInvalidInput(D){let F=this._getOrReturnCtx(D);return r(F,{code:i.invalid_type,expected:e.bigint,received:F.parsedType}),GD}gte(D,F){return this.setLimit("min",D,!0,XD.toString(F))}gt(D,F){return this.setLimit("min",D,!1,XD.toString(F))}lte(D,F){return this.setLimit("max",D,!0,XD.toString(F))}lt(D,F){return this.setLimit("max",D,!1,XD.toString(F))}setLimit(D,F,Q,B){return new uF({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:Q,message:XD.toString(B)}]})}_addCheck(D){return new uF({...this._def,checks:[...this._def.checks,D]})}positive(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:XD.toString(D)})}negative(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:XD.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:XD.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:XD.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:XD.toString(F)})}get minValue(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D}get maxValue(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D}}uF.create=(D)=>{return new uF({checks:[],typeName:qD.ZodBigInt,coerce:D?.coerce??!1,...UD(D)})};class S2 extends ED{_parse(D){if(this._def.coerce)D.data=Boolean(D.data);if(this._getType(D)!==e.boolean){let Q=this._getOrReturnCtx(D);return r(Q,{code:i.invalid_type,expected:e.boolean,received:Q.parsedType}),GD}return L0(D.data)}}S2.create=(D)=>{return new S2({typeName:qD.ZodBoolean,coerce:D?.coerce||!1,...UD(D)})};class eF extends ED{_parse(D){if(this._def.coerce)D.data=new Date(D.data);if(this._getType(D)!==e.date){let Y=this._getOrReturnCtx(D);return r(Y,{code:i.invalid_type,expected:e.date,received:Y.parsedType}),GD}if(Number.isNaN(D.data.getTime())){let Y=this._getOrReturnCtx(D);return r(Y,{code:i.invalid_date}),GD}let Q=new q0,B=void 0;for(let Y of this._def.checks)if(Y.kind==="min"){if(D.data.getTime()<Y.value)B=this._getOrReturnCtx(D,B),r(B,{code:i.too_small,message:Y.message,inclusive:!0,exact:!1,minimum:Y.value,type:"date"}),Q.dirty()}else if(Y.kind==="max"){if(D.data.getTime()>Y.value)B=this._getOrReturnCtx(D,B),r(B,{code:i.too_big,message:Y.message,inclusive:!0,exact:!1,maximum:Y.value,type:"date"}),Q.dirty()}else jD.assertNever(Y);return{status:Q.value,value:new Date(D.data.getTime())}}_addCheck(D){return new eF({...this._def,checks:[...this._def.checks,D]})}min(D,F){return this._addCheck({kind:"min",value:D.getTime(),message:XD.toString(F)})}max(D,F){return this._addCheck({kind:"max",value:D.getTime(),message:XD.toString(F)})}get minDate(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D!=null?new Date(D):null}get maxDate(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D!=null?new Date(D):null}}eF.create=(D)=>{return new eF({checks:[],coerce:D?.coerce||!1,typeName:qD.ZodDate,...UD(D)})};class P8 extends ED{_parse(D){if(this._getType(D)!==e.symbol){let Q=this._getOrReturnCtx(D);return r(Q,{code:i.invalid_type,expected:e.symbol,received:Q.parsedType}),GD}return L0(D.data)}}P8.create=(D)=>{return new P8({typeName:qD.ZodSymbol,...UD(D)})};class b2 extends ED{_parse(D){if(this._getType(D)!==e.undefined){let Q=this._getOrReturnCtx(D);return r(Q,{code:i.invalid_type,expected:e.undefined,received:Q.parsedType}),GD}return L0(D.data)}}b2.create=(D)=>{return new b2({typeName:qD.ZodUndefined,...UD(D)})};class k2 extends ED{_parse(D){if(this._getType(D)!==e.null){let Q=this._getOrReturnCtx(D);return r(Q,{code:i.invalid_type,expected:e.null,received:Q.parsedType}),GD}return L0(D.data)}}k2.create=(D)=>{return new k2({typeName:qD.ZodNull,...UD(D)})};class D2 extends ED{constructor(){super(...arguments);this._any=!0}_parse(D){return L0(D.data)}}D2.create=(D)=>{return new D2({typeName:qD.ZodAny,...UD(D)})};class vF extends ED{constructor(){super(...arguments);this._unknown=!0}_parse(D){return L0(D.data)}}vF.create=(D)=>{return new vF({typeName:qD.ZodUnknown,...UD(D)})};class KF extends ED{_parse(D){let F=this._getOrReturnCtx(D);return r(F,{code:i.invalid_type,expected:e.never,received:F.parsedType}),GD}}KF.create=(D)=>{return new KF({typeName:qD.ZodNever,...UD(D)})};class S8 extends ED{_parse(D){if(this._getType(D)!==e.undefined){let Q=this._getOrReturnCtx(D);return r(Q,{code:i.invalid_type,expected:e.void,received:Q.parsedType}),GD}return L0(D.data)}}S8.create=(D)=>{return new S8({typeName:qD.ZodVoid,...UD(D)})};class BF extends ED{_parse(D){let{ctx:F,status:Q}=this._processInputParams(D),B=this._def;if(F.parsedType!==e.array)return r(F,{code:i.invalid_type,expected:e.array,received:F.parsedType}),GD;if(B.exactLength!==null){let J=F.data.length>B.exactLength.value,X=F.data.length<B.exactLength.value;if(J||X)r(F,{code:J?i.too_big:i.too_small,minimum:X?B.exactLength.value:void 0,maximum:J?B.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:B.exactLength.message}),Q.dirty()}if(B.minLength!==null){if(F.data.length<B.minLength.value)r(F,{code:i.too_small,minimum:B.minLength.value,type:"array",inclusive:!0,exact:!1,message:B.minLength.message}),Q.dirty()}if(B.maxLength!==null){if(F.data.length>B.maxLength.value)r(F,{code:i.too_big,maximum:B.maxLength.value,type:"array",inclusive:!0,exact:!1,message:B.maxLength.message}),Q.dirty()}if(F.common.async)return Promise.all([...F.data].map((J,X)=>{return B.type._parseAsync(new XF(F,J,F.path,X))})).then((J)=>{return q0.mergeArray(Q,J)});let Y=[...F.data].map((J,X)=>{return B.type._parseSync(new XF(F,J,F.path,X))});return q0.mergeArray(Q,Y)}get element(){return this._def.type}min(D,F){return new BF({...this._def,minLength:{value:D,message:XD.toString(F)}})}max(D,F){return new BF({...this._def,maxLength:{value:D,message:XD.toString(F)}})}length(D,F){return new BF({...this._def,exactLength:{value:D,message:XD.toString(F)}})}nonempty(D){return this.min(1,D)}}BF.create=(D,F)=>{return new BF({type:D,minLength:null,maxLength:null,exactLength:null,typeName:qD.ZodArray,...UD(F)})};function O2(D){if(D instanceof lD){let F={};for(let Q in D.shape){let B=D.shape[Q];F[Q]=QF.create(O2(B))}return new lD({...D._def,shape:()=>F})}else if(D instanceof BF)return new BF({...D._def,type:O2(D.element)});else if(D instanceof QF)return QF.create(O2(D.unwrap()));else if(D instanceof _F)return _F.create(O2(D.unwrap()));else if(D instanceof HF)return HF.create(D.items.map((F)=>O2(F)));else return D}class lD extends ED{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let D=this._def.shape(),F=jD.objectKeys(D);return this._cached={shape:D,keys:F},this._cached}_parse(D){if(this._getType(D)!==e.object){let W=this._getOrReturnCtx(D);return r(W,{code:i.invalid_type,expected:e.object,received:W.parsedType}),GD}let{status:Q,ctx:B}=this._processInputParams(D),{shape:Y,keys:J}=this._getCached(),X=[];if(!(this._def.catchall instanceof KF&&this._def.unknownKeys==="strip")){for(let W in B.data)if(!J.includes(W))X.push(W)}let C=[];for(let W of J){let z=Y[W],G=B.data[W];C.push({key:{status:"valid",value:W},value:z._parse(new XF(B,G,B.path,W)),alwaysSet:W in B.data})}if(this._def.catchall instanceof KF){let W=this._def.unknownKeys;if(W==="passthrough")for(let z of X)C.push({key:{status:"valid",value:z},value:{status:"valid",value:B.data[z]}});else if(W==="strict"){if(X.length>0)r(B,{code:i.unrecognized_keys,keys:X}),Q.dirty()}else if(W==="strip");else throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let W=this._def.catchall;for(let z of X){let G=B.data[z];C.push({key:{status:"valid",value:z},value:W._parse(new XF(B,G,B.path,z)),alwaysSet:z in B.data})}}if(B.common.async)return Promise.resolve().then(async()=>{let W=[];for(let z of C){let G=await z.key,q=await z.value;W.push({key:G,value:q,alwaysSet:z.alwaysSet})}return W}).then((W)=>{return q0.mergeObjectSync(Q,W)});else return q0.mergeObjectSync(Q,C)}get shape(){return this._def.shape()}strict(D){return XD.errToObj,new lD({...this._def,unknownKeys:"strict",...D!==void 0?{errorMap:(F,Q)=>{let B=this._def.errorMap?.(F,Q).message??Q.defaultError;if(F.code==="unrecognized_keys")return{message:XD.errToObj(D).message??B};return{message:B}}}:{}})}strip(){return new lD({...this._def,unknownKeys:"strip"})}passthrough(){return new lD({...this._def,unknownKeys:"passthrough"})}extend(D){return new lD({...this._def,shape:()=>({...this._def.shape(),...D})})}merge(D){return new lD({unknownKeys:D._def.unknownKeys,catchall:D._def.catchall,shape:()=>({...this._def.shape(),...D._def.shape()}),typeName:qD.ZodObject})}setKey(D,F){return this.augment({[D]:F})}catchall(D){return new lD({...this._def,catchall:D})}pick(D){let F={};for(let Q of jD.objectKeys(D))if(D[Q]&&this.shape[Q])F[Q]=this.shape[Q];return new lD({...this._def,shape:()=>F})}omit(D){let F={};for(let Q of jD.objectKeys(this.shape))if(!D[Q])F[Q]=this.shape[Q];return new lD({...this._def,shape:()=>F})}deepPartial(){return O2(this)}partial(D){let F={};for(let Q of jD.objectKeys(this.shape)){let B=this.shape[Q];if(D&&!D[Q])F[Q]=B;else F[Q]=B.optional()}return new lD({...this._def,shape:()=>F})}required(D){let F={};for(let Q of jD.objectKeys(this.shape))if(D&&!D[Q])F[Q]=this.shape[Q];else{let Y=this.shape[Q];while(Y instanceof QF)Y=Y._def.innerType;F[Q]=Y}return new lD({...this._def,shape:()=>F})}keyof(){return UQ(jD.objectKeys(this.shape))}}lD.create=(D,F)=>{return new lD({shape:()=>D,unknownKeys:"strip",catchall:KF.create(),typeName:qD.ZodObject,...UD(F)})};lD.strictCreate=(D,F)=>{return new lD({shape:()=>D,unknownKeys:"strict",catchall:KF.create(),typeName:qD.ZodObject,...UD(F)})};lD.lazycreate=(D,F)=>{return new lD({shape:D,unknownKeys:"strip",catchall:KF.create(),typeName:qD.ZodObject,...UD(F)})};class v2 extends ED{_parse(D){let{ctx:F}=this._processInputParams(D),Q=this._def.options;function B(Y){for(let X of Y)if(X.result.status==="valid")return X.result;for(let X of Y)if(X.result.status==="dirty")return F.common.issues.push(...X.ctx.common.issues),X.result;let J=Y.map((X)=>new b0(X.ctx.common.issues));return r(F,{code:i.invalid_union,unionErrors:J}),GD}if(F.common.async)return Promise.all(Q.map(async(Y)=>{let J={...F,common:{...F.common,issues:[]},parent:null};return{result:await Y._parseAsync({data:F.data,path:F.path,parent:J}),ctx:J}})).then(B);else{let Y=void 0,J=[];for(let C of Q){let W={...F,common:{...F.common,issues:[]},parent:null},z=C._parseSync({data:F.data,path:F.path,parent:W});if(z.status==="valid")return z;else if(z.status==="dirty"&&!Y)Y={result:z,ctx:W};if(W.common.issues.length)J.push(W.common.issues)}if(Y)return F.common.issues.push(...Y.ctx.common.issues),Y.result;let X=J.map((C)=>new b0(C));return r(F,{code:i.invalid_union,unionErrors:X}),GD}}get options(){return this._def.options}}v2.create=(D,F)=>{return new v2({options:D,typeName:qD.ZodUnion,...UD(F)})};var jF=(D)=>{if(D instanceof u2)return jF(D.schema);else if(D instanceof d0)return jF(D.innerType());else if(D instanceof y2)return[D.value];else if(D instanceof yF)return D.options;else if(D instanceof f2)return jD.objectValues(D.enum);else if(D instanceof g2)return jF(D._def.innerType);else if(D instanceof b2)return[void 0];else if(D instanceof k2)return[null];else if(D instanceof QF)return[void 0,...jF(D.unwrap())];else if(D instanceof _F)return[null,...jF(D.unwrap())];else if(D instanceof n6)return jF(D.unwrap());else if(D instanceof h2)return jF(D.unwrap());else if(D instanceof $2)return jF(D._def.innerType);else return[]};class p6 extends ED{_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==e.object)return r(F,{code:i.invalid_type,expected:e.object,received:F.parsedType}),GD;let Q=this.discriminator,B=F.data[Q],Y=this.optionsMap.get(B);if(!Y)return r(F,{code:i.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[Q]}),GD;if(F.common.async)return Y._parseAsync({data:F.data,path:F.path,parent:F});else return Y._parseSync({data:F.data,path:F.path,parent:F})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(D,F,Q){let B=new Map;for(let Y of F){let J=jF(Y.shape[D]);if(!J.length)throw new Error(`A discriminator value for key \`${D}\` could not be extracted from all schema options`);for(let X of J){if(B.has(X))throw new Error(`Discriminator property ${String(D)} has duplicate value ${String(X)}`);B.set(X,Y)}}return new p6({typeName:qD.ZodDiscriminatedUnion,discriminator:D,options:F,optionsMap:B,...UD(Q)})}}function B9(D,F){let Q=RF(D),B=RF(F);if(D===F)return{valid:!0,data:D};else if(Q===e.object&&B===e.object){let Y=jD.objectKeys(F),J=jD.objectKeys(D).filter((C)=>Y.indexOf(C)!==-1),X={...D,...F};for(let C of J){let W=B9(D[C],F[C]);if(!W.valid)return{valid:!1};X[C]=W.data}return{valid:!0,data:X}}else if(Q===e.array&&B===e.array){if(D.length!==F.length)return{valid:!1};let Y=[];for(let J=0;J<D.length;J++){let X=D[J],C=F[J],W=B9(X,C);if(!W.valid)return{valid:!1};Y.push(W.data)}return{valid:!0,data:Y}}else if(Q===e.date&&B===e.date&&+D===+F)return{valid:!0,data:D};else return{valid:!1}}class x2 extends ED{_parse(D){let{status:F,ctx:Q}=this._processInputParams(D),B=(Y,J)=>{if(D9(Y)||D9(J))return GD;let X=B9(Y.value,J.value);if(!X.valid)return r(Q,{code:i.invalid_intersection_types}),GD;if(F9(Y)||F9(J))F.dirty();return{status:F.value,value:X.data}};if(Q.common.async)return Promise.all([this._def.left._parseAsync({data:Q.data,path:Q.path,parent:Q}),this._def.right._parseAsync({data:Q.data,path:Q.path,parent:Q})]).then(([Y,J])=>B(Y,J));else return B(this._def.left._parseSync({data:Q.data,path:Q.path,parent:Q}),this._def.right._parseSync({data:Q.data,path:Q.path,parent:Q}))}}x2.create=(D,F,Q)=>{return new x2({left:D,right:F,typeName:qD.ZodIntersection,...UD(Q)})};class HF extends ED{_parse(D){let{status:F,ctx:Q}=this._processInputParams(D);if(Q.parsedType!==e.array)return r(Q,{code:i.invalid_type,expected:e.array,received:Q.parsedType}),GD;if(Q.data.length<this._def.items.length)return r(Q,{code:i.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),GD;if(!this._def.rest&&Q.data.length>this._def.items.length)r(Q,{code:i.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),F.dirty();let Y=[...Q.data].map((J,X)=>{let C=this._def.items[X]||this._def.rest;if(!C)return null;return C._parse(new XF(Q,J,Q.path,X))}).filter((J)=>!!J);if(Q.common.async)return Promise.all(Y).then((J)=>{return q0.mergeArray(F,J)});else return q0.mergeArray(F,Y)}get items(){return this._def.items}rest(D){return new HF({...this._def,rest:D})}}HF.create=(D,F)=>{if(!Array.isArray(D))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new HF({items:D,typeName:qD.ZodTuple,rest:null,...UD(F)})};class b8 extends ED{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:Q}=this._processInputParams(D);if(Q.parsedType!==e.object)return r(Q,{code:i.invalid_type,expected:e.object,received:Q.parsedType}),GD;let B=[],Y=this._def.keyType,J=this._def.valueType;for(let X in Q.data)B.push({key:Y._parse(new XF(Q,X,Q.path,X)),value:J._parse(new XF(Q,Q.data[X],Q.path,X)),alwaysSet:X in Q.data});if(Q.common.async)return q0.mergeObjectAsync(F,B);else return q0.mergeObjectSync(F,B)}get element(){return this._def.valueType}static create(D,F,Q){if(F instanceof ED)return new b8({keyType:D,valueType:F,typeName:qD.ZodRecord,...UD(Q)});return new b8({keyType:FF.create(),valueType:D,typeName:qD.ZodRecord,...UD(F)})}}class k8 extends ED{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:Q}=this._processInputParams(D);if(Q.parsedType!==e.map)return r(Q,{code:i.invalid_type,expected:e.map,received:Q.parsedType}),GD;let B=this._def.keyType,Y=this._def.valueType,J=[...Q.data.entries()].map(([X,C],W)=>{return{key:B._parse(new XF(Q,X,Q.path,[W,"key"])),value:Y._parse(new XF(Q,C,Q.path,[W,"value"]))}});if(Q.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let C of J){let W=await C.key,z=await C.value;if(W.status==="aborted"||z.status==="aborted")return GD;if(W.status==="dirty"||z.status==="dirty")F.dirty();X.set(W.value,z.value)}return{status:F.value,value:X}})}else{let X=new Map;for(let C of J){let{key:W,value:z}=C;if(W.status==="aborted"||z.status==="aborted")return GD;if(W.status==="dirty"||z.status==="dirty")F.dirty();X.set(W.value,z.value)}return{status:F.value,value:X}}}}k8.create=(D,F,Q)=>{return new k8({valueType:F,keyType:D,typeName:qD.ZodMap,...UD(Q)})};class F2 extends ED{_parse(D){let{status:F,ctx:Q}=this._processInputParams(D);if(Q.parsedType!==e.set)return r(Q,{code:i.invalid_type,expected:e.set,received:Q.parsedType}),GD;let B=this._def;if(B.minSize!==null){if(Q.data.size<B.minSize.value)r(Q,{code:i.too_small,minimum:B.minSize.value,type:"set",inclusive:!0,exact:!1,message:B.minSize.message}),F.dirty()}if(B.maxSize!==null){if(Q.data.size>B.maxSize.value)r(Q,{code:i.too_big,maximum:B.maxSize.value,type:"set",inclusive:!0,exact:!1,message:B.maxSize.message}),F.dirty()}let Y=this._def.valueType;function J(C){let W=new Set;for(let z of C){if(z.status==="aborted")return GD;if(z.status==="dirty")F.dirty();W.add(z.value)}return{status:F.value,value:W}}let X=[...Q.data.values()].map((C,W)=>Y._parse(new XF(Q,C,Q.path,W)));if(Q.common.async)return Promise.all(X).then((C)=>J(C));else return J(X)}min(D,F){return new F2({...this._def,minSize:{value:D,message:XD.toString(F)}})}max(D,F){return new F2({...this._def,maxSize:{value:D,message:XD.toString(F)}})}size(D,F){return this.min(D,F).max(D,F)}nonempty(D){return this.min(1,D)}}F2.create=(D,F)=>{return new F2({valueType:D,minSize:null,maxSize:null,typeName:qD.ZodSet,...UD(F)})};class T2 extends ED{constructor(){super(...arguments);this.validate=this.implement}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==e.function)return r(F,{code:i.invalid_type,expected:e.function,received:F.parsedType}),GD;function Q(X,C){return c6({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,d6(),P2].filter((W)=>!!W),issueData:{code:i.invalid_arguments,argumentsError:C}})}function B(X,C){return c6({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,d6(),P2].filter((W)=>!!W),issueData:{code:i.invalid_return_type,returnTypeError:C}})}let Y={errorMap:F.common.contextualErrorMap},J=F.data;if(this._def.returns instanceof B2){let X=this;return L0(async function(...C){let W=new b0([]),z=await X._def.args.parseAsync(C,Y).catch((E)=>{throw W.addIssue(Q(C,E)),W}),G=await Reflect.apply(J,this,z);return await X._def.returns._def.type.parseAsync(G,Y).catch((E)=>{throw W.addIssue(B(G,E)),W})})}else{let X=this;return L0(function(...C){let W=X._def.args.safeParse(C,Y);if(!W.success)throw new b0([Q(C,W.error)]);let z=Reflect.apply(J,this,W.data),G=X._def.returns.safeParse(z,Y);if(!G.success)throw new b0([B(z,G.error)]);return G.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...D){return new T2({...this._def,args:HF.create(D).rest(vF.create())})}returns(D){return new T2({...this._def,returns:D})}implement(D){return this.parse(D)}strictImplement(D){return this.parse(D)}static create(D,F,Q){return new T2({args:D?D:HF.create([]).rest(vF.create()),returns:F||vF.create(),typeName:qD.ZodFunction,...UD(Q)})}}class u2 extends ED{get schema(){return this._def.getter()}_parse(D){let{ctx:F}=this._processInputParams(D);return this._def.getter()._parse({data:F.data,path:F.path,parent:F})}}u2.create=(D,F)=>{return new u2({getter:D,typeName:qD.ZodLazy,...UD(F)})};class y2 extends ED{_parse(D){if(D.data!==this._def.value){let F=this._getOrReturnCtx(D);return r(F,{received:F.data,code:i.invalid_literal,expected:this._def.value}),GD}return{status:"valid",value:D.data}}get value(){return this._def.value}}y2.create=(D,F)=>{return new y2({value:D,typeName:qD.ZodLiteral,...UD(F)})};function UQ(D,F){return new yF({values:D,typeName:qD.ZodEnum,...UD(F)})}class yF extends ED{_parse(D){if(typeof D.data!=="string"){let F=this._getOrReturnCtx(D),Q=this._def.values;return r(F,{expected:jD.joinValues(Q),received:F.parsedType,code:i.invalid_type}),GD}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(D.data)){let F=this._getOrReturnCtx(D),Q=this._def.values;return r(F,{received:F.data,code:i.invalid_enum_value,options:Q}),GD}return L0(D.data)}get options(){return this._def.values}get enum(){let D={};for(let F of this._def.values)D[F]=F;return D}get Values(){let D={};for(let F of this._def.values)D[F]=F;return D}get Enum(){let D={};for(let F of this._def.values)D[F]=F;return D}extract(D,F=this._def){return yF.create(D,{...this._def,...F})}exclude(D,F=this._def){return yF.create(this.options.filter((Q)=>!D.includes(Q)),{...this._def,...F})}}yF.create=UQ;class f2 extends ED{_parse(D){let F=jD.getValidEnumValues(this._def.values),Q=this._getOrReturnCtx(D);if(Q.parsedType!==e.string&&Q.parsedType!==e.number){let B=jD.objectValues(F);return r(Q,{expected:jD.joinValues(B),received:Q.parsedType,code:i.invalid_type}),GD}if(!this._cache)this._cache=new Set(jD.getValidEnumValues(this._def.values));if(!this._cache.has(D.data)){let B=jD.objectValues(F);return r(Q,{received:Q.data,code:i.invalid_enum_value,options:B}),GD}return L0(D.data)}get enum(){return this._def.values}}f2.create=(D,F)=>{return new f2({values:D,typeName:qD.ZodNativeEnum,...UD(F)})};class B2 extends ED{unwrap(){return this._def.type}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==e.promise&&F.common.async===!1)return r(F,{code:i.invalid_type,expected:e.promise,received:F.parsedType}),GD;let Q=F.parsedType===e.promise?F.data:Promise.resolve(F.data);return L0(Q.then((B)=>{return this._def.type.parseAsync(B,{path:F.path,errorMap:F.common.contextualErrorMap})}))}}B2.create=(D,F)=>{return new B2({type:D,typeName:qD.ZodPromise,...UD(F)})};class d0 extends ED{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===qD.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(D){let{status:F,ctx:Q}=this._processInputParams(D),B=this._def.effect||null,Y={addIssue:(J)=>{if(r(Q,J),J.fatal)F.abort();else F.dirty()},get path(){return Q.path}};if(Y.addIssue=Y.addIssue.bind(Y),B.type==="preprocess"){let J=B.transform(Q.data,Y);if(Q.common.async)return Promise.resolve(J).then(async(X)=>{if(F.value==="aborted")return GD;let C=await this._def.schema._parseAsync({data:X,path:Q.path,parent:Q});if(C.status==="aborted")return GD;if(C.status==="dirty")return w2(C.value);if(F.value==="dirty")return w2(C.value);return C});else{if(F.value==="aborted")return GD;let X=this._def.schema._parseSync({data:J,path:Q.path,parent:Q});if(X.status==="aborted")return GD;if(X.status==="dirty")return w2(X.value);if(F.value==="dirty")return w2(X.value);return X}}if(B.type==="refinement"){let J=(X)=>{let C=B.refinement(X,Y);if(Q.common.async)return Promise.resolve(C);if(C instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(Q.common.async===!1){let X=this._def.schema._parseSync({data:Q.data,path:Q.path,parent:Q});if(X.status==="aborted")return GD;if(X.status==="dirty")F.dirty();return J(X.value),{status:F.value,value:X.value}}else return this._def.schema._parseAsync({data:Q.data,path:Q.path,parent:Q}).then((X)=>{if(X.status==="aborted")return GD;if(X.status==="dirty")F.dirty();return J(X.value).then(()=>{return{status:F.value,value:X.value}})})}if(B.type==="transform")if(Q.common.async===!1){let J=this._def.schema._parseSync({data:Q.data,path:Q.path,parent:Q});if(!tF(J))return GD;let X=B.transform(J.value,Y);if(X instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:F.value,value:X}}else return this._def.schema._parseAsync({data:Q.data,path:Q.path,parent:Q}).then((J)=>{if(!tF(J))return GD;return Promise.resolve(B.transform(J.value,Y)).then((X)=>({status:F.value,value:X}))});jD.assertNever(B)}}d0.create=(D,F,Q)=>{return new d0({schema:D,typeName:qD.ZodEffects,effect:F,...UD(Q)})};d0.createWithPreprocess=(D,F,Q)=>{return new d0({schema:F,effect:{type:"preprocess",transform:D},typeName:qD.ZodEffects,...UD(Q)})};class QF extends ED{_parse(D){if(this._getType(D)===e.undefined)return L0(void 0);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}QF.create=(D,F)=>{return new QF({innerType:D,typeName:qD.ZodOptional,...UD(F)})};class _F extends ED{_parse(D){if(this._getType(D)===e.null)return L0(null);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}_F.create=(D,F)=>{return new _F({innerType:D,typeName:qD.ZodNullable,...UD(F)})};class g2 extends ED{_parse(D){let{ctx:F}=this._processInputParams(D),Q=F.data;if(F.parsedType===e.undefined)Q=this._def.defaultValue();return this._def.innerType._parse({data:Q,path:F.path,parent:F})}removeDefault(){return this._def.innerType}}g2.create=(D,F)=>{return new g2({innerType:D,typeName:qD.ZodDefault,defaultValue:typeof F.default==="function"?F.default:()=>F.default,...UD(F)})};class $2 extends ED{_parse(D){let{ctx:F}=this._processInputParams(D),Q={...F,common:{...F.common,issues:[]}},B=this._def.innerType._parse({data:Q.data,path:Q.path,parent:{...Q}});if(T8(B))return B.then((Y)=>{return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new b0(Q.common.issues)},input:Q.data})}});else return{status:"valid",value:B.status==="valid"?B.value:this._def.catchValue({get error(){return new b0(Q.common.issues)},input:Q.data})}}removeCatch(){return this._def.innerType}}$2.create=(D,F)=>{return new $2({innerType:D,typeName:qD.ZodCatch,catchValue:typeof F.catch==="function"?F.catch:()=>F.catch,...UD(F)})};class v8 extends ED{_parse(D){if(this._getType(D)!==e.nan){let Q=this._getOrReturnCtx(D);return r(Q,{code:i.invalid_type,expected:e.nan,received:Q.parsedType}),GD}return{status:"valid",value:D.data}}}v8.create=(D)=>{return new v8({typeName:qD.ZodNaN,...UD(D)})};var qK=Symbol("zod_brand");class n6 extends ED{_parse(D){let{ctx:F}=this._processInputParams(D),Q=F.data;return this._def.type._parse({data:Q,path:F.path,parent:F})}unwrap(){return this._def.type}}class x8 extends ED{_parse(D){let{status:F,ctx:Q}=this._processInputParams(D);if(Q.common.async)return(async()=>{let Y=await this._def.in._parseAsync({data:Q.data,path:Q.path,parent:Q});if(Y.status==="aborted")return GD;if(Y.status==="dirty")return F.dirty(),w2(Y.value);else return this._def.out._parseAsync({data:Y.value,path:Q.path,parent:Q})})();else{let B=this._def.in._parseSync({data:Q.data,path:Q.path,parent:Q});if(B.status==="aborted")return GD;if(B.status==="dirty")return F.dirty(),{status:"dirty",value:B.value};else return this._def.out._parseSync({data:B.value,path:Q.path,parent:Q})}}static create(D,F){return new x8({in:D,out:F,typeName:qD.ZodPipeline})}}class h2 extends ED{_parse(D){let F=this._def.innerType._parse(D),Q=(B)=>{if(tF(B))B.value=Object.freeze(B.value);return B};return T8(F)?F.then((B)=>Q(B)):Q(F)}unwrap(){return this._def.innerType}}h2.create=(D,F)=>{return new h2({innerType:D,typeName:qD.ZodReadonly,...UD(F)})};function sB(D,F){let Q=typeof D==="function"?D(F):typeof D==="string"?{message:D}:D;return typeof Q==="string"?{message:Q}:Q}function EQ(D,F={},Q){if(D)return D2.create().superRefine((B,Y)=>{let J=D(B);if(J instanceof Promise)return J.then((X)=>{if(!X){let C=sB(F,B),W=C.fatal??Q??!0;Y.addIssue({code:"custom",...C,fatal:W})}});if(!J){let X=sB(F,B),C=X.fatal??Q??!0;Y.addIssue({code:"custom",...X,fatal:C})}return});return D2.create()}var KK={object:lD.lazycreate},qD;(function(D){D.ZodString="ZodString",D.ZodNumber="ZodNumber",D.ZodNaN="ZodNaN",D.ZodBigInt="ZodBigInt",D.ZodBoolean="ZodBoolean",D.ZodDate="ZodDate",D.ZodSymbol="ZodSymbol",D.ZodUndefined="ZodUndefined",D.ZodNull="ZodNull",D.ZodAny="ZodAny",D.ZodUnknown="ZodUnknown",D.ZodNever="ZodNever",D.ZodVoid="ZodVoid",D.ZodArray="ZodArray",D.ZodObject="ZodObject",D.ZodUnion="ZodUnion",D.ZodDiscriminatedUnion="ZodDiscriminatedUnion",D.ZodIntersection="ZodIntersection",D.ZodTuple="ZodTuple",D.ZodRecord="ZodRecord",D.ZodMap="ZodMap",D.ZodSet="ZodSet",D.ZodFunction="ZodFunction",D.ZodLazy="ZodLazy",D.ZodLiteral="ZodLiteral",D.ZodEnum="ZodEnum",D.ZodEffects="ZodEffects",D.ZodNativeEnum="ZodNativeEnum",D.ZodOptional="ZodOptional",D.ZodNullable="ZodNullable",D.ZodDefault="ZodDefault",D.ZodCatch="ZodCatch",D.ZodPromise="ZodPromise",D.ZodBranded="ZodBranded",D.ZodPipeline="ZodPipeline",D.ZodReadonly="ZodReadonly"})(qD||(qD={}));var HK=(D,F={message:`Input not instance of ${D.name}`})=>EQ((Q)=>Q instanceof D,F),ZQ=FF.create,AQ=xF.create,UK=v8.create,EK=uF.create,VQ=S2.create,ZK=eF.create,AK=P8.create,VK=b2.create,LK=k2.create,MK=D2.create,NK=vF.create,jK=KF.create,RK=S8.create,_K=BF.create,OK=lD.create,IK=lD.strictCreate,wK=v2.create,TK=p6.create,PK=x2.create,SK=HF.create,bK=b8.create,kK=k8.create,vK=F2.create,xK=T2.create,uK=u2.create,yK=y2.create,fK=yF.create,gK=f2.create,$K=B2.create,tB=d0.create,hK=QF.create,mK=_F.create,lK=d0.createWithPreprocess,dK=x8.create,cK=()=>ZQ().optional(),pK=()=>AQ().optional(),nK=()=>VQ().optional(),iK={string:(D)=>FF.create({...D,coerce:!0}),number:(D)=>xF.create({...D,coerce:!0}),boolean:(D)=>S2.create({...D,coerce:!0}),bigint:(D)=>uF.create({...D,coerce:!0}),date:(D)=>eF.create({...D,coerce:!0})},aK=GD;var i6="2.0",LQ=Z.union([Z.string(),Z.number().int()]),MQ=Z.string(),rK=Z.object({progressToken:Z.optional(LQ)}).passthrough(),c0=Z.object({_meta:Z.optional(rK)}).passthrough(),N0=Z.object({method:Z.string(),params:Z.optional(c0)}),u8=Z.object({_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),UF=Z.object({method:Z.string(),params:Z.optional(u8)}),p0=Z.object({_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),a6=Z.union([Z.string(),Z.number().int()]),oK=Z.object({jsonrpc:Z.literal(i6),id:a6}).merge(N0).strict();var sK=Z.object({jsonrpc:Z.literal(i6)}).merge(UF).strict();var tK=Z.object({jsonrpc:Z.literal(i6),id:a6,result:p0}).strict();var eB;(function(D){D[D.ConnectionClosed=-32000]="ConnectionClosed",D[D.RequestTimeout=-32001]="RequestTimeout",D[D.ParseError=-32700]="ParseError",D[D.InvalidRequest=-32600]="InvalidRequest",D[D.MethodNotFound=-32601]="MethodNotFound",D[D.InvalidParams=-32602]="InvalidParams",D[D.InternalError=-32603]="InternalError"})(eB||(eB={}));var eK=Z.object({jsonrpc:Z.literal(i6),id:a6,error:Z.object({code:Z.number().int(),message:Z.string(),data:Z.optional(Z.unknown())})}).strict();var ZM=Z.union([oK,sK,tK,eK]),NQ=p0.strict(),jQ=UF.extend({method:Z.literal("notifications/cancelled"),params:u8.extend({requestId:a6,reason:Z.string().optional()})}),y8=Z.object({name:Z.string(),title:Z.optional(Z.string())}).passthrough(),RQ=y8.extend({version:Z.string()}),DH=Z.object({experimental:Z.optional(Z.object({}).passthrough()),sampling:Z.optional(Z.object({}).passthrough()),elicitation:Z.optional(Z.object({}).passthrough()),roots:Z.optional(Z.object({listChanged:Z.optional(Z.boolean())}).passthrough())}).passthrough(),FH=N0.extend({method:Z.literal("initialize"),params:c0.extend({protocolVersion:Z.string(),capabilities:DH,clientInfo:RQ})}),BH=Z.object({experimental:Z.optional(Z.object({}).passthrough()),logging:Z.optional(Z.object({}).passthrough()),completions:Z.optional(Z.object({}).passthrough()),prompts:Z.optional(Z.object({listChanged:Z.optional(Z.boolean())}).passthrough()),resources:Z.optional(Z.object({subscribe:Z.optional(Z.boolean()),listChanged:Z.optional(Z.boolean())}).passthrough()),tools:Z.optional(Z.object({listChanged:Z.optional(Z.boolean())}).passthrough())}).passthrough(),QH=p0.extend({protocolVersion:Z.string(),capabilities:BH,serverInfo:RQ,instructions:Z.optional(Z.string())}),XH=UF.extend({method:Z.literal("notifications/initialized")}),_Q=N0.extend({method:Z.literal("ping")}),YH=Z.object({progress:Z.number(),total:Z.optional(Z.number()),message:Z.optional(Z.string())}).passthrough(),OQ=UF.extend({method:Z.literal("notifications/progress"),params:u8.merge(YH).extend({progressToken:LQ})}),r6=N0.extend({params:c0.extend({cursor:Z.optional(MQ)}).optional()}),o6=p0.extend({nextCursor:Z.optional(MQ)}),IQ=Z.object({uri:Z.string(),mimeType:Z.optional(Z.string()),_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),wQ=IQ.extend({text:Z.string()}),W9=Z.string().refine((D)=>{try{return atob(D),!0}catch(F){return!1}},{message:"Invalid Base64 string"}),TQ=IQ.extend({blob:W9}),PQ=y8.extend({uri:Z.string(),description:Z.optional(Z.string()),mimeType:Z.optional(Z.string()),_meta:Z.optional(Z.object({}).passthrough())}),JH=y8.extend({uriTemplate:Z.string(),description:Z.optional(Z.string()),mimeType:Z.optional(Z.string()),_meta:Z.optional(Z.object({}).passthrough())}),CH=r6.extend({method:Z.literal("resources/list")}),WH=o6.extend({resources:Z.array(PQ)}),zH=r6.extend({method:Z.literal("resources/templates/list")}),GH=o6.extend({resourceTemplates:Z.array(JH)}),qH=N0.extend({method:Z.literal("resources/read"),params:c0.extend({uri:Z.string()})}),KH=p0.extend({contents:Z.array(Z.union([wQ,TQ]))}),HH=UF.extend({method:Z.literal("notifications/resources/list_changed")}),UH=N0.extend({method:Z.literal("resources/subscribe"),params:c0.extend({uri:Z.string()})}),EH=N0.extend({method:Z.literal("resources/unsubscribe"),params:c0.extend({uri:Z.string()})}),ZH=UF.extend({method:Z.literal("notifications/resources/updated"),params:u8.extend({uri:Z.string()})}),AH=Z.object({name:Z.string(),description:Z.optional(Z.string()),required:Z.optional(Z.boolean())}).passthrough(),VH=y8.extend({description:Z.optional(Z.string()),arguments:Z.optional(Z.array(AH)),_meta:Z.optional(Z.object({}).passthrough())}),LH=r6.extend({method:Z.literal("prompts/list")}),MH=o6.extend({prompts:Z.array(VH)}),NH=N0.extend({method:Z.literal("prompts/get"),params:c0.extend({name:Z.string(),arguments:Z.optional(Z.record(Z.string()))})}),z9=Z.object({type:Z.literal("text"),text:Z.string(),_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),G9=Z.object({type:Z.literal("image"),data:W9,mimeType:Z.string(),_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),q9=Z.object({type:Z.literal("audio"),data:W9,mimeType:Z.string(),_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),jH=Z.object({type:Z.literal("resource"),resource:Z.union([wQ,TQ]),_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),RH=PQ.extend({type:Z.literal("resource_link")}),SQ=Z.union([z9,G9,q9,RH,jH]),_H=Z.object({role:Z.enum(["user","assistant"]),content:SQ}).passthrough(),OH=p0.extend({description:Z.optional(Z.string()),messages:Z.array(_H)}),IH=UF.extend({method:Z.literal("notifications/prompts/list_changed")}),wH=Z.object({title:Z.optional(Z.string()),readOnlyHint:Z.optional(Z.boolean()),destructiveHint:Z.optional(Z.boolean()),idempotentHint:Z.optional(Z.boolean()),openWorldHint:Z.optional(Z.boolean())}).passthrough(),TH=y8.extend({description:Z.optional(Z.string()),inputSchema:Z.object({type:Z.literal("object"),properties:Z.optional(Z.object({}).passthrough()),required:Z.optional(Z.array(Z.string()))}).passthrough(),outputSchema:Z.optional(Z.object({type:Z.literal("object"),properties:Z.optional(Z.object({}).passthrough()),required:Z.optional(Z.array(Z.string()))}).passthrough()),annotations:Z.optional(wH),_meta:Z.optional(Z.object({}).passthrough())}),PH=r6.extend({method:Z.literal("tools/list")}),SH=o6.extend({tools:Z.array(TH)}),bQ=p0.extend({content:Z.array(SQ).default([]),structuredContent:Z.object({}).passthrough().optional(),isError:Z.optional(Z.boolean())}),AM=bQ.or(p0.extend({toolResult:Z.unknown()})),bH=N0.extend({method:Z.literal("tools/call"),params:c0.extend({name:Z.string(),arguments:Z.optional(Z.record(Z.unknown()))})}),kH=UF.extend({method:Z.literal("notifications/tools/list_changed")}),kQ=Z.enum(["debug","info","notice","warning","error","critical","alert","emergency"]),vH=N0.extend({method:Z.literal("logging/setLevel"),params:c0.extend({level:kQ})}),xH=UF.extend({method:Z.literal("notifications/message"),params:u8.extend({level:kQ,logger:Z.optional(Z.string()),data:Z.unknown()})}),uH=Z.object({name:Z.string().optional()}).passthrough(),yH=Z.object({hints:Z.optional(Z.array(uH)),costPriority:Z.optional(Z.number().min(0).max(1)),speedPriority:Z.optional(Z.number().min(0).max(1)),intelligencePriority:Z.optional(Z.number().min(0).max(1))}).passthrough(),fH=Z.object({role:Z.enum(["user","assistant"]),content:Z.union([z9,G9,q9])}).passthrough(),gH=N0.extend({method:Z.literal("sampling/createMessage"),params:c0.extend({messages:Z.array(fH),systemPrompt:Z.optional(Z.string()),includeContext:Z.optional(Z.enum(["none","thisServer","allServers"])),temperature:Z.optional(Z.number()),maxTokens:Z.number().int(),stopSequences:Z.optional(Z.array(Z.string())),metadata:Z.optional(Z.object({}).passthrough()),modelPreferences:Z.optional(yH)})}),$H=p0.extend({model:Z.string(),stopReason:Z.optional(Z.enum(["endTurn","stopSequence","maxTokens"]).or(Z.string())),role:Z.enum(["user","assistant"]),content:Z.discriminatedUnion("type",[z9,G9,q9])}),hH=Z.object({type:Z.literal("boolean"),title:Z.optional(Z.string()),description:Z.optional(Z.string()),default:Z.optional(Z.boolean())}).passthrough(),mH=Z.object({type:Z.literal("string"),title:Z.optional(Z.string()),description:Z.optional(Z.string()),minLength:Z.optional(Z.number()),maxLength:Z.optional(Z.number()),format:Z.optional(Z.enum(["email","uri","date","date-time"]))}).passthrough(),lH=Z.object({type:Z.enum(["number","integer"]),title:Z.optional(Z.string()),description:Z.optional(Z.string()),minimum:Z.optional(Z.number()),maximum:Z.optional(Z.number())}).passthrough(),dH=Z.object({type:Z.literal("string"),title:Z.optional(Z.string()),description:Z.optional(Z.string()),enum:Z.array(Z.string()),enumNames:Z.optional(Z.array(Z.string()))}).passthrough(),cH=Z.union([hH,mH,lH,dH]),pH=N0.extend({method:Z.literal("elicitation/create"),params:c0.extend({message:Z.string(),requestedSchema:Z.object({type:Z.literal("object"),properties:Z.record(Z.string(),cH),required:Z.optional(Z.array(Z.string()))}).passthrough()})}),nH=p0.extend({action:Z.enum(["accept","decline","cancel"]),content:Z.optional(Z.record(Z.string(),Z.unknown()))}),iH=Z.object({type:Z.literal("ref/resource"),uri:Z.string()}).passthrough(),aH=Z.object({type:Z.literal("ref/prompt"),name:Z.string()}).passthrough(),rH=N0.extend({method:Z.literal("completion/complete"),params:c0.extend({ref:Z.union([aH,iH]),argument:Z.object({name:Z.string(),value:Z.string()}).passthrough(),context:Z.optional(Z.object({arguments:Z.optional(Z.record(Z.string(),Z.string()))}))})}),oH=p0.extend({completion:Z.object({values:Z.array(Z.string()).max(100),total:Z.optional(Z.number().int()),hasMore:Z.optional(Z.boolean())}).passthrough()}),sH=Z.object({uri:Z.string().startsWith("file://"),name:Z.optional(Z.string()),_meta:Z.optional(Z.object({}).passthrough())}).passthrough(),tH=N0.extend({method:Z.literal("roots/list")}),eH=p0.extend({roots:Z.array(sH)}),DU=UF.extend({method:Z.literal("notifications/roots/list_changed")}),VM=Z.union([_Q,FH,rH,vH,NH,LH,CH,zH,qH,UH,EH,bH,PH]),LM=Z.union([jQ,OQ,XH,DU]),MM=Z.union([NQ,$H,nH,eH]),NM=Z.union([_Q,gH,pH,tH]),jM=Z.union([jQ,OQ,xH,ZH,HH,kH,IH]),RM=Z.union([NQ,QH,oH,OH,MH,WH,GH,KH,bQ,SH]);var _M=aG(Pq(),1);var OM=Symbol("Let zodToJsonSchema decide on which parser to use");var IM=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var Q9;(function(D){D.Completable="McpCompletable"})(Q9||(Q9={}));class X9 extends ED{_parse(D){let{ctx:F}=this._processInputParams(D),Q=F.data;return this._def.type._parse({data:Q,path:F.path,parent:F})}unwrap(){return this._def.type}}X9.create=(D,F)=>{return new X9({type:D,typeName:Q9.Completable,complete:F.complete,...FU(F)})};function FU(D){if(!D)return{};let{errorMap:F,invalid_type_error:Q,required_error:B,description:Y}=D;if(F&&(Q||B))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(F)return{errorMap:F,description:Y};return{errorMap:(X,C)=>{var W,z;let{message:G}=D;if(X.code==="invalid_enum_value")return{message:G!==null&&G!==void 0?G:C.defaultError};if(typeof C.data==="undefined")return{message:(W=G!==null&&G!==void 0?G:B)!==null&&W!==void 0?W:C.defaultError};if(X.code!=="invalid_type")return{message:C.defaultError};return{message:(z=G!==null&&G!==void 0?G:Q)!==null&&z!==void 0?z:C.defaultError}},description:Y}}function f8({prompt:D,options:F}){let{systemPrompt:Q,settingSources:B,...Y}=F??{},J,X;if(Q===void 0)J="";else if(typeof Q==="string")J=Q;else if(Q.type==="preset")X=Q.append;let C=Y.pathToClaudeCodeExecutable;if(!C){let W=Sq(import.meta.url),z=aB(W,"..");C=aB(z,"cli.js")}return process.env.CLAUDE_AGENT_SDK_VERSION="0.1.5",$q({prompt:D,options:{...Y,pathToClaudeCodeExecutable:C,customSystemPrompt:J,appendSystemPrompt:X,settingSources:B??[]}})}import pD from"fs";import j0 from"path";import{execSync as vQ}from"child_process";async function uQ(D){try{if(D.update){await xQ(D);return}let F=j0.join(process.cwd(),"package.json"),Q="unknown",B="unknown";if(pD.existsSync(F))try{let O=JSON.parse(pD.readFileSync(F,"utf-8"));Q=O.version||"unknown",B=O.name||j0.basename(process.cwd())}catch(O){B=j0.basename(process.cwd())}let Y=[],J=D.historical||1;if(D.generate)Y.push(D.generate),J=1,console.log(`\uD83C\uDFAF Generating changelog for specific version: ${D.generate}`);else if(Q!=="unknown"){let O=Q.split(".");if(O.length===3){let y=parseInt(O[0]),x=parseInt(O[1]),w=parseInt(O[2]);for(let S=0;S<J;S++)if(Y.push(`${y}.${x}.${w}`),w===0){if(x===0)break;x--,w=9}else w--}}if(Y.length===0)console.log("⚠️ Could not determine versions to search. Please check package.json"),process.exit(1);let X=j0.join(process.env.HOME||process.env.USERPROFILE||"",".claude-mem","projects"),C=j0.join(X,`${B}-changelog.jsonl`),W=!1;if(pD.existsSync(C)){let O=pD.readFileSync(C,"utf-8").split(`
`).filter((y)=>y.trim());for(let y of O)try{if(JSON.parse(y).version===Q)W=!0}catch(x){}if(!D.historical&&!D.generate&&J===1){if(W)console.log(`❌ Version ${Q} already has changelog entries.`),console.log(`
\uD83D\uDCDD Workflow:`),console.log(" 1. Make your code updates"),console.log(" 2. Build and test: bun run build"),console.log(" 3. Bump version: npm version patch"),console.log(" 4. Generate changelog: claude-mem changelog"),console.log(` 5. Commit and push
`),console.log("\uD83D\uDCA1 Or use --historical 1 to regenerate this version's changelog"),process.exit(1)}}let z=[];if(D.start&&D.end){let O=D.generate||Q;z.push({version:O,startTime:D.start,endTime:D.end}),console.log(`\uD83D\uDCC5 Using custom time range for ${O}:`),console.log(` Start: ${new Date(D.start).toLocaleString()}`),console.log(` End: ${new Date(D.end).toLocaleString()}`)}else try{let O=vQ(`npm view ${B} time --json`,{encoding:"utf-8",timeout:5000}),y=JSON.parse(O),x="";if(J>1){let S=Y[Y.length-1].split("."),g=parseInt(S[0]),d=parseInt(S[1]),n=parseInt(S[2]);if(n>0)x=`${g}.${d}.${n-1}`;else if(d>0){let a=`${g}.${d-1}.`,DD=Object.keys(y).filter((o)=>o.startsWith(a)).sort((o,JD)=>{let CD=parseInt(o.split(".")[2]||"0");return parseInt(JD.split(".")[2]||"0")-CD});if(DD.length>0)x=DD[0]}else if(g>0){let a=`${g-1}.`,DD=Object.keys(y).filter((o)=>o.startsWith(a)).sort((o,JD)=>{let[,CD,FD]=o.split(".").map(Number),[,MD,dD]=JD.split(".").map(Number);if(CD!==MD)return MD-CD;return dD-FD});if(DD.length>0)x=DD[0]}if(D.verbose&&x&&y[x])console.log(`\uD83D\uDCCD Using ${x} as start boundary for time ranges`)}for(let w=0;w<Y.length;w++){let S=Y[w],g="2000-01-01T00:00:00Z";if(w===0){let n=S.split("."),a=parseInt(n[0]),DD=parseInt(n[1]),o=parseInt(n[2]),JD="";if(o>0)JD=`${a}.${DD}.${o-1}`;else if(DD>0){let CD=`${a}.${DD-1}.`,FD=Object.keys(y).filter((MD)=>MD.startsWith(CD)).sort((MD,dD)=>{let nD=parseInt(MD.split(".")[2]||"0");return parseInt(dD.split(".")[2]||"0")-nD});if(FD.length>0)JD=FD[0]}if(y[JD])g=y[JD]}else if(w<Y.length-1){let n=Y[w+1];if(y[n])g=y[n]}else if(x&&y[x])g=y[x];let d=y[S]||new Date().toISOString();if(z.push({version:S,startTime:g,endTime:d}),D.verbose)console.log(`\uD83D\uDCC5 Version ${S}: ${new Date(g).toLocaleString()} - ${new Date(d).toLocaleString()}`)}if(J===1){let w=z[0];if(w)console.log(`\uD83D\uDCE6 Using npm time range for ${w.version}: ${new Date(w.startTime).toLocaleString()} - ${new Date(w.endTime).toLocaleString()}`)}}catch(O){console.log("❌ Could not fetch npm publish times. Cannot proceed without time ranges."),process.exit(1)}console.log(`\uD83D\uDD0D Searching memories for versions: ${Y.join(", ")}`),console.log(`\uD83D\uDCE6 Project: ${B}
`);let G=z.length>0?`You are helping generate a changelog by searching for memories within specific time ranges for multiple versions.
PROJECT: ${B}
VERSION TIME RANGES:
${z.map((O)=>`- Version ${O.version}: ${new Date(O.startTime).toLocaleDateString()} to ${new Date(O.endTime).toLocaleDateString()}`).join(`
`)}
YOUR TASK:
Use mcp__claude-mem__chroma_query_documents to search for memories for each version time range.
SEARCH STRATEGY:
${z.map((O)=>{let y=new Date(O.startTime),x=new Date(O.endTime),w=[],S=new Date(y);while(S<=x){let g=S.toISOString().split("T")[0];w.push(g),S.setDate(S.getDate()+1)}return`
Version ${O.version} (${new Date(O.startTime).toLocaleDateString()} to ${new Date(O.endTime).toLocaleDateString()}):
1. Search for memories from these dates: ${w.join(", ")}
2. Make multiple calls to mcp__claude-mem__chroma_query_documents:
- collection_name: "claude_memories"
- query_texts: Include the project name AND date in each query:
* "${B} ${w[0]} feature"
* "${B} ${w[0]} fix"
* "${B} ${w[0]} change"
* "${B} ${w[0]} improvement"
* "${B} ${w[0]} refactor"
- n_results: 50
3. The date in the query text helps semantic search find memories from that day
4. Assign memories to this version if their timestamp falls within:
- Start: ${O.startTime}
- End: ${O.endTime}`}).join(`
`)}
IMPORTANT:
- Always include project name and date in query_texts for best results
- Semantic search will naturally find memories near those dates
- Group returned memories by version based on their timestamp metadata
Return a JSON object with this structure:
{
"memories": [
{
"version": "version_number",
"text": "memory content",
"metadata": {metadata object with timestamp},
"relevance": "high/medium/low"
}
]
}
Group memories by the version they belong to based on timestamp.
Start searching now.`:"ERROR: No time ranges available. This should never happen.";if(z.length===0)console.log("❌ No time ranges available. Cannot search memories."),process.exit(1);if(D.verbose)console.log("\uD83D\uDCDD Calling Claude to search memories...");let q=await f8({prompt:G,options:{allowedTools:["mcp__claude-mem__chroma_query_documents","mcp__claude-mem__chroma_get_documents"],pathToClaudeCodeExecutable:z8()}}),E="";if(q&&typeof q==="object"&&Symbol.asyncIterator in q){for await(let O of q)if(O?.type==="assistant"&&O?.message?.content){let y=O.message.content;if(typeof y==="string")E+=y;else if(Array.isArray(y)){for(let x of y)if(x.type==="text"&&x.text)E+=x.text}}}let U=[];try{let O=E.match(/```json\n([\s\S]*?)\n```/)||E.match(/\{[\s\S]*\}/);if(O){let y=JSON.parse(O[1]||O[0]);if(y.memories&&Array.isArray(y.memories))U=y.memories}}catch(O){console.error("⚠️ Could not parse memory search results:",O)}if(U.length===0){console.log(`
⚠️ No version-related memories found for this version.`),console.log(" This is normal for the first release or when no changes were tracked."),console.log(" Creating a placeholder changelog entry...");let O={version:Y[0],date:K,type:"Changed",description:"Initial release or minor updates",timestamp:new Date().toISOString(),generatedAt:new Date().toISOString()};if(!pD.existsSync(X))pD.mkdirSync(X,{recursive:!0});let y=JSON.stringify(O)+`
`;pD.appendFileSync(C,y),console.log(`✅ Created placeholder changelog entry for v${Y[0]}`),await xQ(D);return}console.log(`✅ Found ${U.length} version-related memories
`);let K=vQ('date "+%Y-%m-%d %H:%M:%S %Z"').toString().trim().split(" ")[0],V=`Analyze these memories and generate changelog entries.
PROJECT: ${B}
DATE: ${K}
MEMORIES BY VERSION:
${Y.map((O)=>{let y=U.filter((x)=>x.version===O);if(y.length===0)return`### Version ${O}
No memories found.`;return`### Version ${O} (${y.length} memories):
${y.map((x,w)=>`${w+1}. ${x.text}`).join(`
`)}`}).join(`
`)}
INSTRUCTIONS:
1. Extract concrete changes, fixes, and additions from the memories
2. Categorize each change as: Added, Changed, Fixed, Removed, Deprecated, or Security
3. Write clear, user-facing descriptions
4. Start each entry with an action verb
5. Focus on what matters to users, not internal implementation details
Return ONLY a JSON array with this structure:
[
{
"version": "3.6.1",
"type": "Added",
"description": "New feature description"
},
{
"version": "3.6.1",
"type": "Fixed",
"description": "Bug fix description"
}
]`;console.log("\uD83D\uDD04 Generating changelog entries...");let j=await f8({prompt:V,options:{allowedTools:[],pathToClaudeCodeExecutable:z8()}}),L="";if(j&&typeof j==="object"&&Symbol.asyncIterator in j){for await(let O of j)if(O?.type==="assistant"&&O?.message?.content){let y=O.message.content;if(typeof y==="string")L+=y;else if(Array.isArray(y)){for(let x of y)if(x.type==="text"&&x.text)L+=x.text}}}let R=[];try{let O=L.match(/```json\n([\s\S]*?)\n```/)||L.match(/\[[\s\S]*\]/);if(O){let y=JSON.parse(O[1]||O[0]);if(Array.isArray(y)){let x=new Date().toISOString();R=y.map((w)=>({...w,date:K,timestamp:w.timestamp||x,generatedAt:x}))}}}catch(O){console.error("⚠️ Could not parse changelog entries:",O)}if(R.length===0)console.log("⚠️ No changelog entries generated."),process.exit(1);if(!pD.existsSync(X))pD.mkdirSync(X,{recursive:!0});if(console.log(`
\uD83D\uDCBE Saving ${R.length} changelog entries to ${j0.basename(C)}`),D.historical&&J>1||D.generate){let O=[];if(pD.existsSync(C)){let w=pD.readFileSync(C,"utf-8").split(`
`).filter((S)=>S.trim());for(let S of w)try{let g=JSON.parse(S);if(!Y.includes(g.version))O.push(g)}catch(g){}}let x=[...O,...R].map((w)=>JSON.stringify(w)).join(`
`)+`
`;pD.writeFileSync(C,x),console.log(`\uD83D\uDD04 Regenerated entries for versions: ${Y.join(", ")}`)}else{let O=R.map((y)=>JSON.stringify(y)).join(`
`)+`
`;pD.appendFileSync(C,O)}console.log(`
\uD83D\uDCDD Generating CHANGELOG.md from entries...`);let b=[];if(pD.existsSync(C)){let O=pD.readFileSync(C,"utf-8").split(`
`).filter((y)=>y.trim());for(let y of O)try{b.push(JSON.parse(y))}catch(x){}}let k=new Map;for(let O of b){if(!k.has(O.version))k.set(O.version,[]);k.get(O.version).push(O)}let I=`# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
`,u=Array.from(k.keys()).sort((O,y)=>{let x=O.split(".").map(Number),w=y.split(".").map(Number);for(let S=0;S<3;S++)if(x[S]!==w[S])return w[S]-x[S];return 0});for(let O of u){let y=k.get(O),x=y[0].date||K;I+=`
## [${O}] - ${x}
`;let w=["Added","Changed","Fixed","Removed","Deprecated","Security"];for(let S of w){let g=y.filter((d)=>d.type===S);if(g.length>0){I+=`### ${S}
`;for(let d of g)I+=`- ${d.description}
`;I+=`
`}}}let f=j0.join(process.cwd(),"CHANGELOG.md");if(pD.writeFileSync(f,I),console.log(`✅ Generated CHANGELOG.md with ${b.length} total entries across ${k.size} versions!`),D.preview){if(console.log(`
\uD83D\uDCC4 Preview:
`),console.log(I.split(`
`).slice(0,30).join(`
`)),I.split(`
`).length>30)console.log(`
... (truncated for preview)`)}}catch(F){if(console.error("❌ Error generating changelog:",F instanceof Error?F.message:F),F instanceof Error&&F.stack)console.error("Stack:",F.stack);process.exit(1)}}async function xQ(D){try{let F=j0.join(process.cwd(),"package.json"),Q="unknown";if(pD.existsSync(F))try{Q=JSON.parse(pD.readFileSync(F,"utf-8")).name||j0.basename(process.cwd())}catch(q){Q=j0.basename(process.cwd())}let B=j0.join(process.env.HOME||process.env.USERPROFILE||"",".claude-mem","projects"),Y=j0.join(B,`${Q}-changelog.jsonl`);if(!pD.existsSync(Y))console.log("❌ No changelog entries found. Generate some first with: claude-mem changelog"),process.exit(1);console.log("\uD83D\uDCDD Updating CHANGELOG.md from JSONL entries...");let J=[],X=pD.readFileSync(Y,"utf-8").split(`
`).filter((q)=>q.trim());for(let q of X)try{J.push(JSON.parse(q))}catch(E){}if(J.length===0)console.log("❌ No valid entries found in JSONL file"),process.exit(1);let C=new Map;for(let q of J){if(!C.has(q.version))C.set(q.version,[]);C.get(q.version).push(q)}let W=`# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
`,z=Array.from(C.keys()).sort((q,E)=>{let U=q.split(".").map(Number),A=E.split(".").map(Number);for(let K=0;K<3;K++)if(U[K]!==A[K])return A[K]-U[K];return 0});for(let q of z){let E=C.get(q),U=E[0].date;W+=`
## [${q}] - ${U}
`;let A=["Added","Changed","Fixed","Removed","Deprecated","Security"];for(let K of A){let V=E.filter((j)=>j.type===K);if(V.length>0){W+=`### ${K}
`;for(let j of V)W+=`- ${j.description}
`;W+=`
`}}}let G=j0.join(process.cwd(),"CHANGELOG.md");if(pD.writeFileSync(G,W),console.log(`✅ Updated CHANGELOG.md with ${J.length} entries across ${C.size} versions!`),D.preview){if(console.log(`
\uD83D\uDCC4 Preview:
`),console.log(W.split(`
`).slice(0,30).join(`
`)),W.split(`
`).length>30)console.log(`
... (truncated for preview)`)}}catch(F){console.error("❌ Error updating changelog:",F instanceof Error?F.message:F),process.exit(1)}}E0();import l2 from"fs";import BU from"path";function QU(D){let F=D.status==="pass"?"✅":D.status==="warn"?"⚠️ ":"❌",Q=D.details?`${D.name}: ${D.details}`:D.name;console.log(`${F} ${Q}`)}async function yQ(D={}){let F=YD.getInstance(),Q=[];try{let Y=F.getDataDirectory();if(!l2.existsSync(Y))l2.mkdirSync(Y,{recursive:!0}),Q.push({name:`Data directory created at ${Y}`,status:"warn"});else{let J=l2.statSync(Y),X=!1;try{l2.accessSync(Y,l2.constants.W_OK),X=!0}catch{}Q.push({name:`Data directory ${Y}`,status:J.isDirectory()&&X?"pass":"fail",details:J.isDirectory()&&X?"accessible":"not writable"})}}catch(Y){Q.push({name:"Data directory",status:"fail",details:Y?.message||String(Y)})}let B;try{B=await s0();let Y=B.sessions.count();Q.push({name:"SQLite database",status:"pass",details:`${Y} session${Y===1?"":"s"} present`})}catch(Y){Q.push({name:"SQLite database",status:"fail",details:Y?.message||String(Y)})}try{let Y=F.getChromaDirectory(),J=l2.existsSync(Y);Q.push({name:"Chroma vector store",status:J?"pass":"warn",details:J?`data dir ${BU.resolve(Y)}`:"Not yet initialized"})}catch(Y){Q.push({name:"Chroma vector store",status:"warn",details:Y?.message||"Unable to check Chroma directory"})}if(D.json)console.log(JSON.stringify({checks:Q},null,2));else console.log("claude-mem doctor"),console.log("================="),Q.forEach(QU);_6("info","doctor run completed",{status:Q.map((Y)=>Y.status)})}import{spawnSync as fQ}from"child_process";async function gQ(D){let{id:F,project:Q,session:B,date:Y,title:J,subtitle:X,facts:C,concepts:W,files:z}=D;if(!F||!Q||!B||!Y)console.error("Error: All fields required: --id, --project, --session, --date"),process.exit(1);if(!J||!X||!C)console.error("Error: Hierarchical format required: --title, --subtitle, --facts"),process.exit(1);try{let G=await s0(),q=new Date().toISOString();if(!await G.sessions.has(B))await G.sessions.create({session_id:B,project:Q,created_at:q,source:"save"});let U,A,K;try{U=C?JSON.stringify(JSON.parse(C)):void 0}catch(j){U=C}try{A=W?JSON.stringify(JSON.parse(W)):void 0}catch(j){A=W}try{K=z?JSON.stringify(JSON.parse(z)):void 0}catch(j){K=z}if(!G.memories.hasDocumentId(F))G.memories.create({document_id:F,text:"",keywords:"",session_id:B,project:Q,created_at:q,origin:"streaming-sdk",title:J||void 0,subtitle:X||void 0,facts:U,concepts:A,files_touched:K});if(U){let j=JSON.parse(U),L=A?JSON.parse(A):[],R=K?JSON.parse(K):[];j.forEach((b,k)=>{fQ("claude-mem",["chroma_add_documents","--collection_name","claude_memories","--documents",JSON.stringify([b]),"--ids",JSON.stringify([`${F}_fact_${String(k).padStart(3,"0")}`]),"--metadatas",JSON.stringify([{type:"fact",parent_id:F,fact_index:k,title:J,subtitle:X,project:Q,session_id:B,created_at:q,created_at_epoch:Date.parse(q),keywords:"",concepts:JSON.stringify(L),files_touched:JSON.stringify(R),origin:"streaming-sdk"}])])}),fQ("claude-mem",["chroma_add_documents","--collection_name","claude_memories","--documents",JSON.stringify([`${J}
${X}
${j.join(`
`)}`]),"--ids",JSON.stringify([F]),"--metadatas",JSON.stringify([{type:"narrative",title:J,subtitle:X,facts_count:j.length,project:Q,session_id:B,created_at:q,created_at_epoch:Date.parse(q),keywords:"",concepts:JSON.stringify(L),files_touched:JSON.stringify(R),origin:"streaming-sdk"}])])}console.log(JSON.stringify({success:!0,memory_id:F,project:Q,session:B,date:Y,timestamp:q,hierarchical:!!(J&&X&&C)}))}catch(G){console.error(JSON.stringify({success:!1,error:G.message||"Unknown error storing memory"})),process.exit(1)}}async function $Q(D){let{project:F,session:Q,content:B}=D;if(!F||!Q||!B)console.error("Error: All fields required: --project, --session, --content"),process.exit(1);try{let Y=await s0(),J=new Date().toISOString();Y.overviews.upsert({session_id:Q,content:B,created_at:J,project:F,origin:"streaming-sdk"}),console.log(JSON.stringify({success:!0,project:F,session:Q,timestamp:J}))}catch(Y){console.error(JSON.stringify({success:!1,error:Y.message||"Unknown error storing overview"})),process.exit(1)}}import hQ from"path";import K9 from"fs";var XU=hQ.join(process.env.HOME||"",".claude-mem","sessions");async function mQ(D){let{project:F,session:Q,title:B,subtitle:Y}=D;if(!F||!Q)console.error(JSON.stringify({success:!1,error:"Missing required fields: --project, --session"})),process.exit(1);if(!B)console.error(JSON.stringify({success:!1,error:"Missing required field: --title"})),process.exit(1);try{let J=hQ.join(XU,`${F}_streaming.json`);if(!K9.existsSync(J))console.error(JSON.stringify({success:!1,error:`Session file not found: ${J}`})),process.exit(1);let X={};try{X=JSON.parse(K9.readFileSync(J,"utf8"))}catch(C){console.error(JSON.stringify({success:!1,error:"Failed to parse session file"})),process.exit(1)}if(X.promptTitle=B,Y)X.promptSubtitle=Y;X.updatedAt=new Date().toISOString(),K9.writeFileSync(J,JSON.stringify(X,null,2)),console.log(JSON.stringify({success:!0,title:B,subtitle:Y||null,project:F,session:Q}))}catch(J){console.error(JSON.stringify({success:!1,error:J.message||"Unknown error updating session metadata"})),process.exit(1)}}import lQ from"path";import H9 from"fs";var YU=lQ.join(process.env.HOME||"",".claude-mem","sessions");async function dQ(D,F){if(!D||D.trim().length===0)console.error(JSON.stringify({success:!1,error:"Prompt is required"})),process.exit(1);let Q=`You are a title and subtitle generator for claude-mem session metadata.
Your job is to analyze a user's request and generate:
1. A concise title (3-8 words)
2. A one-sentence subtitle (max 20 words)
TITLE GUIDELINES:
- 3-8 words maximum
- Scannable and clear
- Captures the core action or topic
- Professional and informative
- Examples:
* "Dark Mode Implementation"
* "Authentication Bug Fix"
* "API Rate Limiting Setup"
* "React Component Refactoring"
SUBTITLE GUIDELINES:
- One sentence, max 20 words
- Descriptive and specific
- Focus on the outcome or benefit
- Use active voice when possible
- Examples:
* "Adding theme toggle and dark color scheme support to the application"
* "Resolving login timeout issue affecting user session persistence"
* "Implementing request throttling to prevent API quota exhaustion"
OUTPUT FORMAT:
You must output EXACTLY two lines:
Line 1: Title only (no prefix, no quotes)
Line 2: Subtitle only (no prefix, no quotes)
EXAMPLE:
User request: "Help me add dark mode to my app"
Output:
Dark Mode Implementation
Adding theme toggle and dark color scheme support to the application
USER REQUEST:
${D}
Now generate the title and subtitle (two lines exactly):`;try{let B=await f8({prompt:Q,options:{allowedTools:[],pathToClaudeCodeExecutable:z8()}}),Y="";if(B&&typeof B==="object"&&Symbol.asyncIterator in B){for await(let W of B)if(W?.type==="assistant"&&W?.message?.content){let z=W.message.content;if(typeof z==="string")Y+=z;else if(Array.isArray(z)){for(let G of z)if(G.type==="text"&&G.text)Y+=G.text}}}let J=Y.trim().split(`
`).filter((W)=>W.trim().length>0);if(J.length<2)console.error(JSON.stringify({success:!1,error:"Could not generate title and subtitle",response:Y})),process.exit(1);let X=J[0].trim(),C=J[1].trim();if(F.save){if(!F.project||!F.session)console.error(JSON.stringify({success:!1,error:"--project and --session are required when using --save"})),process.exit(1);try{let W=lQ.join(YU,`${F.project}_streaming.json`);if(!H9.existsSync(W))console.error(JSON.stringify({success:!1,error:`Session file not found: ${W}`})),process.exit(1);let z={};try{z=JSON.parse(H9.readFileSync(W,"utf8"))}catch(G){console.error(JSON.stringify({success:!1,error:"Failed to parse session file"})),process.exit(1)}z.promptTitle=X,z.promptSubtitle=C,z.updatedAt=new Date().toISOString(),H9.writeFileSync(W,JSON.stringify(z,null,2))}catch(W){console.error(JSON.stringify({success:!1,error:`Failed to save metadata: ${W.message}`})),process.exit(1)}}if(F.json)console.log(JSON.stringify({success:!0,title:X,subtitle:C},null,2));else if(F.oneline)console.log(`${X} - ${C}`);else console.log(X),console.log(C)}catch(B){console.error(JSON.stringify({success:!1,error:B.message||"Unknown error generating title"})),process.exit(1)}}import{spawn as JU}from"child_process";import{EventEmitter as CU}from"events";class cQ extends CU{command;args;process=null;requestId=0;pendingRequests=new Map;buffer="";initialized=!1;serverCapabilities={};constructor(D="uvx",F=["chroma-mcp","--client-type","persistent","--data-dir","/Users/alexnewman/.claude-mem/chroma"]){super();this.command=D;this.args=F}async connect(){if(this.process)throw new Error("Client already connected");this.process=JU(this.command,this.args,{stdio:["pipe","pipe","pipe"]}),this.process.stdout?.on("data",(D)=>{this.handleData(D)}),this.process.stderr?.on("data",(D)=>{let F=D.toString();if(F.includes("INFO")&&F.includes("telemetry"))return;if(F.includes("ERROR")||F.includes("Error:"))console.error("MCP Server Error:",F),this.emit("error",new Error(F))}),this.process.on("exit",(D)=>{if(D!==null&&D!==0&&D!==143)console.log(`MCP Server exited with code ${D}`);this.emit("exit",D),this.cleanup()}),await this.initialize()}handleData(D){this.buffer+=D.toString();let F=this.buffer.split(`
`);this.buffer=F.pop()||"";for(let Q of F)if(Q.trim())try{let B=JSON.parse(Q);this.handleMessage(B)}catch(B){console.error("Failed to parse message:",Q,B)}}handleMessage(D){if("id"in D){let F=this.pendingRequests.get(D.id);if(F)if(this.pendingRequests.delete(D.id),D.error)F.reject(new Error(D.error.message));else F.resolve(D.result)}else this.emit("notification",D)}async sendRequest(D,F){if(!this.process||!this.process.stdin)throw new Error("Not connected to MCP server");let Q=++this.requestId,B={jsonrpc:"2.0",id:Q,method:D,params:F};return new Promise((Y,J)=>{this.pendingRequests.set(Q,{resolve:Y,reject:J});let X=JSON.stringify(B)+`
`;this.process.stdin.write(X,(C)=>{if(C)this.pendingRequests.delete(Q),J(C)}),setTimeout(()=>{if(this.pendingRequests.has(Q))this.pendingRequests.delete(Q),J(new Error(`Request timeout for method: ${D}`))},30000)})}async initialize(){let D=await this.sendRequest("initialize",{protocolVersion:"2024-11-05",capabilities:{roots:{listChanged:!0},sampling:{}},clientInfo:{name:"chroma-mcp-typescript-client",version:"1.0.0"}});this.serverCapabilities=D.capabilities||{},this.initialized=!0,await this.sendNotification("notifications/initialized"),this.emit("initialized",D)}async sendNotification(D,F){if(!this.process||!this.process.stdin)throw new Error("Not connected to MCP server");let B=JSON.stringify({jsonrpc:"2.0",method:D,params:F})+`
`;this.process.stdin.write(B)}async listTools(){if(!this.initialized)throw new Error("Client not initialized");return(await this.sendRequest("tools/list")).tools||[]}async callTool(D,F){if(!this.initialized)throw new Error("Client not initialized");return await this.sendRequest("tools/call",{name:D,arguments:F||{}})}async listResources(){if(!this.initialized)throw new Error("Client not initialized");return(await this.sendRequest("resources/list")).resources||[]}async readResource(D){if(!this.initialized)throw new Error("Client not initialized");return await this.sendRequest("resources/read",{uri:D})}async listPrompts(){if(!this.initialized)throw new Error("Client not initialized");return(await this.sendRequest("prompts/list")).prompts||[]}async getPrompt(D,F){if(!this.initialized)throw new Error("Client not initialized");return await this.sendRequest("prompts/get",{name:D,arguments:F||{}})}async ping(){await this.sendRequest("ping")}getCapabilities(){return this.serverCapabilities}isInitialized(){return this.initialized}async disconnect(){if(this.process){for(let[D,F]of this.pendingRequests)F.reject(new Error("Client disconnected"));this.pendingRequests.clear(),this.process.kill("SIGTERM"),await new Promise((D)=>{let F=setTimeout(()=>{if(this.process&&!this.process.killed)this.process.kill("SIGKILL");D()},1000);this.process?.once("exit",()=>{clearTimeout(F),D()})}),this.cleanup()}}cleanup(){this.process=null,this.initialized=!1,this.buffer="",this.pendingRequests.clear()}}var pQ=cQ;import nQ from"fs";import s6 from"path";import{fileURLToPath as WU}from"url";var zU=WU(import.meta.url),iQ=s6.dirname(zU);async function aQ(D,F){let Q=new pQ;try{await Q.connect();let B=qU(D,F),Y=await Q.callTool(D,B),J=GU(Y);console.log(J),await Q.disconnect(),process.exit(0)}catch(B){console.error(JSON.stringify({success:!1,error:B.message||"Unknown error calling MCP tool",tool:D},null,2)),await Q.disconnect(),process.exit(1)}}function GU(D){if(D?.content&&Array.isArray(D.content)){let F=D.content.filter((Q)=>Q.type==="text").map((Q)=>Q.text).join(`
`);try{let Q=JSON.parse(F);return JSON.stringify(Q,null,2)}catch{return F}}if(typeof D==="object")return JSON.stringify(D,null,2);return String(D)}function qU(D,F){let Q={};for(let[B,Y]of Object.entries(F)){if(B.startsWith("_")||typeof Y==="function")continue;if(typeof Y==="string")try{Q[B]=JSON.parse(Y)}catch{Q[B]=Y}else Q[B]=Y}return Q}function rQ(){let D=[s6.join(iQ,"../../chroma-mcp-tools/CHROMA_MCP_TOOLS.json"),s6.join(process.cwd(),"chroma-mcp-tools/CHROMA_MCP_TOOLS.json"),s6.join(iQ,"../chroma-mcp-tools/CHROMA_MCP_TOOLS.json")];for(let F of D)if(nQ.existsSync(F)){let Q=nQ.readFileSync(F,"utf-8");return JSON.parse(Q)}throw new Error("Could not find CHROMA_MCP_TOOLS.json")}function oQ(D){let F=[];if(!D.properties)return F;let Q=D.required||[];for(let[B,Y]of Object.entries(D.properties)){let J=Y,X=Q.includes(B),C="string";if(J.type==="integer"||J.type==="number")C="number";else if(J.type==="array")C="array";else if(J.type==="object")C="json";else if(J.anyOf){let G=J.anyOf.find((q)=>q.type!=="null");if(G?.type==="integer"||G?.type==="number")C="number";else if(G?.type==="array")C="array";else if(G?.type==="object")C="json"}let W=X?`--${B} <${C}>`:`--${B} [${C}]`,z=J.title||B;if(J.default!==void 0)z+=` (default: ${JSON.stringify(J.default)})`;if(C==="array")z+=" (JSON array)";else if(C==="json")z+=" (JSON object)";F.push({flag:W,description:z,required:X,type:C})}return F}var K0=new c9;K0.name(G2).description(t9).version(s9);K0.command("install").description("Install Claude Code hooks for automatic compression").option("--user","Install for current user (default)").option("--project","Install for current project only").option("--local","Install to custom local directory").option("--path <path>","Custom installation path (with --local)").option("--timeout <ms>","Hook execution timeout in milliseconds","180000").option("--skip-mcp","Skip Chroma MCP server installation").option("--force","Force installation even if already installed").action(S4);K0.command("uninstall").description("Remove Claude Code hooks").option("--user","Remove from user settings (default)").option("--project","Remove from project settings").option("--all","Remove from both user and project settings").action(v4);K0.command("status").description("Check installation status of Claude Memory System").action(A5);K0.command("doctor").description("Run environment and pipeline diagnostics for rolling memory").option("--json","Output JSON instead of text").action(async(D)=>{try{await yQ(D)}catch(F){console.error(`doctor failed: ${F.message||F}`),process.exitCode=1}});K0.command("logs").description("View claude-mem operation logs").option("--debug","Show debug logs only").option("--error","Show error logs only").option("--tail [n]","Show last n lines","50").option("--follow","Follow log output").action(L5);K0.command("load-context").description("Load compressed memories for current session").option("--project <name>","Filter by project name").option("--count <n>","Number of memories to load","10").option("--raw","Output raw JSON instead of formatted text").option("--format <type>","Output format: json, session-start, or default").action(f5);var U9=K0.command("trash").description("Manage trash bin for safe file deletion").argument("[files...]","Files to move to trash").option("-r, --recursive","Remove directories recursively").option("-R","Remove directories recursively (same as -r)").option("-f, --force","Suppress errors for nonexistent files").action(async(D,F)=>{if(!D||D.length===0){U9.outputHelp();return}if(F.R)F.recursive=!0;await vB(D,{force:F.force,recursive:F.recursive})});U9.command("view").description("View contents of trash bin").action($B);U9.command("empty").description("Permanently delete all files in trash").option("-f, --force","Skip confirmation prompt").action(mB);K0.command("restore").description("Restore files from trash interactively").action(dB);K0.command("store-memory").description("Store a memory to all storage layers (used by SDK)").requiredOption("--id <id>","Memory ID").requiredOption("--project <project>","Project name").requiredOption("--session <session>","Session ID").requiredOption("--date <date>","Date (YYYY-MM-DD)").requiredOption("--title <title>","Memory title (3-8 words)").requiredOption("--subtitle <subtitle>","Memory subtitle (max 24 words)").requiredOption("--facts <json>","Atomic facts as JSON array").option("--concepts <json>","Concept tags as JSON array").option("--files <json>","Files touched as JSON array").action(gQ);K0.command("store-overview").description("Store a session overview (used by SDK)").requiredOption("--project <project>","Project name").requiredOption("--session <session>","Session ID").requiredOption("--content <content>","Overview content").action($Q);K0.command("update-session-metadata").description("Update session title and subtitle (used by SDK)").requiredOption("--project <project>","Project name").requiredOption("--session <session>","Session ID").requiredOption("--title <title>","Session title (3-6 words)").option("--subtitle <subtitle>","Session subtitle (max 20 words)").action(mQ);K0.command("changelog").description("Generate CHANGELOG.md from claude-mem memories").option("--historical <n>","Number of versions to search (default: current version only)").option("--generate <version>","Generate changelog for a specific version").option("--start <time>","Start time for memory search (ISO format)").option("--end <time>","End time for memory search (ISO format)").option("--update","Update CHANGELOG.md from JSONL entries").option("--preview","Preview the generated changelog").option("-v, --verbose","Show detailed output").action(uQ);K0.command("generate-title <prompt>").description("Generate a session title and subtitle from a prompt").option("--json","Output as JSON").option("--oneline","Output as single line (title - subtitle)").option("--save","Save title and subtitle to session metadata").option("--project <name>","Project name (required with --save)").option("--session <id>","Session ID (required with --save)").action(dQ);try{let D=rQ();for(let F of D){let Q=K0.command(F.name).description(F.description||`Execute ${F.name} MCP tool`),B=oQ(F.inputSchema);for(let Y of B)if(Y.required)Q.requiredOption(Y.flag,Y.description);else Q.option(Y.flag,Y.description);Q.action(async(Y)=>{await aQ(F.name,Y)})}}catch(D){console.warn("Warning: Could not load Chroma MCP tools:",D)}K0.parse();