flins 0.1.12 → 0.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +32 -32
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -24,7 +24,7 @@ Expecting one of '${F.join("', '")}'`);if(this._lifeCycleHooks[D])this._lifeCycl
24
24
  `),this.outputHelp({error:!0});let F=u||{},E=F.exitCode||1,C=F.code||"commander.error";this._exit(E,C,D)}_parseOptionsEnv(){this.options.forEach((D)=>{if(D.envVar&&D.envVar in a.env){let u=D.attributeName();if(this.getOptionValue(u)===void 0||["default","config","env"].includes(this.getOptionValueSource(u)))if(D.required||D.optional)this.emit(`optionEnv:${D.name()}`,a.env[D.envVar]);else this.emit(`optionEnv:${D.name()}`)}})}_parseOptionsImplied(){let D=new Q5(this.options),u=(F)=>{return this.getOptionValue(F)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(F))};this.options.filter((F)=>F.implied!==void 0&&u(F.attributeName())&&D.valueFromOption(this.getOptionValue(F.attributeName()),F)).forEach((F)=>{Object.keys(F.implied).filter((E)=>!u(E)).forEach((E)=>{this.setOptionValueWithSource(E,F.implied[E],"implied")})})}missingArgument(D){let u=`error: missing required argument '${D}'`;this.error(u,{code:"commander.missingArgument"})}optionMissingArgument(D){let u=`error: option '${D.flags}' argument missing`;this.error(u,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(D){let u=`error: required option '${D.flags}' not specified`;this.error(u,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(D,u){let F=(B)=>{let A=B.attributeName(),I=this.getOptionValue(A),Y=this.options.find((J)=>J.negate&&A===J.attributeName()),Z=this.options.find((J)=>!J.negate&&A===J.attributeName());if(Y&&(Y.presetArg===void 0&&I===!1||Y.presetArg!==void 0&&I===Y.presetArg))return Y;return Z||B},E=(B)=>{let A=F(B),I=A.attributeName();if(this.getOptionValueSource(I)==="env")return`environment variable '${A.envVar}'`;return`option '${A.flags}'`},C=`error: ${E(D)} cannot be used with ${E(u)}`;this.error(C,{code:"commander.conflictingOption"})}unknownOption(D){if(this._allowUnknownOption)return;let u="";if(D.startsWith("--")&&this._showSuggestionAfterError){let E=[],C=this;do{let B=C.createHelp().visibleOptions(C).filter((A)=>A.long).map((A)=>A.long);E=E.concat(B),C=C.parent}while(C&&!C._enablePositionalOptions);u=N8(D,E)}let F=`error: unknown option '${D}'${u}`;this.error(F,{code:"commander.unknownOption"})}_excessArguments(D){if(this._allowExcessArguments)return;let u=this.registeredArguments.length,F=u===1?"":"s",C=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${u} argument${F} but got ${D.length}.`;this.error(C,{code:"commander.excessArguments"})}unknownCommand(){let D=this.args[0],u="";if(this._showSuggestionAfterError){let E=[];this.createHelp().visibleCommands(this).forEach((C)=>{if(E.push(C.name()),C.alias())E.push(C.alias())}),u=N8(D,E)}let F=`error: unknown command '${D}'${u}`;this.error(F,{code:"commander.unknownCommand"})}version(D,u,F){if(D===void 0)return this._version;this._version=D,u=u||"-V, --version",F=F||"output the version number";let E=this.createOption(u,F);return this._versionOptionName=E.attributeName(),this._registerOption(E),this.on("option:"+E.name(),()=>{this._outputConfiguration.writeOut(`${D}
25
25
  `),this._exit(0,"commander.version",D)}),this}description(D,u){if(D===void 0&&u===void 0)return this._description;if(this._description=D,u)this._argsDescription=u;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 u=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)u=this.commands[this.commands.length-1];if(D===u._name)throw Error("Command alias can't be the same as its name");let F=this.parent?._findCommand(D);if(F){let E=[F.name()].concat(F.aliases()).join("|");throw Error(`cannot add alias '${D}' to command '${this.name()}' as already have command '${E}'`)}return u._aliases.push(D),this}aliases(D){if(D===void 0)return this._aliases;return D.forEach((u)=>this.alias(u)),this}usage(D){if(D===void 0){if(this._usage)return this._usage;let u=this.registeredArguments.map((F)=>{return U5(F)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?u:[]).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=iD.basename(D,iD.extname(D)),this}executableDir(D){if(D===void 0)return this._executableDir;return this._executableDir=D,this}helpInformation(D){let u=this.createHelp(),F=this._getOutputContext(D);u.prepareContext({error:F.error,helpWidth:F.helpWidth,outputHasColors:F.hasColors});let E=u.formatHelp(this,u);if(F.hasColors)return E;return this._outputConfiguration.stripColor(E)}_getOutputContext(D){D=D||{};let u=!!D.error,F,E,C;if(u)F=(A)=>this._outputConfiguration.writeErr(A),E=this._outputConfiguration.getErrHasColors(),C=this._outputConfiguration.getErrHelpWidth();else F=(A)=>this._outputConfiguration.writeOut(A),E=this._outputConfiguration.getOutHasColors(),C=this._outputConfiguration.getOutHelpWidth();return{error:u,write:(A)=>{if(!E)A=this._outputConfiguration.stripColor(A);return F(A)},hasColors:E,helpWidth:C}}outputHelp(D){let u;if(typeof D==="function")u=D,D=void 0;let F=this._getOutputContext(D),E={error:F.error,write:F.write,command:this};this._getCommandAndAncestors().reverse().forEach((B)=>B.emit("beforeAllHelp",E)),this.emit("beforeHelp",E);let C=this.helpInformation({error:F.error});if(u){if(C=u(C),typeof C!=="string"&&!Buffer.isBuffer(C))throw Error("outputHelp callback must return a string or a Buffer")}if(F.write(C),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",E),this._getCommandAndAncestors().forEach((B)=>B.emit("afterAllHelp",E))}helpOption(D,u){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",u??"display help for command"),D||u)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 u=Number(a.exitCode??0);if(u===0&&D&&typeof D!=="function"&&D.error)u=1;this._exit(u,"commander.help","(outputHelp)")}addHelpText(D,u){let F=["beforeAll","before","after","afterAll"];if(!F.includes(D))throw Error(`Unexpected value for position to addHelpText.
26
26
  Expecting one of '${F.join("', '")}'`);let E=`${D}Help`;return this.on(E,(C)=>{let B;if(typeof u==="function")B=u({error:C.error,command:C.command});else B=u;if(B)C.write(`${B}
27
- `)}),this}_outputHelpIfRequested(D){let u=this._getHelpOption();if(u&&D.find((E)=>u.is(E)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function R8(D){return D.map((u)=>{if(!u.startsWith("--inspect"))return u;let F,E="127.0.0.1",C="9229",B;if((B=u.match(/^(--inspect(-brk)?)$/))!==null)F=B[1];else if((B=u.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(F=B[1],/^\d+$/.test(B[3]))C=B[3];else E=B[3];else if((B=u.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)F=B[1],E=B[3],C=B[4];if(F&&C!=="0")return`${F}=${E}:${parseInt(C)+1}`;return u})}function c2(){if(a.env.NO_COLOR||a.env.FORCE_COLOR==="0"||a.env.FORCE_COLOR==="false")return!1;if(a.env.FORCE_COLOR||a.env.CLICOLOR_FORCE!==void 0)return!0;return}z5.Command=m2;z5.useColor=c2});var P8=N((w5)=>{var{Argument:W8}=r0(),{Command:l2}=w8(),{CommanderError:N5,InvalidArgumentError:V8}=F0(),{Help:R5}=k2(),{Option:M8}=v2();w5.program=new l2;w5.createCommand=(D)=>new l2(D);w5.createOption=(D,u)=>new M8(D,u);w5.createArgument=(D,u)=>new W8(D,u);w5.Command=l2;w5.Option=M8;w5.Argument=W8;w5.Help=R5;w5.CommanderError=N5;w5.InvalidArgumentError=V8;w5.InvalidOptionArgumentError=V8});var xu;var s0=e(()=>{xu={name:"flins",version:"0.1.12",description:"Universal skill installer for AI coding agents - Claude, Cursor, Copilot, and more",keywords:["agent-skills","ai-agents","claude","cli","coding-assistant","copilot","cursor","github-copilot","skills"],homepage:"https://github.com/flinstech/flins#readme",bugs:{url:"https://github.com/flinstech/flins/issues"},license:"MIT",author:"flins",repository:{type:"git",url:"git+https://github.com/flinstech/flins.git"},bin:{flins:"./dist/index.js"},files:["dist","README.md"],type:"module",module:"src/index.ts",scripts:{build:"bun build src/index.ts --outdir dist --target node --minify",dev:"bun src/index.ts",typecheck:"tsgo --noEmit",prepublishOnly:"bun run build",lint:"oxlint","lint:fix":"oxlint --fix",fmt:"oxfmt","fmt:check":"oxfmt --check"},dependencies:{"@clack/prompts":"^1.0.0-alpha.9",commander:"^14.0.2",picocolors:"^1.1.1","update-notifier":"^7.3.1"},devDependencies:{"@types/bun":"latest","@types/update-notifier":"^6.0.8","@typescript/native-preview":"catalog:","bun-types":"^1.3.6",oxfmt:"^0.24.0",oxlint:"^1.39.0"}}});var LD=N((KX,d2)=>{var t0=process||{},y8=t0.argv||[],o0=t0.env||{},g5=!(!!o0.NO_COLOR||y8.includes("--no-color"))&&(!!o0.FORCE_COLOR||y8.includes("--color")||t0.platform==="win32"||(t0.stdout||{}).isTTY&&o0.TERM!=="dumb"||!!o0.CI),c5=(D,u,F=D)=>(E)=>{let C=""+E,B=C.indexOf(u,D.length);return~B?D+m5(C,u,F,B)+u:D+C+u},m5=(D,u,F,E)=>{let C="",B=0;do C+=D.substring(B,E)+F,B=E+u.length,E=D.indexOf(u,B);while(~E);return C+D.substring(B)},x8=(D=g5)=>{let u=D?c5:()=>String;return{isColorSupported:D,reset:u("\x1B[0m","\x1B[0m"),bold:u("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:u("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:u("\x1B[3m","\x1B[23m"),underline:u("\x1B[4m","\x1B[24m"),inverse:u("\x1B[7m","\x1B[27m"),hidden:u("\x1B[8m","\x1B[28m"),strikethrough:u("\x1B[9m","\x1B[29m"),black:u("\x1B[30m","\x1B[39m"),red:u("\x1B[31m","\x1B[39m"),green:u("\x1B[32m","\x1B[39m"),yellow:u("\x1B[33m","\x1B[39m"),blue:u("\x1B[34m","\x1B[39m"),magenta:u("\x1B[35m","\x1B[39m"),cyan:u("\x1B[36m","\x1B[39m"),white:u("\x1B[37m","\x1B[39m"),gray:u("\x1B[90m","\x1B[39m"),bgBlack:u("\x1B[40m","\x1B[49m"),bgRed:u("\x1B[41m","\x1B[49m"),bgGreen:u("\x1B[42m","\x1B[49m"),bgYellow:u("\x1B[43m","\x1B[49m"),bgBlue:u("\x1B[44m","\x1B[49m"),bgMagenta:u("\x1B[45m","\x1B[49m"),bgCyan:u("\x1B[46m","\x1B[49m"),bgWhite:u("\x1B[47m","\x1B[49m"),blackBright:u("\x1B[90m","\x1B[39m"),redBright:u("\x1B[91m","\x1B[39m"),greenBright:u("\x1B[92m","\x1B[39m"),yellowBright:u("\x1B[93m","\x1B[39m"),blueBright:u("\x1B[94m","\x1B[39m"),magentaBright:u("\x1B[95m","\x1B[39m"),cyanBright:u("\x1B[96m","\x1B[39m"),whiteBright:u("\x1B[97m","\x1B[39m"),bgBlackBright:u("\x1B[100m","\x1B[49m"),bgRedBright:u("\x1B[101m","\x1B[49m"),bgGreenBright:u("\x1B[102m","\x1B[49m"),bgYellowBright:u("\x1B[103m","\x1B[49m"),bgBlueBright:u("\x1B[104m","\x1B[49m"),bgMagentaBright:u("\x1B[105m","\x1B[49m"),bgCyanBright:u("\x1B[106m","\x1B[49m"),bgWhiteBright:u("\x1B[107m","\x1B[49m")}};d2.exports=x8();d2.exports.createColors=x8});var i2=N((QX,f8)=>{var n2={to(D,u){if(!u)return`\x1B[${D+1}G`;return`\x1B[${u+1};${D+1}H`},move(D,u){let F="";if(D<0)F+=`\x1B[${-D}D`;else if(D>0)F+=`\x1B[${D}C`;if(u<0)F+=`\x1B[${-u}A`;else if(u>0)F+=`\x1B[${u}B`;return F},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"},l5={up:(D=1)=>"\x1B[S".repeat(D),down:(D=1)=>"\x1B[T".repeat(D)},d5={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 u="";for(let F=0;F<D;F++)u+=this.line+(F<D-1?n2.up():"");if(D)u+=n2.left;return u}};f8.exports={cursor:n2,scroll:l5,erase:d5,beep:"\x07"}});import{stdout as t2,stdin as g8}from"node:process";import*as tD from"node:readline";import n5 from"node:readline";import{ReadStream as b8}from"node:tty";function s2(D,u,F){return String(D).normalize().replaceAll(`\r
27
+ `)}),this}_outputHelpIfRequested(D){let u=this._getHelpOption();if(u&&D.find((E)=>u.is(E)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function R8(D){return D.map((u)=>{if(!u.startsWith("--inspect"))return u;let F,E="127.0.0.1",C="9229",B;if((B=u.match(/^(--inspect(-brk)?)$/))!==null)F=B[1];else if((B=u.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(F=B[1],/^\d+$/.test(B[3]))C=B[3];else E=B[3];else if((B=u.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)F=B[1],E=B[3],C=B[4];if(F&&C!=="0")return`${F}=${E}:${parseInt(C)+1}`;return u})}function c2(){if(a.env.NO_COLOR||a.env.FORCE_COLOR==="0"||a.env.FORCE_COLOR==="false")return!1;if(a.env.FORCE_COLOR||a.env.CLICOLOR_FORCE!==void 0)return!0;return}z5.Command=m2;z5.useColor=c2});var P8=N((w5)=>{var{Argument:W8}=r0(),{Command:l2}=w8(),{CommanderError:N5,InvalidArgumentError:V8}=F0(),{Help:R5}=k2(),{Option:M8}=v2();w5.program=new l2;w5.createCommand=(D)=>new l2(D);w5.createOption=(D,u)=>new M8(D,u);w5.createArgument=(D,u)=>new W8(D,u);w5.Command=l2;w5.Option=M8;w5.Argument=W8;w5.Help=R5;w5.CommanderError=N5;w5.InvalidArgumentError=V8;w5.InvalidOptionArgumentError=V8});var xu;var s0=e(()=>{xu={name:"flins",version:"0.1.14",description:"Universal skill installer for AI coding agents - Claude, Cursor, Copilot, and more",keywords:["agent-skills","ai-agents","claude","cli","coding-assistant","copilot","cursor","github-copilot","skills"],homepage:"https://github.com/flinstech/flins#readme",bugs:{url:"https://github.com/flinstech/flins/issues"},license:"MIT",author:"flins",repository:{type:"git",url:"git+https://github.com/flinstech/flins.git"},bin:{flins:"./dist/index.js"},files:["dist","README.md"],type:"module",module:"src/index.ts",scripts:{build:"bun build src/index.ts --outdir dist --target node --minify",dev:"bun src/index.ts",typecheck:"tsgo --noEmit",prepublishOnly:"bun run build",lint:"oxlint","lint:fix":"oxlint --fix",fmt:"oxfmt","fmt:check":"oxfmt --check"},dependencies:{"@clack/prompts":"^1.0.0-alpha.9",commander:"^14.0.2",picocolors:"^1.1.1","update-notifier":"^7.3.1"},devDependencies:{"@types/bun":"latest","@types/update-notifier":"^6.0.8","@typescript/native-preview":"catalog:","bun-types":"^1.3.6",oxfmt:"^0.24.0",oxlint:"^1.39.0"}}});var LD=N((KX,d2)=>{var t0=process||{},y8=t0.argv||[],o0=t0.env||{},g5=!(!!o0.NO_COLOR||y8.includes("--no-color"))&&(!!o0.FORCE_COLOR||y8.includes("--color")||t0.platform==="win32"||(t0.stdout||{}).isTTY&&o0.TERM!=="dumb"||!!o0.CI),c5=(D,u,F=D)=>(E)=>{let C=""+E,B=C.indexOf(u,D.length);return~B?D+m5(C,u,F,B)+u:D+C+u},m5=(D,u,F,E)=>{let C="",B=0;do C+=D.substring(B,E)+F,B=E+u.length,E=D.indexOf(u,B);while(~E);return C+D.substring(B)},x8=(D=g5)=>{let u=D?c5:()=>String;return{isColorSupported:D,reset:u("\x1B[0m","\x1B[0m"),bold:u("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:u("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:u("\x1B[3m","\x1B[23m"),underline:u("\x1B[4m","\x1B[24m"),inverse:u("\x1B[7m","\x1B[27m"),hidden:u("\x1B[8m","\x1B[28m"),strikethrough:u("\x1B[9m","\x1B[29m"),black:u("\x1B[30m","\x1B[39m"),red:u("\x1B[31m","\x1B[39m"),green:u("\x1B[32m","\x1B[39m"),yellow:u("\x1B[33m","\x1B[39m"),blue:u("\x1B[34m","\x1B[39m"),magenta:u("\x1B[35m","\x1B[39m"),cyan:u("\x1B[36m","\x1B[39m"),white:u("\x1B[37m","\x1B[39m"),gray:u("\x1B[90m","\x1B[39m"),bgBlack:u("\x1B[40m","\x1B[49m"),bgRed:u("\x1B[41m","\x1B[49m"),bgGreen:u("\x1B[42m","\x1B[49m"),bgYellow:u("\x1B[43m","\x1B[49m"),bgBlue:u("\x1B[44m","\x1B[49m"),bgMagenta:u("\x1B[45m","\x1B[49m"),bgCyan:u("\x1B[46m","\x1B[49m"),bgWhite:u("\x1B[47m","\x1B[49m"),blackBright:u("\x1B[90m","\x1B[39m"),redBright:u("\x1B[91m","\x1B[39m"),greenBright:u("\x1B[92m","\x1B[39m"),yellowBright:u("\x1B[93m","\x1B[39m"),blueBright:u("\x1B[94m","\x1B[39m"),magentaBright:u("\x1B[95m","\x1B[39m"),cyanBright:u("\x1B[96m","\x1B[39m"),whiteBright:u("\x1B[97m","\x1B[39m"),bgBlackBright:u("\x1B[100m","\x1B[49m"),bgRedBright:u("\x1B[101m","\x1B[49m"),bgGreenBright:u("\x1B[102m","\x1B[49m"),bgYellowBright:u("\x1B[103m","\x1B[49m"),bgBlueBright:u("\x1B[104m","\x1B[49m"),bgMagentaBright:u("\x1B[105m","\x1B[49m"),bgCyanBright:u("\x1B[106m","\x1B[49m"),bgWhiteBright:u("\x1B[107m","\x1B[49m")}};d2.exports=x8();d2.exports.createColors=x8});var i2=N((QX,f8)=>{var n2={to(D,u){if(!u)return`\x1B[${D+1}G`;return`\x1B[${u+1};${D+1}H`},move(D,u){let F="";if(D<0)F+=`\x1B[${-D}D`;else if(D>0)F+=`\x1B[${D}C`;if(u<0)F+=`\x1B[${-u}A`;else if(u>0)F+=`\x1B[${u}B`;return F},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"},l5={up:(D=1)=>"\x1B[S".repeat(D),down:(D=1)=>"\x1B[T".repeat(D)},d5={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 u="";for(let F=0;F<D;F++)u+=this.line+(F<D-1?n2.up():"");if(D)u+=n2.left;return u}};f8.exports={cursor:n2,scroll:l5,erase:d5,beep:"\x07"}});import{stdout as t2,stdin as g8}from"node:process";import*as tD from"node:readline";import n5 from"node:readline";import{ReadStream as b8}from"node:tty";function s2(D,u,F){return String(D).normalize().replaceAll(`\r
28
28
  `,`
29
29
  `).split(`
30
30
  `).map((E)=>EA(E,u,F)).join(`
@@ -44,62 +44,62 @@ Expecting one of '${F.join("', '")}'`);let E=`${D}Help`;return this.on(E,(C)=>{l
44
44
  `,`
45
45
  `).split(`
46
46
  `).map((E)=>MA(E,u,F)).join(`
47
- `)}function jA(D,u){if(!D)return!0;let F=(u.label??String(u.value??"")).toLowerCase(),E=(u.hint??"").toLowerCase(),C=String(u.value).toLowerCase(),B=D.toLowerCase();return F.includes(B)||E.includes(B)||C.includes(B)}var K,B0,Y3,$A=()=>process.env.CI==="true",t=(D,u)=>Y3?D:u,HA,o8,t8,G3,SA,i,Xu,yX,xX,$3,YF,XA,H3,S3,fX,bX,kX,vX,hX,gX,cX,GA,_A,qA,UA,HF=(D)=>{switch(D){case"initial":case"active":return K.default.cyan(HA);case"cancel":return K.default.red(o8);case"error":return K.default.yellow(t8);case"submit":return K.default.green(G3)}},e8=(D)=>{switch(D){case"initial":case"active":return K.default.cyan(i);case"cancel":return K.default.red(i);case"error":return K.default.yellow(i);case"submit":return K.default.green(i)}},LA=(D)=>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,KA=(D)=>D===12288||D>=65281&&D<=65376||D>=65504&&D<=65510,QA=(D)=>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>=9800&&D<=9811||D===9855||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<=12771||D>=12783&&D<=12830||D>=12832&&D<=12871||D>=12880&&D<=19903||D>=19968&&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>=101632&&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===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<=129672||D>=129680&&D<=129725||D>=129727&&D<=129733||D>=129742&&D<=129755||D>=129760&&D<=129768||D>=129776&&D<=129784||D>=131072&&D<=196605||D>=196608&&D<=262141,I3,AF,IF,J3,JF,zA,TA,DC=(D,u={},F={})=>{let E=u.limit??1/0,C=u.ellipsis??"",B=u?.ellipsisWidth??(C?DC(C,TA,F).width:0),A=F.ansiWidth??0,I=F.controlWidth??0,Y=F.tabWidth??8,Z=F.ambiguousWidth??1,J=F.emojiWidth??2,S=F.fullWidthWidth??2,H=F.regularWidth??1,$=F.wideWidth??2,X=0,G=0,_=D.length,q=0,U=!1,z=_,T=Math.max(0,E-B),W=0,y=0,O=0,M=0;D:for(;;){if(y>W||G>=_&&G>X){let Q=D.slice(W,y)||D.slice(X,G);q=0;for(let R of Q.replaceAll(zA,"")){let w=R.codePointAt(0)||0;if(KA(w)?M=S:QA(w)?M=$:Z!==H&&LA(w)?M=Z:M=H,O+M>T&&(z=Math.min(z,Math.max(W,X)+q)),O+M>E){U=!0;break D}q+=R.length,O+=M}W=y=0}if(G>=_)break;if(JF.lastIndex=G,JF.test(D)){if(q=JF.lastIndex-G,M=q*H,O+M>T&&(z=Math.min(z,G+Math.floor((T-O)/H))),O+M>E){U=!0;break}O+=M,W=X,y=G,G=X=JF.lastIndex;continue}if(I3.lastIndex=G,I3.test(D)){if(O+A>T&&(z=Math.min(z,G)),O+A>E){U=!0;break}O+=A,W=X,y=G,G=X=I3.lastIndex;continue}if(AF.lastIndex=G,AF.test(D)){if(q=AF.lastIndex-G,M=q*I,O+M>T&&(z=Math.min(z,G+Math.floor((T-O)/I))),O+M>E){U=!0;break}O+=M,W=X,y=G,G=X=AF.lastIndex;continue}if(IF.lastIndex=G,IF.test(D)){if(q=IF.lastIndex-G,M=q*Y,O+M>T&&(z=Math.min(z,G+Math.floor((T-O)/Y))),O+M>E){U=!0;break}O+=M,W=X,y=G,G=X=IF.lastIndex;continue}if(J3.lastIndex=G,J3.test(D)){if(O+J>T&&(z=Math.min(z,G)),O+J>E){U=!0;break}O+=J,W=X,y=G,G=X=J3.lastIndex;continue}G+=1}return{width:U?T:O,index:U?z:_,truncated:U,ellipsed:U&&E>=B}},OA,A0=(D,u={})=>DC(D,OA,u).width,SF="\x1B",uC="›",NA=39,_3="\x07",FC="[",RA="]",EC="m",q3,r8,wA=(D)=>{if(D>=30&&D<=37||D>=90&&D<=97)return 39;if(D>=40&&D<=47||D>=100&&D<=107)return 49;if(D===1||D===2)return 22;if(D===3)return 23;if(D===4)return 24;if(D===7)return 27;if(D===8)return 28;if(D===9)return 29;if(D===0)return 0},a8=(D)=>`${SF}${FC}${D}${EC}`,s8=(D)=>`${SF}${q3}${D}${_3}`,WA=(D)=>D.map((u)=>A0(u)),Z3=(D,u,F)=>{let E=u[Symbol.iterator](),C=!1,B=!1,A=D.at(-1),I=A===void 0?0:A0(A),Y=E.next(),Z=E.next(),J=0;for(;!Y.done;){let S=Y.value,H=A0(S);I+H<=F?D[D.length-1]+=S:(D.push(S),I=0),(S===SF||S===uC)&&(C=!0,B=u.startsWith(q3,J+1)),C?B?S===_3&&(C=!1,B=!1):S===EC&&(C=!1):(I+=H,I===F&&!Z.done&&(D.push(""),I=0)),Y=Z,Z=E.next(),J+=S.length}A=D.at(-1),!I&&A!==void 0&&A.length>0&&D.length>1&&(D[D.length-2]+=D.pop())},VA=(D)=>{let u=D.split(" "),F=u.length;for(;F>0&&!(A0(u[F-1])>0);)F--;return F===u.length?D:u.slice(0,F).join(" ")+u.slice(F).join("")},MA=(D,u,F={})=>{if(F.trim!==!1&&D.trim()==="")return"";let E="",C,B,A=D.split(" "),I=WA(A),Y=[""];for(let[X,G]of A.entries()){F.trim!==!1&&(Y[Y.length-1]=(Y.at(-1)??"").trimStart());let _=A0(Y.at(-1)??"");if(X!==0&&(_>=u&&(F.wordWrap===!1||F.trim===!1)&&(Y.push(""),_=0),(_>0||F.trim===!1)&&(Y[Y.length-1]+=" ",_++)),F.hard&&I[X]>u){let q=u-_,U=1+Math.floor((I[X]-q-1)/u);Math.floor((I[X]-1)/u)<U&&Y.push(""),Z3(Y,G,u);continue}if(_+I[X]>u&&_>0&&I[X]>0){if(F.wordWrap===!1&&_<u){Z3(Y,G,u);continue}Y.push("")}if(_+I[X]>u&&F.wordWrap===!1){Z3(Y,G,u);continue}Y[Y.length-1]+=G}F.trim!==!1&&(Y=Y.map((X)=>VA(X)));let Z=Y.join(`
47
+ `)}function jA(D,u){if(!D)return!0;let F=(u.label??String(u.value??"")).toLowerCase(),E=(u.hint??"").toLowerCase(),C=String(u.value).toLowerCase(),B=D.toLowerCase();return F.includes(B)||E.includes(B)||C.includes(B)}var L,B0,Y3,$A=()=>process.env.CI==="true",t=(D,u)=>Y3?D:u,HA,o8,t8,G3,SA,i,Xu,yX,xX,$3,YF,XA,H3,S3,fX,bX,kX,vX,hX,gX,cX,GA,_A,qA,UA,HF=(D)=>{switch(D){case"initial":case"active":return L.default.cyan(HA);case"cancel":return L.default.red(o8);case"error":return L.default.yellow(t8);case"submit":return L.default.green(G3)}},e8=(D)=>{switch(D){case"initial":case"active":return L.default.cyan(i);case"cancel":return L.default.red(i);case"error":return L.default.yellow(i);case"submit":return L.default.green(i)}},LA=(D)=>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,KA=(D)=>D===12288||D>=65281&&D<=65376||D>=65504&&D<=65510,QA=(D)=>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>=9800&&D<=9811||D===9855||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<=12771||D>=12783&&D<=12830||D>=12832&&D<=12871||D>=12880&&D<=19903||D>=19968&&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>=101632&&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===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<=129672||D>=129680&&D<=129725||D>=129727&&D<=129733||D>=129742&&D<=129755||D>=129760&&D<=129768||D>=129776&&D<=129784||D>=131072&&D<=196605||D>=196608&&D<=262141,I3,AF,IF,J3,JF,zA,TA,DC=(D,u={},F={})=>{let E=u.limit??1/0,C=u.ellipsis??"",B=u?.ellipsisWidth??(C?DC(C,TA,F).width:0),A=F.ansiWidth??0,I=F.controlWidth??0,Y=F.tabWidth??8,Z=F.ambiguousWidth??1,J=F.emojiWidth??2,S=F.fullWidthWidth??2,H=F.regularWidth??1,$=F.wideWidth??2,X=0,G=0,_=D.length,q=0,U=!1,z=_,T=Math.max(0,E-B),W=0,y=0,O=0,M=0;D:for(;;){if(y>W||G>=_&&G>X){let Q=D.slice(W,y)||D.slice(X,G);q=0;for(let R of Q.replaceAll(zA,"")){let w=R.codePointAt(0)||0;if(KA(w)?M=S:QA(w)?M=$:Z!==H&&LA(w)?M=Z:M=H,O+M>T&&(z=Math.min(z,Math.max(W,X)+q)),O+M>E){U=!0;break D}q+=R.length,O+=M}W=y=0}if(G>=_)break;if(JF.lastIndex=G,JF.test(D)){if(q=JF.lastIndex-G,M=q*H,O+M>T&&(z=Math.min(z,G+Math.floor((T-O)/H))),O+M>E){U=!0;break}O+=M,W=X,y=G,G=X=JF.lastIndex;continue}if(I3.lastIndex=G,I3.test(D)){if(O+A>T&&(z=Math.min(z,G)),O+A>E){U=!0;break}O+=A,W=X,y=G,G=X=I3.lastIndex;continue}if(AF.lastIndex=G,AF.test(D)){if(q=AF.lastIndex-G,M=q*I,O+M>T&&(z=Math.min(z,G+Math.floor((T-O)/I))),O+M>E){U=!0;break}O+=M,W=X,y=G,G=X=AF.lastIndex;continue}if(IF.lastIndex=G,IF.test(D)){if(q=IF.lastIndex-G,M=q*Y,O+M>T&&(z=Math.min(z,G+Math.floor((T-O)/Y))),O+M>E){U=!0;break}O+=M,W=X,y=G,G=X=IF.lastIndex;continue}if(J3.lastIndex=G,J3.test(D)){if(O+J>T&&(z=Math.min(z,G)),O+J>E){U=!0;break}O+=J,W=X,y=G,G=X=J3.lastIndex;continue}G+=1}return{width:U?T:O,index:U?z:_,truncated:U,ellipsed:U&&E>=B}},OA,A0=(D,u={})=>DC(D,OA,u).width,SF="\x1B",uC="›",NA=39,_3="\x07",FC="[",RA="]",EC="m",q3,r8,wA=(D)=>{if(D>=30&&D<=37||D>=90&&D<=97)return 39;if(D>=40&&D<=47||D>=100&&D<=107)return 49;if(D===1||D===2)return 22;if(D===3)return 23;if(D===4)return 24;if(D===7)return 27;if(D===8)return 28;if(D===9)return 29;if(D===0)return 0},a8=(D)=>`${SF}${FC}${D}${EC}`,s8=(D)=>`${SF}${q3}${D}${_3}`,WA=(D)=>D.map((u)=>A0(u)),Z3=(D,u,F)=>{let E=u[Symbol.iterator](),C=!1,B=!1,A=D.at(-1),I=A===void 0?0:A0(A),Y=E.next(),Z=E.next(),J=0;for(;!Y.done;){let S=Y.value,H=A0(S);I+H<=F?D[D.length-1]+=S:(D.push(S),I=0),(S===SF||S===uC)&&(C=!0,B=u.startsWith(q3,J+1)),C?B?S===_3&&(C=!1,B=!1):S===EC&&(C=!1):(I+=H,I===F&&!Z.done&&(D.push(""),I=0)),Y=Z,Z=E.next(),J+=S.length}A=D.at(-1),!I&&A!==void 0&&A.length>0&&D.length>1&&(D[D.length-2]+=D.pop())},VA=(D)=>{let u=D.split(" "),F=u.length;for(;F>0&&!(A0(u[F-1])>0);)F--;return F===u.length?D:u.slice(0,F).join(" ")+u.slice(F).join("")},MA=(D,u,F={})=>{if(F.trim!==!1&&D.trim()==="")return"";let E="",C,B,A=D.split(" "),I=WA(A),Y=[""];for(let[X,G]of A.entries()){F.trim!==!1&&(Y[Y.length-1]=(Y.at(-1)??"").trimStart());let _=A0(Y.at(-1)??"");if(X!==0&&(_>=u&&(F.wordWrap===!1||F.trim===!1)&&(Y.push(""),_=0),(_>0||F.trim===!1)&&(Y[Y.length-1]+=" ",_++)),F.hard&&I[X]>u){let q=u-_,U=1+Math.floor((I[X]-q-1)/u);Math.floor((I[X]-1)/u)<U&&Y.push(""),Z3(Y,G,u);continue}if(_+I[X]>u&&_>0&&I[X]>0){if(F.wordWrap===!1&&_<u){Z3(Y,G,u);continue}Y.push("")}if(_+I[X]>u&&F.wordWrap===!1){Z3(Y,G,u);continue}Y[Y.length-1]+=G}F.trim!==!1&&(Y=Y.map((X)=>VA(X)));let Z=Y.join(`
48
48
  `),J=Z[Symbol.iterator](),S=J.next(),H=J.next(),$=0;for(;!S.done;){let X=S.value,G=H.value;if(E+=X,X===SF||X===uC){r8.lastIndex=$+1;let q=r8.exec(Z)?.groups;if(q?.code!==void 0){let U=Number.parseFloat(q.code);C=U===NA?void 0:U}else q?.uri!==void 0&&(B=q.uri.length===0?void 0:q.uri)}let _=C?wA(C):void 0;G===`
49
49
  `?(B&&(E+=s8("")),C&&_&&(E+=a8(_))):X===`
50
- `&&(C&&_&&(E+=a8(C)),B&&(E+=s8(B))),$+=X.length,S=H,H=J.next()}return E},PA=(D,u,F,E,C)=>{let B=u,A=0;for(let I=F;I<E;I++){let Y=D[I];if(B=B-Y.length,A++,B<=C)break}return{lineCount:B,removals:A}},$F=(D)=>{let{cursor:u,options:F,style:E}=D,C=D.output??process.stdout,B=BF(C),A=D.columnPadding??0,I=D.rowPadding??4,Y=B-A,Z=F3(C),J=K.default.dim("..."),S=D.maxItems??Number.POSITIVE_INFINITY,H=Math.max(Z-I,0),$=Math.max(Math.min(S,H),5),X=0;u>=$-3&&(X=Math.max(Math.min(u-$+3,F.length-$),0));let G=$<F.length&&X>0,_=$<F.length&&X+$<F.length,q=Math.min(X+$,F.length),U=[],z=0;G&&z++,_&&z++;let T=X+(G?1:0),W=q-(_?1:0);for(let O=T;O<W;O++){let M=X3(E(F[O],O===u),Y,{hard:!0,trim:!1}).split(`
51
- `);U.push(M),z+=M.length}if(z>H){let O=0,M=0,Q=z,R=u-T,w=(g,V)=>PA(U,Q,g,V,H);G?({lineCount:Q,removals:O}=w(0,R),Q>H&&({lineCount:Q,removals:M}=w(R+1,U.length))):({lineCount:Q,removals:M}=w(R+1,U.length),Q>H&&({lineCount:Q,removals:O}=w(0,R))),O>0&&(G=!0,U.splice(0,O)),M>0&&(_=!0,U.splice(U.length-M,M))}let y=[];G&&y.push(J);for(let O of U)for(let M of O)y.push(M);return _&&y.push(J),y},CC=(D)=>{let u=(E,C,B,A)=>{let I=B.includes(E.value),Y=E.label??String(E.value??""),Z=E.hint&&A!==void 0&&E.value===A?K.default.dim(` (${E.hint})`):"",J=I?K.default.green(H3):K.default.dim(S3);return C?`${J} ${Y}${Z}`:`${J} ${K.default.dim(Y)}`},F=new E3({options:D.options,multiple:!0,filter:(E,C)=>jA(E,C),validate:()=>{if(D.required&&F.selectedValues.length===0)return"Please select at least one item"},initialValue:D.initialValues,signal:D.signal,input:D.input,output:D.output,render(){let E=`${K.default.gray(i)}
50
+ `&&(C&&_&&(E+=a8(C)),B&&(E+=s8(B))),$+=X.length,S=H,H=J.next()}return E},PA=(D,u,F,E,C)=>{let B=u,A=0;for(let I=F;I<E;I++){let Y=D[I];if(B=B-Y.length,A++,B<=C)break}return{lineCount:B,removals:A}},$F=(D)=>{let{cursor:u,options:F,style:E}=D,C=D.output??process.stdout,B=BF(C),A=D.columnPadding??0,I=D.rowPadding??4,Y=B-A,Z=F3(C),J=L.default.dim("..."),S=D.maxItems??Number.POSITIVE_INFINITY,H=Math.max(Z-I,0),$=Math.max(Math.min(S,H),5),X=0;u>=$-3&&(X=Math.max(Math.min(u-$+3,F.length-$),0));let G=$<F.length&&X>0,_=$<F.length&&X+$<F.length,q=Math.min(X+$,F.length),U=[],z=0;G&&z++,_&&z++;let T=X+(G?1:0),W=q-(_?1:0);for(let O=T;O<W;O++){let M=X3(E(F[O],O===u),Y,{hard:!0,trim:!1}).split(`
51
+ `);U.push(M),z+=M.length}if(z>H){let O=0,M=0,Q=z,R=u-T,w=(g,V)=>PA(U,Q,g,V,H);G?({lineCount:Q,removals:O}=w(0,R),Q>H&&({lineCount:Q,removals:M}=w(R+1,U.length))):({lineCount:Q,removals:M}=w(R+1,U.length),Q>H&&({lineCount:Q,removals:O}=w(0,R))),O>0&&(G=!0,U.splice(0,O)),M>0&&(_=!0,U.splice(U.length-M,M))}let y=[];G&&y.push(J);for(let O of U)for(let M of O)y.push(M);return _&&y.push(J),y},CC=(D)=>{let u=(E,C,B,A)=>{let I=B.includes(E.value),Y=E.label??String(E.value??""),Z=E.hint&&A!==void 0&&E.value===A?L.default.dim(` (${E.hint})`):"",J=I?L.default.green(H3):L.default.dim(S3);return C?`${J} ${Y}${Z}`:`${J} ${L.default.dim(Y)}`},F=new E3({options:D.options,multiple:!0,filter:(E,C)=>jA(E,C),validate:()=>{if(D.required&&F.selectedValues.length===0)return"Please select at least one item"},initialValue:D.initialValues,signal:D.signal,input:D.input,output:D.output,render(){let E=`${L.default.gray(i)}
52
52
  ${HF(this.state)} ${D.message}
53
- `,C=this.userInput,B=D.placeholder,A=C===""&&B!==void 0,I=this.isNavigating||A?K.default.dim(A?B:C):this.userInputWithCursor,Y=this.options,Z=this.filteredOptions.length!==Y.length?K.default.dim(` (${this.filteredOptions.length} match${this.filteredOptions.length===1?"":"es"})`):"";switch(this.state){case"submit":return`${E}${K.default.gray(i)} ${K.default.dim(`${this.selectedValues.length} items selected`)}`;case"cancel":return`${E}${K.default.gray(i)} ${K.default.strikethrough(K.default.dim(C))}`;default:{let J=this.state==="error"?K.default.yellow:K.default.cyan,S=[`${K.default.dim("↑/↓")} to navigate`,`${K.default.dim(this.isNavigating?"Space/Tab:":"Tab:")} select`,`${K.default.dim("Enter:")} confirm`,`${K.default.dim("Type:")} to search`],H=this.filteredOptions.length===0&&C?[`${J(i)} ${K.default.yellow("No matches found")}`]:[],$=this.state==="error"?[`${J(i)} ${K.default.yellow(this.error)}`]:[],X=[...`${E}${J(i)}`.split(`
54
- `),`${J(i)} ${K.default.dim("Search:")} ${I}${Z}`,...H,...$],G=[`${J(i)} ${K.default.dim(S.join(" • "))}`,`${J(Xu)}`],_=$F({cursor:this.cursor,options:this.filteredOptions,style:(q,U)=>u(q,U,this.selectedValues,this.focusedValue),maxItems:D.maxItems,output:D.output,rowPadding:X.length+G.length});return[...X,..._.map((q)=>`${J(i)} ${q}`),...G].join(`
55
- `)}}}});return F.prompt()},eD=(D)=>{let u=D.active??"Yes",F=D.inactive??"No";return new i8({active:u,inactive:F,signal:D.signal,input:D.input,output:D.output,initialValue:D.initialValue??!0,render(){let E=`${K.default.gray(i)}
53
+ `,C=this.userInput,B=D.placeholder,A=C===""&&B!==void 0,I=this.isNavigating||A?L.default.dim(A?B:C):this.userInputWithCursor,Y=this.options,Z=this.filteredOptions.length!==Y.length?L.default.dim(` (${this.filteredOptions.length} match${this.filteredOptions.length===1?"":"es"})`):"";switch(this.state){case"submit":return`${E}${L.default.gray(i)} ${L.default.dim(`${this.selectedValues.length} items selected`)}`;case"cancel":return`${E}${L.default.gray(i)} ${L.default.strikethrough(L.default.dim(C))}`;default:{let J=this.state==="error"?L.default.yellow:L.default.cyan,S=[`${L.default.dim("↑/↓")} to navigate`,`${L.default.dim(this.isNavigating?"Space/Tab:":"Tab:")} select`,`${L.default.dim("Enter:")} confirm`,`${L.default.dim("Type:")} to search`],H=this.filteredOptions.length===0&&C?[`${J(i)} ${L.default.yellow("No matches found")}`]:[],$=this.state==="error"?[`${J(i)} ${L.default.yellow(this.error)}`]:[],X=[...`${E}${J(i)}`.split(`
54
+ `),`${J(i)} ${L.default.dim("Search:")} ${I}${Z}`,...H,...$],G=[`${J(i)} ${L.default.dim(S.join(" • "))}`,`${J(Xu)}`],_=$F({cursor:this.cursor,options:this.filteredOptions,style:(q,U)=>u(q,U,this.selectedValues,this.focusedValue),maxItems:D.maxItems,output:D.output,rowPadding:X.length+G.length});return[...X,..._.map((q)=>`${J(i)} ${q}`),...G].join(`
55
+ `)}}}});return F.prompt()},eD=(D)=>{let u=D.active??"Yes",F=D.inactive??"No";return new i8({active:u,inactive:F,signal:D.signal,input:D.input,output:D.output,initialValue:D.initialValue??!0,render(){let E=`${L.default.gray(i)}
56
56
  ${HF(this.state)} ${D.message}
57
- `,C=this.value?u:F;switch(this.state){case"submit":return`${E}${K.default.gray(i)} ${K.default.dim(C)}`;case"cancel":return`${E}${K.default.gray(i)} ${K.default.strikethrough(K.default.dim(C))}
58
- ${K.default.gray(i)}`;default:return`${E}${K.default.cyan(i)} ${this.value?`${K.default.green($3)} ${u}`:`${K.default.dim(YF)} ${K.default.dim(u)}`} ${K.default.dim("/")} ${this.value?`${K.default.dim(YF)} ${K.default.dim(F)}`:`${K.default.green($3)} ${F}`}
59
- ${K.default.cyan(Xu)}
60
- `}}}).prompt()},L,ZD=(D="",u)=>{(u?.output??process.stdout).write(`${K.default.gray(Xu)} ${K.default.red(D)}
57
+ `,C=this.value?u:F;switch(this.state){case"submit":return`${E}${L.default.gray(i)} ${L.default.dim(C)}`;case"cancel":return`${E}${L.default.gray(i)} ${L.default.strikethrough(L.default.dim(C))}
58
+ ${L.default.gray(i)}`;default:return`${E}${L.default.cyan(i)} ${this.value?`${L.default.green($3)} ${u}`:`${L.default.dim(YF)} ${L.default.dim(u)}`} ${L.default.dim("/")} ${this.value?`${L.default.dim(YF)} ${L.default.dim(F)}`:`${L.default.green($3)} ${F}`}
59
+ ${L.default.cyan(Xu)}
60
+ `}}}).prompt()},K,ZD=(D="",u)=>{(u?.output??process.stdout).write(`${L.default.gray(Xu)} ${L.default.red(D)}
61
61
 
62
- `)},OD=(D="",u)=>{(u?.output??process.stdout).write(`${K.default.gray(SA)} ${D}
63
- `)},r=(D="",u)=>{(u?.output??process.stdout).write(`${K.default.gray(i)}
64
- ${K.default.gray(Xu)} ${D}
62
+ `)},OD=(D="",u)=>{(u?.output??process.stdout).write(`${L.default.gray(SA)} ${D}
63
+ `)},r=(D="",u)=>{(u?.output??process.stdout).write(`${L.default.gray(i)}
64
+ ${L.default.gray(Xu)} ${D}
65
65
 
66
66
  `)},C0=(D,u)=>D.split(`
67
67
  `).map((F)=>u(F)).join(`
68
- `),xD=(D)=>{let u=(E,C)=>{let B=E.label??String(E.value);return C==="disabled"?`${K.default.gray(S3)} ${C0(B,(A)=>K.default.strikethrough(K.default.gray(A)))}${E.hint?` ${K.default.dim(`(${E.hint??"disabled"})`)}`:""}`:C==="active"?`${K.default.cyan(XA)} ${B}${E.hint?` ${K.default.dim(`(${E.hint})`)}`:""}`:C==="selected"?`${K.default.green(H3)} ${C0(B,K.default.dim)}${E.hint?` ${K.default.dim(`(${E.hint})`)}`:""}`:C==="cancelled"?`${C0(B,(A)=>K.default.strikethrough(K.default.dim(A)))}`:C==="active-selected"?`${K.default.green(H3)} ${B}${E.hint?` ${K.default.dim(`(${E.hint})`)}`:""}`:C==="submitted"?`${C0(B,K.default.dim)}`:`${K.default.dim(S3)} ${C0(B,K.default.dim)}`},F=D.required??!0;return new C3({options:D.options,signal:D.signal,input:D.input,output:D.output,initialValues:D.initialValues,required:F,cursorAt:D.cursorAt,validate(E){if(F&&(E===void 0||E.length===0))return`Please select at least one option.
69
- ${K.default.reset(K.default.dim(`Press ${K.default.gray(K.default.bgWhite(K.default.inverse(" space ")))} to select, ${K.default.gray(K.default.bgWhite(K.default.inverse(" enter ")))} to submit`))}`},render(){let E=Su(D.output,D.message,`${e8(this.state)} `,`${HF(this.state)} `),C=`${K.default.gray(i)}
68
+ `),xD=(D)=>{let u=(E,C)=>{let B=E.label??String(E.value);return C==="disabled"?`${L.default.gray(S3)} ${C0(B,(A)=>L.default.strikethrough(L.default.gray(A)))}${E.hint?` ${L.default.dim(`(${E.hint??"disabled"})`)}`:""}`:C==="active"?`${L.default.cyan(XA)} ${B}${E.hint?` ${L.default.dim(`(${E.hint})`)}`:""}`:C==="selected"?`${L.default.green(H3)} ${C0(B,L.default.dim)}${E.hint?` ${L.default.dim(`(${E.hint})`)}`:""}`:C==="cancelled"?`${C0(B,(A)=>L.default.strikethrough(L.default.dim(A)))}`:C==="active-selected"?`${L.default.green(H3)} ${B}${E.hint?` ${L.default.dim(`(${E.hint})`)}`:""}`:C==="submitted"?`${C0(B,L.default.dim)}`:`${L.default.dim(S3)} ${C0(B,L.default.dim)}`},F=D.required??!0;return new C3({options:D.options,signal:D.signal,input:D.input,output:D.output,initialValues:D.initialValues,required:F,cursorAt:D.cursorAt,validate(E){if(F&&(E===void 0||E.length===0))return`Please select at least one option.
69
+ ${L.default.reset(L.default.dim(`Press ${L.default.gray(L.default.bgWhite(L.default.inverse(" space ")))} to select, ${L.default.gray(L.default.bgWhite(L.default.inverse(" enter ")))} to submit`))}`},render(){let E=Su(D.output,D.message,`${e8(this.state)} `,`${HF(this.state)} `),C=`${L.default.gray(i)}
70
70
  ${E}
71
- `,B=this.value??[],A=(I,Y)=>{if(I.disabled)return u(I,"disabled");let Z=B.includes(I.value);return Y&&Z?u(I,"active-selected"):Z?u(I,"selected"):u(I,Y?"active":"inactive")};switch(this.state){case"submit":{let I=this.options.filter(({value:Z})=>B.includes(Z)).map((Z)=>u(Z,"submitted")).join(K.default.dim(", "))||K.default.dim("none"),Y=Su(D.output,I,`${K.default.gray(i)} `);return`${C}${Y}`}case"cancel":{let I=this.options.filter(({value:Z})=>B.includes(Z)).map((Z)=>u(Z,"cancelled")).join(K.default.dim(", "));if(I.trim()==="")return`${C}${K.default.gray(i)}`;let Y=Su(D.output,I,`${K.default.gray(i)} `);return`${C}${Y}
72
- ${K.default.gray(i)}`}case"error":{let I=`${K.default.yellow(i)} `,Y=this.error.split(`
73
- `).map((S,H)=>H===0?`${K.default.yellow(Xu)} ${K.default.yellow(S)}`:` ${S}`).join(`
71
+ `,B=this.value??[],A=(I,Y)=>{if(I.disabled)return u(I,"disabled");let Z=B.includes(I.value);return Y&&Z?u(I,"active-selected"):Z?u(I,"selected"):u(I,Y?"active":"inactive")};switch(this.state){case"submit":{let I=this.options.filter(({value:Z})=>B.includes(Z)).map((Z)=>u(Z,"submitted")).join(L.default.dim(", "))||L.default.dim("none"),Y=Su(D.output,I,`${L.default.gray(i)} `);return`${C}${Y}`}case"cancel":{let I=this.options.filter(({value:Z})=>B.includes(Z)).map((Z)=>u(Z,"cancelled")).join(L.default.dim(", "));if(I.trim()==="")return`${C}${L.default.gray(i)}`;let Y=Su(D.output,I,`${L.default.gray(i)} `);return`${C}${Y}
72
+ ${L.default.gray(i)}`}case"error":{let I=`${L.default.yellow(i)} `,Y=this.error.split(`
73
+ `).map((S,H)=>H===0?`${L.default.yellow(Xu)} ${L.default.yellow(S)}`:` ${S}`).join(`
74
74
  `),Z=C.split(`
75
75
  `).length,J=Y.split(`
76
76
  `).length+1;return`${C}${I}${$F({output:D.output,options:this.options,cursor:this.cursor,maxItems:D.maxItems,columnPadding:I.length,rowPadding:Z+J,style:A}).join(`
77
77
  ${I}`)}
78
78
  ${Y}
79
- `}default:{let I=`${K.default.cyan(i)} `,Y=C.split(`
79
+ `}default:{let I=`${L.default.cyan(i)} `,Y=C.split(`
80
80
  `).length;return`${C}${I}${$F({output:D.output,options:this.options,cursor:this.cursor,maxItems:D.maxItems,columnPadding:I.length,rowPadding:Y+2,style:A}).join(`
81
81
  ${I}`)}
82
- ${K.default.cyan(Xu)}
82
+ ${L.default.cyan(Xu)}
83
83
  `}}}}).prompt()},yA,hD=({indicator:D="dots",onCancel:u,output:F=process.stdout,cancelMessage:E,errorMessage:C,frames:B=Y3?["◒","◐","◓","◑"]:["•","o","O","0"],delay:A=Y3?80:120,signal:I,...Y}={})=>{let Z=$A(),J,S,H=!1,$=!1,X="",G,_=performance.now(),q=BF(F),U=Y?.styleFrame??yA,z=(V)=>{let k=V>1?C??pD.messages.error:E??pD.messages.cancel;$=V===1,H&&(g(k,V),$&&typeof u=="function"&&u())},T=()=>z(2),W=()=>z(1),y=()=>{process.on("uncaughtExceptionMonitor",T),process.on("unhandledRejection",T),process.on("SIGINT",W),process.on("SIGTERM",W),process.on("exit",z),I&&I.addEventListener("abort",W)},O=()=>{process.removeListener("uncaughtExceptionMonitor",T),process.removeListener("unhandledRejection",T),process.removeListener("SIGINT",W),process.removeListener("SIGTERM",W),process.removeListener("exit",z),I&&I.removeEventListener("abort",W)},M=()=>{if(G===void 0)return;Z&&F.write(`
84
84
  `);let V=X3(G,q,{hard:!0,trim:!1}).split(`
85
- `);V.length>1&&F.write(B0.cursor.up(V.length-1)),F.write(B0.cursor.to(0)),F.write(B0.erase.down())},Q=(V)=>V.replace(/\.+$/,""),R=(V)=>{let k=(performance.now()-V)/1000,x=Math.floor(k/60),b=Math.floor(k%60);return x>0?`[${x}m ${b}s]`:`[${b}s]`},w=(V="")=>{H=!0,J=n8({output:F}),X=Q(V),_=performance.now(),F.write(`${K.default.gray(i)}
86
- `);let k=0,x=0;y(),S=setInterval(()=>{if(Z&&X===G)return;M(),G=X;let b=U(B[k]),f;if(Z)f=`${b} ${X}...`;else if(D==="timer")f=`${b} ${X} ${R(_)}`;else{let h=".".repeat(Math.floor(x)).slice(0,3);f=`${b} ${X}${h}`}let l=X3(f,q,{hard:!0,trim:!1});F.write(l),k=k+1<B.length?k+1:0,x=x<4?x+0.125:0},A)},g=(V="",k=0,x=!1)=>{if(!H)return;H=!1,clearInterval(S),M();let b=k===0?K.default.green(G3):k===1?K.default.red(o8):K.default.red(t8);X=V??X,x||(D==="timer"?F.write(`${b} ${X} ${R(_)}
85
+ `);V.length>1&&F.write(B0.cursor.up(V.length-1)),F.write(B0.cursor.to(0)),F.write(B0.erase.down())},Q=(V)=>V.replace(/\.+$/,""),R=(V)=>{let k=(performance.now()-V)/1000,x=Math.floor(k/60),b=Math.floor(k%60);return x>0?`[${x}m ${b}s]`:`[${b}s]`},w=(V="")=>{H=!0,J=n8({output:F}),X=Q(V),_=performance.now(),F.write(`${L.default.gray(i)}
86
+ `);let k=0,x=0;y(),S=setInterval(()=>{if(Z&&X===G)return;M(),G=X;let b=U(B[k]),f;if(Z)f=`${b} ${X}...`;else if(D==="timer")f=`${b} ${X} ${R(_)}`;else{let h=".".repeat(Math.floor(x)).slice(0,3);f=`${b} ${X}${h}`}let l=X3(f,q,{hard:!0,trim:!1});F.write(l),k=k+1<B.length?k+1:0,x=x<4?x+0.125:0},A)},g=(V="",k=0,x=!1)=>{if(!H)return;H=!1,clearInterval(S),M();let b=k===0?L.default.green(G3):k===1?L.default.red(o8):L.default.red(t8);X=V??X,x||(D==="timer"?F.write(`${b} ${X} ${R(_)}
87
87
  `):F.write(`${b} ${X}
88
88
  `)),O(),J()};return{start:w,stop:(V="")=>g(V,0),message:(V="")=>{X=Q(V??X)},cancel:(V="")=>g(V,1),error:(V="")=>g(V,2),clear:()=>g("",0,!0),get isCancelled(){return $}}},mX,ZF=(D,u)=>D.includes(`
89
89
  `)?D.split(`
90
90
  `).map((F)=>u(F)).join(`
91
- `):u(D),BC=(D)=>{let u=(F,E)=>{let C=F.label??String(F.value);switch(E){case"disabled":return`${K.default.gray(YF)} ${ZF(C,K.default.gray)}${F.hint?` ${K.default.dim(`(${F.hint??"disabled"})`)}`:""}`;case"selected":return`${ZF(C,K.default.dim)}`;case"active":return`${K.default.green($3)} ${C}${F.hint?` ${K.default.dim(`(${F.hint})`)}`:""}`;case"cancelled":return`${ZF(C,(B)=>K.default.strikethrough(K.default.dim(B)))}`;default:return`${K.default.dim(YF)} ${ZF(C,K.default.dim)}`}};return new B3({options:D.options,signal:D.signal,input:D.input,output:D.output,initialValue:D.initialValue,render(){let F=`${HF(this.state)} `,E=`${e8(this.state)} `,C=Su(D.output,D.message,E,F),B=`${K.default.gray(i)}
91
+ `):u(D),BC=(D)=>{let u=(F,E)=>{let C=F.label??String(F.value);switch(E){case"disabled":return`${L.default.gray(YF)} ${ZF(C,L.default.gray)}${F.hint?` ${L.default.dim(`(${F.hint??"disabled"})`)}`:""}`;case"selected":return`${ZF(C,L.default.dim)}`;case"active":return`${L.default.green($3)} ${C}${F.hint?` ${L.default.dim(`(${F.hint})`)}`:""}`;case"cancelled":return`${ZF(C,(B)=>L.default.strikethrough(L.default.dim(B)))}`;default:return`${L.default.dim(YF)} ${ZF(C,L.default.dim)}`}};return new B3({options:D.options,signal:D.signal,input:D.input,output:D.output,initialValue:D.initialValue,render(){let F=`${HF(this.state)} `,E=`${e8(this.state)} `,C=Su(D.output,D.message,E,F),B=`${L.default.gray(i)}
92
92
  ${C}
93
- `;switch(this.state){case"submit":{let A=`${K.default.gray(i)} `,I=Su(D.output,u(this.options[this.cursor],"selected"),A);return`${B}${I}`}case"cancel":{let A=`${K.default.gray(i)} `,I=Su(D.output,u(this.options[this.cursor],"cancelled"),A);return`${B}${I}
94
- ${K.default.gray(i)}`}default:{let A=`${K.default.cyan(i)} `,I=B.split(`
93
+ `;switch(this.state){case"submit":{let A=`${L.default.gray(i)} `,I=Su(D.output,u(this.options[this.cursor],"selected"),A);return`${B}${I}`}case"cancel":{let A=`${L.default.gray(i)} `,I=Su(D.output,u(this.options[this.cursor],"cancelled"),A);return`${B}${I}
94
+ ${L.default.gray(i)}`}default:{let A=`${L.default.cyan(i)} `,I=B.split(`
95
95
  `).length;return`${B}${A}${$F({output:D.output,cursor:this.cursor,options:this.options,maxItems:D.maxItems,columnPadding:A.length,rowPadding:I+2,style:(Y,Z)=>u(Y,Y.disabled?"disabled":Z?"active":"inactive")}).join(`
96
96
  ${A}`)}
97
- ${K.default.cyan(Xu)}
98
- `}}}}).prompt()},lX;var VD=e(()=>{A3();A3();K=o(LD(),1),B0=o(i2(),1);Y3=YA(),HA=t("◆","*"),o8=t("■","x"),t8=t("▲","x"),G3=t("◇","o"),SA=t("┌","T"),i=t("│","|"),Xu=t("└","—"),yX=t("┐","T"),xX=t("┘","—"),$3=t("●",">"),YF=t("○"," "),XA=t("◻","[•]"),H3=t("◼","[+]"),S3=t("◻","[ ]"),fX=t("▪","•"),bX=t("─","-"),kX=t("╮","+"),vX=t("├","+"),hX=t("╯","+"),gX=t("╰","+"),cX=t("╭","+"),GA=t("●","•"),_A=t("◆","*"),qA=t("▲","!"),UA=t("■","x"),I3=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,AF=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,IF=/\t{1,1000}/y,J3=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,JF=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,zA=/\p{M}+/gu,TA={limit:1/0,ellipsis:""},OA={limit:1/0,ellipsis:"",ellipsisWidth:0},q3=`${RA}8;;`,r8=new RegExp(`(?:\\${FC}(?<code>\\d+)m|\\${q3}(?<uri>.*)${_3})`,"y");L={message:(D=[],{symbol:u=K.default.gray(i),secondarySymbol:F=K.default.gray(i),output:E=process.stdout,spacing:C=1,withGuide:B}={})=>{let A=[],I=(B??pD.withGuide)!==!1,Y=I?F:"",Z=I?`${u} `:"",J=I?`${F} `:"";for(let H=0;H<C;H++)A.push(Y);let S=Array.isArray(D)?D:D.split(`
97
+ ${L.default.cyan(Xu)}
98
+ `}}}}).prompt()},lX;var VD=e(()=>{A3();A3();L=o(LD(),1),B0=o(i2(),1);Y3=YA(),HA=t("◆","*"),o8=t("■","x"),t8=t("▲","x"),G3=t("◇","o"),SA=t("┌","T"),i=t("│","|"),Xu=t("└","—"),yX=t("┐","T"),xX=t("┘","—"),$3=t("●",">"),YF=t("○"," "),XA=t("◻","[•]"),H3=t("◼","[+]"),S3=t("◻","[ ]"),fX=t("▪","•"),bX=t("─","-"),kX=t("╮","+"),vX=t("├","+"),hX=t("╯","+"),gX=t("╰","+"),cX=t("╭","+"),GA=t("●","•"),_A=t("◆","*"),qA=t("▲","!"),UA=t("■","x"),I3=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,AF=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,IF=/\t{1,1000}/y,J3=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,JF=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,zA=/\p{M}+/gu,TA={limit:1/0,ellipsis:""},OA={limit:1/0,ellipsis:"",ellipsisWidth:0},q3=`${RA}8;;`,r8=new RegExp(`(?:\\${FC}(?<code>\\d+)m|\\${q3}(?<uri>.*)${_3})`,"y");K={message:(D=[],{symbol:u=L.default.gray(i),secondarySymbol:F=L.default.gray(i),output:E=process.stdout,spacing:C=1,withGuide:B}={})=>{let A=[],I=(B??pD.withGuide)!==!1,Y=I?F:"",Z=I?`${u} `:"",J=I?`${F} `:"";for(let H=0;H<C;H++)A.push(Y);let S=Array.isArray(D)?D:D.split(`
99
99
  `);if(S.length>0){let[H,...$]=S;H.length>0?A.push(`${Z}${H}`):A.push(I?u:"");for(let X of $)X.length>0?A.push(`${J}${X}`):A.push(I?F:"")}E.write(`${A.join(`
100
100
  `)}
101
- `)},info:(D,u)=>{L.message(D,{...u,symbol:K.default.blue(GA)})},success:(D,u)=>{L.message(D,{...u,symbol:K.default.green(_A)})},step:(D,u)=>{L.message(D,{...u,symbol:K.default.green(G3)})},warn:(D,u)=>{L.message(D,{...u,symbol:K.default.yellow(qA)})},warning:(D,u)=>{L.warn(D,u)},error:(D,u)=>{L.message(D,{...u,symbol:K.default.red(UA)})}},yA=K.default.magenta,mX={light:t("─","-"),heavy:t("━","="),block:t("█","#")},lX=`${K.default.gray(i)} `});function AC(D,u,F){let E=D.url.replace(/\.git$/,""),C=D.branch??"main",B=F.startsWith(u)?F.slice(u.length).replace(/^\//,""):F;if(D.type==="github")return`${E}/blob/${C}/${B}`;if(D.type==="gitlab")return`${E}/-/blob/${C}/${B}`;return D.url}function IC(D){let u=D.match(/github\.com\/([^/]+)\/([^/]+)\/tree\/([^/]+)(?:\/(.+))?$/);if(u){let[,A,I,Y,Z]=u;return{type:"github",url:`https://github.com/${A}/${I}.git`,branch:Y,subpath:Z}}let F=D.match(/github\.com\/([^/]+)\/([^/]+)/);if(F){let[,A,I]=F,Y=I.replace(/\.git$/,"");return{type:"github",url:`https://github.com/${A}/${Y}.git`}}let E=D.match(/gitlab\.com\/([^/]+)\/([^/]+)\/-\/tree\/([^/]+)(?:\/(.+))?$/);if(E){let[,A,I,Y,Z]=E;return{type:"gitlab",url:`https://gitlab.com/${A}/${I}.git`,branch:Y,subpath:Z}}let C=D.match(/gitlab\.com\/([^/]+)\/([^/]+)/);if(C){let[,A,I]=C,Y=I.replace(/\.git$/,"");return{type:"gitlab",url:`https://gitlab.com/${A}/${Y}.git`}}let B=D.match(/^([^/]+)\/([^/]+)(?:\/(.+))?$/);if(B&&!D.includes(":")){let[,A,I,Y]=B;return{type:"github",url:`https://github.com/${A}/${I}.git`,subpath:Y}}return{type:"git",url:D}}import{spawn as fA}from"child_process";async function XF(D,u){return new Promise((F,E)=>{let C="",B=fA("git",D,{stdio:"pipe",cwd:u?.cwd});B.stdout?.on("data",(A)=>{C+=A.toString()}),B.on("close",(A)=>{if(A===0)F(C.trim());else E(Error(`Git command failed: git ${D.join(" ")}`))}),B.on("error",E)})}var JC=()=>{};import{join as bA}from"path";import{rmSync as kA}from"fs";import{tmpdir as vA}from"os";async function GF(D,u){let F=bA(vA(),`flins-${Date.now()}`),E=["clone","--depth","1"];if(u)E.push("--branch",u);return E.push(D,F),await XF(E),F}async function ZC(D,u="main"){return(await XF(["ls-remote",D,`refs/heads/${u}`])).split(/\s+/)[0]??""}async function _F(D){return XF(["rev-parse","HEAD"],{cwd:D})}async function qF(D){kA(D,{recursive:!0,force:!0})}var U3=e(()=>{JC()});var $C;var YC=e(()=>{$C={opencode:{name:"opencode",displayName:"OpenCode",configDir:"~/.config/opencode",skillsDir:".opencode/skills",globalSkillsDir:"~/.config/opencode/skills",commandsDir:".opencode/commands",globalCommandsDir:"~/.config/opencode/commands"},"claude-code":{name:"claude-code",displayName:"Claude Code",configDir:"~/.claude",skillsDir:".claude/skills",globalSkillsDir:"~/.claude/skills",commandsDir:".claude/commands",globalCommandsDir:"~/.claude/commands"},codex:{name:"codex",displayName:"Codex",configDir:"~/.codex",skillsDir:".codex/skills",globalSkillsDir:"~/.codex/skills"},cursor:{name:"cursor",displayName:"Cursor",configDir:"~/.cursor",skillsDir:".cursor/skills",globalSkillsDir:"~/.cursor/skills"},amp:{name:"amp",displayName:"Amp",configDir:"~/.config/agents",skillsDir:".agents/skills",globalSkillsDir:"~/.config/agents/skills"},kilo:{name:"kilo",displayName:"Kilo Code",configDir:"~/.kilocode",skillsDir:".kilocode/skills",globalSkillsDir:"~/.kilocode/skills"},roo:{name:"roo",displayName:"Roo Code",configDir:"~/.roo",skillsDir:".roo/skills",globalSkillsDir:"~/.roo/skills"},goose:{name:"goose",displayName:"Goose",configDir:"~/.config/goose",skillsDir:".goose/skills",globalSkillsDir:"~/.config/goose/skills"},antigravity:{name:"antigravity",displayName:"Antigravity",configDir:"~/.gemini/antigravity",skillsDir:".agent/skills",globalSkillsDir:"~/.gemini/antigravity/skills"},copilot:{name:"copilot",displayName:"GitHub Copilot",configDir:"~/.copilot",skillsDir:".github/skills",globalSkillsDir:"~/.copilot/skills"},gemini:{name:"gemini",displayName:"Gemini CLI",configDir:"~/.gemini",skillsDir:".gemini/skills",globalSkillsDir:"~/.gemini/skills"},windsurf:{name:"windsurf",displayName:"Windsurf",configDir:"~/.codeium/windsurf",skillsDir:".windsurf/skills",globalSkillsDir:"~/.codeium/windsurf/skills"},trae:{name:"trae",displayName:"Trae",configDir:"~/.trae",skillsDir:".trae/skills",globalSkillsDir:"~/.trae/skills"},factory:{name:"factory",displayName:"Factory Droid",configDir:"~/.factory",skillsDir:".factory/skills",globalSkillsDir:"~/.factory/skills",commandsDir:".factory/commands",globalCommandsDir:"~/.factory/commands"},letta:{name:"letta",displayName:"Letta",configDir:"~/.letta",skillsDir:".skills",globalSkillsDir:"~/.letta/skills"},qoder:{name:"qoder",displayName:"Qoder",configDir:"~/.qoder",skillsDir:".qoder/skills",globalSkillsDir:"~/.qoder/skills"},qwen:{name:"qwen",displayName:"Qwen Code",configDir:"~/.qwen",skillsDir:".qwen/skills",globalSkillsDir:"~/.qwen/skills"}}});import{homedir as gA}from"os";import{existsSync as cA}from"fs";function mA(){let D={},u=$C;for(let[F,E]of Object.entries(u)){let C=F;D[C]={name:E.name,displayName:E.displayName,configDir:E.configDir.replace("~",UF),skillsDir:E.skillsDir,globalSkillsDir:E.globalSkillsDir.replace("~",UF),commandsDir:E.commandsDir,globalCommandsDir:E.globalCommandsDir?.replace("~",UF),detectInstalled:async()=>{let B=E.configDir.replace("~",UF);return cA(B)}}}return D}var UF,HC,n;var gD=e(()=>{YC();UF=gA(),HC=process.env.DIRECTORY_URL||"https://flins.tech/directory.json";n=mA()});var LF;var L3=e(()=>{LF=["node_modules",".git","dist","build","__pycache__"]});import{basename as lA,dirname as dA}from"path";function K3(D){let u=D.match(/^---\n([\s\S]+?)\n---\n([\s\S]*)$/);if(!u)return{data:{},content:D};let F=u[1],E=u[2],C={};for(let B of F.split(`
102
- `)){let A=B.indexOf(":");if(A===-1)continue;let I=B.slice(0,A).trim(),Y=B.slice(A+1).trim();if(Y.startsWith('"')&&Y.endsWith('"')||Y.startsWith("'")&&Y.endsWith("'"))C[I]=Y.slice(1,-1);else if(I==="metadata")try{let Z={},J=Y.replace(/^\{|\}$/g,"").trim();if(J){for(let S of J.split(",")){let[H,$]=S.split("=").map((X)=>X.trim());if(H&&$)Z[H]=$.replace(/^['"]|["']$/g,"")}C[I]=JSON.stringify(Z)}}catch{C[I]=Y}else C[I]=Y}return{data:C,content:E}}function KF(D,u){try{let{data:F}=K3(u);if(!F.name||!F.description)return null;return{name:F.name,description:F.description,path:dA(D),metadata:F.metadata?JSON.parse(F.metadata):void 0}}catch{return null}}function Du(D){return D.name||lA(D.path)}var QF=()=>{};import{readdir as SC,readFile as Q3,stat as nA}from"fs/promises";import{join as rD}from"path";function pA(D){let u=[D];for(let E of iA)u.push(rD(D,E));let F=new Set;for(let E of Object.values(n))F.add(rD(D,E.skillsDir));return u.push(...F),u}async function z3(D){try{let u=rD(D,"SKILL.md");return(await nA(u)).isFile()}catch{return!1}}async function XC(D,u=0,F=5){let E=[];if(u>F)return E;try{if(await z3(D))E.push(D);let C=await SC(D,{withFileTypes:!0});for(let B of C)if(B.isDirectory()&&!LF.includes(B.name)){let A=await XC(rD(D,B.name),u+1,F);E.push(...A)}}catch{}return E}async function zF(D,u){let F=[],E=new Set,C=u?rD(D,u):D;if(await z3(C)){let A=rD(C,"SKILL.md"),I=await Q3(A,"utf-8"),Y=KF(A,I);if(Y)return F.push(Y),F}let B=pA(C);for(let A of B)try{let I=await SC(A,{withFileTypes:!0});for(let Y of I)if(Y.isDirectory()){let Z=rD(A,Y.name);if(await z3(Z)){let J=rD(Z,"SKILL.md"),S=await Q3(J,"utf-8"),H=KF(J,S);if(H&&!E.has(H.name))F.push(H),E.add(H.name)}}}catch{}if(F.length===0){let A=await XC(C);for(let I of A){let Y=rD(I,"SKILL.md"),Z=await Q3(Y,"utf-8"),J=KF(Y,Z);if(J&&!E.has(J.name))F.push(J),E.add(J.name)}}return F}var iA;var T3=e(()=>{gD();L3();QF();iA=["skills","skills/.curated","skills/.experimental","skills/.system"]});import{basename as rA}from"path";function GC(D,u){try{let{data:F}=K3(u);return{name:F.name||rA(D,".md"),description:F.description,path:D,type:"markdown"}}catch{return null}}function Gu(D){return D.name}var O3=e(()=>{QF()});import{readdir as _C,readFile as aA}from"fs/promises";import{join as N3,extname as sA}from"path";async function qC(D,u=0){let F=[];if(u>tA)return F;try{let E=await _C(D,{withFileTypes:!0});for(let C of E){if(LF.includes(C.name))continue;let B=N3(D,C.name);if(C.isDirectory())if(C.name==="commands")F.push(B);else{let A=await qC(B,u+1);F.push(...A)}}}catch{}return F}async function eA(D){let u=[];try{let F=await _C(D,{withFileTypes:!0});for(let E of F){if(oA.has(E.name))continue;if(!E.isFile())continue;let C=N3(D,E.name);if(sA(E.name).toLowerCase()!==".md")continue;try{let A=await aA(C,"utf-8"),I=GC(C,A);if(I)u.push(I)}catch{continue}}}catch{}return u}async function TF(D,u){let F=[],E=new Set,C=u?N3(D,u):D,B=await qC(C);for(let A of B){let I=await eA(A);for(let Y of I)if(!E.has(Y.name))F.push(Y),E.add(Y.name)}return F}var oA,tA=5;var R3=e(()=>{L3();O3();oA=new Set(["README.md","readme.md",".DS_Store"])});import{resolve as DI,join as _u}from"path";import{homedir as LC}from"os";function bu(D){if(D.startsWith("~"))return D.replace("~",LC());return D}function I0(D){return D.type==="global"?bu(D.path):DI(process.cwd(),D.path)}function J0(){return _u(LC(),uI)}function KC(D={}){if(D.global)return _u(J0(),UC);return _u(D.cwd||process.cwd(),UC)}function w3(D={}){return _u(KC(D),FI)}function QC(D={}){return _u(KC(D),EI)}function zC(D,u={}){if(u.global)return bu(D);return _u(u.cwd||process.cwd(),D)}function TC(D,u={}){if(u.global)return bu(D);return _u(u.cwd||process.cwd(),D)}var uI=".flins",UC=".agents",FI="skills",EI="commands";var uu=()=>{};import{mkdir as ku,cp as OC,access as NG,readdir as CI,symlink as NC,rm as OF}from"fs/promises";import{lstatSync as BI,readlinkSync as AI,rmSync as II}from"fs";import{join as vu,relative as RC,dirname as wC,resolve as JI}from"path";async function NF(D,u){try{return await D(),{success:!0,path:u}}catch(F){return{success:!1,path:u,error:F instanceof Error?F.message:"Unknown error"}}}async function W3(D,u){await ku(u,{recursive:!0});let F=await CI(D,{withFileTypes:!0});for(let E of F){if(YI(E.name))continue;let C=vu(D,E.name),B=vu(u,E.name);if(E.isDirectory())await W3(C,B);else await OC(C,B)}}async function WC(D,u){return NF(async()=>{await ku(u,{recursive:!0}),await W3(D,u)},u)}async function V3(D,u,F={}){let E=w3(F),C=vu(E,u);return NF(async()=>{await ku(E,{recursive:!0}),await OF(C,{recursive:!0,force:!0}),await W3(D,C)},C)}async function M3(D,u,F={}){let E=w3(F),C=vu(E,D);return NF(async()=>{let B=vu(u,"..");await ku(B,{recursive:!0}),await OF(u,{recursive:!0,force:!0}),await NC(RC(B,C),u)},u)}async function VC(D,u,F,E={}){return NF(async()=>{let C=QC(E),B=vu(C,`${u}.md`);await ku(C,{recursive:!0}),await OF(B,{force:!0}),await OC(D,B);let A=wC(F);await ku(A,{recursive:!0}),await OF(F,{force:!0}),await NC(RC(A,B),F)},F)}async function MC(D){try{if(!BI(D).isSymbolicLink())return{success:!0};let F=AI(D),E=JI(wC(D),F);return II(E,{recursive:!0,force:!0}),{success:!0}}catch(u){let F=u?.code;if(F==="ENOENT"||F==="ENOTDIR")return{success:!0};return{success:!1,error:u instanceof Error?u.message:"Unknown error"}}}var ZI,YI=(D)=>{if(ZI.has(D))return!0;if(D.startsWith("_"))return!0;return!1};var RF=e(()=>{uu();ZI=new Set(["README.md","metadata.json"])});import{join as $I}from"path";async function PC(D,u){let F=new Map;for(let E of D){let C=await V3(E.path,E.name,{global:u.global});F.set(E.name,{success:C.success,error:C.error})}return F}async function wF(D,u,F){let E=n[u],C=zC(F.global?E.globalSkillsDir:E.skillsDir,{global:F.global}),B=$I(C,D.name),A;if(F.symlink)if(F.skipCopy)A=await M3(D.name,B,{global:F.global});else{let I=await V3(D.path,D.name,{global:F.global});if(!I.success)return{...I,path:B,originalPath:D.path};A=await M3(D.name,B,{global:F.global})}else A=await WC(D.path,B);return{...A,originalPath:D.path}}var P3=e(()=>{gD();RF();uu()});var j3;var jC=e(()=>{j3=["claude-code","opencode","factory"]});import{mkdir as HI,cp as SI}from"fs/promises";import{join as XI,dirname as GI}from"path";function WF(D){return j3.includes(D)}function yC(){return[...j3].filter((D)=>n[D]?.commandsDir)}async function _I(D){await HI(D,{recursive:!0})}async function qI(D,u){try{return await _I(GI(u)),await SI(D,u),{success:!0,path:u}}catch(F){return{success:!1,path:u,error:F instanceof Error?F.message:"Unknown error"}}}async function UI(D,u,F){let E=n[u],C=TC(F.global?E.globalCommandsDir:E.commandsDir,{global:F.global}),B=XI(C,`${D.name}.md`);if(F.symlink)return VC(D.path,D.name,B,{global:F.global});return qI(D.path,B)}async function VF(D,u,F){if(!WF(u))return{success:!1,path:"",originalPath:D.path,error:`Agent ${u} does not support commands`};if(!n[u].commandsDir)return{success:!1,path:"",originalPath:D.path,error:`Agent ${u} has no commands directory configured`};return{...await UI(D,u,F),originalPath:D.path}}var y3=e(()=>{gD();RF();uu();jC()});async function xC(){let D=[];for(let[u,F]of Object.entries(n))if(await F.detectInstalled())D.push(u);return D}var fC=e(()=>{gD()});import{join as Fu,resolve as LI}from"path";import{existsSync as bC,readdirSync as kC,lstatSync as KI}from"fs";function vC(D){return`skill:${D.toLowerCase()}`}function hC(D){return`command:${D.toLowerCase()}`}function x3(D){if(D.startsWith("skill:"))return{type:"skill",name:D.slice(6),installableType:"skill"};if(D.startsWith("command:"))return{type:"command",name:D.slice(8),installableType:"command"};return null}function f3(D,u,F){let E=[],C=F.cwd??LI(F.type==="global"?J0():process.cwd());for(let[B,A]of Object.entries(n))if(u==="skill"){let I=F.type==="global"?Fu(C,bu(A.globalSkillsDir)):Fu(C,A.skillsDir);if(bC(I))try{let Z=kC(I,{withFileTypes:!0}).find((J)=>{if(J.name.toLowerCase()!==D.toLowerCase())return!1;if(J.isDirectory())return!0;let S=Fu(I,J.name);try{return KI(S).isSymbolicLink()}catch{return!1}});if(Z)E.push({agent:B,installableType:"skill",type:F.type,path:F.type==="global"?Fu(A.globalSkillsDir,Z.name):Fu(A.skillsDir,Z.name)})}catch{}}else{let I=F.type==="global"?A.globalCommandsDir:A.commandsDir;if(I){let Y=F.type==="global"?Fu(C,bu(I)):Fu(C,I);if(bC(Y))try{let J=kC(Y,{withFileTypes:!0}).find((S)=>{return S.name.replace(/\.md$/,"").toLowerCase()===D.toLowerCase()});if(J)E.push({agent:B,installableType:"command",type:F.type,path:Fu(I,J.name)})}catch{}}}return E}var b3=e(()=>{uu();gD()});import{join as QI,resolve as zI}from"path";import{existsSync as MF,readFileSync as cC,writeFileSync as k3,mkdirSync as TI,rmSync as OI}from"fs";function Eu(D,u){return u==="skill"?vC(D):hC(D)}function NI(){let D=J0(),u=QI(D,"skills.lock");function F(){if(!MF(D))TI(D,{recursive:!0})}function E(){if(F(),!MF(u)){let H={lastUpdate:new Date().toISOString(),skills:{}};return k3(u,JSON.stringify(H,null,2)),H}try{let H=cC(u,"utf-8");return JSON.parse(H)}catch{return{lastUpdate:new Date().toISOString(),skills:{}}}}function C(H){F(),H.lastUpdate=new Date().toISOString(),k3(u,JSON.stringify(H,null,2))}function B(H){let $=E(),X=Eu(H.name,H.installableType),G=$.skills[X],_=!1,q;if(G&&G.branch!==H.branch)q=G.branch,_=!0;let U={url:H.url,subpath:H.subpath,branch:H.branch,commit:H.commit};return $.skills[X]=U,C($),{updated:_,previousBranch:q}}function A(H,$){let X=E(),G=Eu(H,$);delete X.skills[G],C(X)}function I(H,$,X){let G=E(),_=Eu(H,$);if(G.skills[_])G.skills[_].commit=X,C(G)}function Y(H,$){let X=E(),G=Eu(H,$);return X.skills[G]||null}function Z(){return E()}function J(H,$){return f3(H,$,{type:"global"})}async function S(){let H=E(),$=[];for(let[X]of Object.entries(H.skills)){let G=X.split(":");if(G.length!==2)continue;let _=G[0]==="skill"?"skill":"command",q=G[1];if(J(q,_).length===0)$.push(X)}for(let X of $)delete H.skills[X];if($.length>0)C(H)}return{load:E,save:C,addSkill:B,removeSkill:A,updateCommit:I,getEntry:Y,getAll:Z,findInstallations:J,cleanOrphanedEntries:S}}function RI(D){let u=D||process.cwd(),F=zI(u,"skills.lock");function E(){if(!MF(F))return null;try{let $=cC(F,"utf-8"),X=JSON.parse($);if(!X.version||!X.skills)return null;return X}catch{return null}}function C($){$.version=gC,k3(F,JSON.stringify($,null,2))}function B(){if(MF(F))try{OI(F,{force:!0})}catch{}}function A($){let X=E();if(!X)X={version:gC,skills:{}};let G=Eu($.name,$.installableType),_=X.skills[G],q=!1,U;if(_&&_.branch!==$.branch)U=_.branch,q=!0;let z={url:$.url,subpath:$.subpath,branch:$.branch,commit:$.commit};return X.skills[G]=z,C(X),{updated:q,previousBranch:U}}function I($,X){let G=E();if(!G)return;let _=Eu($,X);if(delete G.skills[_],Object.keys(G.skills).length>0)C(G);else B()}function Y($,X,G){let _=E();if(!_)return;let q=Eu($,X);if(_.skills[q])_.skills[q].commit=G,C(_)}function Z($,X){let G=E();if(!G)return null;let _=Eu($,X);return G.skills[_]||null}function J(){return E()}function S($,X){return f3($,X,{type:"project",cwd:u})}async function H(){let $=E();if(!$)return;let X=[];for(let[G]of Object.entries($.skills)){let _=G.split(":");if(_.length!==2)continue;let q=_[0]==="skill"?"skill":"command",U=_[1];if(S(U,q).length===0)X.push(G)}for(let G of X)delete $.skills[G];if(X.length>0)if(Object.keys($.skills).length>0)C($);else B()}return{load:E,save:C,addSkill:A,removeSkill:I,updateCommit:Y,getEntry:Z,getAll:J,findInstallations:S,cleanOrphanedEntries:H}}function Uu(D){return RI(D)}var gC="1.0.0",qu;var v3=e(()=>{uu();b3();qu=NI()});function h3(D,u,F,E,C,B="skill"){return qu.addSkill({name:D,url:u,subpath:F,branch:E,commit:C,installableType:B})}function PF(D,u){qu.removeSkill(D,u)}function mC(D,u,F){qu.updateCommit(D,u,F)}function lC(){return qu.getAll()}function Z0(D,u){return qu.findInstallations(D,u)}async function dC(){return qu.cleanOrphanedEntries()}var Y0=e(()=>{v3()});function g3(D,u,F,E,C,B,A){return Uu(A).addSkill({name:D,url:u,subpath:F,branch:E,commit:C,installableType:B})}function nC(D,u,F){Uu(F).removeSkill(D,u)}function iC(D,u,F,E){Uu(E).updateCommit(D,u,F)}function pC(D){return Uu(D).getAll()}function $0(D,u,F){return Uu(F).findInstallations(D,u)}async function rC(D){return Uu(D).cleanOrphanedEntries()}var H0=e(()=>{v3()});async function aC(D,u){let F={tempDir:null,spinner:hD()};try{F.spinner.start("Reading repository...");let E=IC(D),C=E.branch??"main";F.spinner.stop(`Source: ${m.default.cyan(E.url)}${E.subpath?` (${E.subpath})`:""}${E.branch?` @ ${m.default.cyan(E.branch)}`:""}`),F.spinner.start("Downloading..."),F.tempDir=await GF(E.url,E.branch),F.spinner.stop("Repository cloned");let B=await _F(F.tempDir);F.spinner.start("Finding skills...");let A=await zF(F.tempDir,E.subpath),I=await TF(F.tempDir,E.subpath);if(A.length===0&&I.length===0)return F.spinner.stop(m.default.red("No skills or commands found")),r(m.default.red("No skills found. Repository must have SKILL.md files.")),{success:!1,installed:0,failed:0,results:[]};let Y=I.length>0;if(F.spinner.stop(`Found ${m.default.green(A.length)} skill${A.length!==1?"s":""}`+(Y?` and ${m.default.yellow(I.length)} command${I.length!==1?"s":""}`:"")),u.list){if(A.length>0){L.step(m.default.bold("Available Skills"));for(let _ of A)L.message(` ${m.default.cyan(Du(_))}`),L.message(` ${m.default.dim(_.description)}`)}if(I.length>0){L.step(m.default.bold("Available Commands"));for(let _ of I)L.message(` ${m.default.cyan(Gu(_))}`),L.message(` ${m.default.dim(_.description||`Command: ${_.name}`)}`)}return r("Use --skill <name> to install specific skills or commands"),{success:!0,installed:0,failed:0,results:[]}}let Z=await wI(A,u),J=Z?await VI(u,F):null,S=I.length>0?await WI(I,u):null,H=S?await MI(u,F):null;if(!Z&&!S)return{success:!1,installed:0,failed:0,results:[]};if(Z&&!J)return{success:!1,installed:0,failed:0,results:[]};if(S&&!H)return{success:!1,installed:0,failed:0,results:[]};let $=await PI(u);if($===null)return{success:!1,installed:0,failed:0,results:[]};if(!await jI(u,Z,J,S,H,$))return{success:!1,installed:0,failed:0,results:[]};if(S&&S.length>0)L.warn(m.default.yellow("Commands are experimental and may change"));F.spinner.start("Adding skills...");let G=await yI(Z||[],J||[],S||[],H||[],$,E,B,C,u.symlink??!0,F.tempDir);return F.spinner.stop("Installation complete"),G}finally{if(F.tempDir)await qF(F.tempDir)}}async function wI(D,u){if(D.length===0)return null;let F=[];if(u.skill&&u.skill.length>0){if(F=D.filter((E)=>u.skill.some((C)=>E.name.toLowerCase()===C.toLowerCase()||Du(E).toLowerCase()===C.toLowerCase())),F.length===0){L.error(`No matching skills found for: ${u.skill.join(", ")}`),L.info("Available skills:");for(let E of D)L.message(` - ${Du(E)}`);return null}L.info(`Selected ${F.length} skill${F.length!==1?"s":""}: ${F.map((E)=>m.default.cyan(Du(E))).join(", ")}`)}else if(u.yes||u.force)F=D,L.info(`Installing all ${D.length} skills`);else{let E=D.map((B)=>({value:B,label:Du(B),hint:B.description.length>60?B.description.slice(0,57)+"...":B.description})),C=await xD({message:"Choose skills to add",options:E,required:!1,initialValues:D.length===1?[D[0]]:void 0});if(AD(C))return ZD("Installation cancelled"),null;if(!C||C.length===0)return L.info("No skills selected"),null;F=C}return F}async function WI(D,u){if(D.length===0)return null;let F=[];if(u.skill&&u.skill.length>0)F=D.filter((E)=>u.skill.some((C)=>E.name.toLowerCase()===C.toLowerCase()||Gu(E).toLowerCase()===C.toLowerCase()));if(F.length===0&&!u.yes&&!u.force){let E=D.map((B)=>({value:B,label:Gu(B),hint:(B.description||`Command: ${B.name}`).slice(0,55)})),C=await xD({message:"Choose commands to add",options:E,required:!1});if(AD(C))return ZD("Installation cancelled"),null;if(!C||C.length===0)return L.info("No commands selected"),null;F=C}else if(u.yes||u.force)F=D,L.info(`Installing all ${D.length} commands`);if(F.length>0)L.info(`Selected ${F.length} command${F.length!==1?"s":""}: ${F.map((E)=>m.default.yellow(Gu(E))).join(", ")}`);return F.length>0?F:null}async function VI(D,u){if(D.agent&&D.agent.length>0){let E=Object.keys(n),C=D.agent.filter((B)=>!E.includes(B));if(C.length>0)return L.error(`Invalid agents: ${C.join(", ")}`),L.info(`Valid agents: ${E.join(", ")}`),null;return D.agent}u.spinner.start("Finding AI tools...");let F=await xC();if(u.spinner.stop(`Detected ${F.length} agent${F.length!==1?"s":""}`),F.length===0)if(D.yes||D.force){let C=Object.keys(n);return L.info("Installing to all agents (none detected)"),C}else{L.warn("No AI tools found. Choose where to install:");let C=Object.entries(n).map(([A,I])=>({value:A,label:I.displayName})),B=await xD({message:"Where should we install these?",options:C,required:!0});if(AD(B))return ZD("Installation cancelled"),null;return B}else if(D.yes||D.force){if(F.length===1){let E=F[0];L.info(`Installing skills to: ${m.default.cyan(n[E].displayName)}`)}else L.info(`Installing skills to: ${F.map((E)=>m.default.cyan(n[E].displayName)).join(", ")}`);return F}else{let E=F.map((B)=>({value:B,label:n[B].displayName,hint:n[B].skillsDir})),C=await xD({message:"Where should we install these?",options:E,required:!0});if(AD(C))return ZD("Installation cancelled"),null;return C}}async function MI(D,u){let F=yC();if(D.agent&&D.agent.length>0){let I=Object.keys(n),Y=D.agent.filter((S)=>!I.includes(S));if(Y.length>0)return L.error(`Invalid agents: ${Y.join(", ")}`),L.info(`Valid agents: ${I.join(", ")}`),null;let Z=D.agent.filter((S)=>WF(S));if(Z.length===0)return L.error("Commands are only supported by: "+F.map((S)=>n[S].displayName).join(", ")),null;let J=D.agent.filter((S)=>!WF(S));if(J.length>0)L.warn(`Filtering out agents that don't support commands: ${J.join(", ")}`);return Z}let E=F.filter((I)=>n[I]?.commandsDir);if(E.length===0)return L.warn("No agents with command support detected"),[];if(D.yes||D.force)return L.info(`Installing commands to: ${E.map((I)=>m.default.cyan(n[I].displayName)).join(", ")}`),E;let B=E.map((I)=>({value:I,label:n[I].displayName,hint:n[I].commandsDir||""})),A=await xD({message:"Select agents to install commands to",options:B,required:!0,initialValues:E});if(AD(A))return ZD("Installation cancelled"),null;return L.info(`Installing commands to: ${A.map((I)=>m.default.cyan(n[I].displayName)).join(", ")}`),A}async function PI(D){let u=D.global??!1;if(D.global===void 0&&!(D.yes||D.force)){let F=await BC({message:"Where to install?",options:[{value:!1,label:"Project",hint:"saved with this project"},{value:!0,label:"Global",hint:"available for all projects"}]});if(AD(F))return ZD("Installation cancelled"),null;u=F}return u}async function jI(D,u,F,E,C,B){if(L.step(m.default.bold("Installation Summary")),u&&u.length>0&&F)L.message(m.default.bold(m.default.cyan("Skills:"))+" "+u.map((I)=>Du(I)).join(", ")),L.message(m.default.bold(m.default.cyan("Agents:"))+" "+F.map((I)=>n[I].displayName).join(", "));if(E&&E.length>0&&C&&C.length>0)L.message(m.default.bold(m.default.yellow("Commands:"))+" "+E.map((I)=>Gu(I)).join(", ")),L.message(m.default.bold(m.default.cyan("Agents:"))+" "+C.map((I)=>n[I].displayName).join(", "));if(!(D.yes||D.force)){let I=await eD({message:"Ready to install?"});if(AD(I)||!I)return ZD("Installation cancelled"),!1}return!0}async function yI(D,u,F,E,C,B,A,I,Y,Z){let J=Y?await PC(D,{global:C}):new Map,S=[...D.flatMap((q)=>{let U=J.get(q.name);if(Y&&U&&!U.success)return u.map(()=>Promise.resolve({success:!1,path:"",originalPath:q.path,error:U.error}));return u.map((z)=>wF(q,z,{global:C,symlink:Y,skipCopy:Y}))}),...F.flatMap((q)=>E.map((U)=>VF(q,U,{global:C,symlink:Y})))],H=await Promise.all(S),$=H.map((q,U)=>{let z=Math.floor(U/Math.max(u.length,E.length)),T=U%Math.max(u.length,E.length),W=U<D.length*u.length,y=W?D[z%D.length]:F[z%F.length],O=W?u:E,M=O[T%O.length],Q=W?Du(y):Gu(y),R=W?`${y.path}/SKILL.md`:y.path,w=AC(B,Z,R);return{skill:Q,agent:n[M].displayName,...q,sourceUrl:w,installableType:W?"skill":"command"}}),X=new Map;for(let[q,U]of H.entries()){if(!U.success)continue;let z=q<D.length*u.length;if(C)if(z){let T=Math.floor(q/u.length),W=D[T%D.length],y=h3(W.name,B.url,B.subpath,I,A,"skill");if(y.updated&&y.previousBranch){let O=X.get(W.name);X.set(W.name,{previous:O?.previous??y.previousBranch,current:O?.current??I})}}else{let T=Math.floor((q-D.length*u.length)/E.length),W=F[T%F.length];h3(W.name,B.url,B.subpath,I,A,"command")}}if(!C)for(let[q,U]of H.entries()){if(!U.success)continue;if(q<D.length*u.length){let T=Math.floor(q/u.length),W=D[T%D.length];g3(W.name,B.url,B.subpath,I,A,"skill")}else{let T=Math.floor((q-D.length*u.length)/E.length),W=F[T%F.length];g3(W.name,B.url,B.subpath,I,A,"command")}}let G=$.filter((q)=>q.success),_=$.filter((q)=>!q.success);if(X.size>0)for(let[q,{previous:U,current:z}]of X)L.warn(m.default.yellow(` ${m.default.cyan(q)}: ${m.default.dim(U)} → ${m.default.green(z)}`));if(G.length>0){let q=G.filter((T)=>T.installableType==="skill").length,U=G.filter((T)=>T.installableType==="command").length,z=[];if(q>0)z.push(`${q} skill${q!==1?"s":""}`);if(U>0)z.push(`${U} command${U!==1?"s":""}`);L.success(m.default.green(`Successfully installed ${z.join(" and ")}`))}if(_.length>0){L.error(m.default.red(`Failed to install ${_.length} item${_.length!==1?"s":""}`));for(let q of _)L.message(` ${m.default.red("✗")} ${q.skill} → ${q.agent}`),L.message(` ${m.default.dim(q.error)}`)}if(G.length>0)r(m.default.green("Done! Skills ready to use."));else r(m.default.yellow("Nothing installed"));return{success:_.length===0,installed:G.length,failed:_.length,results:$}}var m;var sC=e(()=>{VD();U3();T3();R3();QF();O3();P3();y3();fC();gD();Y0();H0();m=o(LD(),1)});async function oC(){let D=Date.now();if(S0&&c3&&D<c3)return S0;try{let u=await fetch(HC,{signal:AbortSignal.timeout(5000)});if(!u.ok)throw Error(`Failed to fetch directory: ${u.status}`);let F=await u.json();return S0=F,c3=D+xI,F}catch(u){if(S0)return S0;throw u}}async function tC(D){return(await oC()).find((E)=>E.name.toLowerCase()===D.toLowerCase())?.source??null}function eC(D){return/^[a-z0-9-]+$/i.test(D)&&!D.includes("/")&&!D.includes(":")}async function jF(){return oC()}var S0=null,c3=null,xI=300000;var m3=e(()=>{gD()});import{platform as fI,arch as bI}from"node:os";import{spawn as kI}from"node:child_process";function cI(D){let u=D.match(/github\.com[/:]([^/]+\/[^/]+?)(?:\.git)?(?:\/tree\/[^/]+\/(.+?))?(?:\/)?(?:[#]|$)/i);if(u){let C=u[1],B=u[2];return B?`${C}/${B}`:C}let F=D.match(/gitlab\.com[/:]([^/]+\/[^/]+?)(?:\.git)?(?:\/-\/tree\/[^/]+\/(.+?))?(?:\/)?(?:[#]|$)/i);if(F){let C=F[1],B=F[2];return B?`${C}/${B}`:C}let E=D.match(/^([^/]+\/[^/]+?)(?:\/(.+?))?(?:\/)?$/);if(E){let C=E[1],B=E[2];return B?`${C}/${B}`:C}return D.replace(/\.git$/,"").replace(/\/$/,"")}function u6(D){if(!D6)return;yF.push({...D,repo:D.repo?cI(D.repo):void 0,timestamp:Date.now(),osPlatform:fI(),osArch:bI(),nodeVersion:process.version,cliVersion:hI})}function l3(){if(!D6||yF.length===0)return;let D=yF;yF=[];let u=JSON.stringify(D);kI("curl",["-s","-X","POST",vI,"-H","Content-Type: application/json","-d",u,"--max-time","10"],{detached:!0,stdio:"ignore",windowsHide:!0}).unref()}var vI="https://tidy-oriole-956.convex.site/telemetry",hI,gI,D6,yF;var d3=e(()=>{s0();hI=xu.version,gI=Boolean(process.env.CI||process.env.CONTINUOUS_INTEGRATION||process.env.GITHUB_ACTIONS||process.env.GITLAB_CI||process.env.TRAVIS||process.env.JENKINS_URL||process.env.BITBUCKET_BUILD_NUMBER||process.env.CODEBUILD_BUILD_ID),D6=!gI&&process.env.FLINS_TELEMETRY!=="0"&&!0,yF=[]});var F6={};p4(F6,{installCommand:()=>n3});async function n3(D,u){if(!u.silent)OD(Cu.default.bgCyan(Cu.default.black(" flins ")));try{let F=D;if(eC(D)){if(!u.silent)L.info(`Looking up "${Cu.default.cyan(D)}" in flins directory...`);let C=await tC(D);if(!C){L.error(`Skill "${Cu.default.cyan(D)}" not found in directory.`);let B=await jF();if(B.length>0){L.info("Available skills:");for(let A of B)L.message(` ${Cu.default.cyan(A.name)} - ${Cu.default.dim(A.description)}`)}process.exit(1)}F=C}let E=await aC(F,u);for(let C of E.results){let{installableType:B,sourceUrl:A}=C;u6({command:"add",type:B,repo:F,sourceUrl:A,name:C.skill,agent:C.agent,scope:u.global?"global":"project",success:C.success})}if(!E.success&&E.installed===0&&E.failed===0)process.exit(1);if(E.failed>0)process.exit(1)}catch(F){if(L.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(Cu.default.red("Installation failed"));process.exit(1)}}var Cu;var i3=e(()=>{VD();sC();m3();d3();Cu=o(LD(),1)});var U6=N((qq,q6)=>{var Au=d("constants"),rI=process.cwd,bF=null,aI=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){if(!bF)bF=rI.call(process);return bF};try{process.cwd()}catch(D){}if(typeof process.chdir==="function"){if(kF=process.chdir,process.chdir=function(D){bF=null,kF.call(process,D)},Object.setPrototypeOf)Object.setPrototypeOf(process.chdir,kF)}var kF;q6.exports=sI;function sI(D){if(Au.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./))u(D);if(!D.lutimes)F(D);if(D.chown=B(D.chown),D.fchown=B(D.fchown),D.lchown=B(D.lchown),D.chmod=E(D.chmod),D.fchmod=E(D.fchmod),D.lchmod=E(D.lchmod),D.chownSync=A(D.chownSync),D.fchownSync=A(D.fchownSync),D.lchownSync=A(D.lchownSync),D.chmodSync=C(D.chmodSync),D.fchmodSync=C(D.fchmodSync),D.lchmodSync=C(D.lchmodSync),D.stat=I(D.stat),D.fstat=I(D.fstat),D.lstat=I(D.lstat),D.statSync=Y(D.statSync),D.fstatSync=Y(D.fstatSync),D.lstatSync=Y(D.lstatSync),D.chmod&&!D.lchmod)D.lchmod=function(J,S,H){if(H)process.nextTick(H)},D.lchmodSync=function(){};if(D.chown&&!D.lchown)D.lchown=function(J,S,H,$){if($)process.nextTick($)},D.lchownSync=function(){};if(aI==="win32")D.rename=typeof D.rename!=="function"?D.rename:function(J){function S(H,$,X){var G=Date.now(),_=0;J(H,$,function q(U){if(U&&(U.code==="EACCES"||U.code==="EPERM"||U.code==="EBUSY")&&Date.now()-G<60000){if(setTimeout(function(){D.stat($,function(z,T){if(z&&z.code==="ENOENT")J(H,$,q);else X(U)})},_),_<100)_+=10;return}if(X)X(U)})}if(Object.setPrototypeOf)Object.setPrototypeOf(S,J);return S}(D.rename);D.read=typeof D.read!=="function"?D.read:function(J){function S(H,$,X,G,_,q){var U;if(q&&typeof q==="function"){var z=0;U=function(T,W,y){if(T&&T.code==="EAGAIN"&&z<10)return z++,J.call(D,H,$,X,G,_,U);q.apply(this,arguments)}}return J.call(D,H,$,X,G,_,U)}if(Object.setPrototypeOf)Object.setPrototypeOf(S,J);return S}(D.read),D.readSync=typeof D.readSync!=="function"?D.readSync:function(J){return function(S,H,$,X,G){var _=0;while(!0)try{return J.call(D,S,H,$,X,G)}catch(q){if(q.code==="EAGAIN"&&_<10){_++;continue}throw q}}}(D.readSync);function u(J){J.lchmod=function(S,H,$){J.open(S,Au.O_WRONLY|Au.O_SYMLINK,H,function(X,G){if(X){if($)$(X);return}J.fchmod(G,H,function(_){J.close(G,function(q){if($)$(_||q)})})})},J.lchmodSync=function(S,H){var $=J.openSync(S,Au.O_WRONLY|Au.O_SYMLINK,H),X=!0,G;try{G=J.fchmodSync($,H),X=!1}finally{if(X)try{J.closeSync($)}catch(_){}else J.closeSync($)}return G}}function F(J){if(Au.hasOwnProperty("O_SYMLINK")&&J.futimes)J.lutimes=function(S,H,$,X){J.open(S,Au.O_SYMLINK,function(G,_){if(G){if(X)X(G);return}J.futimes(_,H,$,function(q){J.close(_,function(U){if(X)X(q||U)})})})},J.lutimesSync=function(S,H,$){var X=J.openSync(S,Au.O_SYMLINK),G,_=!0;try{G=J.futimesSync(X,H,$),_=!1}finally{if(_)try{J.closeSync(X)}catch(q){}else J.closeSync(X)}return G};else if(J.futimes)J.lutimes=function(S,H,$,X){if(X)process.nextTick(X)},J.lutimesSync=function(){}}function E(J){if(!J)return J;return function(S,H,$){return J.call(D,S,H,function(X){if(Z(X))X=null;if($)$.apply(this,arguments)})}}function C(J){if(!J)return J;return function(S,H){try{return J.call(D,S,H)}catch($){if(!Z($))throw $}}}function B(J){if(!J)return J;return function(S,H,$,X){return J.call(D,S,H,$,function(G){if(Z(G))G=null;if(X)X.apply(this,arguments)})}}function A(J){if(!J)return J;return function(S,H,$){try{return J.call(D,S,H,$)}catch(X){if(!Z(X))throw X}}}function I(J){if(!J)return J;return function(S,H,$){if(typeof H==="function")$=H,H=null;function X(G,_){if(_){if(_.uid<0)_.uid+=4294967296;if(_.gid<0)_.gid+=4294967296}if($)$.apply(this,arguments)}return H?J.call(D,S,H,X):J.call(D,S,X)}}function Y(J){if(!J)return J;return function(S,H){var $=H?J.call(D,S,H):J.call(D,S);if($){if($.uid<0)$.uid+=4294967296;if($.gid<0)$.gid+=4294967296}return $}}function Z(J){if(!J)return!0;if(J.code==="ENOSYS")return!0;var S=!process.getuid||process.getuid()!==0;if(S){if(J.code==="EINVAL"||J.code==="EPERM")return!0}return!1}}});var Q6=N((Uq,K6)=>{var L6=d("stream").Stream;K6.exports=oI;function oI(D){return{ReadStream:u,WriteStream:F};function u(E,C){if(!(this instanceof u))return new u(E,C);L6.call(this);var B=this;this.path=E,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,C=C||{};var A=Object.keys(C);for(var I=0,Y=A.length;I<Y;I++){var Z=A[I];this[Z]=C[Z]}if(this.encoding)this.setEncoding(this.encoding);if(this.start!==void 0){if(typeof this.start!=="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!=="number")throw TypeError("end must be a Number");if(this.start>this.end)throw Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){B._read()});return}D.open(this.path,this.flags,this.mode,function(J,S){if(J){B.emit("error",J),B.readable=!1;return}B.fd=S,B.emit("open",S),B._read()})}function F(E,C){if(!(this instanceof F))return new F(E,C);L6.call(this),this.path=E,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,C=C||{};var B=Object.keys(C);for(var A=0,I=B.length;A<I;A++){var Y=B[A];this[Y]=C[Y]}if(this.start!==void 0){if(typeof this.start!=="number")throw TypeError("start must be a Number");if(this.start<0)throw Error("start must be >= zero");this.pos=this.start}if(this.busy=!1,this._queue=[],this.fd===null)this._open=D.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush()}}});var T6=N((Lq,z6)=>{z6.exports=eI;var tI=Object.getPrototypeOf||function(D){return D.__proto__};function eI(D){if(D===null||typeof D!=="object")return D;if(D instanceof Object)var u={__proto__:tI(D)};else var u=Object.create(null);return Object.getOwnPropertyNames(D).forEach(function(F){Object.defineProperty(u,F,Object.getOwnPropertyDescriptor(D,F))}),u}});var R6=N((Kq,o3)=>{var CD=d("fs"),DJ=U6(),uJ=Q6(),FJ=T6(),vF=d("util"),$D,gF;if(typeof Symbol==="function"&&typeof Symbol.for==="function")$D=Symbol.for("graceful-fs.queue"),gF=Symbol.for("graceful-fs.previous");else $D="___graceful-fs.queue",gF="___graceful-fs.previous";function EJ(){}function N6(D,u){Object.defineProperty(D,$D,{get:function(){return u}})}var Ku=EJ;if(vF.debuglog)Ku=vF.debuglog("gfs4");else if(/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))Ku=function(){var D=vF.format.apply(vF,arguments);D="GFS4: "+D.split(/\n/).join(`
101
+ `)},info:(D,u)=>{K.message(D,{...u,symbol:L.default.blue(GA)})},success:(D,u)=>{K.message(D,{...u,symbol:L.default.green(_A)})},step:(D,u)=>{K.message(D,{...u,symbol:L.default.green(G3)})},warn:(D,u)=>{K.message(D,{...u,symbol:L.default.yellow(qA)})},warning:(D,u)=>{K.warn(D,u)},error:(D,u)=>{K.message(D,{...u,symbol:L.default.red(UA)})}},yA=L.default.magenta,mX={light:t("─","-"),heavy:t("━","="),block:t("█","#")},lX=`${L.default.gray(i)} `});function AC(D,u,F){let E=D.url.replace(/\.git$/,""),C=D.branch??"main",B=F.startsWith(u)?F.slice(u.length).replace(/^\//,""):F;if(D.type==="github")return`${E}/blob/${C}/${B}`;if(D.type==="gitlab")return`${E}/-/blob/${C}/${B}`;return D.url}function IC(D){let u=D.match(/github\.com\/([^/]+)\/([^/]+)\/tree\/([^/]+)(?:\/(.+))?$/);if(u){let[,A,I,Y,Z]=u;return{type:"github",url:`https://github.com/${A}/${I}.git`,branch:Y,subpath:Z}}let F=D.match(/github\.com\/([^/]+)\/([^/]+)/);if(F){let[,A,I]=F,Y=I.replace(/\.git$/,"");return{type:"github",url:`https://github.com/${A}/${Y}.git`}}let E=D.match(/gitlab\.com\/([^/]+)\/([^/]+)\/-\/tree\/([^/]+)(?:\/(.+))?$/);if(E){let[,A,I,Y,Z]=E;return{type:"gitlab",url:`https://gitlab.com/${A}/${I}.git`,branch:Y,subpath:Z}}let C=D.match(/gitlab\.com\/([^/]+)\/([^/]+)/);if(C){let[,A,I]=C,Y=I.replace(/\.git$/,"");return{type:"gitlab",url:`https://gitlab.com/${A}/${Y}.git`}}let B=D.match(/^([^/]+)\/([^/]+)(?:\/(.+))?$/);if(B&&!D.includes(":")){let[,A,I,Y]=B;return{type:"github",url:`https://github.com/${A}/${I}.git`,subpath:Y}}return{type:"git",url:D}}import{spawn as fA}from"child_process";async function XF(D,u){return new Promise((F,E)=>{let C="",B=fA("git",D,{stdio:"pipe",cwd:u?.cwd});B.stdout?.on("data",(A)=>{C+=A.toString()}),B.on("close",(A)=>{if(A===0)F(C.trim());else E(Error(`Git command failed: git ${D.join(" ")}`))}),B.on("error",E)})}var JC=()=>{};import{join as bA}from"path";import{rmSync as kA}from"fs";import{tmpdir as vA}from"os";async function GF(D,u){let F=bA(vA(),`flins-${Date.now()}`),E=["clone","--depth","1"];if(u)E.push("--branch",u);return E.push(D,F),await XF(E),F}async function ZC(D,u="main"){return(await XF(["ls-remote",D,`refs/heads/${u}`])).split(/\s+/)[0]??""}async function _F(D){return XF(["rev-parse","HEAD"],{cwd:D})}async function qF(D){kA(D,{recursive:!0,force:!0})}var U3=e(()=>{JC()});var $C;var YC=e(()=>{$C={opencode:{name:"opencode",displayName:"OpenCode",configDir:"~/.config/opencode",skillsDir:".opencode/skills",globalSkillsDir:"~/.config/opencode/skills",commandsDir:".opencode/commands",globalCommandsDir:"~/.config/opencode/commands"},"claude-code":{name:"claude-code",displayName:"Claude Code",configDir:"~/.claude",skillsDir:".claude/skills",globalSkillsDir:"~/.claude/skills",commandsDir:".claude/commands",globalCommandsDir:"~/.claude/commands"},codex:{name:"codex",displayName:"Codex",configDir:"~/.codex",skillsDir:".codex/skills",globalSkillsDir:"~/.codex/skills"},cursor:{name:"cursor",displayName:"Cursor",configDir:"~/.cursor",skillsDir:".cursor/skills",globalSkillsDir:"~/.cursor/skills"},amp:{name:"amp",displayName:"Amp",configDir:"~/.config/agents",skillsDir:".agents/skills",globalSkillsDir:"~/.config/agents/skills"},kilo:{name:"kilo",displayName:"Kilo Code",configDir:"~/.kilocode",skillsDir:".kilocode/skills",globalSkillsDir:"~/.kilocode/skills"},roo:{name:"roo",displayName:"Roo Code",configDir:"~/.roo",skillsDir:".roo/skills",globalSkillsDir:"~/.roo/skills"},goose:{name:"goose",displayName:"Goose",configDir:"~/.config/goose",skillsDir:".goose/skills",globalSkillsDir:"~/.config/goose/skills"},antigravity:{name:"antigravity",displayName:"Antigravity",configDir:"~/.gemini/antigravity",skillsDir:".agent/skills",globalSkillsDir:"~/.gemini/antigravity/skills"},copilot:{name:"copilot",displayName:"GitHub Copilot",configDir:"~/.copilot",skillsDir:".github/skills",globalSkillsDir:"~/.copilot/skills"},gemini:{name:"gemini",displayName:"Gemini CLI",configDir:"~/.gemini",skillsDir:".gemini/skills",globalSkillsDir:"~/.gemini/skills"},windsurf:{name:"windsurf",displayName:"Windsurf",configDir:"~/.codeium/windsurf",skillsDir:".windsurf/skills",globalSkillsDir:"~/.codeium/windsurf/skills"},trae:{name:"trae",displayName:"Trae",configDir:"~/.trae",skillsDir:".trae/skills",globalSkillsDir:"~/.trae/skills"},factory:{name:"factory",displayName:"Factory Droid",configDir:"~/.factory",skillsDir:".factory/skills",globalSkillsDir:"~/.factory/skills",commandsDir:".factory/commands",globalCommandsDir:"~/.factory/commands"},letta:{name:"letta",displayName:"Letta",configDir:"~/.letta",skillsDir:".skills",globalSkillsDir:"~/.letta/skills"},qoder:{name:"qoder",displayName:"Qoder",configDir:"~/.qoder",skillsDir:".qoder/skills",globalSkillsDir:"~/.qoder/skills"},qwen:{name:"qwen",displayName:"Qwen Code",configDir:"~/.qwen",skillsDir:".qwen/skills",globalSkillsDir:"~/.qwen/skills"}}});import{homedir as gA}from"os";import{existsSync as cA}from"fs";function mA(){let D={},u=$C;for(let[F,E]of Object.entries(u)){let C=F;D[C]={name:E.name,displayName:E.displayName,configDir:E.configDir.replace("~",UF),skillsDir:E.skillsDir,globalSkillsDir:E.globalSkillsDir.replace("~",UF),commandsDir:E.commandsDir,globalCommandsDir:E.globalCommandsDir?.replace("~",UF),detectInstalled:async()=>{let B=E.configDir.replace("~",UF);return cA(B)}}}return D}var UF,HC,n;var gD=e(()=>{YC();UF=gA(),HC=process.env.DIRECTORY_URL||"https://flins.tech/directory.json";n=mA()});var LF;var L3=e(()=>{LF=["node_modules",".git","dist","build","__pycache__"]});import{basename as lA,dirname as dA}from"path";function K3(D){let u=D.match(/^---\n([\s\S]+?)\n---\n([\s\S]*)$/);if(!u)return{data:{},content:D};let F=u[1],E=u[2],C={};for(let B of F.split(`
102
+ `)){let A=B.indexOf(":");if(A===-1)continue;let I=B.slice(0,A).trim(),Y=B.slice(A+1).trim();if(Y.startsWith('"')&&Y.endsWith('"')||Y.startsWith("'")&&Y.endsWith("'"))C[I]=Y.slice(1,-1);else if(I==="metadata")try{let Z={},J=Y.replace(/^\{|\}$/g,"").trim();if(J){for(let S of J.split(",")){let[H,$]=S.split("=").map((X)=>X.trim());if(H&&$)Z[H]=$.replace(/^['"]|["']$/g,"")}C[I]=JSON.stringify(Z)}}catch{C[I]=Y}else C[I]=Y}return{data:C,content:E}}function KF(D,u){try{let{data:F}=K3(u);if(!F.name||!F.description)return null;return{name:F.name,description:F.description,path:dA(D),metadata:F.metadata?JSON.parse(F.metadata):void 0}}catch{return null}}function Du(D){return D.name||lA(D.path)}var QF=()=>{};import{readdir as SC,readFile as Q3,stat as nA}from"fs/promises";import{join as rD}from"path";function pA(D){let u=[D];for(let E of iA)u.push(rD(D,E));let F=new Set;for(let E of Object.values(n))F.add(rD(D,E.skillsDir));return u.push(...F),u}async function z3(D){try{let u=rD(D,"SKILL.md");return(await nA(u)).isFile()}catch{return!1}}async function XC(D,u=0,F=5){let E=[];if(u>F)return E;try{if(await z3(D))E.push(D);let C=await SC(D,{withFileTypes:!0});for(let B of C)if(B.isDirectory()&&!LF.includes(B.name)){let A=await XC(rD(D,B.name),u+1,F);E.push(...A)}}catch{}return E}async function zF(D,u){let F=[],E=new Set,C=u?rD(D,u):D;if(await z3(C)){let A=rD(C,"SKILL.md"),I=await Q3(A,"utf-8"),Y=KF(A,I);if(Y)return F.push(Y),F}let B=pA(C);for(let A of B)try{let I=await SC(A,{withFileTypes:!0});for(let Y of I)if(Y.isDirectory()){let Z=rD(A,Y.name);if(await z3(Z)){let J=rD(Z,"SKILL.md"),S=await Q3(J,"utf-8"),H=KF(J,S);if(H&&!E.has(H.name))F.push(H),E.add(H.name)}}}catch{}if(F.length===0){let A=await XC(C);for(let I of A){let Y=rD(I,"SKILL.md"),Z=await Q3(Y,"utf-8"),J=KF(Y,Z);if(J&&!E.has(J.name))F.push(J),E.add(J.name)}}return F}var iA;var T3=e(()=>{gD();L3();QF();iA=["skills","skills/.curated","skills/.experimental","skills/.system"]});import{basename as rA}from"path";function GC(D,u){try{let{data:F}=K3(u);return{name:F.name||rA(D,".md"),description:F.description,path:D,type:"markdown"}}catch{return null}}function Gu(D){return D.name}var O3=e(()=>{QF()});import{readdir as _C,readFile as aA}from"fs/promises";import{join as N3,extname as sA}from"path";async function qC(D,u=0){let F=[];if(u>tA)return F;try{let E=await _C(D,{withFileTypes:!0});for(let C of E){if(LF.includes(C.name))continue;let B=N3(D,C.name);if(C.isDirectory())if(C.name==="commands")F.push(B);else{let A=await qC(B,u+1);F.push(...A)}}}catch{}return F}async function eA(D){let u=[];try{let F=await _C(D,{withFileTypes:!0});for(let E of F){if(oA.has(E.name))continue;if(!E.isFile())continue;let C=N3(D,E.name);if(sA(E.name).toLowerCase()!==".md")continue;try{let A=await aA(C,"utf-8"),I=GC(C,A);if(I)u.push(I)}catch{continue}}}catch{}return u}async function TF(D,u){let F=[],E=new Set,C=u?N3(D,u):D,B=await qC(C);for(let A of B){let I=await eA(A);for(let Y of I)if(!E.has(Y.name))F.push(Y),E.add(Y.name)}return F}var oA,tA=5;var R3=e(()=>{L3();O3();oA=new Set(["README.md","readme.md",".DS_Store"])});import{resolve as DI,join as _u}from"path";import{homedir as LC}from"os";function bu(D){if(D.startsWith("~"))return D.replace("~",LC());return D}function I0(D){return D.type==="global"?bu(D.path):DI(process.cwd(),D.path)}function J0(){return _u(LC(),uI)}function KC(D={}){if(D.global)return _u(J0(),UC);return _u(D.cwd||process.cwd(),UC)}function w3(D={}){return _u(KC(D),FI)}function QC(D={}){return _u(KC(D),EI)}function zC(D,u={}){if(u.global)return bu(D);return _u(u.cwd||process.cwd(),D)}function TC(D,u={}){if(u.global)return bu(D);return _u(u.cwd||process.cwd(),D)}var uI=".flins",UC=".agents",FI="skills",EI="commands";var uu=()=>{};import{mkdir as ku,cp as OC,access as NG,readdir as CI,symlink as NC,rm as OF}from"fs/promises";import{lstatSync as BI,readlinkSync as AI,rmSync as II}from"fs";import{join as vu,relative as RC,dirname as wC,resolve as JI}from"path";async function NF(D,u){try{return await D(),{success:!0,path:u}}catch(F){return{success:!1,path:u,error:F instanceof Error?F.message:"Unknown error"}}}async function W3(D,u){await ku(u,{recursive:!0});let F=await CI(D,{withFileTypes:!0});for(let E of F){if(YI(E.name))continue;let C=vu(D,E.name),B=vu(u,E.name);if(E.isDirectory())await W3(C,B);else await OC(C,B)}}async function WC(D,u){return NF(async()=>{await ku(u,{recursive:!0}),await W3(D,u)},u)}async function V3(D,u,F={}){let E=w3(F),C=vu(E,u);return NF(async()=>{await ku(E,{recursive:!0}),await OF(C,{recursive:!0,force:!0}),await W3(D,C)},C)}async function M3(D,u,F={}){let E=w3(F),C=vu(E,D);return NF(async()=>{let B=vu(u,"..");await ku(B,{recursive:!0}),await OF(u,{recursive:!0,force:!0}),await NC(RC(B,C),u)},u)}async function VC(D,u,F,E={}){return NF(async()=>{let C=QC(E),B=vu(C,`${u}.md`);await ku(C,{recursive:!0}),await OF(B,{force:!0}),await OC(D,B);let A=wC(F);await ku(A,{recursive:!0}),await OF(F,{force:!0}),await NC(RC(A,B),F)},F)}async function MC(D){try{if(!BI(D).isSymbolicLink())return{success:!0};let F=AI(D),E=JI(wC(D),F);return II(E,{recursive:!0,force:!0}),{success:!0}}catch(u){let F=u?.code;if(F==="ENOENT"||F==="ENOTDIR")return{success:!0};return{success:!1,error:u instanceof Error?u.message:"Unknown error"}}}var ZI,YI=(D)=>{if(ZI.has(D))return!0;if(D.startsWith("_"))return!0;return!1};var RF=e(()=>{uu();ZI=new Set(["README.md","metadata.json"])});import{join as $I}from"path";async function PC(D,u){let F=new Map;for(let E of D){let C=await V3(E.path,E.name,{global:u.global});F.set(E.name,{success:C.success,error:C.error})}return F}async function wF(D,u,F){let E=n[u],C=zC(F.global?E.globalSkillsDir:E.skillsDir,{global:F.global}),B=$I(C,D.name),A;if(F.symlink)if(F.skipCopy)A=await M3(D.name,B,{global:F.global});else{let I=await V3(D.path,D.name,{global:F.global});if(!I.success)return{...I,path:B,originalPath:D.path};A=await M3(D.name,B,{global:F.global})}else A=await WC(D.path,B);return{...A,originalPath:D.path}}var P3=e(()=>{gD();RF();uu()});var j3;var jC=e(()=>{j3=["claude-code","opencode","factory"]});import{mkdir as HI,cp as SI}from"fs/promises";import{join as XI,dirname as GI}from"path";function WF(D){return j3.includes(D)}function yC(){return[...j3].filter((D)=>n[D]?.commandsDir)}async function _I(D){await HI(D,{recursive:!0})}async function qI(D,u){try{return await _I(GI(u)),await SI(D,u),{success:!0,path:u}}catch(F){return{success:!1,path:u,error:F instanceof Error?F.message:"Unknown error"}}}async function UI(D,u,F){let E=n[u],C=TC(F.global?E.globalCommandsDir:E.commandsDir,{global:F.global}),B=XI(C,`${D.name}.md`);if(F.symlink)return VC(D.path,D.name,B,{global:F.global});return qI(D.path,B)}async function VF(D,u,F){if(!WF(u))return{success:!1,path:"",originalPath:D.path,error:`Agent ${u} does not support commands`};if(!n[u].commandsDir)return{success:!1,path:"",originalPath:D.path,error:`Agent ${u} has no commands directory configured`};return{...await UI(D,u,F),originalPath:D.path}}var y3=e(()=>{gD();RF();uu();jC()});async function xC(){let D=[];for(let[u,F]of Object.entries(n))if(await F.detectInstalled())D.push(u);return D}var fC=e(()=>{gD()});import{join as Fu,resolve as LI}from"path";import{existsSync as bC,readdirSync as kC,lstatSync as KI}from"fs";function vC(D){return`skill:${D.toLowerCase()}`}function hC(D){return`command:${D.toLowerCase()}`}function x3(D){if(D.startsWith("skill:"))return{type:"skill",name:D.slice(6),installableType:"skill"};if(D.startsWith("command:"))return{type:"command",name:D.slice(8),installableType:"command"};return null}function f3(D,u,F){let E=[],C=F.cwd??LI(F.type==="global"?J0():process.cwd());for(let[B,A]of Object.entries(n))if(u==="skill"){let I=F.type==="global"?Fu(C,bu(A.globalSkillsDir)):Fu(C,A.skillsDir);if(bC(I))try{let Z=kC(I,{withFileTypes:!0}).find((J)=>{if(J.name.toLowerCase()!==D.toLowerCase())return!1;if(J.isDirectory())return!0;let S=Fu(I,J.name);try{return KI(S).isSymbolicLink()}catch{return!1}});if(Z)E.push({agent:B,installableType:"skill",type:F.type,path:F.type==="global"?Fu(A.globalSkillsDir,Z.name):Fu(A.skillsDir,Z.name)})}catch{}}else{let I=F.type==="global"?A.globalCommandsDir:A.commandsDir;if(I){let Y=F.type==="global"?Fu(C,bu(I)):Fu(C,I);if(bC(Y))try{let J=kC(Y,{withFileTypes:!0}).find((S)=>{return S.name.replace(/\.md$/,"").toLowerCase()===D.toLowerCase()});if(J)E.push({agent:B,installableType:"command",type:F.type,path:Fu(I,J.name)})}catch{}}}return E}var b3=e(()=>{uu();gD()});import{join as QI,resolve as zI}from"path";import{existsSync as MF,readFileSync as cC,writeFileSync as k3,mkdirSync as TI,rmSync as OI}from"fs";function Eu(D,u){return u==="skill"?vC(D):hC(D)}function NI(){let D=J0(),u=QI(D,"skills.lock");function F(){if(!MF(D))TI(D,{recursive:!0})}function E(){if(F(),!MF(u)){let H={lastUpdate:new Date().toISOString(),skills:{}};return k3(u,JSON.stringify(H,null,2)),H}try{let H=cC(u,"utf-8");return JSON.parse(H)}catch{return{lastUpdate:new Date().toISOString(),skills:{}}}}function C(H){F(),H.lastUpdate=new Date().toISOString(),k3(u,JSON.stringify(H,null,2))}function B(H){let $=E(),X=Eu(H.name,H.installableType),G=$.skills[X],_=!1,q;if(G&&G.branch!==H.branch)q=G.branch,_=!0;let U={url:H.url,subpath:H.subpath,branch:H.branch,commit:H.commit};return $.skills[X]=U,C($),{updated:_,previousBranch:q}}function A(H,$){let X=E(),G=Eu(H,$);delete X.skills[G],C(X)}function I(H,$,X){let G=E(),_=Eu(H,$);if(G.skills[_])G.skills[_].commit=X,C(G)}function Y(H,$){let X=E(),G=Eu(H,$);return X.skills[G]||null}function Z(){return E()}function J(H,$){return f3(H,$,{type:"global"})}async function S(){let H=E(),$=[];for(let[X]of Object.entries(H.skills)){let G=X.split(":");if(G.length!==2)continue;let _=G[0]==="skill"?"skill":"command",q=G[1];if(J(q,_).length===0)$.push(X)}for(let X of $)delete H.skills[X];if($.length>0)C(H)}return{load:E,save:C,addSkill:B,removeSkill:A,updateCommit:I,getEntry:Y,getAll:Z,findInstallations:J,cleanOrphanedEntries:S}}function RI(D){let u=D||process.cwd(),F=zI(u,"skills.lock");function E(){if(!MF(F))return null;try{let $=cC(F,"utf-8"),X=JSON.parse($);if(!X.version||!X.skills)return null;return X}catch{return null}}function C($){$.version=gC,k3(F,JSON.stringify($,null,2))}function B(){if(MF(F))try{OI(F,{force:!0})}catch{}}function A($){let X=E();if(!X)X={version:gC,skills:{}};let G=Eu($.name,$.installableType),_=X.skills[G],q=!1,U;if(_&&_.branch!==$.branch)U=_.branch,q=!0;let z={url:$.url,subpath:$.subpath,branch:$.branch,commit:$.commit};return X.skills[G]=z,C(X),{updated:q,previousBranch:U}}function I($,X){let G=E();if(!G)return;let _=Eu($,X);if(delete G.skills[_],Object.keys(G.skills).length>0)C(G);else B()}function Y($,X,G){let _=E();if(!_)return;let q=Eu($,X);if(_.skills[q])_.skills[q].commit=G,C(_)}function Z($,X){let G=E();if(!G)return null;let _=Eu($,X);return G.skills[_]||null}function J(){return E()}function S($,X){return f3($,X,{type:"project",cwd:u})}async function H(){let $=E();if(!$)return;let X=[];for(let[G]of Object.entries($.skills)){let _=G.split(":");if(_.length!==2)continue;let q=_[0]==="skill"?"skill":"command",U=_[1];if(S(U,q).length===0)X.push(G)}for(let G of X)delete $.skills[G];if(X.length>0)if(Object.keys($.skills).length>0)C($);else B()}return{load:E,save:C,addSkill:A,removeSkill:I,updateCommit:Y,getEntry:Z,getAll:J,findInstallations:S,cleanOrphanedEntries:H}}function Uu(D){return RI(D)}var gC="1.0.0",qu;var v3=e(()=>{uu();b3();qu=NI()});function h3(D,u,F,E,C,B="skill"){return qu.addSkill({name:D,url:u,subpath:F,branch:E,commit:C,installableType:B})}function PF(D,u){qu.removeSkill(D,u)}function mC(D,u,F){qu.updateCommit(D,u,F)}function lC(){return qu.getAll()}function Z0(D,u){return qu.findInstallations(D,u)}async function dC(){return qu.cleanOrphanedEntries()}var Y0=e(()=>{v3()});function g3(D,u,F,E,C,B,A){return Uu(A).addSkill({name:D,url:u,subpath:F,branch:E,commit:C,installableType:B})}function nC(D,u,F){Uu(F).removeSkill(D,u)}function iC(D,u,F,E){Uu(E).updateCommit(D,u,F)}function pC(D){return Uu(D).getAll()}function $0(D,u,F){return Uu(F).findInstallations(D,u)}async function rC(D){return Uu(D).cleanOrphanedEntries()}var H0=e(()=>{v3()});async function aC(D,u){let F={tempDir:null,spinner:hD()};try{F.spinner.start("Reading repository...");let E=IC(D),C=E.branch??"main";F.spinner.stop(`Source: ${m.default.cyan(E.url)}${E.subpath?` (${E.subpath})`:""}${E.branch?` @ ${m.default.cyan(E.branch)}`:""}`),F.spinner.start("Downloading..."),F.tempDir=await GF(E.url,E.branch),F.spinner.stop("Repository cloned");let B=await _F(F.tempDir);F.spinner.start("Finding skills...");let A=await zF(F.tempDir,E.subpath),I=await TF(F.tempDir,E.subpath);if(A.length===0&&I.length===0)return F.spinner.stop(m.default.red("No skills or commands found")),r(m.default.red("No skills found. Repository must have SKILL.md files.")),{success:!1,installed:0,failed:0,results:[]};let Y=I.length>0;if(F.spinner.stop(`Found ${m.default.green(A.length)} skill${A.length!==1?"s":""}`+(Y?` and ${m.default.yellow(I.length)} command${I.length!==1?"s":""}`:"")),u.list){if(A.length>0){K.step(m.default.bold("Available Skills"));for(let _ of A)K.message(` ${m.default.cyan(Du(_))}`),K.message(` ${m.default.dim(_.description)}`)}if(I.length>0){K.step(m.default.bold("Available Commands"));for(let _ of I)K.message(` ${m.default.cyan(Gu(_))}`),K.message(` ${m.default.dim(_.description||`Command: ${_.name}`)}`)}return r("Use --skill <name> to install specific skills or commands"),{success:!0,installed:0,failed:0,results:[]}}let Z=await wI(A,u),J=Z?await VI(u,F):null,S=I.length>0?await WI(I,u):null,H=S?await MI(u,F):null;if(!Z&&!S)return{success:!1,installed:0,failed:0,results:[]};if(Z&&!J)return{success:!1,installed:0,failed:0,results:[]};if(S&&!H)return{success:!1,installed:0,failed:0,results:[]};let $=await PI(u);if($===null)return{success:!1,installed:0,failed:0,results:[]};if(!await jI(u,Z,J,S,H,$))return{success:!1,installed:0,failed:0,results:[]};F.spinner.start("Adding skills...");let G=await yI(Z||[],J||[],S||[],H||[],$,E,B,C,u.symlink??!0,F.tempDir);return F.spinner.stop("Installation complete"),G}finally{if(F.tempDir)await qF(F.tempDir)}}async function wI(D,u){if(D.length===0)return null;let F=[];if(u.skill&&u.skill.length>0){if(F=D.filter((E)=>u.skill.some((C)=>E.name.toLowerCase()===C.toLowerCase()||Du(E).toLowerCase()===C.toLowerCase())),F.length===0){K.error(`No matching skills found for: ${u.skill.join(", ")}`),K.info("Available skills:");for(let E of D)K.message(` - ${Du(E)}`);return null}K.info(`Selected ${F.length} skill${F.length!==1?"s":""}: ${F.map((E)=>m.default.cyan(Du(E))).join(", ")}`)}else if(u.yes||u.force)F=D,K.info(`Installing all ${D.length} skills`);else{let E=D.map((B)=>({value:B,label:Du(B),hint:B.description.length>60?B.description.slice(0,57)+"...":B.description})),C=await xD({message:"Choose skills to add",options:E,required:!1,initialValues:D.length===1?[D[0]]:void 0});if(AD(C))return ZD("Installation cancelled"),null;if(!C||C.length===0)return K.info("No skills selected"),null;F=C}return F}async function WI(D,u){if(D.length===0)return null;let F=[];if(u.skill&&u.skill.length>0)F=D.filter((E)=>u.skill.some((C)=>E.name.toLowerCase()===C.toLowerCase()||Gu(E).toLowerCase()===C.toLowerCase()));if(F.length===0&&!u.yes&&!u.force){let E=D.map((B)=>({value:B,label:Gu(B),hint:(B.description||`Command: ${B.name}`).slice(0,55)})),C=await xD({message:"Choose commands to add",options:E,required:!1});if(AD(C))return ZD("Installation cancelled"),null;if(!C||C.length===0)return K.info("No commands selected"),null;F=C}else if(u.yes||u.force)F=D,K.info(`Installing all ${D.length} commands`);if(F.length>0)K.info(`Selected ${F.length} command${F.length!==1?"s":""}: ${F.map((E)=>m.default.yellow(Gu(E))).join(", ")}`);return F.length>0?F:null}async function VI(D,u){if(D.agent&&D.agent.length>0){let E=Object.keys(n),C=D.agent.filter((B)=>!E.includes(B));if(C.length>0)return K.error(`Invalid agents: ${C.join(", ")}`),K.info(`Valid agents: ${E.join(", ")}`),null;return D.agent}u.spinner.start("Finding AI tools...");let F=await xC();if(u.spinner.stop(`Detected ${F.length} agent${F.length!==1?"s":""}`),F.length===0)if(D.yes||D.force){let C=Object.keys(n);return K.info("Installing to all agents (none detected)"),C}else{K.warn("No AI tools found. Choose where to install:");let C=Object.entries(n).map(([A,I])=>({value:A,label:I.displayName})),B=await xD({message:"Where should we install these?",options:C,required:!0});if(AD(B))return ZD("Installation cancelled"),null;return B}else if(D.yes||D.force){if(F.length===1){let E=F[0];K.info(`Installing skills to: ${m.default.cyan(n[E].displayName)}`)}else K.info(`Installing skills to: ${F.map((E)=>m.default.cyan(n[E].displayName)).join(", ")}`);return F}else{let E=F.map((B)=>({value:B,label:n[B].displayName,hint:n[B].skillsDir})),C=await xD({message:"Where should we install these?",options:E,required:!0});if(AD(C))return ZD("Installation cancelled"),null;return C}}async function MI(D,u){let F=yC();if(D.agent&&D.agent.length>0){let I=Object.keys(n),Y=D.agent.filter((S)=>!I.includes(S));if(Y.length>0)return K.error(`Invalid agents: ${Y.join(", ")}`),K.info(`Valid agents: ${I.join(", ")}`),null;let Z=D.agent.filter((S)=>WF(S));if(Z.length===0)return K.error("Commands are only supported by: "+F.map((S)=>n[S].displayName).join(", ")),null;let J=D.agent.filter((S)=>!WF(S));if(J.length>0)K.warn(`Filtering out agents that don't support commands: ${J.join(", ")}`);return Z}let E=F.filter((I)=>n[I]?.commandsDir);if(E.length===0)return K.warn("No agents with command support detected"),[];if(D.yes||D.force)return K.info(`Installing commands to: ${E.map((I)=>m.default.cyan(n[I].displayName)).join(", ")}`),E;let B=E.map((I)=>({value:I,label:n[I].displayName,hint:n[I].commandsDir||""})),A=await xD({message:"Select agents to install commands to",options:B,required:!0,initialValues:E});if(AD(A))return ZD("Installation cancelled"),null;return K.info(`Installing commands to: ${A.map((I)=>m.default.cyan(n[I].displayName)).join(", ")}`),A}async function PI(D){let u=D.global??!1;if(D.global===void 0&&!(D.yes||D.force)){let F=await BC({message:"Where to install?",options:[{value:!1,label:"Project",hint:"saved with this project"},{value:!0,label:"Global",hint:"available for all projects"}]});if(AD(F))return ZD("Installation cancelled"),null;u=F}return u}async function jI(D,u,F,E,C,B){if(K.step(m.default.bold("Installation Summary")),u&&u.length>0&&F)K.message(m.default.bold(m.default.cyan("Skills:"))+" "+u.map((I)=>Du(I)).join(", ")),K.message(m.default.bold(m.default.cyan("Agents:"))+" "+F.map((I)=>n[I].displayName).join(", "));if(E&&E.length>0&&C&&C.length>0)K.message(m.default.bold(m.default.yellow("Commands:"))+" "+E.map((I)=>Gu(I)).join(", ")),K.message(m.default.bold(m.default.cyan("Agents:"))+" "+C.map((I)=>n[I].displayName).join(", "));if(!(D.yes||D.force)){let I=await eD({message:"Ready to install?"});if(AD(I)||!I)return ZD("Installation cancelled"),!1}return!0}async function yI(D,u,F,E,C,B,A,I,Y,Z){let J=Y?await PC(D,{global:C}):new Map,S=[...D.flatMap((q)=>{let U=J.get(q.name);if(Y&&U&&!U.success)return u.map(()=>Promise.resolve({success:!1,path:"",originalPath:q.path,error:U.error}));return u.map((z)=>wF(q,z,{global:C,symlink:Y,skipCopy:Y}))}),...F.flatMap((q)=>E.map((U)=>VF(q,U,{global:C,symlink:Y})))],H=await Promise.all(S),$=H.map((q,U)=>{let z=Math.floor(U/Math.max(u.length,E.length)),T=U%Math.max(u.length,E.length),W=U<D.length*u.length,y=W?D[z%D.length]:F[z%F.length],O=W?u:E,M=O[T%O.length],Q=W?Du(y):Gu(y),R=W?`${y.path}/SKILL.md`:y.path,w=AC(B,Z,R);return{skill:Q,agent:n[M].displayName,...q,sourceUrl:w,installableType:W?"skill":"command"}}),X=new Map;for(let[q,U]of H.entries()){if(!U.success)continue;let z=q<D.length*u.length;if(C)if(z){let T=Math.floor(q/u.length),W=D[T%D.length],y=h3(W.name,B.url,B.subpath,I,A,"skill");if(y.updated&&y.previousBranch){let O=X.get(W.name);X.set(W.name,{previous:O?.previous??y.previousBranch,current:O?.current??I})}}else{let T=Math.floor((q-D.length*u.length)/E.length),W=F[T%F.length];h3(W.name,B.url,B.subpath,I,A,"command")}}if(!C)for(let[q,U]of H.entries()){if(!U.success)continue;if(q<D.length*u.length){let T=Math.floor(q/u.length),W=D[T%D.length];g3(W.name,B.url,B.subpath,I,A,"skill")}else{let T=Math.floor((q-D.length*u.length)/E.length),W=F[T%F.length];g3(W.name,B.url,B.subpath,I,A,"command")}}let G=$.filter((q)=>q.success),_=$.filter((q)=>!q.success);if(X.size>0)for(let[q,{previous:U,current:z}]of X)K.warn(m.default.yellow(` ${m.default.cyan(q)}: ${m.default.dim(U)} → ${m.default.green(z)}`));if(G.length>0){let q=G.filter((T)=>T.installableType==="skill").length,U=G.filter((T)=>T.installableType==="command").length,z=[];if(q>0)z.push(`${q} skill${q!==1?"s":""}`);if(U>0)z.push(`${U} command${U!==1?"s":""}`);K.success(m.default.green(`Successfully installed ${z.join(" and ")}`))}if(_.length>0){K.error(m.default.red(`Failed to install ${_.length} item${_.length!==1?"s":""}`));for(let q of _)K.message(` ${m.default.red("✗")} ${q.skill} → ${q.agent}`),K.message(` ${m.default.dim(q.error)}`)}if(G.length>0)r(m.default.green("Done! Skills ready to use."));else r(m.default.yellow("Nothing installed"));return{success:_.length===0,installed:G.length,failed:_.length,results:$}}var m;var sC=e(()=>{VD();U3();T3();R3();QF();O3();P3();y3();fC();gD();Y0();H0();m=o(LD(),1)});async function oC(){let D=Date.now();if(S0&&c3&&D<c3)return S0;try{let u=await fetch(HC,{signal:AbortSignal.timeout(5000)});if(!u.ok)throw Error(`Failed to fetch directory: ${u.status}`);let F=await u.json();return S0=F,c3=D+xI,F}catch(u){if(S0)return S0;throw u}}async function tC(D){return(await oC()).find((E)=>E.name.toLowerCase()===D.toLowerCase())?.source??null}function eC(D){return/^[a-z0-9-]+$/i.test(D)&&!D.includes("/")&&!D.includes(":")}async function jF(){return oC()}var S0=null,c3=null,xI=300000;var m3=e(()=>{gD()});import{platform as fI,arch as bI}from"node:os";import{spawn as kI}from"node:child_process";function cI(D){let u=D.match(/github\.com[/:]([^/]+\/[^/]+?)(?:\.git)?(?:\/tree\/[^/]+\/(.+?))?(?:\/)?(?:[#]|$)/i);if(u){let C=u[1],B=u[2];return B?`${C}/${B}`:C}let F=D.match(/gitlab\.com[/:]([^/]+\/[^/]+?)(?:\.git)?(?:\/-\/tree\/[^/]+\/(.+?))?(?:\/)?(?:[#]|$)/i);if(F){let C=F[1],B=F[2];return B?`${C}/${B}`:C}let E=D.match(/^([^/]+\/[^/]+?)(?:\/(.+?))?(?:\/)?$/);if(E){let C=E[1],B=E[2];return B?`${C}/${B}`:C}return D.replace(/\.git$/,"").replace(/\/$/,"")}function u6(D){if(!D6)return;yF.push({...D,repo:D.repo?cI(D.repo):void 0,timestamp:Date.now(),osPlatform:fI(),osArch:bI(),nodeVersion:process.version,cliVersion:hI})}function l3(){if(!D6||yF.length===0)return;let D=yF;yF=[];let u=JSON.stringify(D);kI("curl",["-s","-X","POST",vI,"-H","Content-Type: application/json","-d",u,"--max-time","10"],{detached:!0,stdio:"ignore",windowsHide:!0}).unref()}var vI="https://tidy-oriole-956.convex.site/telemetry",hI,gI,D6,yF;var d3=e(()=>{s0();hI=xu.version,gI=Boolean(process.env.CI||process.env.CONTINUOUS_INTEGRATION||process.env.GITHUB_ACTIONS||process.env.GITLAB_CI||process.env.TRAVIS||process.env.JENKINS_URL||process.env.BITBUCKET_BUILD_NUMBER||process.env.CODEBUILD_BUILD_ID),D6=!gI&&process.env.FLINS_TELEMETRY!=="0"&&!0,yF=[]});var F6={};p4(F6,{installCommand:()=>n3});async function n3(D,u){if(!u.silent)OD(Cu.default.bgCyan(Cu.default.black(" flins ")));try{let F=D;if(eC(D)){if(!u.silent)K.info(`Looking up "${Cu.default.cyan(D)}" in flins directory...`);let C=await tC(D);if(!C){K.error(`Skill "${Cu.default.cyan(D)}" not found in directory.`);let B=await jF();if(B.length>0){K.info("Available skills:");for(let A of B)K.message(` ${Cu.default.cyan(A.name)} - ${Cu.default.dim(A.description)}`)}process.exit(1)}F=C}let E=await aC(F,u);for(let C of E.results){let{installableType:B,sourceUrl:A}=C;u6({command:"add",type:B,repo:F,sourceUrl:A,name:C.skill,agent:C.agent,scope:u.global?"global":"project",success:C.success})}if(!E.success&&E.installed===0&&E.failed===0)process.exit(1);if(E.failed>0)process.exit(1)}catch(F){if(K.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(Cu.default.red("Installation failed"));process.exit(1)}}var Cu;var i3=e(()=>{VD();sC();m3();d3();Cu=o(LD(),1)});var U6=N((qq,q6)=>{var Au=d("constants"),rI=process.cwd,bF=null,aI=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){if(!bF)bF=rI.call(process);return bF};try{process.cwd()}catch(D){}if(typeof process.chdir==="function"){if(kF=process.chdir,process.chdir=function(D){bF=null,kF.call(process,D)},Object.setPrototypeOf)Object.setPrototypeOf(process.chdir,kF)}var kF;q6.exports=sI;function sI(D){if(Au.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./))u(D);if(!D.lutimes)F(D);if(D.chown=B(D.chown),D.fchown=B(D.fchown),D.lchown=B(D.lchown),D.chmod=E(D.chmod),D.fchmod=E(D.fchmod),D.lchmod=E(D.lchmod),D.chownSync=A(D.chownSync),D.fchownSync=A(D.fchownSync),D.lchownSync=A(D.lchownSync),D.chmodSync=C(D.chmodSync),D.fchmodSync=C(D.fchmodSync),D.lchmodSync=C(D.lchmodSync),D.stat=I(D.stat),D.fstat=I(D.fstat),D.lstat=I(D.lstat),D.statSync=Y(D.statSync),D.fstatSync=Y(D.fstatSync),D.lstatSync=Y(D.lstatSync),D.chmod&&!D.lchmod)D.lchmod=function(J,S,H){if(H)process.nextTick(H)},D.lchmodSync=function(){};if(D.chown&&!D.lchown)D.lchown=function(J,S,H,$){if($)process.nextTick($)},D.lchownSync=function(){};if(aI==="win32")D.rename=typeof D.rename!=="function"?D.rename:function(J){function S(H,$,X){var G=Date.now(),_=0;J(H,$,function q(U){if(U&&(U.code==="EACCES"||U.code==="EPERM"||U.code==="EBUSY")&&Date.now()-G<60000){if(setTimeout(function(){D.stat($,function(z,T){if(z&&z.code==="ENOENT")J(H,$,q);else X(U)})},_),_<100)_+=10;return}if(X)X(U)})}if(Object.setPrototypeOf)Object.setPrototypeOf(S,J);return S}(D.rename);D.read=typeof D.read!=="function"?D.read:function(J){function S(H,$,X,G,_,q){var U;if(q&&typeof q==="function"){var z=0;U=function(T,W,y){if(T&&T.code==="EAGAIN"&&z<10)return z++,J.call(D,H,$,X,G,_,U);q.apply(this,arguments)}}return J.call(D,H,$,X,G,_,U)}if(Object.setPrototypeOf)Object.setPrototypeOf(S,J);return S}(D.read),D.readSync=typeof D.readSync!=="function"?D.readSync:function(J){return function(S,H,$,X,G){var _=0;while(!0)try{return J.call(D,S,H,$,X,G)}catch(q){if(q.code==="EAGAIN"&&_<10){_++;continue}throw q}}}(D.readSync);function u(J){J.lchmod=function(S,H,$){J.open(S,Au.O_WRONLY|Au.O_SYMLINK,H,function(X,G){if(X){if($)$(X);return}J.fchmod(G,H,function(_){J.close(G,function(q){if($)$(_||q)})})})},J.lchmodSync=function(S,H){var $=J.openSync(S,Au.O_WRONLY|Au.O_SYMLINK,H),X=!0,G;try{G=J.fchmodSync($,H),X=!1}finally{if(X)try{J.closeSync($)}catch(_){}else J.closeSync($)}return G}}function F(J){if(Au.hasOwnProperty("O_SYMLINK")&&J.futimes)J.lutimes=function(S,H,$,X){J.open(S,Au.O_SYMLINK,function(G,_){if(G){if(X)X(G);return}J.futimes(_,H,$,function(q){J.close(_,function(U){if(X)X(q||U)})})})},J.lutimesSync=function(S,H,$){var X=J.openSync(S,Au.O_SYMLINK),G,_=!0;try{G=J.futimesSync(X,H,$),_=!1}finally{if(_)try{J.closeSync(X)}catch(q){}else J.closeSync(X)}return G};else if(J.futimes)J.lutimes=function(S,H,$,X){if(X)process.nextTick(X)},J.lutimesSync=function(){}}function E(J){if(!J)return J;return function(S,H,$){return J.call(D,S,H,function(X){if(Z(X))X=null;if($)$.apply(this,arguments)})}}function C(J){if(!J)return J;return function(S,H){try{return J.call(D,S,H)}catch($){if(!Z($))throw $}}}function B(J){if(!J)return J;return function(S,H,$,X){return J.call(D,S,H,$,function(G){if(Z(G))G=null;if(X)X.apply(this,arguments)})}}function A(J){if(!J)return J;return function(S,H,$){try{return J.call(D,S,H,$)}catch(X){if(!Z(X))throw X}}}function I(J){if(!J)return J;return function(S,H,$){if(typeof H==="function")$=H,H=null;function X(G,_){if(_){if(_.uid<0)_.uid+=4294967296;if(_.gid<0)_.gid+=4294967296}if($)$.apply(this,arguments)}return H?J.call(D,S,H,X):J.call(D,S,X)}}function Y(J){if(!J)return J;return function(S,H){var $=H?J.call(D,S,H):J.call(D,S);if($){if($.uid<0)$.uid+=4294967296;if($.gid<0)$.gid+=4294967296}return $}}function Z(J){if(!J)return!0;if(J.code==="ENOSYS")return!0;var S=!process.getuid||process.getuid()!==0;if(S){if(J.code==="EINVAL"||J.code==="EPERM")return!0}return!1}}});var Q6=N((Uq,K6)=>{var L6=d("stream").Stream;K6.exports=oI;function oI(D){return{ReadStream:u,WriteStream:F};function u(E,C){if(!(this instanceof u))return new u(E,C);L6.call(this);var B=this;this.path=E,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,C=C||{};var A=Object.keys(C);for(var I=0,Y=A.length;I<Y;I++){var Z=A[I];this[Z]=C[Z]}if(this.encoding)this.setEncoding(this.encoding);if(this.start!==void 0){if(typeof this.start!=="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!=="number")throw TypeError("end must be a Number");if(this.start>this.end)throw Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){B._read()});return}D.open(this.path,this.flags,this.mode,function(J,S){if(J){B.emit("error",J),B.readable=!1;return}B.fd=S,B.emit("open",S),B._read()})}function F(E,C){if(!(this instanceof F))return new F(E,C);L6.call(this),this.path=E,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,C=C||{};var B=Object.keys(C);for(var A=0,I=B.length;A<I;A++){var Y=B[A];this[Y]=C[Y]}if(this.start!==void 0){if(typeof this.start!=="number")throw TypeError("start must be a Number");if(this.start<0)throw Error("start must be >= zero");this.pos=this.start}if(this.busy=!1,this._queue=[],this.fd===null)this._open=D.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush()}}});var T6=N((Lq,z6)=>{z6.exports=eI;var tI=Object.getPrototypeOf||function(D){return D.__proto__};function eI(D){if(D===null||typeof D!=="object")return D;if(D instanceof Object)var u={__proto__:tI(D)};else var u=Object.create(null);return Object.getOwnPropertyNames(D).forEach(function(F){Object.defineProperty(u,F,Object.getOwnPropertyDescriptor(D,F))}),u}});var R6=N((Kq,o3)=>{var CD=d("fs"),DJ=U6(),uJ=Q6(),FJ=T6(),vF=d("util"),$D,gF;if(typeof Symbol==="function"&&typeof Symbol.for==="function")$D=Symbol.for("graceful-fs.queue"),gF=Symbol.for("graceful-fs.previous");else $D="___graceful-fs.queue",gF="___graceful-fs.previous";function EJ(){}function N6(D,u){Object.defineProperty(D,$D,{get:function(){return u}})}var Ku=EJ;if(vF.debuglog)Ku=vF.debuglog("gfs4");else if(/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))Ku=function(){var D=vF.format.apply(vF,arguments);D="GFS4: "+D.split(/\n/).join(`
103
103
  GFS4: `),console.error(D)};if(!CD[$D]){if(r3=global[$D]||[],N6(CD,r3),CD.close=function(D){function u(F,E){return D.call(CD,F,function(C){if(!C)O6();if(typeof E==="function")E.apply(this,arguments)})}return Object.defineProperty(u,gF,{value:D}),u}(CD.close),CD.closeSync=function(D){function u(F){D.apply(CD,arguments),O6()}return Object.defineProperty(u,gF,{value:D}),u}(CD.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))process.on("exit",function(){Ku(CD[$D]),d("assert").equal(CD[$D].length,0)})}var r3;if(!global[$D])N6(global,CD[$D]);o3.exports=a3(FJ(CD));if(process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!CD.__patched)o3.exports=a3(CD),CD.__patched=!0;function a3(D){DJ(D),D.gracefulify=a3,D.createReadStream=W,D.createWriteStream=y;var u=D.readFile;D.readFile=F;function F(Q,R,w){if(typeof R==="function")w=R,R=null;return g(Q,R,w);function g(V,k,x,b){return u(V,k,function(f){if(f&&(f.code==="EMFILE"||f.code==="ENFILE"))cu([g,[V,k,x],f,b||Date.now(),Date.now()]);else if(typeof x==="function")x.apply(this,arguments)})}}var E=D.writeFile;D.writeFile=C;function C(Q,R,w,g){if(typeof w==="function")g=w,w=null;return V(Q,R,w,g);function V(k,x,b,f,l){return E(k,x,b,function(h){if(h&&(h.code==="EMFILE"||h.code==="ENFILE"))cu([V,[k,x,b,f],h,l||Date.now(),Date.now()]);else if(typeof f==="function")f.apply(this,arguments)})}}var B=D.appendFile;if(B)D.appendFile=A;function A(Q,R,w,g){if(typeof w==="function")g=w,w=null;return V(Q,R,w,g);function V(k,x,b,f,l){return B(k,x,b,function(h){if(h&&(h.code==="EMFILE"||h.code==="ENFILE"))cu([V,[k,x,b,f],h,l||Date.now(),Date.now()]);else if(typeof f==="function")f.apply(this,arguments)})}}var I=D.copyFile;if(I)D.copyFile=Y;function Y(Q,R,w,g){if(typeof w==="function")g=w,w=0;return V(Q,R,w,g);function V(k,x,b,f,l){return I(k,x,b,function(h){if(h&&(h.code==="EMFILE"||h.code==="ENFILE"))cu([V,[k,x,b,f],h,l||Date.now(),Date.now()]);else if(typeof f==="function")f.apply(this,arguments)})}}var Z=D.readdir;D.readdir=S;var J=/^v[0-5]\./;function S(Q,R,w){if(typeof R==="function")w=R,R=null;var g=J.test(process.version)?function(x,b,f,l){return Z(x,V(x,b,f,l))}:function(x,b,f,l){return Z(x,b,V(x,b,f,l))};return g(Q,R,w);function V(k,x,b,f){return function(l,h){if(l&&(l.code==="EMFILE"||l.code==="ENFILE"))cu([g,[k,x,b],l,f||Date.now(),Date.now()]);else{if(h&&h.sort)h.sort();if(typeof b==="function")b.call(this,l,h)}}}}if(process.version.substr(0,4)==="v0.8"){var H=uJ(D);q=H.ReadStream,z=H.WriteStream}var $=D.ReadStream;if($)q.prototype=Object.create($.prototype),q.prototype.open=U;var X=D.WriteStream;if(X)z.prototype=Object.create(X.prototype),z.prototype.open=T;Object.defineProperty(D,"ReadStream",{get:function(){return q},set:function(Q){q=Q},enumerable:!0,configurable:!0}),Object.defineProperty(D,"WriteStream",{get:function(){return z},set:function(Q){z=Q},enumerable:!0,configurable:!0});var G=q;Object.defineProperty(D,"FileReadStream",{get:function(){return G},set:function(Q){G=Q},enumerable:!0,configurable:!0});var _=z;Object.defineProperty(D,"FileWriteStream",{get:function(){return _},set:function(Q){_=Q},enumerable:!0,configurable:!0});function q(Q,R){if(this instanceof q)return $.apply(this,arguments),this;else return q.apply(Object.create(q.prototype),arguments)}function U(){var Q=this;M(Q.path,Q.flags,Q.mode,function(R,w){if(R){if(Q.autoClose)Q.destroy();Q.emit("error",R)}else Q.fd=w,Q.emit("open",w),Q.read()})}function z(Q,R){if(this instanceof z)return X.apply(this,arguments),this;else return z.apply(Object.create(z.prototype),arguments)}function T(){var Q=this;M(Q.path,Q.flags,Q.mode,function(R,w){if(R)Q.destroy(),Q.emit("error",R);else Q.fd=w,Q.emit("open",w)})}function W(Q,R){return new D.ReadStream(Q,R)}function y(Q,R){return new D.WriteStream(Q,R)}var O=D.open;D.open=M;function M(Q,R,w,g){if(typeof w==="function")g=w,w=null;return V(Q,R,w,g);function V(k,x,b,f,l){return O(k,x,b,function(h,m4){if(h&&(h.code==="EMFILE"||h.code==="ENFILE"))cu([V,[k,x,b,f],h,l||Date.now(),Date.now()]);else if(typeof f==="function")f.apply(this,arguments)})}}return D}function cu(D){Ku("ENQUEUE",D[0].name,D[1]),CD[$D].push(D),s3()}var hF;function O6(){var D=Date.now();for(var u=0;u<CD[$D].length;++u)if(CD[$D][u].length>2)CD[$D][u][3]=D,CD[$D][u][4]=D;s3()}function s3(){if(clearTimeout(hF),hF=void 0,CD[$D].length===0)return;var D=CD[$D].shift(),u=D[0],F=D[1],E=D[2],C=D[3],B=D[4];if(C===void 0)Ku("RETRY",u.name,F),u.apply(null,F);else if(Date.now()-C>=60000){Ku("TIMEOUT",u.name,F);var A=F.pop();if(typeof A==="function")A.call(null,E)}else{var I=Date.now()-B,Y=Math.max(B-C,1),Z=Math.min(Y*1.2,100);if(I>=Z)Ku("RETRY",u.name,F),u.apply(null,F.concat([C]));else CD[$D].push(D)}if(hF===void 0)hF=setTimeout(s3,0)}});var w0=N((pU,J1)=>{var fJ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...D)=>console.error("SEMVER",...D):()=>{};J1.exports=fJ});var W0=N((rU,Z1)=>{var bJ=Number.MAX_SAFE_INTEGER||9007199254740991,kJ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Z1.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:bJ,RELEASE_TYPES:kJ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var iu=N((dD,Y1)=>{var{MAX_SAFE_COMPONENT_LENGTH:YE,MAX_SAFE_BUILD_LENGTH:vJ,MAX_LENGTH:hJ}=W0(),gJ=w0();dD=Y1.exports={};var cJ=dD.re=[],mJ=dD.safeRe=[],P=dD.src=[],lJ=dD.safeSrc=[],j=dD.t={},dJ=0,$E="[a-zA-Z0-9-]",nJ=[["\\s",1],["\\d",hJ],[$E,vJ]],iJ=(D)=>{for(let[u,F]of nJ)D=D.split(`${u}*`).join(`${u}{0,${F}}`).split(`${u}+`).join(`${u}{1,${F}}`);return D},c=(D,u,F)=>{let E=iJ(u),C=dJ++;gJ(D,C,u),j[D]=C,P[C]=u,lJ[C]=E,cJ[C]=new RegExp(u,F?"g":void 0),mJ[C]=new RegExp(E,F?"g":void 0)};c("NUMERICIDENTIFIER","0|[1-9]\\d*");c("NUMERICIDENTIFIERLOOSE","\\d+");c("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${$E}*`);c("MAINVERSION",`(${P[j.NUMERICIDENTIFIER]})\\.(${P[j.NUMERICIDENTIFIER]})\\.(${P[j.NUMERICIDENTIFIER]})`);c("MAINVERSIONLOOSE",`(${P[j.NUMERICIDENTIFIERLOOSE]})\\.(${P[j.NUMERICIDENTIFIERLOOSE]})\\.(${P[j.NUMERICIDENTIFIERLOOSE]})`);c("PRERELEASEIDENTIFIER",`(?:${P[j.NONNUMERICIDENTIFIER]}|${P[j.NUMERICIDENTIFIER]})`);c("PRERELEASEIDENTIFIERLOOSE",`(?:${P[j.NONNUMERICIDENTIFIER]}|${P[j.NUMERICIDENTIFIERLOOSE]})`);c("PRERELEASE",`(?:-(${P[j.PRERELEASEIDENTIFIER]}(?:\\.${P[j.PRERELEASEIDENTIFIER]})*))`);c("PRERELEASELOOSE",`(?:-?(${P[j.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${P[j.PRERELEASEIDENTIFIERLOOSE]})*))`);c("BUILDIDENTIFIER",`${$E}+`);c("BUILD",`(?:\\+(${P[j.BUILDIDENTIFIER]}(?:\\.${P[j.BUILDIDENTIFIER]})*))`);c("FULLPLAIN",`v?${P[j.MAINVERSION]}${P[j.PRERELEASE]}?${P[j.BUILD]}?`);c("FULL",`^${P[j.FULLPLAIN]}$`);c("LOOSEPLAIN",`[v=\\s]*${P[j.MAINVERSIONLOOSE]}${P[j.PRERELEASELOOSE]}?${P[j.BUILD]}?`);c("LOOSE",`^${P[j.LOOSEPLAIN]}$`);c("GTLT","((?:<|>)?=?)");c("XRANGEIDENTIFIERLOOSE",`${P[j.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);c("XRANGEIDENTIFIER",`${P[j.NUMERICIDENTIFIER]}|x|X|\\*`);c("XRANGEPLAIN",`[v=\\s]*(${P[j.XRANGEIDENTIFIER]})(?:\\.(${P[j.XRANGEIDENTIFIER]})(?:\\.(${P[j.XRANGEIDENTIFIER]})(?:${P[j.PRERELEASE]})?${P[j.BUILD]}?)?)?`);c("XRANGEPLAINLOOSE",`[v=\\s]*(${P[j.XRANGEIDENTIFIERLOOSE]})(?:\\.(${P[j.XRANGEIDENTIFIERLOOSE]})(?:\\.(${P[j.XRANGEIDENTIFIERLOOSE]})(?:${P[j.PRERELEASELOOSE]})?${P[j.BUILD]}?)?)?`);c("XRANGE",`^${P[j.GTLT]}\\s*${P[j.XRANGEPLAIN]}$`);c("XRANGELOOSE",`^${P[j.GTLT]}\\s*${P[j.XRANGEPLAINLOOSE]}$`);c("COERCEPLAIN",`(^|[^\\d])(\\d{1,${YE}})(?:\\.(\\d{1,${YE}}))?(?:\\.(\\d{1,${YE}}))?`);c("COERCE",`${P[j.COERCEPLAIN]}(?:$|[^\\d])`);c("COERCEFULL",P[j.COERCEPLAIN]+`(?:${P[j.PRERELEASE]})?(?:${P[j.BUILD]})?(?:$|[^\\d])`);c("COERCERTL",P[j.COERCE],!0);c("COERCERTLFULL",P[j.COERCEFULL],!0);c("LONETILDE","(?:~>?)");c("TILDETRIM",`(\\s*)${P[j.LONETILDE]}\\s+`,!0);dD.tildeTrimReplace="$1~";c("TILDE",`^${P[j.LONETILDE]}${P[j.XRANGEPLAIN]}$`);c("TILDELOOSE",`^${P[j.LONETILDE]}${P[j.XRANGEPLAINLOOSE]}$`);c("LONECARET","(?:\\^)");c("CARETTRIM",`(\\s*)${P[j.LONECARET]}\\s+`,!0);dD.caretTrimReplace="$1^";c("CARET",`^${P[j.LONECARET]}${P[j.XRANGEPLAIN]}$`);c("CARETLOOSE",`^${P[j.LONECARET]}${P[j.XRANGEPLAINLOOSE]}$`);c("COMPARATORLOOSE",`^${P[j.GTLT]}\\s*(${P[j.LOOSEPLAIN]})$|^$`);c("COMPARATOR",`^${P[j.GTLT]}\\s*(${P[j.FULLPLAIN]})$|^$`);c("COMPARATORTRIM",`(\\s*)${P[j.GTLT]}\\s*(${P[j.LOOSEPLAIN]}|${P[j.XRANGEPLAIN]})`,!0);dD.comparatorTrimReplace="$1$2$3";c("HYPHENRANGE",`^\\s*(${P[j.XRANGEPLAIN]})\\s+-\\s+(${P[j.XRANGEPLAIN]})\\s*$`);c("HYPHENRANGELOOSE",`^\\s*(${P[j.XRANGEPLAINLOOSE]})\\s+-\\s+(${P[j.XRANGEPLAINLOOSE]})\\s*$`);c("STAR","(<|>)?=?\\s*\\*");c("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");c("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var aF=N((aU,$1)=>{var pJ=Object.freeze({loose:!0}),rJ=Object.freeze({}),aJ=(D)=>{if(!D)return rJ;if(typeof D!=="object")return pJ;return D};$1.exports=aJ});var HE=N((sU,X1)=>{var H1=/^[0-9]+$/,S1=(D,u)=>{if(typeof D==="number"&&typeof u==="number")return D===u?0:D<u?-1:1;let F=H1.test(D),E=H1.test(u);if(F&&E)D=+D,u=+u;return D===u?0:F&&!E?-1:E&&!F?1:D<u?-1:1},sJ=(D,u)=>S1(u,D);X1.exports={compareIdentifiers:S1,rcompareIdentifiers:sJ}});var _D=N((oU,_1)=>{var sF=w0(),{MAX_LENGTH:G1,MAX_SAFE_INTEGER:oF}=W0(),{safeRe:tF,t:eF}=iu(),oJ=aF(),{compareIdentifiers:SE}=HE();class vD{constructor(D,u){if(u=oJ(u),D instanceof vD)if(D.loose===!!u.loose&&D.includePrerelease===!!u.includePrerelease)return D;else D=D.version;else if(typeof D!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof D}".`);if(D.length>G1)throw TypeError(`version is longer than ${G1} characters`);sF("SemVer",D,u),this.options=u,this.loose=!!u.loose,this.includePrerelease=!!u.includePrerelease;let F=D.trim().match(u.loose?tF[eF.LOOSE]:tF[eF.FULL]);if(!F)throw TypeError(`Invalid Version: ${D}`);if(this.raw=D,this.major=+F[1],this.minor=+F[2],this.patch=+F[3],this.major>oF||this.major<0)throw TypeError("Invalid major version");if(this.minor>oF||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>oF||this.patch<0)throw TypeError("Invalid patch version");if(!F[4])this.prerelease=[];else this.prerelease=F[4].split(".").map((E)=>{if(/^[0-9]+$/.test(E)){let C=+E;if(C>=0&&C<oF)return C}return E});this.build=F[5]?F[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(D){if(sF("SemVer.compare",this.version,this.options,D),!(D instanceof vD)){if(typeof D==="string"&&D===this.version)return 0;D=new vD(D,this.options)}if(D.version===this.version)return 0;return this.compareMain(D)||this.comparePre(D)}compareMain(D){if(!(D instanceof vD))D=new vD(D,this.options);if(this.major<D.major)return-1;if(this.major>D.major)return 1;if(this.minor<D.minor)return-1;if(this.minor>D.minor)return 1;if(this.patch<D.patch)return-1;if(this.patch>D.patch)return 1;return 0}comparePre(D){if(!(D instanceof vD))D=new vD(D,this.options);if(this.prerelease.length&&!D.prerelease.length)return-1;else if(!this.prerelease.length&&D.prerelease.length)return 1;else if(!this.prerelease.length&&!D.prerelease.length)return 0;let u=0;do{let F=this.prerelease[u],E=D.prerelease[u];if(sF("prerelease compare",u,F,E),F===void 0&&E===void 0)return 0;else if(E===void 0)return 1;else if(F===void 0)return-1;else if(F===E)continue;else return SE(F,E)}while(++u)}compareBuild(D){if(!(D instanceof vD))D=new vD(D,this.options);let u=0;do{let F=this.build[u],E=D.build[u];if(sF("build compare",u,F,E),F===void 0&&E===void 0)return 0;else if(E===void 0)return 1;else if(F===void 0)return-1;else if(F===E)continue;else return SE(F,E)}while(++u)}inc(D,u,F){if(D.startsWith("pre")){if(!u&&F===!1)throw Error("invalid increment argument: identifier is empty");if(u){let E=`-${u}`.match(this.options.loose?tF[eF.PRERELEASELOOSE]:tF[eF.PRERELEASE]);if(!E||E[1]!==u)throw Error(`invalid identifier: ${u}`)}}switch(D){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",u,F);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",u,F);break;case"prepatch":this.prerelease.length=0,this.inc("patch",u,F),this.inc("pre",u,F);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",u,F);this.inc("pre",u,F);break;case"release":if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let E=Number(F)?1:0;if(this.prerelease.length===0)this.prerelease=[E];else{let C=this.prerelease.length;while(--C>=0)if(typeof this.prerelease[C]==="number")this.prerelease[C]++,C=-2;if(C===-1){if(u===this.prerelease.join(".")&&F===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(E)}}if(u){let C=[u,E];if(F===!1)C=[u];if(SE(this.prerelease[0],u)===0){if(isNaN(this.prerelease[1]))this.prerelease=C}else this.prerelease=C}break}default:throw Error(`invalid increment argument: ${D}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}_1.exports=vD});var Ou=N((tU,U1)=>{var q1=_D(),tJ=(D,u,F=!1)=>{if(D instanceof q1)return D;try{return new q1(D,u)}catch(E){if(!F)return null;throw E}};U1.exports=tJ});var XE=N((eU,K1)=>{var L1=Ou(),eJ=(D,u)=>{let F=L1(D,null,!0),E=L1(u,null,!0),C=F.compare(E);if(C===0)return null;let B=C>0,A=B?F:E,I=B?E:F,Y=!!A.prerelease.length;if(!!I.prerelease.length&&!Y){if(!I.patch&&!I.minor)return"major";if(I.compareMain(A)===0){if(I.minor&&!I.patch)return"minor";return"patch"}}let J=Y?"pre":"";if(F.major!==E.major)return J+"major";if(F.minor!==E.minor)return J+"minor";if(F.patch!==E.patch)return J+"patch";return"prerelease"};K1.exports=eJ});var PD=N((DL,z1)=>{var Q1=_D(),DZ=(D,u,F)=>new Q1(D,F).compare(new Q1(u,F));z1.exports=DZ});var pu=N((uL,T1)=>{var uZ=PD(),FZ=(D,u,F)=>uZ(D,u,F)>0;T1.exports=FZ});var TE=N(($Z)=>{$Z.parse=$Z.decode=YZ;$Z.stringify=$Z.encode=d1;$Z.safe=ou;$Z.unsafe=A2;var zE=typeof process<"u"&&process.platform==="win32"?`\r
104
104
  `:`
105
105
  `;function d1(D,u){var F=[],E="";if(typeof u==="string")u={section:u,whitespace:!1};else u=u||{},u.whitespace=u.whitespace===!0;var C=u.whitespace?" = ":"=";if(Object.keys(D).forEach(function(B,A,I){var Y=D[B];if(Y&&Array.isArray(Y))Y.forEach(function(Z){E+=ou(B+"[]")+C+ou(Z)+`
@@ -138,9 +138,9 @@ GFS4: `),console.error(D)};if(!BD[SD]){if(wE=global[SD]||[],QB(BD,wE),BD.close=f
138
138
  `);return E.split(",")}switch(D){case"hoist-pattern":case"public-hoist-pattern":return F(u)}return u}dB.exports=lB});var oB=N((sB)=>{var rB=d("os"),sD=d("path"),aB=rB.tmpdir(),GY=process.getuid?process.getuid():process.pid,_Y=()=>!0,iB=process.platform==="win32",pB={editor:()=>process.env.EDITOR||process.env.VISUAL||(iB?"notepad.exe":"vi"),shell:()=>iB?process.env.COMSPEC||"cmd.exe":process.env.SHELL||"/bin/bash"},qY={fromString:()=>process.umask()},u0=rB.homedir();if(u0)process.env.HOME=u0;else u0=sD.resolve(aB,"npm-"+GY);var UY=process.platform==="win32"?"npm-cache":".npm",LY=process.platform==="win32"&&process.env.APPDATA||u0,KY=sD.resolve(LY,UY),X2,Mu;Object.defineProperty(sB,"defaults",{get:function(){if(X2)return X2;if(process.env.PREFIX)Mu=process.env.PREFIX;else if(process.platform==="win32")Mu=sD.dirname(process.execPath);else if(Mu=sD.dirname(sD.dirname(process.execPath)),process.env.DESTDIR)Mu=sD.join(process.env.DESTDIR,Mu);return X2={access:null,"allow-same-version":!1,"always-auth":!1,also:null,audit:!0,"auth-type":"legacy","bin-links":!0,browser:null,ca:null,cafile:null,cache:KY,"cache-lock-stale":60000,"cache-lock-retries":10,"cache-lock-wait":1e4,"cache-max":1/0,"cache-min":10,cert:null,cidr:null,color:process.env.NO_COLOR==null,depth:1/0,description:!0,dev:!1,"dry-run":!1,editor:pB.editor(),"engine-strict":!1,force:!1,"fetch-retries":2,"fetch-retry-factor":10,"fetch-retry-mintimeout":1e4,"fetch-retry-maxtimeout":60000,git:"git","git-tag-version":!0,"commit-hooks":!0,global:!1,globalconfig:sD.resolve(Mu,"etc","npmrc"),"global-style":!1,group:process.platform==="win32"?0:process.env.SUDO_GID||process.getgid&&process.getgid(),"ham-it-up":!1,heading:"npm","if-present":!1,"ignore-prepublish":!1,"ignore-scripts":!1,"init-module":sD.resolve(u0,".npm-init.js"),"init-author-name":"","init-author-email":"","init-author-url":"","init-version":"1.0.0","init-license":"ISC",json:!1,key:null,"legacy-bundling":!1,link:!1,"local-address":void 0,loglevel:"notice",logstream:process.stderr,"logs-max":10,long:!1,maxsockets:50,message:"%s","metrics-registry":null,"node-options":null,offline:!1,"onload-script":!1,only:null,optional:!0,otp:null,"package-lock":!0,"package-lock-only":!1,parseable:!1,"prefer-offline":!1,"prefer-online":!1,prefix:Mu,production:!1,progress:!process.env.TRAVIS&&!process.env.CI,provenance:!1,proxy:null,"https-proxy":null,"no-proxy":null,"user-agent":"npm/{npm-version} node/{node-version} {platform} {arch}","read-only":!1,"rebuild-bundle":!0,registry:"https://registry.npmjs.org/",rollback:!0,save:!0,"save-bundle":!1,"save-dev":!1,"save-exact":!1,"save-optional":!1,"save-prefix":"^","save-prod":!1,scope:"","script-shell":null,"scripts-prepend-node-path":"warn-only",searchopts:"",searchexclude:null,searchlimit:20,searchstaleness:900,"send-metrics":!1,shell:pB.shell(),shrinkwrap:!0,"sign-git-tag":!1,"sso-poll-frequency":500,"sso-type":"oauth","strict-ssl":!0,tag:"latest","tag-version-prefix":"v",timing:!1,tmp:aB,unicode:_Y(),"unsafe-perm":process.platform==="win32"||process.platform==="cygwin"||!(process.getuid&&process.setuid&&process.getgid&&process.setgid)||process.getuid()!==0,usage:!1,user:process.platform==="win32"?0:"nobody",userconfig:sD.resolve(u0,".npmrc"),umask:process.umask?process.umask():qY.fromString("022"),version:!1,versions:!1,viewer:process.platform==="win32"?"browser":"man",_exit:!0},X2}})});var eB=N((LK,kE)=>{var Pu=d("path"),QY=nB(),tB=oB();kE.exports=(D,u,F)=>{let E=new QY(Object.assign({},tB.defaults,F),u);E.add(Object.assign({},D),"cli");let C=[],B=!1;if(d.resolve.paths){let Z=d.resolve.paths("npm"),J;try{J=d.resolve("npm",{paths:Z.slice(-1)})}catch(S){B=!0}if(J)C.push(E.addFile(Pu.resolve(Pu.dirname(J),"..","npmrc"),"builtin"))}E.addEnv(),E.loadPrefix();let A=Pu.resolve(E.localPrefix,".npmrc"),I=E.get("userconfig");if(!E.get("global")&&A!==I)C.push(E.addFile(A,"project"));else E.add({},"project");if(E.get("workspace-prefix")&&E.get("workspace-prefix")!==A){let Z=Pu.resolve(E.get("workspace-prefix"),".npmrc");C.push(E.addFile(Z,"workspace"))}if(C.push(E.addFile(E.get("userconfig"),"user")),E.get("prefix")){let Z=Pu.resolve(E.get("prefix"),"etc");E.root.globalconfig=Pu.resolve(Z,"npmrc"),E.root.globalignorefile=Pu.resolve(Z,"npmignore")}C.push(E.addFile(E.get("globalconfig"),"global")),E.loadUser();let Y=E.get("cafile");if(Y)E.loadCAFile(Y);return{config:E,warnings:C.filter(Boolean),failedToLoadBuiltInConfig:B}};Object.defineProperty(kE.exports,"defaults",{get(){return tB.defaults},enumerable:!0})});var E7=N((QK,F7)=>{var D7=eB();F7.exports=function(){let u,F;if(arguments.length>=2)u=arguments[0],F=Object.assign({},arguments[1]);else if(typeof arguments[0]==="string")u=arguments[0];else F=Object.assign({},arguments[0]);F=F||{};let E=F.npmrc;return F.npmrc=(F.npmrc?{config:{get:(C)=>E[C]}}:D7()).config,u=u||F.npmrc.get("registry")||D7.defaults.registry,u7(u,F)||TY(F.npmrc)};function zY(D,u){let F=new URL(u,new URL(D.startsWith("//")?`./${D}`:D,"resolve://"));if(F.protocol==="resolve:"){let{pathname:E,search:C,hash:B}=F;return E+C+B}return F.toString()}function u7(D,u){let F=D instanceof URL?D:new URL(D.startsWith("//")?`http:${D}`:D),E;while(E!=="/"&&F.pathname!==E){E=F.pathname||"/";let C="//"+F.host+E.replace(/\/$/,""),B=NY(C,u.npmrc);if(B)return B;if(!u.recursive)return/\/$/.test(D)?void 0:u7(new URL("./",F),u);F.pathname=zY(OY(E),"..")||"/"}return}function TY(D){if(!D.get("_auth"))return;return{token:G2(D.get("_auth")),type:"Basic"}}function OY(D){return D[D.length-1]==="/"?D:D+"/"}function NY(D,u){let F=RY(u.get(D+":_authToken")||u.get(D+"/:_authToken"));if(F)return F;let E=u.get(D+":username")||u.get(D+"/:username"),C=u.get(D+":_password")||u.get(D+"/:_password"),B=wY(E,C);if(B)return B;let A=WY(u.get(D+":_auth")||u.get(D+"/:_auth"));if(A)return A;return}function G2(D){return D.replace(/^\$\{?([^}]*)\}?$/,function(u,F){return process.env[F]})}function RY(D){if(!D)return;return{token:G2(D),type:"Bearer"}}function wY(D,u){if(!D||!u)return;let F=Buffer.from(G2(u),"base64").toString("utf8");return{token:Buffer.from(D+":"+F,"utf8").toString("base64"),type:"Basic",password:F,username:D}}function WY(D){if(!D)return;return{token:G2(D),type:"Basic"}}});var B7=N((zK,C7)=>{var VY=Ou(),MY=(D,u)=>{let F=VY(D,u);return F?F.version:null};C7.exports=MY});var I7=N((TK,A7)=>{var PY=Ou(),jY=(D,u)=>{let F=PY(D.trim().replace(/^[=v]+/,""),u);return F?F.version:null};A7.exports=jY});var Y7=N((OK,Z7)=>{var J7=_D(),yY=(D,u,F,E,C)=>{if(typeof F==="string")C=E,E=F,F=void 0;try{return new J7(D instanceof J7?D.version:D,F).inc(u,E,C).version}catch(B){return null}};Z7.exports=yY});var H7=N((NK,$7)=>{var xY=_D(),fY=(D,u)=>new xY(D,u).major;$7.exports=fY});var X7=N((RK,S7)=>{var bY=_D(),kY=(D,u)=>new bY(D,u).minor;S7.exports=kY});var _7=N((wK,G7)=>{var vY=_D(),hY=(D,u)=>new vY(D,u).patch;G7.exports=hY});var U7=N((WK,q7)=>{var gY=Ou(),cY=(D,u)=>{let F=gY(D,u);return F&&F.prerelease.length?F.prerelease:null};q7.exports=cY});var K7=N((VK,L7)=>{var mY=PD(),lY=(D,u,F)=>mY(u,D,F);L7.exports=lY});var z7=N((MK,Q7)=>{var dY=PD(),nY=(D,u)=>dY(D,u,!0);Q7.exports=nY});var _2=N((PK,O7)=>{var T7=_D(),iY=(D,u,F)=>{let E=new T7(D,F),C=new T7(u,F);return E.compare(C)||E.compareBuild(C)};O7.exports=iY});var R7=N((jK,N7)=>{var pY=_2(),rY=(D,u)=>D.sort((F,E)=>pY(F,E,u));N7.exports=rY});var W7=N((yK,w7)=>{var aY=_2(),sY=(D,u)=>D.sort((F,E)=>aY(E,F,u));w7.exports=sY});var q2=N((xK,V7)=>{var oY=PD(),tY=(D,u,F)=>oY(D,u,F)<0;V7.exports=tY});var vE=N((fK,M7)=>{var eY=PD(),D$=(D,u,F)=>eY(D,u,F)===0;M7.exports=D$});var hE=N((bK,P7)=>{var u$=PD(),F$=(D,u,F)=>u$(D,u,F)!==0;P7.exports=F$});var U2=N((kK,j7)=>{var E$=PD(),C$=(D,u,F)=>E$(D,u,F)>=0;j7.exports=C$});var L2=N((vK,y7)=>{var B$=PD(),A$=(D,u,F)=>B$(D,u,F)<=0;y7.exports=A$});var gE=N((hK,x7)=>{var I$=vE(),J$=hE(),Z$=pu(),Y$=U2(),$$=q2(),H$=L2(),S$=(D,u,F,E)=>{switch(u){case"===":if(typeof D==="object")D=D.version;if(typeof F==="object")F=F.version;return D===F;case"!==":if(typeof D==="object")D=D.version;if(typeof F==="object")F=F.version;return D!==F;case"":case"=":case"==":return I$(D,F,E);case"!=":return J$(D,F,E);case">":return Z$(D,F,E);case">=":return Y$(D,F,E);case"<":return $$(D,F,E);case"<=":return H$(D,F,E);default:throw TypeError(`Invalid operator: ${u}`)}};x7.exports=S$});var b7=N((gK,f7)=>{var X$=_D(),G$=Ou(),{safeRe:K2,t:Q2}=iu(),_$=(D,u)=>{if(D instanceof X$)return D;if(typeof D==="number")D=String(D);if(typeof D!=="string")return null;u=u||{};let F=null;if(!u.rtl)F=D.match(u.includePrerelease?K2[Q2.COERCEFULL]:K2[Q2.COERCE]);else{let Y=u.includePrerelease?K2[Q2.COERCERTLFULL]:K2[Q2.COERCERTL],Z;while((Z=Y.exec(D))&&(!F||F.index+F[0].length!==D.length)){if(!F||Z.index+Z[0].length!==F.index+F[0].length)F=Z;Y.lastIndex=Z.index+Z[1].length+Z[2].length}Y.lastIndex=-1}if(F===null)return null;let E=F[2],C=F[3]||"0",B=F[4]||"0",A=u.includePrerelease&&F[5]?`-${F[5]}`:"",I=u.includePrerelease&&F[6]?`+${F[6]}`:"";return G$(`${E}.${C}.${B}${A}${I}`,u)};f7.exports=_$});var h7=N((cK,v7)=>{class k7{constructor(){this.max=1000,this.map=new Map}get(D){let u=this.map.get(D);if(u===void 0)return;else return this.map.delete(D),this.map.set(D,u),u}delete(D){return this.map.delete(D)}set(D,u){if(!this.delete(D)&&u!==void 0){if(this.map.size>=this.max){let E=this.map.keys().next().value;this.delete(E)}this.map.set(D,u)}return this}}v7.exports=k7});var jD=N((mK,l7)=>{var q$=/\s+/g;class b0{constructor(D,u){if(u=L$(u),D instanceof b0)if(D.loose===!!u.loose&&D.includePrerelease===!!u.includePrerelease)return D;else return new b0(D.raw,u);if(D instanceof cE)return this.raw=D.value,this.set=[[D]],this.formatted=void 0,this;if(this.options=u,this.loose=!!u.loose,this.includePrerelease=!!u.includePrerelease,this.raw=D.trim().replace(q$," "),this.set=this.raw.split("||").map((F)=>this.parseRange(F.trim())).filter((F)=>F.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let F=this.set[0];if(this.set=this.set.filter((E)=>!c7(E[0])),this.set.length===0)this.set=[F];else if(this.set.length>1){for(let E of this.set)if(E.length===1&&R$(E[0])){this.set=[E];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let D=0;D<this.set.length;D++){if(D>0)this.formatted+="||";let u=this.set[D];for(let F=0;F<u.length;F++){if(F>0)this.formatted+=" ";this.formatted+=u[F].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(D){let F=((this.options.includePrerelease&&O$)|(this.options.loose&&N$))+":"+D,E=g7.get(F);if(E)return E;let C=this.options.loose,B=C?QD[UD.HYPHENRANGELOOSE]:QD[UD.HYPHENRANGE];D=D.replace(B,b$(this.options.includePrerelease)),DD("hyphen replace",D),D=D.replace(QD[UD.COMPARATORTRIM],Q$),DD("comparator trim",D),D=D.replace(QD[UD.TILDETRIM],z$),DD("tilde trim",D),D=D.replace(QD[UD.CARETTRIM],T$),DD("caret trim",D);let A=D.split(" ").map((J)=>w$(J,this.options)).join(" ").split(/\s+/).map((J)=>f$(J,this.options));if(C)A=A.filter((J)=>{return DD("loose invalid filter",J,this.options),!!J.match(QD[UD.COMPARATORLOOSE])});DD("range list",A);let I=new Map,Y=A.map((J)=>new cE(J,this.options));for(let J of Y){if(c7(J))return[J];I.set(J.value,J)}if(I.size>1&&I.has(""))I.delete("");let Z=[...I.values()];return g7.set(F,Z),Z}intersects(D,u){if(!(D instanceof b0))throw TypeError("a Range is required");return this.set.some((F)=>{return m7(F,u)&&D.set.some((E)=>{return m7(E,u)&&F.every((C)=>{return E.every((B)=>{return C.intersects(B,u)})})})})}test(D){if(!D)return!1;if(typeof D==="string")try{D=new K$(D,this.options)}catch(u){return!1}for(let u=0;u<this.set.length;u++)if(k$(this.set[u],D,this.options))return!0;return!1}}l7.exports=b0;var U$=h7(),g7=new U$,L$=aF(),cE=k0(),DD=w0(),K$=_D(),{safeRe:QD,t:UD,comparatorTrimReplace:Q$,tildeTrimReplace:z$,caretTrimReplace:T$}=iu(),{FLAG_INCLUDE_PRERELEASE:O$,FLAG_LOOSE:N$}=W0(),c7=(D)=>D.value==="<0.0.0-0",R$=(D)=>D.value==="",m7=(D,u)=>{let F=!0,E=D.slice(),C=E.pop();while(F&&E.length)F=E.every((B)=>{return C.intersects(B,u)}),C=E.pop();return F},w$=(D,u)=>{return D=D.replace(QD[UD.BUILD],""),DD("comp",D,u),D=M$(D,u),DD("caret",D),D=W$(D,u),DD("tildes",D),D=j$(D,u),DD("xrange",D),D=x$(D,u),DD("stars",D),D},zD=(D)=>!D||D.toLowerCase()==="x"||D==="*",W$=(D,u)=>{return D.trim().split(/\s+/).map((F)=>V$(F,u)).join(" ")},V$=(D,u)=>{let F=u.loose?QD[UD.TILDELOOSE]:QD[UD.TILDE];return D.replace(F,(E,C,B,A,I)=>{DD("tilde",D,E,C,B,A,I);let Y;if(zD(C))Y="";else if(zD(B))Y=`>=${C}.0.0 <${+C+1}.0.0-0`;else if(zD(A))Y=`>=${C}.${B}.0 <${C}.${+B+1}.0-0`;else if(I)DD("replaceTilde pr",I),Y=`>=${C}.${B}.${A}-${I} <${C}.${+B+1}.0-0`;else Y=`>=${C}.${B}.${A} <${C}.${+B+1}.0-0`;return DD("tilde return",Y),Y})},M$=(D,u)=>{return D.trim().split(/\s+/).map((F)=>P$(F,u)).join(" ")},P$=(D,u)=>{DD("caret",D,u);let F=u.loose?QD[UD.CARETLOOSE]:QD[UD.CARET],E=u.includePrerelease?"-0":"";return D.replace(F,(C,B,A,I,Y)=>{DD("caret",D,C,B,A,I,Y);let Z;if(zD(B))Z="";else if(zD(A))Z=`>=${B}.0.0${E} <${+B+1}.0.0-0`;else if(zD(I))if(B==="0")Z=`>=${B}.${A}.0${E} <${B}.${+A+1}.0-0`;else Z=`>=${B}.${A}.0${E} <${+B+1}.0.0-0`;else if(Y)if(DD("replaceCaret pr",Y),B==="0")if(A==="0")Z=`>=${B}.${A}.${I}-${Y} <${B}.${A}.${+I+1}-0`;else Z=`>=${B}.${A}.${I}-${Y} <${B}.${+A+1}.0-0`;else Z=`>=${B}.${A}.${I}-${Y} <${+B+1}.0.0-0`;else if(DD("no pr"),B==="0")if(A==="0")Z=`>=${B}.${A}.${I}${E} <${B}.${A}.${+I+1}-0`;else Z=`>=${B}.${A}.${I}${E} <${B}.${+A+1}.0-0`;else Z=`>=${B}.${A}.${I} <${+B+1}.0.0-0`;return DD("caret return",Z),Z})},j$=(D,u)=>{return DD("replaceXRanges",D,u),D.split(/\s+/).map((F)=>y$(F,u)).join(" ")},y$=(D,u)=>{D=D.trim();let F=u.loose?QD[UD.XRANGELOOSE]:QD[UD.XRANGE];return D.replace(F,(E,C,B,A,I,Y)=>{DD("xRange",D,E,C,B,A,I,Y);let Z=zD(B),J=Z||zD(A),S=J||zD(I),H=S;if(C==="="&&H)C="";if(Y=u.includePrerelease?"-0":"",Z)if(C===">"||C==="<")E="<0.0.0-0";else E="*";else if(C&&H){if(J)A=0;if(I=0,C===">")if(C=">=",J)B=+B+1,A=0,I=0;else A=+A+1,I=0;else if(C==="<=")if(C="<",J)B=+B+1;else A=+A+1;if(C==="<")Y="-0";E=`${C+B}.${A}.${I}${Y}`}else if(J)E=`>=${B}.0.0${Y} <${+B+1}.0.0-0`;else if(S)E=`>=${B}.${A}.0${Y} <${B}.${+A+1}.0-0`;return DD("xRange return",E),E})},x$=(D,u)=>{return DD("replaceStars",D,u),D.trim().replace(QD[UD.STAR],"")},f$=(D,u)=>{return DD("replaceGTE0",D,u),D.trim().replace(QD[u.includePrerelease?UD.GTE0PRE:UD.GTE0],"")},b$=(D)=>(u,F,E,C,B,A,I,Y,Z,J,S,H)=>{if(zD(E))F="";else if(zD(C))F=`>=${E}.0.0${D?"-0":""}`;else if(zD(B))F=`>=${E}.${C}.0${D?"-0":""}`;else if(A)F=`>=${F}`;else F=`>=${F}${D?"-0":""}`;if(zD(Z))Y="";else if(zD(J))Y=`<${+Z+1}.0.0-0`;else if(zD(S))Y=`<${Z}.${+J+1}.0-0`;else if(H)Y=`<=${Z}.${J}.${S}-${H}`;else if(D)Y=`<${Z}.${J}.${+S+1}-0`;else Y=`<=${Y}`;return`${F} ${Y}`.trim()},k$=(D,u,F)=>{for(let E=0;E<D.length;E++)if(!D[E].test(u))return!1;if(u.prerelease.length&&!F.includePrerelease){for(let E=0;E<D.length;E++){if(DD(D[E].semver),D[E].semver===cE.ANY)continue;if(D[E].semver.prerelease.length>0){let C=D[E].semver;if(C.major===u.major&&C.minor===u.minor&&C.patch===u.patch)return!0}}return!1}return!0}});var k0=N((lK,a7)=>{var v0=Symbol("SemVer ANY");class z2{static get ANY(){return v0}constructor(D,u){if(u=d7(u),D instanceof z2)if(D.loose===!!u.loose)return D;else D=D.value;if(D=D.trim().split(/\s+/).join(" "),lE("comparator",D,u),this.options=u,this.loose=!!u.loose,this.parse(D),this.semver===v0)this.value="";else this.value=this.operator+this.semver.version;lE("comp",this)}parse(D){let u=this.options.loose?n7[i7.COMPARATORLOOSE]:n7[i7.COMPARATOR],F=D.match(u);if(!F)throw TypeError(`Invalid comparator: ${D}`);if(this.operator=F[1]!==void 0?F[1]:"",this.operator==="=")this.operator="";if(!F[2])this.semver=v0;else this.semver=new p7(F[2],this.options.loose)}toString(){return this.value}test(D){if(lE("Comparator.test",D,this.options.loose),this.semver===v0||D===v0)return!0;if(typeof D==="string")try{D=new p7(D,this.options)}catch(u){return!1}return mE(D,this.operator,this.semver,this.options)}intersects(D,u){if(!(D instanceof z2))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new r7(D.value,u).test(this.value)}else if(D.operator===""){if(D.value==="")return!0;return new r7(this.value,u).test(D.semver)}if(u=d7(u),u.includePrerelease&&(this.value==="<0.0.0-0"||D.value==="<0.0.0-0"))return!1;if(!u.includePrerelease&&(this.value.startsWith("<0.0.0")||D.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&D.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&D.operator.startsWith("<"))return!0;if(this.semver.version===D.semver.version&&this.operator.includes("=")&&D.operator.includes("="))return!0;if(mE(this.semver,"<",D.semver,u)&&this.operator.startsWith(">")&&D.operator.startsWith("<"))return!0;if(mE(this.semver,">",D.semver,u)&&this.operator.startsWith("<")&&D.operator.startsWith(">"))return!0;return!1}}a7.exports=z2;var d7=aF(),{safeRe:n7,t:i7}=iu(),mE=gE(),lE=w0(),p7=_D(),r7=jD()});var h0=N((dK,s7)=>{var v$=jD(),h$=(D,u,F)=>{try{u=new v$(u,F)}catch(E){return!1}return u.test(D)};s7.exports=h$});var t7=N((nK,o7)=>{var g$=jD(),c$=(D,u)=>new g$(D,u).set.map((F)=>F.map((E)=>E.value).join(" ").trim().split(" "));o7.exports=c$});var D9=N((iK,e7)=>{var m$=_D(),l$=jD(),d$=(D,u,F)=>{let E=null,C=null,B=null;try{B=new l$(u,F)}catch(A){return null}return D.forEach((A)=>{if(B.test(A)){if(!E||C.compare(A)===-1)E=A,C=new m$(E,F)}}),E};e7.exports=d$});var F9=N((pK,u9)=>{var n$=_D(),i$=jD(),p$=(D,u,F)=>{let E=null,C=null,B=null;try{B=new i$(u,F)}catch(A){return null}return D.forEach((A)=>{if(B.test(A)){if(!E||C.compare(A)===1)E=A,C=new n$(E,F)}}),E};u9.exports=p$});var B9=N((rK,C9)=>{var dE=_D(),r$=jD(),E9=pu(),a$=(D,u)=>{D=new r$(D,u);let F=new dE("0.0.0");if(D.test(F))return F;if(F=new dE("0.0.0-0"),D.test(F))return F;F=null;for(let E=0;E<D.set.length;++E){let C=D.set[E],B=null;if(C.forEach((A)=>{let I=new dE(A.semver.version);switch(A.operator){case">":if(I.prerelease.length===0)I.patch++;else I.prerelease.push(0);I.raw=I.format();case"":case">=":if(!B||E9(I,B))B=I;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${A.operator}`)}}),B&&(!F||E9(F,B)))F=B}if(F&&D.test(F))return F;return null};C9.exports=a$});var I9=N((aK,A9)=>{var s$=jD(),o$=(D,u)=>{try{return new s$(D,u).range||"*"}catch(F){return null}};A9.exports=o$});var T2=N((sK,$9)=>{var t$=_D(),Y9=k0(),{ANY:e$}=Y9,DH=jD(),uH=h0(),J9=pu(),Z9=q2(),FH=L2(),EH=U2(),CH=(D,u,F,E)=>{D=new t$(D,E),u=new DH(u,E);let C,B,A,I,Y;switch(F){case">":C=J9,B=FH,A=Z9,I=">",Y=">=";break;case"<":C=Z9,B=EH,A=J9,I="<",Y="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(uH(D,u,E))return!1;for(let Z=0;Z<u.set.length;++Z){let J=u.set[Z],S=null,H=null;if(J.forEach(($)=>{if($.semver===e$)$=new Y9(">=0.0.0");if(S=S||$,H=H||$,C($.semver,S.semver,E))S=$;else if(A($.semver,H.semver,E))H=$}),S.operator===I||S.operator===Y)return!1;if((!H.operator||H.operator===I)&&B(D,H.semver))return!1;else if(H.operator===Y&&A(D,H.semver))return!1}return!0};$9.exports=CH});var S9=N((oK,H9)=>{var BH=T2(),AH=(D,u,F)=>BH(D,u,">",F);H9.exports=AH});var G9=N((tK,X9)=>{var IH=T2(),JH=(D,u,F)=>IH(D,u,"<",F);X9.exports=JH});var U9=N((eK,q9)=>{var _9=jD(),ZH=(D,u,F)=>{return D=new _9(D,F),u=new _9(u,F),D.intersects(u,F)};q9.exports=ZH});var K9=N((DQ,L9)=>{var YH=h0(),$H=PD();L9.exports=(D,u,F)=>{let E=[],C=null,B=null,A=D.sort((J,S)=>$H(J,S,F));for(let J of A)if(YH(J,u,F)){if(B=J,!C)C=J}else{if(B)E.push([C,B]);B=null,C=null}if(C)E.push([C,null]);let I=[];for(let[J,S]of E)if(J===S)I.push(J);else if(!S&&J===A[0])I.push("*");else if(!S)I.push(`>=${J}`);else if(J===A[0])I.push(`<=${S}`);else I.push(`${J} - ${S}`);let Y=I.join(" || "),Z=typeof u.raw==="string"?u.raw:String(u);return Y.length<Z.length?Y:u}});var R9=N((uQ,N9)=>{var Q9=jD(),iE=k0(),{ANY:nE}=iE,g0=h0(),pE=PD(),HH=(D,u,F={})=>{if(D===u)return!0;D=new Q9(D,F),u=new Q9(u,F);let E=!1;D:for(let C of D.set){for(let B of u.set){let A=XH(C,B,F);if(E=E||A!==null,A)continue D}if(E)return!1}return!0},SH=[new iE(">=0.0.0-0")],z9=[new iE(">=0.0.0")],XH=(D,u,F)=>{if(D===u)return!0;if(D.length===1&&D[0].semver===nE)if(u.length===1&&u[0].semver===nE)return!0;else if(F.includePrerelease)D=SH;else D=z9;if(u.length===1&&u[0].semver===nE)if(F.includePrerelease)return!0;else u=z9;let E=new Set,C,B;for(let $ of D)if($.operator===">"||$.operator===">=")C=T9(C,$,F);else if($.operator==="<"||$.operator==="<=")B=O9(B,$,F);else E.add($.semver);if(E.size>1)return null;let A;if(C&&B){if(A=pE(C.semver,B.semver,F),A>0)return null;else if(A===0&&(C.operator!==">="||B.operator!=="<="))return null}for(let $ of E){if(C&&!g0($,String(C),F))return null;if(B&&!g0($,String(B),F))return null;for(let X of u)if(!g0($,String(X),F))return!1;return!0}let I,Y,Z,J,S=B&&!F.includePrerelease&&B.semver.prerelease.length?B.semver:!1,H=C&&!F.includePrerelease&&C.semver.prerelease.length?C.semver:!1;if(S&&S.prerelease.length===1&&B.operator==="<"&&S.prerelease[0]===0)S=!1;for(let $ of u){if(J=J||$.operator===">"||$.operator===">=",Z=Z||$.operator==="<"||$.operator==="<=",C){if(H){if($.semver.prerelease&&$.semver.prerelease.length&&$.semver.major===H.major&&$.semver.minor===H.minor&&$.semver.patch===H.patch)H=!1}if($.operator===">"||$.operator===">="){if(I=T9(C,$,F),I===$&&I!==C)return!1}else if(C.operator===">="&&!g0(C.semver,String($),F))return!1}if(B){if(S){if($.semver.prerelease&&$.semver.prerelease.length&&$.semver.major===S.major&&$.semver.minor===S.minor&&$.semver.patch===S.patch)S=!1}if($.operator==="<"||$.operator==="<="){if(Y=O9(B,$,F),Y===$&&Y!==B)return!1}else if(B.operator==="<="&&!g0(B.semver,String($),F))return!1}if(!$.operator&&(B||C)&&A!==0)return!1}if(C&&Z&&!B&&A!==0)return!1;if(B&&J&&!C&&A!==0)return!1;if(H||S)return!1;return!0},T9=(D,u,F)=>{if(!D)return u;let E=pE(D.semver,u.semver,F);return E>0?D:E<0?u:u.operator===">"&&D.operator===">="?u:D},O9=(D,u,F)=>{if(!D)return u;let E=pE(D.semver,u.semver,F);return E<0?D:E>0?u:u.operator==="<"&&D.operator==="<="?u:D};N9.exports=HH});var M9=N((FQ,V9)=>{var rE=iu(),w9=W0(),GH=_D(),W9=HE(),_H=Ou(),qH=B7(),UH=I7(),LH=Y7(),KH=XE(),QH=H7(),zH=X7(),TH=_7(),OH=U7(),NH=PD(),RH=K7(),wH=z7(),WH=_2(),VH=R7(),MH=W7(),PH=pu(),jH=q2(),yH=vE(),xH=hE(),fH=U2(),bH=L2(),kH=gE(),vH=b7(),hH=k0(),gH=jD(),cH=h0(),mH=t7(),lH=D9(),dH=F9(),nH=B9(),iH=I9(),pH=T2(),rH=S9(),aH=G9(),sH=U9(),oH=K9(),tH=R9();V9.exports={parse:_H,valid:qH,clean:UH,inc:LH,diff:KH,major:QH,minor:zH,patch:TH,prerelease:OH,compare:NH,rcompare:RH,compareLoose:wH,compareBuild:WH,sort:VH,rsort:MH,gt:PH,lt:jH,eq:yH,neq:xH,gte:fH,lte:bH,cmp:kH,coerce:vH,Comparator:hH,Range:gH,satisfies:cH,toComparators:mH,maxSatisfying:lH,minSatisfying:dH,minVersion:nH,validRange:iH,outside:pH,gtr:rH,ltr:aH,intersects:sH,simplifyRange:oH,subset:tH,SemVer:GH,re:rE.re,src:rE.src,tokens:rE.t,SEMVER_SPEC_VERSION:w9.SEMVER_SPEC_VERSION,RELEASE_TYPES:w9.RELEASE_TYPES,compareIdentifiers:W9.compareIdentifiers,rcompareIdentifiers:W9.rcompareIdentifiers}});var c9=N((HQ,g9)=>{var{hasOwnProperty:oE}=Object.prototype,tE=(D,u={})=>{if(typeof u==="string")u={section:u};u.align=u.align===!0,u.newline=u.newline===!0,u.sort=u.sort===!0,u.whitespace=u.whitespace===!0||u.align===!0,u.platform=u.platform||typeof process<"u"&&process.platform,u.bracketedArray=u.bracketedArray!==!1;let F=u.platform==="win32"?`\r
139
139
  `:`
140
140
  `,E=u.whitespace?" = ":"=",C=[],B=u.sort?Object.keys(D).sort():Object.keys(D),A=0;if(u.align)A=oD(B.filter((Z)=>D[Z]===null||Array.isArray(D[Z])||typeof D[Z]!=="object").map((Z)=>Array.isArray(D[Z])?`${Z}[]`:Z).concat([""]).reduce((Z,J)=>oD(Z).length>=oD(J).length?Z:J)).length;let I="",Y=u.bracketedArray?"[]":"";for(let Z of B){let J=D[Z];if(J&&Array.isArray(J))for(let S of J)I+=oD(`${Z}${Y}`).padEnd(A," ")+E+oD(S)+F;else if(J&&typeof J==="object")C.push(Z);else I+=oD(Z).padEnd(A," ")+E+oD(J)+F}if(u.section&&I.length)I="["+oD(u.section)+"]"+(u.newline?F+F:F)+I;for(let Z of C){let J=v9(Z,".").join("\\."),S=(u.section?u.section+".":"")+J,H=tE(D[Z],{...u,section:S});if(I.length&&H.length)I+=F;I+=H}return I};function v9(D,u){var F=0,E=0,C=0,B=[];do if(C=D.indexOf(u,F),C!==-1){if(F=C+u.length,C>0&&D[C-1]==="\\")continue;B.push(D.slice(E,C)),E=C+u.length}while(C!==-1);return B.push(D.slice(E)),B}var k9=(D,u={})=>{u.bracketedArray=u.bracketedArray!==!1;let F=Object.create(null),E=F,C=null,B=/^\[([^\]]*)\]\s*$|^([^=]+)(=(.*))?$/i,A=D.split(/[\r\n]+/g),I={};for(let Z of A){if(!Z||Z.match(/^\s*[;#]/)||Z.match(/^\s*$/))continue;let J=Z.match(B);if(!J)continue;if(J[1]!==void 0){if(C=N2(J[1]),C==="__proto__"){E=Object.create(null);continue}E=F[C]=F[C]||Object.create(null);continue}let S=N2(J[2]),H;if(u.bracketedArray)H=S.length>2&&S.slice(-2)==="[]";else I[S]=(I?.[S]||0)+1,H=I[S]>1;let $=H?S.slice(0,-2):S;if($==="__proto__")continue;let X=J[3]?N2(J[4]):!0,G=X==="true"||X==="false"||X==="null"?JSON.parse(X):X;if(H){if(!oE.call(E,$))E[$]=[];else if(!Array.isArray(E[$]))E[$]=[E[$]]}if(Array.isArray(E[$]))E[$].push(G);else E[$]=G}let Y=[];for(let Z of Object.keys(F)){if(!oE.call(F,Z)||typeof F[Z]!=="object"||Array.isArray(F[Z]))continue;let J=v9(Z,".");E=F;let S=J.pop(),H=S.replace(/\\\./g,".");for(let $ of J){if($==="__proto__")continue;if(!oE.call(E,$)||typeof E[$]!=="object")E[$]=Object.create(null);E=E[$]}if(E===F&&H===S)continue;E[H]=F[Z],Y.push(Z)}for(let Z of Y)delete F[Z];return F},h9=(D)=>{return D.startsWith('"')&&D.endsWith('"')||D.startsWith("'")&&D.endsWith("'")},oD=(D)=>{if(typeof D!=="string"||D.match(/[=\r\n]/)||D.match(/^\[/)||D.length>1&&h9(D)||D!==D.trim())return JSON.stringify(D);return D.split(";").join("\\;").split("#").join("\\#")},N2=(D,u)=>{if(D=(D||"").trim(),h9(D)){if(D.charAt(0)==="'")D=D.slice(1,-1);try{D=JSON.parse(D)}catch{}}else{let F=!1,E="";for(let C=0,B=D.length;C<B;C++){let A=D.charAt(C);if(F){if("\\;#".indexOf(A)!==-1)E+=A;else E+="\\"+A;F=!1}else if(";#".indexOf(A)!==-1)break;else if(A==="\\")F=!0;else E+=A}if(F)E+="\\";return E.trim()}return D};g9.exports={parse:k9,decode:k9,stringify:tE,encode:tE,safe:oD,unsafe:N2}});var e9=N((yQ,t9)=>{t9.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 u4=N((hQ,GS)=>{GS.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 C8=N((gQ,E8)=>{var F4=u4();E8.exports=F4;E8.exports.default=F4});var J4=N((mQ,I4)=>{I4.exports=({onlyFirst:D=!1}={})=>{let u=["[\\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(u,D?void 0:"g")}});var Y4=N((lQ,Z4)=>{var zS=J4();Z4.exports=(D)=>typeof D==="string"?D.replace(zS(),""):D});var H4=N((dQ,I8)=>{var $4=(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};I8.exports=$4;I8.exports.default=$4});var X4=N((nQ,S4)=>{S4.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 _4=N((iQ,J8)=>{var TS=Y4(),OS=H4(),NS=X4(),G4=(D)=>{if(typeof D!=="string"||D.length===0)return 0;if(D=TS(D),D.length===0)return 0;D=D.replace(NS()," ");let u=0;for(let F=0;F<D.length;F++){let E=D.codePointAt(F);if(E<=31||E>=127&&E<=159)continue;if(E>=768&&E<=879)continue;if(E>65535)F++;u+=OS(E)?2:1}return u};J8.exports=G4;J8.exports.default=G4});var U4=N((pQ,q4)=>{var RS=_4();function ju(D,u){if(!D)return D;u=u||{};let F=u.align||"center";if(F==="left")return D;let E=u.split||`
141
- `,C=u.pad||" ",B=F!=="right"?wS:WS,A=!1;if(!Array.isArray(D))A=!0,D=String(D).split(E);let I,Y=0;return D=D.map(function(Z){return Z=String(Z),I=RS(Z),Y=Math.max(I,Y),{str:Z,width:I}}).map(function(Z){return Array(B(Y,Z.width)+1).join(C)+Z.str}),A?D.join(E):D}ju.left=function(u){return ju(u,{align:"left"})};ju.center=function(u){return ju(u,{align:"center"})};ju.right=function(u){return ju(u,{align:"right"})};q4.exports=ju;function wS(D,u){return Math.floor((D-u)/2)}function WS(D,u){return D-u}});var j8=o(P8(),1),{program:WD,createCommand:JX,createArgument:ZX,createOption:YX,CommanderError:$X,InvalidArgumentError:HX,InvalidOptionArgumentError:SX,Command:XX,Argument:GX,Option:_X,Help:qX}=j8.default;s0();i3();VD();var xF=o(LD(),1);VD();U3();T3();R3();P3();y3();Y0();H0();var v=o(LD(),1);import{join as nI}from"path";Y0();H0();b3();uu();import{existsSync as E6,readdirSync as mI,lstatSync as C6}from"fs";function lI(D){if(!E6(D))return!1;try{let u=C6(D),F=u.isSymbolicLink(),E=u.isDirectory();if(!F&&!E)return!1;let C=mI(D);if(C.length===0)return!1;return C.includes("SKILL.md")}catch{return!1}}function dI(D){if(!E6(D))return!1;try{let u=C6(D);if(u.isSymbolicLink())return D.endsWith(".md");if(!u.isFile())return!1;return D.endsWith(".md")}catch{return!1}}function X0(D,u){return u==="skill"?lI(D):dI(D)}function hu(D){let u=[],F=new Set,E=pC(D);if(E)for(let[B,A]of Object.entries(E.skills)){let I=x3(B);if(!I)continue;u.push({name:I.name,url:A.url,subpath:A.subpath,branch:A.branch,commit:A.commit,isLocal:!0,installableType:I.installableType}),F.add(B)}let C=lC();for(let[B,A]of Object.entries(C.skills)){if(F.has(B))continue;let I=x3(B);if(!I)continue;u.push({name:I.name,url:A.url,subpath:A.subpath,branch:A.branch,commit:A.commit,isLocal:!1,installableType:I.installableType})}return u}function G0(D,u,F){return(F.isLocal?$0(D,u,F.cwd):Z0(D,u)).map((C)=>({installation:C,resolvedPath:I0(C)})).filter(({resolvedPath:C})=>X0(C,u))}gD();uu();VD();var gu=o(LD(),1);function _0(){L.warn("No skills yet. Install your first skill:"),L.message(` ${gu.default.cyan("npx flins@latest add <repo>")} # Install in current project`),L.message(` ${gu.default.cyan("npx flins@latest add <repo> --global")} # Install globally for all projects`),L.message(` ${gu.default.dim("Examples:")}`),L.message(` ${gu.default.cyan("npx flins@latest add expo")} # Install from flins directory (https://flins.tech)`),L.message(` ${gu.default.cyan("npx flins@latest search")} # Browse available skills`)}var Lu=(D,u,F)=>{return D===1?u:F??`${u}s`};async function B6(D,u,F,E,C,B){let I=(C?$0(D,B):Z0(D,B)).map((Z)=>{let J=I0(Z);return{agent:n[Z.agent].displayName,path:J,exists:X0(J,Z.installableType)}});if(I.filter((Z)=>Z.exists).length===0)return{skillName:D,currentCommit:E,latestCommit:E,status:"orphaned",installableType:B,installations:I};try{let Z=await ZC(u,F);return{skillName:D,currentCommit:E,latestCommit:Z,status:Z===E?"latest":"update-available",installableType:B,installations:I}}catch(Z){return{skillName:D,currentCommit:E,latestCommit:E,status:"error",installableType:B,installations:I,error:Z instanceof Error?Z.message:"Unknown error"}}}async function p3(D){let u=hu(),F=[],E;if(D&&D.length>0){let B=new Set(D.map((A)=>A.toLowerCase()));E=u.filter(({name:A})=>B.has(A.toLowerCase()))}else E=u;if(E.length===0)return[];let C=hD();if(E.length===1){let{name:B,url:A,branch:I,commit:Y,isLocal:Z,installableType:J}=E[0];C.start(`Checking ${v.default.cyan(B)}...`);let S=await B6(B,A,I,Y,Z,J);C.stop(S.status==="latest"?v.default.green("Up to date"):v.default.yellow("Update available")),F.push(S)}else{C.start("Checking for updates...");for(let{name:B,url:A,branch:I,commit:Y,isLocal:Z,installableType:J}of E){let S=await B6(B,A,I,Y,Z,J);F.push(S)}C.stop("Check complete")}return F}async function A6(D,u={}){let F=hu(),E=[],C;if(D&&D.length>0){let $=new Set(D.map((X)=>X.toLowerCase()));C=F.filter(({name:X})=>$.has(X.toLowerCase()))}else C=F;if(C.length===0)return L.warn("No skills found to update"),r(v.default.yellow("Nothing to update")),[];let B=await p3(D),A=B.filter(($)=>$.status==="update-available");if(A.length===0){let $=B.filter((X)=>X.status==="orphaned");if($.length>0){L.warn(`${$.length} skill${$.length>1?"s":""} ${$.length>1?"have":"has"} no valid installations`);for(let X of $)L.message(` ${v.default.yellow("○")} ${v.default.cyan(X.skillName)} - files were removed`)}return L.success(v.default.green("All skills are up to date")),r(v.default.green("Everything is current")),[]}L.step(v.default.bold("Updates Available"));let I=A.map(($)=>({value:$.skillName,label:$.skillName,hint:`${$.currentCommit.slice(0,7)} → ${$.latestCommit.slice(0,7)}`})),Y,Z=u.yes||u.force;if(Z)Y=A.map(($)=>$.skillName);else{let $=await xD({message:"Choose skills to update",options:I,required:!0,initialValues:A.map((X)=>X.skillName)});if(AD($))return ZD("Update cancelled"),[];Y=$}L.step(v.default.bold("Will Update"));for(let $ of Y){let X=A.find((G)=>G.skillName===$);if(X)L.message(` ${v.default.cyan(X.skillName)}`),L.message(` ${v.default.dim("Current:")} ${v.default.yellow(X.currentCommit.slice(0,7))} ${v.default.dim("→")} ${v.default.green(X.latestCommit.slice(0,7))}`)}if(!Z){let $=await eD({message:"Ready to update?"});if(AD($)||!$)return ZD("Update cancelled"),[]}let J=hD();J.start("Updating...");for(let{name:$,url:X,subpath:G,isLocal:_,installableType:q}of C){let U=B.find((y)=>y.skillName===$);if(!U||U.status!=="update-available"){if(U?.status==="latest")E.push({skillName:$,success:!0,updated:0,failed:0});else E.push({skillName:$,success:!1,updated:0,failed:0});continue}if(!Y.includes($))continue;let z=null,T=0,W=0;try{z=await GF(X);let y=await _F(z),O=G?nI(z,G):z,M=await zF(O),Q=await TF(O),R=M.find((V)=>V.name.toLowerCase()===$.toLowerCase()),w=Q.find((V)=>V.name.toLowerCase()===$.toLowerCase());if(!R&&!w)throw Error("Skill or command not found in repository");let g=_?$0($,q):Z0($,q);for(let V of g){let k=I0(V);if(!X0(k,V.installableType)){if(!_)PF($,q);continue}let x;if(V.installableType==="command"&&w)x=await VF(w,V.agent,{global:V.type==="global"});else if(R)x=await wF(R,V.agent,{global:V.type==="global"});else{W++;continue}if(x.success)T++;else W++}if(_)iC($,q,y);else mC($,q,y);E.push({skillName:$,success:W===0,updated:T,failed:W})}catch(y){E.push({skillName:$,success:!1,updated:T,failed:W+1,error:y instanceof Error?y.message:"Unknown error"})}finally{if(z)await qF(z)}}J.stop("Update complete");let S=E.filter(($)=>$.success&&$.updated>0),H=E.filter(($)=>!$.success||$.failed>0);if(S.length>0){L.success(v.default.green("Updated successfully"));for(let $ of S)L.message(` ${v.default.green("✓")} ${v.default.cyan($.skillName)}`)}if(H.length>0){L.error(v.default.red(`Failed to update ${H.length} ${Lu(H.length,"skill")}`));for(let $ of H)if(L.message(` ${v.default.red("✗")} ${v.default.cyan($.skillName)}`),$.error)L.message(` ${v.default.dim($.error)}`)}if(S.length>0)r(v.default.green("Done! Skills updated."));else r(v.default.yellow("Nothing to update"));return E}async function I6(D,u=!1){if(D.length===0){_0();return}L.step(v.default.bold("Skills Status"));for(let F of D){let E={latest:v.default.green("✓"),"update-available":v.default.yellow("↓"),error:v.default.red("✗"),orphaned:v.default.dim("○")}[F.status],C={latest:v.default.green("Up to date"),"update-available":v.default.yellow("Update available"),error:v.default.red("Failed to check"),orphaned:v.default.dim("Missing files")}[F.status],B=F.installations.filter((I)=>I.exists),A=F.installations.filter((I)=>!I.exists);if(!u){let I=B.length,Y=I>0?` (${I} ${Lu(I,"installation")})`:"";L.message(`${E} ${v.default.cyan(F.installableType+":"+F.skillName)}${v.default.dim(Y)} - ${C}`)}else{if(L.message(`${E} ${v.default.cyan(F.installableType+":"+F.skillName)}`),L.message(` Status: ${C}`),F.status==="update-available")L.message(` ${v.default.dim("Commit:")} ${v.default.yellow(F.currentCommit.slice(0,7))} ${v.default.dim("→")} ${v.default.green(F.latestCommit.slice(0,7))}`);else if(F.status==="latest")L.message(` ${v.default.dim("Commit:")} ${F.currentCommit.slice(0,7)}`);if(F.error)L.message(` ${v.default.red(F.error)}`);if(B.length>0){L.message(` ${v.default.dim("Installed in:")}`);for(let I of B)L.message(` ${v.default.dim("•")} ${I.agent}: ${v.default.dim(I.path)}`)}if(A.length>0){L.message(` ${v.default.yellow("Missing installations:")}`);for(let I of A)L.message(` ${v.default.dim("•")} ${I.agent}: ${v.default.dim(I.path)}`)}}}if(!u)L.info(`Use ${v.default.cyan("--verbose")} or ${v.default.cyan("-v")} for detailed information`)}async function J6(D={}){let u=hD();u.start("Cleaning up..."),await Promise.all([dC(),rC()]),u.stop(v.default.green("State cleaned up"))}async function Z6(D,u){if(!u.silent)OD(xF.default.bgCyan(xF.default.black(" flins ")));try{await A6(D.length>0?D:void 0,u)}catch(F){if(L.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(xF.default.red("Update failed"));process.exit(1)}}VD();var q0=o(LD(),1);async function Y6(D,u={}){if(!u.silent)OD(q0.default.bgCyan(q0.default.black(" flins ")));try{let F=await p3(D.length>0?D:void 0),E=u.verbose||D.length>0;if(await I6(F,E),!u.silent)r(q0.default.green("Done"))}catch(F){if(L.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(q0.default.red("Failed to check for updates"));process.exit(1)}}VD();var fF=o(LD(),1);VD();Y0();H0();var s=o(LD(),1);import{rmSync as iI}from"fs";gD();RF();async function pI(D){try{return iI(D,{recursive:!0,force:!0}),{success:!0}}catch(u){if(u?.code==="ENOENT")return{success:!0};return{success:!1,error:u instanceof Error?u.message:"Unknown error"}}}async function $6(D=[],u={}){let F=hu(),E=[];if(F.length===0)return _0(),[];let C;if(D.length>0){let H=new Set(D.map(($)=>$.toLowerCase()));C=F.filter(({name:$})=>H.has($.toLowerCase()))}else{let $=F.map(({name:G,isLocal:_,installableType:q})=>{let U=G0(G,q,{isLocal:_});return{value:G,label:G,hint:U.length>0?`${U.length} ${Lu(U.length,"installation")}`:"no valid installations"}}).filter((G)=>G.hint!=="no valid installations");if($.length===0)return L.warn("No valid installations found"),[];if(u.yes||u.force)C=F.filter(({name:G})=>$.some((_)=>_.value===G));else{let G=await xD({message:"Choose skills to remove",options:$,required:!0,initialValues:$.map((q)=>q.value)});if(AD(G))return ZD("Remove cancelled"),[];let _=G;C=F.filter(({name:q})=>_.includes(q))}}if(C.length===0){if(D.length>0){L.error(`No matching skills found for: ${D.join(", ")}`),L.info("Tracked skills:");for(let H of F)L.message(` - ${s.default.cyan(H.name)}`)}return[]}L.step(s.default.bold("Skills to Remove"));let B=[];for(let{name:H,isLocal:$,installableType:X}of C){let G=G0(H,X,{isLocal:$});if(G.length>0){B.push({name:H,isLocal:$,installableType:X,installations:G});let _=G.map(({installation:q})=>n[q.agent].displayName);L.message(` ${s.default.cyan(H)} ${s.default.dim(`(${_.join(", ")})`)}`)}}if(B.length===0)return L.warn("No installations match the specified criteria"),[];let A=D.length===0,I,Y=u.yes||u.force;if(Y||A)I=B.map(({name:H})=>H);else{let H=B.map(({name:X,installations:G})=>({value:X,label:X,hint:`${G.length} ${Lu(G.length,"installation")}`})),$=await xD({message:"Choose skills to remove",options:H,required:!0,initialValues:B.map(({name:X})=>X)});if(AD($))return ZD("Remove cancelled"),[];I=$}L.step(s.default.bold("Will Remove"));for(let H of I){let $=B.find((X)=>X.name===H);if($)L.message(` ${s.default.cyan($.name)}`)}if(!Y){let H=await eD({message:"Remove selected skills?"});if(AD(H)||!H)return ZD("Remove cancelled"),[]}let Z=hD();Z.start("Removing...");for(let{name:H,isLocal:$,installableType:X,installations:G}of B){if(!I.includes(H))continue;let _={skillName:H,success:!0,removed:0,failed:0,installations:[]};for(let{installation:q,resolvedPath:U}of G){let z=await MC(U),T=await pI(U);if(_.installations.push({agent:n[q.agent].displayName,path:U,removed:T.success&&z.success,error:T.error||z.error}),T.success&&z.success)_.removed++;else _.failed++,_.success=!1}if(_.removed>0)if($)nC(H,X);else PF(H,X);E.push(_)}Z.stop("Remove complete");let J=E.filter((H)=>H.success&&H.removed>0),S=E.filter((H)=>!H.success||H.failed>0);if(J.length>0){L.success(s.default.green("Removed successfully"));for(let H of J)L.message(` ${s.default.green("✓")} ${s.default.cyan(H.skillName)}`)}if(S.length>0){L.error(s.default.red(`Failed to remove ${S.length} ${Lu(S.length,"skill")}`));for(let H of S){L.message(` ${s.default.red("✗")} ${s.default.cyan(H.skillName)}`);for(let $ of H.installations.filter((X)=>!X.removed))if($.error)L.message(` ${s.default.dim($.error)}`)}}if(J.length>0)r(s.default.green("Done! Skills removed."));else r(s.default.yellow("Nothing removed"));return E}async function H6(){let D=hu();if(D.length===0){_0();return}L.step(s.default.bold("Installed Skills and Commands"));let u=[],F=[];for(let{name:E,isLocal:C,installableType:B}of D)if(C)u.push({name:E,installableType:B});else F.push({name:E,installableType:B});if(u.length>0){if(F.length>0)L.message(s.default.bold(s.default.cyan("Local (from ./skills.lock)")));for(let{name:E,installableType:C}of u){let A=G0(E,C,{isLocal:!0}).map(({installation:Y})=>n[Y.agent].displayName),I=C==="command"?s.default.yellow("⚡"):s.default.green("✓");L.message(`${I} ${s.default.cyan(E)} ${A.length>0?s.default.dim(`(${A.join(", ")})`):""}`)}}if(F.length>0){if(u.length>0)L.message(s.default.bold(s.default.cyan("Global (from ~/.flins/skills.lock)")));for(let{name:E,installableType:C}of F){let A=G0(E,C,{isLocal:!1}).map(({installation:Y})=>n[Y.agent].displayName),I=C==="command"?s.default.yellow("⚡"):s.default.green("✓");L.message(`${I} ${s.default.cyan(E)} ${A.length>0?s.default.dim(`(${A.join(", ")})`):""}`)}}}async function S6(D,u){if(!u.silent)OD(fF.default.bgCyan(fF.default.black(" flins ")));try{await $6(D,u)}catch(F){if(L.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(fF.default.red("Failed to remove skills"));process.exit(1)}}VD();var U0=o(LD(),1);async function X6(){OD(U0.default.bgCyan(U0.default.black(" flins ")));try{await H6(),r(U0.default.green("Showing all installed skills"))}catch(D){L.error(D instanceof Error?D.message:"Something went wrong. Try again or check your connection."),r(U0.default.red("Failed to load skills")),process.exit(1)}}VD();m3();var Bu=o(LD(),1);async function G6(){OD(Bu.default.bgCyan(Bu.default.black(" flins ")));try{let D=hD();D.start("Browsing skills...");let u=await jF();if(D.stop("Directory loaded"),u.length===0){L.warn("Directory is empty"),r("New skills coming soon");return}let F=await CC({message:"Find a skill:",options:u.map((I)=>({value:I.name,label:I.name,hint:`${I.author} - ${I.description.slice(0,50)}${I.description.length>50?"...":""}`})),placeholder:"Type to search..."});if(AD(F)){ZD("Search cancelled");return}let E=Array.isArray(F)?F:[F];if(E.length===0){ZD("No selection made");return}let C=u.filter((I)=>E.includes(I.name));if(C.length===0)return;L.step(Bu.default.bold("Selected Skills"));for(let I of C)L.message(` ${Bu.default.cyan(I.name)} ${Bu.default.dim(`- ${I.author}`)}`);let B=await eD({message:`Add ${C.length} skill${C.length>1?"s":""}?`});if(AD(B)||!B){r(`Install anytime with:
141
+ `,C=u.pad||" ",B=F!=="right"?wS:WS,A=!1;if(!Array.isArray(D))A=!0,D=String(D).split(E);let I,Y=0;return D=D.map(function(Z){return Z=String(Z),I=RS(Z),Y=Math.max(I,Y),{str:Z,width:I}}).map(function(Z){return Array(B(Y,Z.width)+1).join(C)+Z.str}),A?D.join(E):D}ju.left=function(u){return ju(u,{align:"left"})};ju.center=function(u){return ju(u,{align:"center"})};ju.right=function(u){return ju(u,{align:"right"})};q4.exports=ju;function wS(D,u){return Math.floor((D-u)/2)}function WS(D,u){return D-u}});var j8=o(P8(),1),{program:WD,createCommand:JX,createArgument:ZX,createOption:YX,CommanderError:$X,InvalidArgumentError:HX,InvalidOptionArgumentError:SX,Command:XX,Argument:GX,Option:_X,Help:qX}=j8.default;s0();i3();VD();var xF=o(LD(),1);VD();U3();T3();R3();P3();y3();Y0();H0();var v=o(LD(),1);import{join as nI}from"path";Y0();H0();b3();uu();import{existsSync as E6,readdirSync as mI,lstatSync as C6}from"fs";function lI(D){if(!E6(D))return!1;try{let u=C6(D),F=u.isSymbolicLink(),E=u.isDirectory();if(!F&&!E)return!1;let C=mI(D);if(C.length===0)return!1;return C.includes("SKILL.md")}catch{return!1}}function dI(D){if(!E6(D))return!1;try{let u=C6(D);if(u.isSymbolicLink())return D.endsWith(".md");if(!u.isFile())return!1;return D.endsWith(".md")}catch{return!1}}function X0(D,u){return u==="skill"?lI(D):dI(D)}function hu(D){let u=[],F=new Set,E=pC(D);if(E)for(let[B,A]of Object.entries(E.skills)){let I=x3(B);if(!I)continue;u.push({name:I.name,url:A.url,subpath:A.subpath,branch:A.branch,commit:A.commit,isLocal:!0,installableType:I.installableType}),F.add(B)}let C=lC();for(let[B,A]of Object.entries(C.skills)){if(F.has(B))continue;let I=x3(B);if(!I)continue;u.push({name:I.name,url:A.url,subpath:A.subpath,branch:A.branch,commit:A.commit,isLocal:!1,installableType:I.installableType})}return u}function G0(D,u,F){return(F.isLocal?$0(D,u,F.cwd):Z0(D,u)).map((C)=>({installation:C,resolvedPath:I0(C)})).filter(({resolvedPath:C})=>X0(C,u))}gD();uu();VD();var gu=o(LD(),1);function _0(){K.warn("No skills yet. Install your first skill:"),K.message(` ${gu.default.cyan("npx flins@latest add <repo>")} # Install in current project`),K.message(` ${gu.default.cyan("npx flins@latest add <repo> --global")} # Install globally for all projects`),K.message(` ${gu.default.dim("Examples:")}`),K.message(` ${gu.default.cyan("npx flins@latest add expo")} # Install from flins directory (https://flins.tech)`),K.message(` ${gu.default.cyan("npx flins@latest search")} # Browse available skills`)}var Lu=(D,u,F)=>{return D===1?u:F??`${u}s`};async function B6(D,u,F,E,C,B){let I=(C?$0(D,B):Z0(D,B)).map((Z)=>{let J=I0(Z);return{agent:n[Z.agent].displayName,path:J,exists:X0(J,Z.installableType)}});if(I.filter((Z)=>Z.exists).length===0)return{skillName:D,currentCommit:E,latestCommit:E,status:"orphaned",installableType:B,installations:I};try{let Z=await ZC(u,F);return{skillName:D,currentCommit:E,latestCommit:Z,status:Z===E?"latest":"update-available",installableType:B,installations:I}}catch(Z){return{skillName:D,currentCommit:E,latestCommit:E,status:"error",installableType:B,installations:I,error:Z instanceof Error?Z.message:"Unknown error"}}}async function p3(D){let u=hu(),F=[],E;if(D&&D.length>0){let B=new Set(D.map((A)=>A.toLowerCase()));E=u.filter(({name:A})=>B.has(A.toLowerCase()))}else E=u;if(E.length===0)return[];let C=hD();if(E.length===1){let{name:B,url:A,branch:I,commit:Y,isLocal:Z,installableType:J}=E[0];C.start(`Checking ${v.default.cyan(B)}...`);let S=await B6(B,A,I,Y,Z,J);C.stop(S.status==="latest"?v.default.green("Up to date"):v.default.yellow("Update available")),F.push(S)}else{C.start("Checking for updates...");for(let{name:B,url:A,branch:I,commit:Y,isLocal:Z,installableType:J}of E){let S=await B6(B,A,I,Y,Z,J);F.push(S)}C.stop("Check complete")}return F}async function A6(D,u={}){let F=hu(),E=[],C;if(D&&D.length>0){let $=new Set(D.map((X)=>X.toLowerCase()));C=F.filter(({name:X})=>$.has(X.toLowerCase()))}else C=F;if(C.length===0)return K.warn("No skills found to update"),r(v.default.yellow("Nothing to update")),[];let B=await p3(D),A=B.filter(($)=>$.status==="update-available");if(A.length===0){let $=B.filter((X)=>X.status==="orphaned");if($.length>0){K.warn(`${$.length} skill${$.length>1?"s":""} ${$.length>1?"have":"has"} no valid installations`);for(let X of $)K.message(` ${v.default.yellow("○")} ${v.default.cyan(X.skillName)} - files were removed`)}return K.success(v.default.green("All skills are up to date")),r(v.default.green("Everything is current")),[]}K.step(v.default.bold("Updates Available"));let I=A.map(($)=>({value:$.skillName,label:$.skillName,hint:`${$.currentCommit.slice(0,7)} → ${$.latestCommit.slice(0,7)}`})),Y,Z=u.yes||u.force;if(Z)Y=A.map(($)=>$.skillName);else{let $=await xD({message:"Choose skills to update",options:I,required:!0,initialValues:A.map((X)=>X.skillName)});if(AD($))return ZD("Update cancelled"),[];Y=$}K.step(v.default.bold("Will Update"));for(let $ of Y){let X=A.find((G)=>G.skillName===$);if(X)K.message(` ${v.default.cyan(X.skillName)}`),K.message(` ${v.default.dim("Current:")} ${v.default.yellow(X.currentCommit.slice(0,7))} ${v.default.dim("→")} ${v.default.green(X.latestCommit.slice(0,7))}`)}if(!Z){let $=await eD({message:"Ready to update?"});if(AD($)||!$)return ZD("Update cancelled"),[]}let J=hD();J.start("Updating...");for(let{name:$,url:X,subpath:G,isLocal:_,installableType:q}of C){let U=B.find((y)=>y.skillName===$);if(!U||U.status!=="update-available"){if(U?.status==="latest")E.push({skillName:$,success:!0,updated:0,failed:0});else E.push({skillName:$,success:!1,updated:0,failed:0});continue}if(!Y.includes($))continue;let z=null,T=0,W=0;try{z=await GF(X);let y=await _F(z),O=G?nI(z,G):z,M=await zF(O),Q=await TF(O),R=M.find((V)=>V.name.toLowerCase()===$.toLowerCase()),w=Q.find((V)=>V.name.toLowerCase()===$.toLowerCase());if(!R&&!w)throw Error("Skill or command not found in repository");let g=_?$0($,q):Z0($,q);for(let V of g){let k=I0(V);if(!X0(k,V.installableType)){if(!_)PF($,q);continue}let x;if(V.installableType==="command"&&w)x=await VF(w,V.agent,{global:V.type==="global"});else if(R)x=await wF(R,V.agent,{global:V.type==="global"});else{W++;continue}if(x.success)T++;else W++}if(_)iC($,q,y);else mC($,q,y);E.push({skillName:$,success:W===0,updated:T,failed:W})}catch(y){E.push({skillName:$,success:!1,updated:T,failed:W+1,error:y instanceof Error?y.message:"Unknown error"})}finally{if(z)await qF(z)}}J.stop("Update complete");let S=E.filter(($)=>$.success&&$.updated>0),H=E.filter(($)=>!$.success||$.failed>0);if(S.length>0){K.success(v.default.green("Updated successfully"));for(let $ of S)K.message(` ${v.default.green("✓")} ${v.default.cyan($.skillName)}`)}if(H.length>0){K.error(v.default.red(`Failed to update ${H.length} ${Lu(H.length,"skill")}`));for(let $ of H)if(K.message(` ${v.default.red("✗")} ${v.default.cyan($.skillName)}`),$.error)K.message(` ${v.default.dim($.error)}`)}if(S.length>0)r(v.default.green("Done! Skills updated."));else r(v.default.yellow("Nothing to update"));return E}async function I6(D,u=!1){if(D.length===0){_0();return}K.step(v.default.bold("Skills Status"));for(let F of D){let E={latest:v.default.green("✓"),"update-available":v.default.yellow("↓"),error:v.default.red("✗"),orphaned:v.default.dim("○")}[F.status],C={latest:v.default.green("Up to date"),"update-available":v.default.yellow("Update available"),error:v.default.red("Failed to check"),orphaned:v.default.dim("Missing files")}[F.status],B=F.installations.filter((I)=>I.exists),A=F.installations.filter((I)=>!I.exists);if(!u){let I=B.length,Y=I>0?` (${I} ${Lu(I,"installation")})`:"";K.message(`${E} ${v.default.cyan(F.installableType+":"+F.skillName)}${v.default.dim(Y)} - ${C}`)}else{if(K.message(`${E} ${v.default.cyan(F.installableType+":"+F.skillName)}`),K.message(` Status: ${C}`),F.status==="update-available")K.message(` ${v.default.dim("Commit:")} ${v.default.yellow(F.currentCommit.slice(0,7))} ${v.default.dim("→")} ${v.default.green(F.latestCommit.slice(0,7))}`);else if(F.status==="latest")K.message(` ${v.default.dim("Commit:")} ${F.currentCommit.slice(0,7)}`);if(F.error)K.message(` ${v.default.red(F.error)}`);if(B.length>0){K.message(` ${v.default.dim("Installed in:")}`);for(let I of B)K.message(` ${v.default.dim("•")} ${I.agent}: ${v.default.dim(I.path)}`)}if(A.length>0){K.message(` ${v.default.yellow("Missing installations:")}`);for(let I of A)K.message(` ${v.default.dim("•")} ${I.agent}: ${v.default.dim(I.path)}`)}}}if(!u)K.info(`Use ${v.default.cyan("--verbose")} or ${v.default.cyan("-v")} for detailed information`)}async function J6(D={}){let u=hD();u.start("Cleaning up..."),await Promise.all([dC(),rC()]),u.stop(v.default.green("State cleaned up"))}async function Z6(D,u){if(!u.silent)OD(xF.default.bgCyan(xF.default.black(" flins ")));try{await A6(D.length>0?D:void 0,u)}catch(F){if(K.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(xF.default.red("Update failed"));process.exit(1)}}VD();var q0=o(LD(),1);async function Y6(D,u={}){if(!u.silent)OD(q0.default.bgCyan(q0.default.black(" flins ")));try{let F=await p3(D.length>0?D:void 0),E=u.verbose||D.length>0;if(await I6(F,E),!u.silent)r(q0.default.green("Done"))}catch(F){if(K.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(q0.default.red("Failed to check for updates"));process.exit(1)}}VD();var fF=o(LD(),1);VD();Y0();H0();var s=o(LD(),1);import{rmSync as iI}from"fs";gD();RF();async function pI(D){try{return iI(D,{recursive:!0,force:!0}),{success:!0}}catch(u){if(u?.code==="ENOENT")return{success:!0};return{success:!1,error:u instanceof Error?u.message:"Unknown error"}}}async function $6(D=[],u={}){let F=hu(),E=[];if(F.length===0)return _0(),[];let C;if(D.length>0){let H=new Set(D.map(($)=>$.toLowerCase()));C=F.filter(({name:$})=>H.has($.toLowerCase()))}else{let $=F.map(({name:G,isLocal:_,installableType:q})=>{let U=G0(G,q,{isLocal:_});return{value:G,label:G,hint:U.length>0?`${U.length} ${Lu(U.length,"installation")}`:"no valid installations"}}).filter((G)=>G.hint!=="no valid installations");if($.length===0)return K.warn("No valid installations found"),[];if(u.yes||u.force)C=F.filter(({name:G})=>$.some((_)=>_.value===G));else{let G=await xD({message:"Choose skills to remove",options:$,required:!0,initialValues:$.map((q)=>q.value)});if(AD(G))return ZD("Remove cancelled"),[];let _=G;C=F.filter(({name:q})=>_.includes(q))}}if(C.length===0){if(D.length>0){K.error(`No matching skills found for: ${D.join(", ")}`),K.info("Tracked skills:");for(let H of F)K.message(` - ${s.default.cyan(H.name)}`)}return[]}K.step(s.default.bold("Skills to Remove"));let B=[];for(let{name:H,isLocal:$,installableType:X}of C){let G=G0(H,X,{isLocal:$});if(G.length>0){B.push({name:H,isLocal:$,installableType:X,installations:G});let _=G.map(({installation:q})=>n[q.agent].displayName);K.message(` ${s.default.cyan(H)} ${s.default.dim(`(${_.join(", ")})`)}`)}}if(B.length===0)return K.warn("No installations match the specified criteria"),[];let A=D.length===0,I,Y=u.yes||u.force;if(Y||A)I=B.map(({name:H})=>H);else{let H=B.map(({name:X,installations:G})=>({value:X,label:X,hint:`${G.length} ${Lu(G.length,"installation")}`})),$=await xD({message:"Choose skills to remove",options:H,required:!0,initialValues:B.map(({name:X})=>X)});if(AD($))return ZD("Remove cancelled"),[];I=$}K.step(s.default.bold("Will Remove"));for(let H of I){let $=B.find((X)=>X.name===H);if($)K.message(` ${s.default.cyan($.name)}`)}if(!Y){let H=await eD({message:"Remove selected skills?"});if(AD(H)||!H)return ZD("Remove cancelled"),[]}let Z=hD();Z.start("Removing...");for(let{name:H,isLocal:$,installableType:X,installations:G}of B){if(!I.includes(H))continue;let _={skillName:H,success:!0,removed:0,failed:0,installations:[]};for(let{installation:q,resolvedPath:U}of G){let z=await MC(U),T=await pI(U);if(_.installations.push({agent:n[q.agent].displayName,path:U,removed:T.success&&z.success,error:T.error||z.error}),T.success&&z.success)_.removed++;else _.failed++,_.success=!1}if(_.removed>0)if($)nC(H,X);else PF(H,X);E.push(_)}Z.stop("Remove complete");let J=E.filter((H)=>H.success&&H.removed>0),S=E.filter((H)=>!H.success||H.failed>0);if(J.length>0){K.success(s.default.green("Removed successfully"));for(let H of J)K.message(` ${s.default.green("✓")} ${s.default.cyan(H.skillName)}`)}if(S.length>0){K.error(s.default.red(`Failed to remove ${S.length} ${Lu(S.length,"skill")}`));for(let H of S){K.message(` ${s.default.red("✗")} ${s.default.cyan(H.skillName)}`);for(let $ of H.installations.filter((X)=>!X.removed))if($.error)K.message(` ${s.default.dim($.error)}`)}}if(J.length>0)r(s.default.green("Done! Skills removed."));else r(s.default.yellow("Nothing removed"));return E}async function H6(){let D=hu();if(D.length===0){_0();return}K.step(s.default.bold("Installed Skills and Commands"));let u=[],F=[];for(let{name:E,isLocal:C,installableType:B}of D)if(C)u.push({name:E,installableType:B});else F.push({name:E,installableType:B});if(u.length>0){if(F.length>0)K.message(s.default.bold(s.default.cyan("Local (from ./skills.lock)")));for(let{name:E,installableType:C}of u){let A=G0(E,C,{isLocal:!0}).map(({installation:Y})=>n[Y.agent].displayName),I=C==="command"?s.default.yellow("⚡"):s.default.green("✓");K.message(`${I} ${s.default.cyan(E)} ${A.length>0?s.default.dim(`(${A.join(", ")})`):""}`)}}if(F.length>0){if(u.length>0)K.message(s.default.bold(s.default.cyan("Global (from ~/.flins/skills.lock)")));for(let{name:E,installableType:C}of F){let A=G0(E,C,{isLocal:!1}).map(({installation:Y})=>n[Y.agent].displayName),I=C==="command"?s.default.yellow("⚡"):s.default.green("✓");K.message(`${I} ${s.default.cyan(E)} ${A.length>0?s.default.dim(`(${A.join(", ")})`):""}`)}}}async function S6(D,u){if(!u.silent)OD(fF.default.bgCyan(fF.default.black(" flins ")));try{await $6(D,u)}catch(F){if(K.error(F instanceof Error?F.message:"Something went wrong. Try again or check your connection."),!u.silent)r(fF.default.red("Failed to remove skills"));process.exit(1)}}VD();var U0=o(LD(),1);async function X6(){OD(U0.default.bgCyan(U0.default.black(" flins ")));try{await H6(),r(U0.default.green("Showing all installed skills"))}catch(D){K.error(D instanceof Error?D.message:"Something went wrong. Try again or check your connection."),r(U0.default.red("Failed to load skills")),process.exit(1)}}VD();m3();var Bu=o(LD(),1);async function G6(){OD(Bu.default.bgCyan(Bu.default.black(" flins ")));try{let D=hD();D.start("Browsing skills...");let u=await jF();if(D.stop("Directory loaded"),u.length===0){K.warn("Directory is empty"),r("New skills coming soon");return}let F=await CC({message:"Find a skill:",options:u.map((I)=>({value:I.name,label:I.name,hint:`${I.author} - ${I.description.slice(0,50)}${I.description.length>50?"...":""}`})),placeholder:"Type to search..."});if(AD(F)){ZD("Search cancelled");return}let E=Array.isArray(F)?F:[F];if(E.length===0){ZD("No selection made");return}let C=u.filter((I)=>E.includes(I.name));if(C.length===0)return;K.step(Bu.default.bold("Selected Skills"));for(let I of C)K.message(` ${Bu.default.cyan(I.name)} ${Bu.default.dim(`- ${I.author}`)}`);let B=await eD({message:`Add ${C.length} skill${C.length>1?"s":""}?`});if(AD(B)||!B){r(`Install anytime with:
142
142
  `+C.map((I)=>` ${Bu.default.green(`flins add ${I.name}`)}`).join(`
143
- `));return}let{installCommand:A}=await Promise.resolve().then(() => (i3(),F6));for(let I of C)await A(I.name,{yes:!0})}catch(D){L.error(D instanceof Error?D.message:"Something went wrong. Try again or check your connection."),r(Bu.default.red("Couldn't load skill directory")),process.exit(1)}}VD();var L0=o(LD(),1);async function _6(D={}){if(!D.silent)OD(L0.default.bgCyan(L0.default.black(" flins ")));try{if(await J6(D),!D.silent)r(L0.default.green("State cleaned up"))}catch(u){if(L.error(u instanceof Error?u.message:"Something went wrong. Try again or check your connection."),!D.silent)r(L0.default.red("Failed to clean up"));process.exit(1)}}import yu from"node:process";import{spawn as rS}from"node:child_process";import{fileURLToPath as aS}from"node:url";import k4 from"node:path";import{format as X8}from"node:util";var O0=o(R6(),1);import T0 from"node:path";import _J from"node:os";import CJ from"os";import cF from"path";var Iu=CJ.homedir(),{env:Qu}=process,w6=Qu.XDG_DATA_HOME||(Iu?cF.join(Iu,".local","share"):void 0),mu=Qu.XDG_CONFIG_HOME||(Iu?cF.join(Iu,".config"):void 0),Tq=Qu.XDG_STATE_HOME||(Iu?cF.join(Iu,".local","state"):void 0),Oq=Qu.XDG_CACHE_HOME||(Iu?cF.join(Iu,".cache"):void 0),Nq=Qu.XDG_RUNTIME_DIR||void 0,BJ=(Qu.XDG_DATA_DIRS||"/usr/local/share/:/usr/share/").split(":");if(w6)BJ.unshift(w6);var AJ=(Qu.XDG_CONFIG_DIRS||"/etc/xdg").split(":");if(mu)AJ.unshift(mu);import XJ from"node:path";import p from"node:fs";import{promisify as GD}from"node:util";var IJ=(D,u)=>{let{onError:F}=u;return function(...C){return D.apply(void 0,C).catch(F)}},cD=IJ;var JJ=(D,u)=>{let{onError:F}=u;return function(...C){try{return D.apply(void 0,C)}catch(B){return F(B)}}},bD=JJ;var W6=250;var ZJ=(D,u)=>{let{isRetriable:F}=u;return function(C){let{timeout:B}=C,A=C.interval??W6,I=Date.now()+B;return function Y(...Z){return D.apply(void 0,Z).catch((J)=>{if(!F(J))throw J;if(Date.now()>=I)throw J;let S=Math.round(A*Math.random());if(S>0)return new Promise(($)=>setTimeout($,S)).then(()=>Y.apply(void 0,Z));else return Y.apply(void 0,Z)})}}},mD=ZJ;var YJ=(D,u)=>{let{isRetriable:F}=u;return function(C){let{timeout:B}=C,A=Date.now()+B;return function(...Y){while(!0)try{return D.apply(void 0,Y)}catch(Z){if(!F(Z))throw Z;if(Date.now()>=A)throw Z;continue}}}},lD=YJ;import M6 from"node:process";var K0={isChangeErrorOk:(D)=>{if(!K0.isNodeError(D))return!1;let{code:u}=D;if(u==="ENOSYS")return!0;if(!V6&&(u==="EINVAL"||u==="EPERM"))return!0;return!1},isNodeError:(D)=>{return D instanceof Error},isRetriableError:(D)=>{if(!K0.isNodeError(D))return!1;let{code:u}=D;if(u==="EMFILE"||u==="ENFILE"||u==="EAGAIN"||u==="EBUSY"||u==="EACCESS"||u==="EACCES"||u==="EACCS"||u==="EPERM")return!0;return!1},onChangeError:(D)=>{if(!K0.isNodeError(D))throw D;if(K0.isChangeErrorOk(D))return;throw D}},t3=K0;var Q0={onError:t3.onChangeError},ND={onError:()=>{return}},V6=M6.getuid?!M6.getuid():!1,HD={isRetriable:t3.isRetriableError};var $J={attempt:{chmod:cD(GD(p.chmod),Q0),chown:cD(GD(p.chown),Q0),close:cD(GD(p.close),ND),fsync:cD(GD(p.fsync),ND),mkdir:cD(GD(p.mkdir),ND),realpath:cD(GD(p.realpath),ND),stat:cD(GD(p.stat),ND),unlink:cD(GD(p.unlink),ND),chmodSync:bD(p.chmodSync,Q0),chownSync:bD(p.chownSync,Q0),closeSync:bD(p.closeSync,ND),existsSync:bD(p.existsSync,ND),fsyncSync:bD(p.fsync,ND),mkdirSync:bD(p.mkdirSync,ND),realpathSync:bD(p.realpathSync,ND),statSync:bD(p.statSync,ND),unlinkSync:bD(p.unlinkSync,ND)},retry:{close:mD(GD(p.close),HD),fsync:mD(GD(p.fsync),HD),open:mD(GD(p.open),HD),readFile:mD(GD(p.readFile),HD),rename:mD(GD(p.rename),HD),stat:mD(GD(p.stat),HD),write:mD(GD(p.write),HD),writeFile:mD(GD(p.writeFile),HD),closeSync:lD(p.closeSync,HD),fsyncSync:lD(p.fsyncSync,HD),openSync:lD(p.openSync,HD),readFileSync:lD(p.readFileSync,HD),renameSync:lD(p.renameSync,HD),statSync:lD(p.statSync,HD),writeSync:lD(p.writeSync,HD),writeFileSync:lD(p.writeFileSync,HD)}},YD=$J;import zu from"node:process";var P6="utf8",e3=438,j6=511;var y6={},x6=zu.geteuid?zu.geteuid():-1,f6=zu.getegid?zu.getegid():-1;var b6=1000,k6=!!zu.getuid,sq=zu.getuid?!zu.getuid():!1,DE=128;var v6=(D)=>{return D instanceof Error&&"code"in D};var uE=(D)=>{return typeof D==="string"},mF=(D)=>{return D===void 0};import SJ from"node:path";import lu from"node:process";import h6 from"node:process";var g6=h6.platform==="linux",lF=h6.platform==="win32";var FE=["SIGHUP","SIGINT","SIGTERM"];if(!lF)FE.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(g6)FE.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var c6=FE;class m6{constructor(){this.callbacks=new Set,this.exited=!1,this.exit=(D)=>{if(this.exited)return;this.exited=!0;for(let u of this.callbacks)u();if(D)if(lF&&(D!=="SIGINT"&&D!=="SIGTERM"&&D!=="SIGKILL"))lu.kill(lu.pid,"SIGTERM");else lu.kill(lu.pid,D)},this.hook=()=>{lu.once("exit",()=>this.exit());for(let D of c6)try{lu.once(D,()=>this.exit(D))}catch{}},this.register=(D)=>{return this.callbacks.add(D),()=>{this.callbacks.delete(D)}},this.hook()}}var l6=new m6;var HJ=l6.register,d6=HJ;var RD={store:{},create:(D)=>{let u=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6),F=Date.now().toString().slice(-10),E="tmp-",C=`.tmp-${F}${u}`;return`${D}${C}`},get:(D,u,F=!0)=>{let E=RD.truncate(u(D));if(E in RD.store)return RD.get(D,u,F);return RD.store[E]=F,[E,()=>delete RD.store[E]]},purge:(D)=>{if(!RD.store[D])return;delete RD.store[D],YD.attempt.unlink(D)},purgeSync:(D)=>{if(!RD.store[D])return;delete RD.store[D],YD.attempt.unlinkSync(D)},purgeSyncAll:()=>{for(let D in RD.store)RD.purgeSync(D)},truncate:(D)=>{let u=SJ.basename(D);if(u.length<=DE)return D;let F=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(u);if(!F)return D;let E=u.length-DE;return`${D.slice(0,-u.length)}${F[1]}${F[2].slice(0,-E)}${F[3]}`}};d6(RD.purgeSyncAll);var z0=RD;function dF(D,u,F=y6){if(uE(F))return dF(D,u,{encoding:F});let C={timeout:F.timeout??b6},B=null,A=null,I=null;try{let Y=YD.attempt.realpathSync(D),Z=!!Y;D=Y||D,[A,B]=z0.get(D,F.tmpCreate||z0.create,F.tmpPurge!==!1);let J=k6&&mF(F.chown),S=mF(F.mode);if(Z&&(J||S)){let H=YD.attempt.statSync(D);if(H){if(F={...F},J)F.chown={uid:H.uid,gid:H.gid};if(S)F.mode=H.mode}}if(!Z){let H=XJ.dirname(D);YD.attempt.mkdirSync(H,{mode:j6,recursive:!0})}if(I=YD.retry.openSync(C)(A,"w",F.mode||e3),F.tmpCreated)F.tmpCreated(A);if(uE(u))YD.retry.writeSync(C)(I,u,0,F.encoding||P6);else if(!mF(u))YD.retry.writeSync(C)(I,u,0,u.length,0);if(F.fsync!==!1)if(F.fsyncWait!==!1)YD.retry.fsyncSync(C)(I);else YD.attempt.fsync(I);if(YD.retry.closeSync(C)(I),I=null,F.chown&&(F.chown.uid!==x6||F.chown.gid!==f6))YD.attempt.chownSync(A,F.chown.uid,F.chown.gid);if(F.mode&&F.mode!==e3)YD.attempt.chmodSync(A,F.mode);try{YD.retry.renameSync(C)(A,D)}catch(H){if(!v6(H))throw H;if(H.code!=="ENAMETOOLONG")throw H;YD.retry.renameSync(C)(A,z0.truncate(D))}B(),A=null}finally{if(I)YD.attempt.closeSync(I);if(A)z0.purge(A)}}var Tu=(D)=>{let u=typeof D;return D!==null&&(u==="object"||u==="function")};var EE=new Set(["__proto__","prototype","constructor"]),GJ=new Set("0123456789");function nF(D){let u=[],F="",E="start",C=!1;for(let B of D)switch(B){case"\\":{if(E==="index")throw Error("Invalid character in an index");if(E==="indexEnd")throw Error("Invalid character after an index");if(C)F+=B;E="property",C=!C;break}case".":{if(E==="index")throw Error("Invalid character in an index");if(E==="indexEnd"){E="property";break}if(C){C=!1,F+=B;break}if(EE.has(F))return[];u.push(F),F="",E="property";break}case"[":{if(E==="index")throw Error("Invalid character in an index");if(E==="indexEnd"){E="index";break}if(C){C=!1,F+=B;break}if(E==="property"){if(EE.has(F))return[];u.push(F),F=""}E="index";break}case"]":{if(E==="index"){u.push(Number.parseInt(F,10)),F="",E="indexEnd";break}if(E==="indexEnd")throw Error("Invalid character after an index")}default:{if(E==="index"&&!GJ.has(B))throw Error("Invalid character in an index");if(E==="indexEnd")throw Error("Invalid character after an index");if(E==="start")E="property";if(C)C=!1,F+="\\";F+=B}}if(C)F+="\\";switch(E){case"property":{if(EE.has(F))return[];u.push(F);break}case"index":throw Error("Index was not closed");case"start":{u.push("");break}}return u}function CE(D,u){if(typeof u!=="number"&&Array.isArray(D)){let F=Number.parseInt(u,10);return Number.isInteger(F)&&D[F]===D[u]}return!1}function n6(D,u){if(CE(D,u))throw Error("Cannot use string index")}function i6(D,u,F){if(!Tu(D)||typeof u!=="string")return F===void 0?D:F;let E=nF(u);if(E.length===0)return F;for(let C=0;C<E.length;C++){let B=E[C];if(CE(D,B))D=C===E.length-1?void 0:null;else D=D[B];if(D===void 0||D===null){if(C!==E.length-1)return F;break}}return D===void 0?F:D}function BE(D,u,F){if(!Tu(D)||typeof u!=="string")return D;let E=D,C=nF(u);for(let B=0;B<C.length;B++){let A=C[B];if(n6(D,A),B===C.length-1)D[A]=F;else if(!Tu(D[A]))D[A]=typeof C[B+1]==="number"?[]:{};D=D[A]}return E}function p6(D,u){if(!Tu(D)||typeof u!=="string")return!1;let F=nF(u);for(let E=0;E<F.length;E++){let C=F[E];if(n6(D,C),E===F.length-1)return delete D[C],!0;if(D=D[C],!Tu(D))return!1}}function r6(D,u){if(!Tu(D)||typeof u!=="string")return!1;let F=nF(u);if(F.length===0)return!1;for(let E of F){if(!Tu(D)||!(E in D)||CE(D,E))return!1;D=D[E]}return!0}function qJ(D,u){let F=u?T0.join(D,"config.json"):T0.join("configstore",`${D}.json`),E=mu??O0.default.mkdtempSync(O0.default.realpathSync(_J.tmpdir())+T0.sep);return T0.join(E,F)}var UJ="You don't have access to this file.",LJ={mode:448,recursive:!0},a6={mode:384};function s6(D){if(D.code==="EACCES")D.message=`${D.message}
143
+ `));return}let{installCommand:A}=await Promise.resolve().then(() => (i3(),F6));for(let I of C)await A(I.name,{})}catch(D){K.error(D instanceof Error?D.message:"Something went wrong. Try again or check your connection."),r(Bu.default.red("Couldn't load skill directory")),process.exit(1)}}VD();var L0=o(LD(),1);async function _6(D={}){if(!D.silent)OD(L0.default.bgCyan(L0.default.black(" flins ")));try{if(await J6(D),!D.silent)r(L0.default.green("State cleaned up"))}catch(u){if(K.error(u instanceof Error?u.message:"Something went wrong. Try again or check your connection."),!D.silent)r(L0.default.red("Failed to clean up"));process.exit(1)}}import yu from"node:process";import{spawn as rS}from"node:child_process";import{fileURLToPath as aS}from"node:url";import k4 from"node:path";import{format as X8}from"node:util";var O0=o(R6(),1);import T0 from"node:path";import _J from"node:os";import CJ from"os";import cF from"path";var Iu=CJ.homedir(),{env:Qu}=process,w6=Qu.XDG_DATA_HOME||(Iu?cF.join(Iu,".local","share"):void 0),mu=Qu.XDG_CONFIG_HOME||(Iu?cF.join(Iu,".config"):void 0),Tq=Qu.XDG_STATE_HOME||(Iu?cF.join(Iu,".local","state"):void 0),Oq=Qu.XDG_CACHE_HOME||(Iu?cF.join(Iu,".cache"):void 0),Nq=Qu.XDG_RUNTIME_DIR||void 0,BJ=(Qu.XDG_DATA_DIRS||"/usr/local/share/:/usr/share/").split(":");if(w6)BJ.unshift(w6);var AJ=(Qu.XDG_CONFIG_DIRS||"/etc/xdg").split(":");if(mu)AJ.unshift(mu);import XJ from"node:path";import p from"node:fs";import{promisify as GD}from"node:util";var IJ=(D,u)=>{let{onError:F}=u;return function(...C){return D.apply(void 0,C).catch(F)}},cD=IJ;var JJ=(D,u)=>{let{onError:F}=u;return function(...C){try{return D.apply(void 0,C)}catch(B){return F(B)}}},bD=JJ;var W6=250;var ZJ=(D,u)=>{let{isRetriable:F}=u;return function(C){let{timeout:B}=C,A=C.interval??W6,I=Date.now()+B;return function Y(...Z){return D.apply(void 0,Z).catch((J)=>{if(!F(J))throw J;if(Date.now()>=I)throw J;let S=Math.round(A*Math.random());if(S>0)return new Promise(($)=>setTimeout($,S)).then(()=>Y.apply(void 0,Z));else return Y.apply(void 0,Z)})}}},mD=ZJ;var YJ=(D,u)=>{let{isRetriable:F}=u;return function(C){let{timeout:B}=C,A=Date.now()+B;return function(...Y){while(!0)try{return D.apply(void 0,Y)}catch(Z){if(!F(Z))throw Z;if(Date.now()>=A)throw Z;continue}}}},lD=YJ;import M6 from"node:process";var K0={isChangeErrorOk:(D)=>{if(!K0.isNodeError(D))return!1;let{code:u}=D;if(u==="ENOSYS")return!0;if(!V6&&(u==="EINVAL"||u==="EPERM"))return!0;return!1},isNodeError:(D)=>{return D instanceof Error},isRetriableError:(D)=>{if(!K0.isNodeError(D))return!1;let{code:u}=D;if(u==="EMFILE"||u==="ENFILE"||u==="EAGAIN"||u==="EBUSY"||u==="EACCESS"||u==="EACCES"||u==="EACCS"||u==="EPERM")return!0;return!1},onChangeError:(D)=>{if(!K0.isNodeError(D))throw D;if(K0.isChangeErrorOk(D))return;throw D}},t3=K0;var Q0={onError:t3.onChangeError},ND={onError:()=>{return}},V6=M6.getuid?!M6.getuid():!1,HD={isRetriable:t3.isRetriableError};var $J={attempt:{chmod:cD(GD(p.chmod),Q0),chown:cD(GD(p.chown),Q0),close:cD(GD(p.close),ND),fsync:cD(GD(p.fsync),ND),mkdir:cD(GD(p.mkdir),ND),realpath:cD(GD(p.realpath),ND),stat:cD(GD(p.stat),ND),unlink:cD(GD(p.unlink),ND),chmodSync:bD(p.chmodSync,Q0),chownSync:bD(p.chownSync,Q0),closeSync:bD(p.closeSync,ND),existsSync:bD(p.existsSync,ND),fsyncSync:bD(p.fsync,ND),mkdirSync:bD(p.mkdirSync,ND),realpathSync:bD(p.realpathSync,ND),statSync:bD(p.statSync,ND),unlinkSync:bD(p.unlinkSync,ND)},retry:{close:mD(GD(p.close),HD),fsync:mD(GD(p.fsync),HD),open:mD(GD(p.open),HD),readFile:mD(GD(p.readFile),HD),rename:mD(GD(p.rename),HD),stat:mD(GD(p.stat),HD),write:mD(GD(p.write),HD),writeFile:mD(GD(p.writeFile),HD),closeSync:lD(p.closeSync,HD),fsyncSync:lD(p.fsyncSync,HD),openSync:lD(p.openSync,HD),readFileSync:lD(p.readFileSync,HD),renameSync:lD(p.renameSync,HD),statSync:lD(p.statSync,HD),writeSync:lD(p.writeSync,HD),writeFileSync:lD(p.writeFileSync,HD)}},YD=$J;import zu from"node:process";var P6="utf8",e3=438,j6=511;var y6={},x6=zu.geteuid?zu.geteuid():-1,f6=zu.getegid?zu.getegid():-1;var b6=1000,k6=!!zu.getuid,sq=zu.getuid?!zu.getuid():!1,DE=128;var v6=(D)=>{return D instanceof Error&&"code"in D};var uE=(D)=>{return typeof D==="string"},mF=(D)=>{return D===void 0};import SJ from"node:path";import lu from"node:process";import h6 from"node:process";var g6=h6.platform==="linux",lF=h6.platform==="win32";var FE=["SIGHUP","SIGINT","SIGTERM"];if(!lF)FE.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(g6)FE.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var c6=FE;class m6{constructor(){this.callbacks=new Set,this.exited=!1,this.exit=(D)=>{if(this.exited)return;this.exited=!0;for(let u of this.callbacks)u();if(D)if(lF&&(D!=="SIGINT"&&D!=="SIGTERM"&&D!=="SIGKILL"))lu.kill(lu.pid,"SIGTERM");else lu.kill(lu.pid,D)},this.hook=()=>{lu.once("exit",()=>this.exit());for(let D of c6)try{lu.once(D,()=>this.exit(D))}catch{}},this.register=(D)=>{return this.callbacks.add(D),()=>{this.callbacks.delete(D)}},this.hook()}}var l6=new m6;var HJ=l6.register,d6=HJ;var RD={store:{},create:(D)=>{let u=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6),F=Date.now().toString().slice(-10),E="tmp-",C=`.tmp-${F}${u}`;return`${D}${C}`},get:(D,u,F=!0)=>{let E=RD.truncate(u(D));if(E in RD.store)return RD.get(D,u,F);return RD.store[E]=F,[E,()=>delete RD.store[E]]},purge:(D)=>{if(!RD.store[D])return;delete RD.store[D],YD.attempt.unlink(D)},purgeSync:(D)=>{if(!RD.store[D])return;delete RD.store[D],YD.attempt.unlinkSync(D)},purgeSyncAll:()=>{for(let D in RD.store)RD.purgeSync(D)},truncate:(D)=>{let u=SJ.basename(D);if(u.length<=DE)return D;let F=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(u);if(!F)return D;let E=u.length-DE;return`${D.slice(0,-u.length)}${F[1]}${F[2].slice(0,-E)}${F[3]}`}};d6(RD.purgeSyncAll);var z0=RD;function dF(D,u,F=y6){if(uE(F))return dF(D,u,{encoding:F});let C={timeout:F.timeout??b6},B=null,A=null,I=null;try{let Y=YD.attempt.realpathSync(D),Z=!!Y;D=Y||D,[A,B]=z0.get(D,F.tmpCreate||z0.create,F.tmpPurge!==!1);let J=k6&&mF(F.chown),S=mF(F.mode);if(Z&&(J||S)){let H=YD.attempt.statSync(D);if(H){if(F={...F},J)F.chown={uid:H.uid,gid:H.gid};if(S)F.mode=H.mode}}if(!Z){let H=XJ.dirname(D);YD.attempt.mkdirSync(H,{mode:j6,recursive:!0})}if(I=YD.retry.openSync(C)(A,"w",F.mode||e3),F.tmpCreated)F.tmpCreated(A);if(uE(u))YD.retry.writeSync(C)(I,u,0,F.encoding||P6);else if(!mF(u))YD.retry.writeSync(C)(I,u,0,u.length,0);if(F.fsync!==!1)if(F.fsyncWait!==!1)YD.retry.fsyncSync(C)(I);else YD.attempt.fsync(I);if(YD.retry.closeSync(C)(I),I=null,F.chown&&(F.chown.uid!==x6||F.chown.gid!==f6))YD.attempt.chownSync(A,F.chown.uid,F.chown.gid);if(F.mode&&F.mode!==e3)YD.attempt.chmodSync(A,F.mode);try{YD.retry.renameSync(C)(A,D)}catch(H){if(!v6(H))throw H;if(H.code!=="ENAMETOOLONG")throw H;YD.retry.renameSync(C)(A,z0.truncate(D))}B(),A=null}finally{if(I)YD.attempt.closeSync(I);if(A)z0.purge(A)}}var Tu=(D)=>{let u=typeof D;return D!==null&&(u==="object"||u==="function")};var EE=new Set(["__proto__","prototype","constructor"]),GJ=new Set("0123456789");function nF(D){let u=[],F="",E="start",C=!1;for(let B of D)switch(B){case"\\":{if(E==="index")throw Error("Invalid character in an index");if(E==="indexEnd")throw Error("Invalid character after an index");if(C)F+=B;E="property",C=!C;break}case".":{if(E==="index")throw Error("Invalid character in an index");if(E==="indexEnd"){E="property";break}if(C){C=!1,F+=B;break}if(EE.has(F))return[];u.push(F),F="",E="property";break}case"[":{if(E==="index")throw Error("Invalid character in an index");if(E==="indexEnd"){E="index";break}if(C){C=!1,F+=B;break}if(E==="property"){if(EE.has(F))return[];u.push(F),F=""}E="index";break}case"]":{if(E==="index"){u.push(Number.parseInt(F,10)),F="",E="indexEnd";break}if(E==="indexEnd")throw Error("Invalid character after an index")}default:{if(E==="index"&&!GJ.has(B))throw Error("Invalid character in an index");if(E==="indexEnd")throw Error("Invalid character after an index");if(E==="start")E="property";if(C)C=!1,F+="\\";F+=B}}if(C)F+="\\";switch(E){case"property":{if(EE.has(F))return[];u.push(F);break}case"index":throw Error("Index was not closed");case"start":{u.push("");break}}return u}function CE(D,u){if(typeof u!=="number"&&Array.isArray(D)){let F=Number.parseInt(u,10);return Number.isInteger(F)&&D[F]===D[u]}return!1}function n6(D,u){if(CE(D,u))throw Error("Cannot use string index")}function i6(D,u,F){if(!Tu(D)||typeof u!=="string")return F===void 0?D:F;let E=nF(u);if(E.length===0)return F;for(let C=0;C<E.length;C++){let B=E[C];if(CE(D,B))D=C===E.length-1?void 0:null;else D=D[B];if(D===void 0||D===null){if(C!==E.length-1)return F;break}}return D===void 0?F:D}function BE(D,u,F){if(!Tu(D)||typeof u!=="string")return D;let E=D,C=nF(u);for(let B=0;B<C.length;B++){let A=C[B];if(n6(D,A),B===C.length-1)D[A]=F;else if(!Tu(D[A]))D[A]=typeof C[B+1]==="number"?[]:{};D=D[A]}return E}function p6(D,u){if(!Tu(D)||typeof u!=="string")return!1;let F=nF(u);for(let E=0;E<F.length;E++){let C=F[E];if(n6(D,C),E===F.length-1)return delete D[C],!0;if(D=D[C],!Tu(D))return!1}}function r6(D,u){if(!Tu(D)||typeof u!=="string")return!1;let F=nF(u);if(F.length===0)return!1;for(let E of F){if(!Tu(D)||!(E in D)||CE(D,E))return!1;D=D[E]}return!0}function qJ(D,u){let F=u?T0.join(D,"config.json"):T0.join("configstore",`${D}.json`),E=mu??O0.default.mkdtempSync(O0.default.realpathSync(_J.tmpdir())+T0.sep);return T0.join(E,F)}var UJ="You don't have access to this file.",LJ={mode:448,recursive:!0},a6={mode:384};function s6(D){if(D.code==="EACCES")D.message=`${D.message}
144
144
  ${UJ}
145
145
  `;throw D}class iF{constructor(D,u,F={}){if(this._path=F.configPath??qJ(D,F.globalConfigPath),this._clearInvalidConfig=F.clearInvalidConfig??!0,u)this.all={...u,...this.all}}get all(){try{return JSON.parse(O0.default.readFileSync(this._path,"utf8"))}catch(D){if(D.code==="ENOENT")return{};if(D.name==="SyntaxError"){if(this._clearInvalidConfig)return dF(this._path,"",a6),{};throw D}return s6(D),{}}}set all(D){try{O0.default.mkdirSync(T0.dirname(this._path),LJ),dF(this._path,JSON.stringify(D,void 0,"\t"),a6)}catch(u){s6(u)}}get size(){return Object.keys(this.all||{}).length}get(D){return i6(this.all,D)}set(D,u){let F=this.all;if(typeof D==="object"&&arguments.length===1)for(let E of Object.keys(D))BE(F,E,D[E]);else BE(F,D,u);this.all=F}has(D){return r6(this.all,D)}delete(D){let u=this.all;p6(u,D),this.all=u}clear(){this.all={}}get path(){return this._path}}var o6=(D=0)=>(u)=>`\x1B[${u+D}m`,t6=(D=0)=>(u)=>`\x1B[${38+D};5;${u}m`,e6=(D=0)=>(u,F,E)=>`\x1B[${38+D};2;${u};${F};${E}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]}},xU=Object.keys(uD.modifier),KJ=Object.keys(uD.color),QJ=Object.keys(uD.bgColor),fU=[...KJ,...QJ];function zJ(){let D=new Map;for(let[u,F]of Object.entries(uD)){for(let[E,C]of Object.entries(F))uD[E]={open:`\x1B[${C[0]}m`,close:`\x1B[${C[1]}m`},F[E]=uD[E],D.set(C[0],C[1]);Object.defineProperty(uD,u,{value:F,enumerable:!1})}return Object.defineProperty(uD,"codes",{value:D,enumerable:!1}),uD.color.close="\x1B[39m",uD.bgColor.close="\x1B[49m",uD.color.ansi=o6(),uD.color.ansi256=t6(),uD.color.ansi16m=e6(),uD.bgColor.ansi=o6(10),uD.bgColor.ansi256=t6(10),uD.bgColor.ansi16m=e6(10),Object.defineProperties(uD,{rgbToAnsi256:{value(u,F,E){if(u===F&&F===E){if(u<8)return 16;if(u>248)return 231;return Math.round((u-8)/247*24)+232}return 16+36*Math.round(u/255*5)+6*Math.round(F/255*5)+Math.round(E/255*5)},enumerable:!1},hexToRgb:{value(u){let F=/[a-f\d]{6}|[a-f\d]{3}/i.exec(u.toString(16));if(!F)return[0,0,0];let[E]=F;if(E.length===3)E=[...E].map((B)=>B+B).join("");let C=Number.parseInt(E,16);return[C>>16&255,C>>8&255,C&255]},enumerable:!1},hexToAnsi256:{value:(u)=>uD.rgbToAnsi256(...uD.hexToRgb(u)),enumerable:!1},ansi256ToAnsi:{value(u){if(u<8)return 30+u;if(u<16)return 90+(u-8);let F,E,C;if(u>=232)F=((u-232)*10+8)/255,E=F,C=F;else{u-=16;let I=u%36;F=Math.floor(u/36)/5,E=Math.floor(I/6)/5,C=I%6/5}let B=Math.max(F,E,C)*2;if(B===0)return 30;let A=30+(Math.round(C)<<2|Math.round(E)<<1|Math.round(F));if(B===2)A+=60;return A},enumerable:!1},rgbToAnsi:{value:(u,F,E)=>uD.ansi256ToAnsi(uD.rgbToAnsi256(u,F,E)),enumerable:!1},hexToAnsi:{value:(u)=>uD.ansi256ToAnsi(uD.hexToAnsi256(u)),enumerable:!1}}),uD}var TJ=zJ(),kD=TJ;import AE from"node:process";import OJ from"node:os";import D1 from"node:tty";function MD(D,u=globalThis.Deno?globalThis.Deno.args:AE.argv){let F=D.startsWith("-")?"":D.length===1?"-":"--",E=u.indexOf(F+D),C=u.indexOf("--");return E!==-1&&(C===-1||E<C)}var{env:FD}=AE,pF;if(MD("no-color")||MD("no-colors")||MD("color=false")||MD("color=never"))pF=0;else if(MD("color")||MD("colors")||MD("color=true")||MD("color=always"))pF=1;function NJ(){if("FORCE_COLOR"in FD){if(FD.FORCE_COLOR==="true")return 1;if(FD.FORCE_COLOR==="false")return 0;return FD.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(FD.FORCE_COLOR,10),3)}}function RJ(D){if(D===0)return!1;return{level:D,hasBasic:!0,has256:D>=2,has16m:D>=3}}function wJ(D,{streamIsTTY:u,sniffFlags:F=!0}={}){let E=NJ();if(E!==void 0)pF=E;let C=F?pF:E;if(C===0)return 0;if(F){if(MD("color=16m")||MD("color=full")||MD("color=truecolor"))return 3;if(MD("color=256"))return 2}if("TF_BUILD"in FD&&"AGENT_NAME"in FD)return 1;if(D&&!u&&C===void 0)return 0;let B=C||0;if(FD.TERM==="dumb")return B;if(AE.platform==="win32"){let A=OJ.release().split(".");if(Number(A[0])>=10&&Number(A[2])>=10586)return Number(A[2])>=14931?3:2;return 1}if("CI"in FD){if(["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some((A)=>(A in FD)))return 3;if(["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some((A)=>(A in FD))||FD.CI_NAME==="codeship")return 1;return B}if("TEAMCITY_VERSION"in FD)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(FD.TEAMCITY_VERSION)?1:0;if(FD.COLORTERM==="truecolor")return 3;if(FD.TERM==="xterm-kitty")return 3;if(FD.TERM==="xterm-ghostty")return 3;if(FD.TERM==="wezterm")return 3;if("TERM_PROGRAM"in FD){let A=Number.parseInt((FD.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(FD.TERM_PROGRAM){case"iTerm.app":return A>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(FD.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(FD.TERM))return 1;if("COLORTERM"in FD)return 1;return B}function u1(D,u={}){let F=wJ(D,{streamIsTTY:D&&D.isTTY,...u});return RJ(F)}var WJ={stdout:u1({isTTY:D1.isatty(1)}),stderr:u1({isTTY:D1.isatty(2)})},F1=WJ;function E1(D,u,F){let E=D.indexOf(u);if(E===-1)return D;let C=u.length,B=0,A="";do A+=D.slice(B,E)+u+F,B=E+C,E=D.indexOf(u,B);while(E!==-1);return A+=D.slice(B),A}function C1(D,u,F,E){let C=0,B="";do{let A=D[E-1]==="\r";B+=D.slice(C,A?E-1:E)+u+(A?`\r
146
146
  `:`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flins",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "description": "Universal skill installer for AI coding agents - Claude, Cursor, Copilot, and more",
5
5
  "keywords": [
6
6
  "agent-skills",