give-skill 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +48 -28
- package/dist/index.js +57 -57
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -19,18 +19,24 @@ The [Agent Skills](https://agentskills.io) format is an open standard for extend
|
|
|
19
19
|
|
|
20
20
|
All agents support the [Agent Skills](https://agentskills.io) open standard:
|
|
21
21
|
|
|
22
|
-
| Agent
|
|
23
|
-
|
|
|
24
|
-
| [Claude Code](https://claude.
|
|
25
|
-
| [Cursor](https://cursor.sh)
|
|
26
|
-
| [GitHub Copilot](https://github.com/features/copilot)
|
|
27
|
-
| [
|
|
28
|
-
| [
|
|
29
|
-
| [
|
|
30
|
-
| [
|
|
31
|
-
| [
|
|
32
|
-
| [
|
|
33
|
-
| [
|
|
22
|
+
| Agent | Status |
|
|
23
|
+
| ----------------------------------------------------- | ------ |
|
|
24
|
+
| [Claude Code](https://claude.com/product/claude-code) | ✅ |
|
|
25
|
+
| [Cursor](https://cursor.sh) | ✅ |
|
|
26
|
+
| [GitHub Copilot](https://github.com/features/copilot) | ✅ |
|
|
27
|
+
| [Gemini CLI](https://geminicli.com) | ✅ |
|
|
28
|
+
| [Windsurf](https://windsurf.com) | ✅ |
|
|
29
|
+
| [Trae](https://trae.ai) | ✅¹ |
|
|
30
|
+
| [Factory Droid](https://factory.ai) | ✅ |
|
|
31
|
+
| [OpenCode](https://opencode.ai) | ✅ |
|
|
32
|
+
| [Codex](https://openai.com/codex) | ✅ |
|
|
33
|
+
| [Antigravity](https://antigravity.google) | ✅ |
|
|
34
|
+
| [Amp](http://ampcode.com) | ✅ |
|
|
35
|
+
| [Kilo Code](https://kilocode.ai) | ✅ |
|
|
36
|
+
| [Roo Code](https://roocode.com) | ✅ |
|
|
37
|
+
| [Goose](https://block.github.io/goose) | ✅ |
|
|
38
|
+
|
|
39
|
+
¹ Trae only supports project-level installation (SOLO mode). Global installation is not available.
|
|
34
40
|
|
|
35
41
|
Missing an agent? [Create an issue](https://github.com/compilecafe/give-skill/issues)
|
|
36
42
|
|
|
@@ -122,28 +128,36 @@ npx give-skill https://github.com/org/repo/tree/main/skills/custom
|
|
|
122
128
|
| Claude Code | `.claude/skills/<name>/` |
|
|
123
129
|
| Cursor | `.cursor/skills/<name>/` |
|
|
124
130
|
| Copilot | `.github/skills/<name>/` |
|
|
131
|
+
| Gemini CLI | `.gemini/skills/<name>/` |
|
|
132
|
+
| Windsurf | `.windsurf/skills/<name>/` |
|
|
133
|
+
| Trae | `.trae/skills/<name>/` |
|
|
134
|
+
| Factory Droid | `.factory/skills/<name>/` |
|
|
125
135
|
| OpenCode | `.opencode/skill/<name>/` |
|
|
126
136
|
| Codex | `.codex/skills/<name>/` |
|
|
127
137
|
| Antigravity | `.agent/skills/<name>/` |
|
|
128
|
-
| Amp | `.agents/skills/<name>/`
|
|
129
|
-
| Kilo Code | `.kilocode/skills/<name>/`
|
|
130
|
-
| Roo Code | `.roo/skills/<name>/`
|
|
131
|
-
| Goose | `.goose/skills/<name>/`
|
|
138
|
+
| Amp | `.agents/skills/<name>/` |
|
|
139
|
+
| Kilo Code | `.kilocode/skills/<name>/` |
|
|
140
|
+
| Roo Code | `.roo/skills/<name>/` |
|
|
141
|
+
| Goose | `.goose/skills/<name>/` |
|
|
132
142
|
|
|
133
143
|
### Global Level (`--global`)
|
|
134
144
|
|
|
135
|
-
| Agent | Path
|
|
136
|
-
| ----------- |
|
|
137
|
-
| Claude Code | `~/.claude/skills/<name>/`
|
|
138
|
-
| Cursor | `~/.cursor/skills/<name>/`
|
|
139
|
-
| Copilot | `~/.copilot/skills/<name>/`
|
|
140
|
-
|
|
|
141
|
-
|
|
|
142
|
-
|
|
|
143
|
-
|
|
|
144
|
-
|
|
|
145
|
-
|
|
|
146
|
-
|
|
|
145
|
+
| Agent | Path |
|
|
146
|
+
| ----------- | -------------------------------------- |
|
|
147
|
+
| Claude Code | `~/.claude/skills/<name>/` |
|
|
148
|
+
| Cursor | `~/.cursor/skills/<name>/` |
|
|
149
|
+
| Copilot | `~/.copilot/skills/<name>/` |
|
|
150
|
+
| Gemini CLI | `~/.gemini/skills/<name>/` |
|
|
151
|
+
| Windsurf | `~/.codeium/windsurf/skills/<name>/` |
|
|
152
|
+
| Trae | Project-level only (SOLO mode) |
|
|
153
|
+
| Factory Droid | `~/.factory/skills/<name>/` |
|
|
154
|
+
| OpenCode | `~/.config/opencode/skill/<name>/` |
|
|
155
|
+
| Codex | `~/.codex/skills/<name>/` |
|
|
156
|
+
| Antigravity | `~/.gemini/antigravity/skills/<name>/` |
|
|
157
|
+
| Amp | `~/.config/agents/skills/<name>/` |
|
|
158
|
+
| Kilo Code | `~/.kilocode/skills/<name>/` |
|
|
159
|
+
| Roo Code | `~/.roo/skills/<name>/` |
|
|
160
|
+
| Goose | `~/.config/goose/skills/<name>/` |
|
|
147
161
|
|
|
148
162
|
## Creating Skills
|
|
149
163
|
|
|
@@ -175,6 +189,7 @@ For complete skill authoring guidance, see [agentskills.io](https://agentskills.
|
|
|
175
189
|
The CLI automatically searches these paths in a repository:
|
|
176
190
|
|
|
177
191
|
**Common locations:**
|
|
192
|
+
|
|
178
193
|
- `SKILL.md` (root)
|
|
179
194
|
- `skills/`
|
|
180
195
|
- `skills/.curated/`
|
|
@@ -182,9 +197,14 @@ The CLI automatically searches these paths in a repository:
|
|
|
182
197
|
- `skills/.system/`
|
|
183
198
|
|
|
184
199
|
**Agent-specific locations** (auto-detected from agent configs):
|
|
200
|
+
|
|
185
201
|
- `.claude/skills/`
|
|
186
202
|
- `.cursor/skills/`
|
|
187
203
|
- `.github/skills/`
|
|
204
|
+
- `.gemini/skills/`
|
|
205
|
+
- `.windsurf/skills/`
|
|
206
|
+
- `.trae/skills/`
|
|
207
|
+
- `.factory/skills/`
|
|
188
208
|
- `.opencode/skill/`
|
|
189
209
|
- `.codex/skills/`
|
|
190
210
|
- `.agent/skills/`
|
package/dist/index.js
CHANGED
|
@@ -1,78 +1,78 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as p1}from"node:module";var
|
|
3
|
-
`)}displayWidth(l){return sl(l).length}styleTitle(l){return l}styleUsage(l){return l.split(" ").map((
|
|
4
|
-
`+" ".repeat(
|
|
5
|
-
${
|
|
6
|
-
`)}}function sl(l){let
|
|
2
|
+
import{createRequire as p1}from"node:module";var u1=Object.create;var{getPrototypeOf:t1,defineProperty:cl,getOwnPropertyNames:d1}=Object;var r1=Object.prototype.hasOwnProperty;var g=(l,y,S)=>{S=l!=null?u1(t1(l)):{};let $=y||!l||!l.__esModule?cl(S,"default",{value:l,enumerable:!0}):S;for(let k of d1(l))if(!r1.call($,k))cl($,k,{get:()=>l[k],enumerable:!0});return $};var V=(l,y)=>()=>(y||l((y={exports:{}}).exports,y),y.exports);var D=p1(import.meta.url);var n=V((a1)=>{class bl extends Error{constructor(l,y,S){super(S);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=y,this.exitCode=l,this.nestedError=void 0}}class vl extends bl{constructor(l){super(1,"commander.invalidArgument",l);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}a1.CommanderError=bl;a1.InvalidArgumentError=vl});var t=V((fy)=>{var{InvalidArgumentError:ly}=n();class gl{constructor(l,y){switch(this.description=y||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,l[0]){case"<":this.required=!0,this._name=l.slice(1,-1);break;case"[":this.required=!1,this._name=l.slice(1,-1);break;default:this.required=!0,this._name=l;break}if(this._name.endsWith("..."))this.variadic=!0,this._name=this._name.slice(0,-3)}name(){return this._name}_collectValue(l,y){if(y===this.defaultValue||!Array.isArray(y))return[l];return y.push(l),y}default(l,y){return this.defaultValue=l,this.defaultValueDescription=y,this}argParser(l){return this.parseArg=l,this}choices(l){return this.argChoices=l.slice(),this.parseArg=(y,S)=>{if(!this.argChoices.includes(y))throw new ly(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(y,S);return y},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function yy(l){let y=l.name()+(l.variadic===!0?"...":"");return l.required?"<"+y+">":"["+y+"]"}fy.Argument=gl;fy.humanReadableArgName=yy});var Il=V((by)=>{var{humanReadableArgName:ky}=t();class hl{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(l){this.helpWidth=this.helpWidth??l.helpWidth??80}visibleCommands(l){let y=l.commands.filter(($)=>!$._hidden),S=l._getHelpCommand();if(S&&!S._hidden)y.push(S);if(this.sortSubcommands)y.sort(($,k)=>{return $.name().localeCompare(k.name())});return y}compareOptions(l,y){let S=($)=>{return $.short?$.short.replace(/^-/,""):$.long.replace(/^--/,"")};return S(l).localeCompare(S(y))}visibleOptions(l){let y=l.options.filter(($)=>!$.hidden),S=l._getHelpOption();if(S&&!S.hidden){let $=S.short&&l._findOption(S.short),k=S.long&&l._findOption(S.long);if(!$&&!k)y.push(S);else if(S.long&&!k)y.push(l.createOption(S.long,S.description));else if(S.short&&!$)y.push(l.createOption(S.short,S.description))}if(this.sortOptions)y.sort(this.compareOptions);return y}visibleGlobalOptions(l){if(!this.showGlobalOptions)return[];let y=[];for(let S=l.parent;S;S=S.parent){let $=S.options.filter((k)=>!k.hidden);y.push(...$)}if(this.sortOptions)y.sort(this.compareOptions);return y}visibleArguments(l){if(l._argsDescription)l.registeredArguments.forEach((y)=>{y.description=y.description||l._argsDescription[y.name()]||""});if(l.registeredArguments.find((y)=>y.description))return l.registeredArguments;return[]}subcommandTerm(l){let y=l.registeredArguments.map((S)=>ky(S)).join(" ");return l._name+(l._aliases[0]?"|"+l._aliases[0]:"")+(l.options.length?" [options]":"")+(y?" "+y:"")}optionTerm(l){return l.flags}argumentTerm(l){return l.name()}longestSubcommandTermLength(l,y){return y.visibleCommands(l).reduce((S,$)=>{return Math.max(S,this.displayWidth(y.styleSubcommandTerm(y.subcommandTerm($))))},0)}longestOptionTermLength(l,y){return y.visibleOptions(l).reduce((S,$)=>{return Math.max(S,this.displayWidth(y.styleOptionTerm(y.optionTerm($))))},0)}longestGlobalOptionTermLength(l,y){return y.visibleGlobalOptions(l).reduce((S,$)=>{return Math.max(S,this.displayWidth(y.styleOptionTerm(y.optionTerm($))))},0)}longestArgumentTermLength(l,y){return y.visibleArguments(l).reduce((S,$)=>{return Math.max(S,this.displayWidth(y.styleArgumentTerm(y.argumentTerm($))))},0)}commandUsage(l){let y=l._name;if(l._aliases[0])y=y+"|"+l._aliases[0];let S="";for(let $=l.parent;$;$=$.parent)S=$.name()+" "+S;return S+y+" "+l.usage()}commandDescription(l){return l.description()}subcommandDescription(l){return l.summary()||l.description()}optionDescription(l){let y=[];if(l.argChoices)y.push(`choices: ${l.argChoices.map((S)=>JSON.stringify(S)).join(", ")}`);if(l.defaultValue!==void 0){if(l.required||l.optional||l.isBoolean()&&typeof l.defaultValue==="boolean")y.push(`default: ${l.defaultValueDescription||JSON.stringify(l.defaultValue)}`)}if(l.presetArg!==void 0&&l.optional)y.push(`preset: ${JSON.stringify(l.presetArg)}`);if(l.envVar!==void 0)y.push(`env: ${l.envVar}`);if(y.length>0){let S=`(${y.join(", ")})`;if(l.description)return`${l.description} ${S}`;return S}return l.description}argumentDescription(l){let y=[];if(l.argChoices)y.push(`choices: ${l.argChoices.map((S)=>JSON.stringify(S)).join(", ")}`);if(l.defaultValue!==void 0)y.push(`default: ${l.defaultValueDescription||JSON.stringify(l.defaultValue)}`);if(y.length>0){let S=`(${y.join(", ")})`;if(l.description)return`${l.description} ${S}`;return S}return l.description}formatItemList(l,y,S){if(y.length===0)return[];return[S.styleTitle(l),...y,""]}groupItems(l,y,S){let $=new Map;return l.forEach((k)=>{let b=S(k);if(!$.has(b))$.set(b,[])}),y.forEach((k)=>{let b=S(k);if(!$.has(b))$.set(b,[]);$.get(b).push(k)}),$}formatHelp(l,y){let S=y.padWidth(l,y),$=y.helpWidth??80;function k(B,L){return y.formatItem(B,S,L,y)}let b=[`${y.styleTitle("Usage:")} ${y.styleUsage(y.commandUsage(l))}`,""],f=y.commandDescription(l);if(f.length>0)b=b.concat([y.boxWrap(y.styleCommandDescription(f),$),""]);let I=y.visibleArguments(l).map((B)=>{return k(y.styleArgumentTerm(y.argumentTerm(B)),y.styleArgumentDescription(y.argumentDescription(B)))});if(b=b.concat(this.formatItemList("Arguments:",I,y)),this.groupItems(l.options,y.visibleOptions(l),(B)=>B.helpGroupHeading??"Options:").forEach((B,L)=>{let X=B.map((P)=>{return k(y.styleOptionTerm(y.optionTerm(P)),y.styleOptionDescription(y.optionDescription(P)))});b=b.concat(this.formatItemList(L,X,y))}),y.showGlobalOptions){let B=y.visibleGlobalOptions(l).map((L)=>{return k(y.styleOptionTerm(y.optionTerm(L)),y.styleOptionDescription(y.optionDescription(L)))});b=b.concat(this.formatItemList("Global Options:",B,y))}return this.groupItems(l.commands,y.visibleCommands(l),(B)=>B.helpGroup()||"Commands:").forEach((B,L)=>{let X=B.map((P)=>{return k(y.styleSubcommandTerm(y.subcommandTerm(P)),y.styleSubcommandDescription(y.subcommandDescription(P)))});b=b.concat(this.formatItemList(L,X,y))}),b.join(`
|
|
3
|
+
`)}displayWidth(l){return sl(l).length}styleTitle(l){return l}styleUsage(l){return l.split(" ").map((y)=>{if(y==="[options]")return this.styleOptionText(y);if(y==="[command]")return this.styleSubcommandText(y);if(y[0]==="["||y[0]==="<")return this.styleArgumentText(y);return this.styleCommandText(y)}).join(" ")}styleCommandDescription(l){return this.styleDescriptionText(l)}styleOptionDescription(l){return this.styleDescriptionText(l)}styleSubcommandDescription(l){return this.styleDescriptionText(l)}styleArgumentDescription(l){return this.styleDescriptionText(l)}styleDescriptionText(l){return l}styleOptionTerm(l){return this.styleOptionText(l)}styleSubcommandTerm(l){return l.split(" ").map((y)=>{if(y==="[options]")return this.styleOptionText(y);if(y[0]==="["||y[0]==="<")return this.styleArgumentText(y);return this.styleSubcommandText(y)}).join(" ")}styleArgumentTerm(l){return this.styleArgumentText(l)}styleOptionText(l){return l}styleArgumentText(l){return l}styleSubcommandText(l){return l}styleCommandText(l){return l}padWidth(l,y){return Math.max(y.longestOptionTermLength(l,y),y.longestGlobalOptionTermLength(l,y),y.longestSubcommandTermLength(l,y),y.longestArgumentTermLength(l,y))}preformatted(l){return/\n[^\S\r\n]/.test(l)}formatItem(l,y,S,$){let b=" ".repeat(2);if(!S)return b+l;let f=l.padEnd(y+l.length-$.displayWidth(l)),I=2,R=(this.helpWidth??80)-y-I-2,B;if(R<this.minWidthToWrap||$.preformatted(S))B=S;else B=$.boxWrap(S,R).replace(/\n/g,`
|
|
4
|
+
`+" ".repeat(y+I));return b+f+" ".repeat(I)+B.replace(/\n/g,`
|
|
5
|
+
${b}`)}boxWrap(l,y){if(y<this.minWidthToWrap)return l;let S=l.split(/\r\n|\n/),$=/[\s]*[^\s]+/g,k=[];return S.forEach((b)=>{let f=b.match($);if(f===null){k.push("");return}let I=[f.shift()],T=this.displayWidth(I[0]);f.forEach((R)=>{let B=this.displayWidth(R);if(T+B<=y){I.push(R),T+=B;return}k.push(I.join(""));let L=R.trimStart();I=[L],T=this.displayWidth(L)}),k.push(I.join(""))}),k.join(`
|
|
6
|
+
`)}}function sl(l){let y=/\x1b\[\d*(;\d*)*m/g;return l.replace(y,"")}by.Help=hl;by.stripColor=sl});var Rl=V((qy)=>{var{InvalidArgumentError:Ty}=n();class ml{constructor(l,y){this.flags=l,this.description=y||"",this.required=l.includes("<"),this.optional=l.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(l),this.mandatory=!1;let S=By(l);if(this.short=S.shortFlag,this.long=S.longFlag,this.negate=!1,this.long)this.negate=this.long.startsWith("--no-");this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0,this.helpGroupHeading=void 0}default(l,y){return this.defaultValue=l,this.defaultValueDescription=y,this}preset(l){return this.presetArg=l,this}conflicts(l){return this.conflictsWith=this.conflictsWith.concat(l),this}implies(l){let y=l;if(typeof l==="string")y={[l]:!0};return this.implied=Object.assign(this.implied||{},y),this}env(l){return this.envVar=l,this}argParser(l){return this.parseArg=l,this}makeOptionMandatory(l=!0){return this.mandatory=!!l,this}hideHelp(l=!0){return this.hidden=!!l,this}_collectValue(l,y){if(y===this.defaultValue||!Array.isArray(y))return[l];return y.push(l),y}choices(l){return this.argChoices=l.slice(),this.parseArg=(y,S)=>{if(!this.argChoices.includes(y))throw new Ty(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(y,S);return y},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){if(this.negate)return il(this.name().replace(/^no-/,""));return il(this.name())}helpGroup(l){return this.helpGroupHeading=l,this}is(l){return this.short===l||this.long===l}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class Dl{constructor(l){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,l.forEach((y)=>{if(y.negate)this.negativeOptions.set(y.attributeName(),y);else this.positiveOptions.set(y.attributeName(),y)}),this.negativeOptions.forEach((y,S)=>{if(this.positiveOptions.has(S))this.dualOptions.add(S)})}valueFromOption(l,y){let S=y.attributeName();if(!this.dualOptions.has(S))return!0;let $=this.negativeOptions.get(S).presetArg,k=$!==void 0?$:!1;return y.negate===(k===l)}}function il(l){return l.split("-").reduce((y,S)=>{return y+S[0].toUpperCase()+S.slice(1)})}function By(l){let y,S,$=/^-[^-]$/,k=/^--[^-]/,b=l.split(/[ |,]+/).concat("guard");if($.test(b[0]))y=b.shift();if(k.test(b[0]))S=b.shift();if(!y&&$.test(b[0]))y=b.shift();if(!y&&k.test(b[0]))y=S,S=b.shift();if(b[0].startsWith("-")){let f=b[0],I=`option creation failed due to '${f}' in option flags '${l}'`;if(/^-[^-][^-]/.test(f))throw Error(`${I}
|
|
7
7
|
- a short flag is a single dash and a single character
|
|
8
8
|
- either use a single dash and a single character (for a short flag)
|
|
9
|
-
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if($.test(f))throw Error(`${
|
|
10
|
-
- too many short flags`);if(
|
|
11
|
-
- too many long flags`);throw Error(`${
|
|
12
|
-
- unrecognised flag format`)}if(
|
|
9
|
+
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if($.test(f))throw Error(`${I}
|
|
10
|
+
- too many short flags`);if(k.test(f))throw Error(`${I}
|
|
11
|
+
- too many long flags`);throw Error(`${I}
|
|
12
|
+
- unrecognised flag format`)}if(y===void 0&&S===void 0)throw Error(`option creation failed due to no flags found in '${l}'.`);return{shortFlag:y,longFlag:S}}qy.Option=ml;qy.DualOptions=Dl});var nl=V((Yy)=>{function Jy(l,y){if(Math.abs(l.length-y.length)>3)return Math.max(l.length,y.length);let S=[];for(let $=0;$<=l.length;$++)S[$]=[$];for(let $=0;$<=y.length;$++)S[0][$]=$;for(let $=1;$<=y.length;$++)for(let k=1;k<=l.length;k++){let b=1;if(l[k-1]===y[$-1])b=0;else b=1;if(S[k][$]=Math.min(S[k-1][$]+1,S[k][$-1]+1,S[k-1][$-1]+b),k>1&&$>1&&l[k-1]===y[$-2]&&l[k-2]===y[$-1])S[k][$]=Math.min(S[k][$],S[k-2][$-2]+1)}return S[l.length][y.length]}function Gy(l,y){if(!y||y.length===0)return"";y=Array.from(new Set(y));let S=l.startsWith("--");if(S)l=l.slice(2),y=y.map((f)=>f.slice(2));let $=[],k=3,b=0.4;if(y.forEach((f)=>{if(f.length<=1)return;let I=Jy(l,f),T=Math.max(l.length,f.length);if((T-I)/T>b){if(I<k)k=I,$=[f];else if(I===k)$.push(f)}}),$.sort((f,I)=>f.localeCompare(I)),S)$=$.map((f)=>`--${f}`);if($.length>1)return`
|
|
13
13
|
(Did you mean one of ${$.join(", ")}?)`;if($.length===1)return`
|
|
14
|
-
(Did you mean ${$[0]}?)`;return""}
|
|
15
|
-
- specify the name in Command constructor or using .name()`);if(
|
|
16
|
-
Expecting one of '${
|
|
17
|
-
- already used by option '${
|
|
18
|
-
- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(l,S
|
|
19
|
-
- if '${
|
|
14
|
+
(Did you mean ${$[0]}?)`;return""}Yy.suggestSimilar=Gy});var rl=V((My)=>{var zy=D("node:events").EventEmitter,Tl=D("node:child_process"),A=D("node:path"),d=D("node:fs"),J=D("node:process"),{Argument:Qy,humanReadableArgName:Zy}=t(),{CommanderError:Bl}=n(),{Help:Py,stripColor:Uy}=Il(),{Option:ul,DualOptions:jy}=Rl(),{suggestSimilar:tl}=nl();class Ll extends zy{constructor(l){super();this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=l||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:(y)=>J.stdout.write(y),writeErr:(y)=>J.stderr.write(y),outputError:(y,S)=>S(y),getOutHelpWidth:()=>J.stdout.isTTY?J.stdout.columns:void 0,getErrHelpWidth:()=>J.stderr.isTTY?J.stderr.columns:void 0,getOutHasColors:()=>ql()??(J.stdout.isTTY&&J.stdout.hasColors?.()),getErrHasColors:()=>ql()??(J.stderr.isTTY&&J.stderr.hasColors?.()),stripColor:(y)=>Uy(y)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={},this._helpGroupHeading=void 0,this._defaultCommandGroup=void 0,this._defaultOptionGroup=void 0}copyInheritedSettings(l){return this._outputConfiguration=l._outputConfiguration,this._helpOption=l._helpOption,this._helpCommand=l._helpCommand,this._helpConfiguration=l._helpConfiguration,this._exitCallback=l._exitCallback,this._storeOptionsAsProperties=l._storeOptionsAsProperties,this._combineFlagAndOptionalValue=l._combineFlagAndOptionalValue,this._allowExcessArguments=l._allowExcessArguments,this._enablePositionalOptions=l._enablePositionalOptions,this._showHelpAfterError=l._showHelpAfterError,this._showSuggestionAfterError=l._showSuggestionAfterError,this}_getCommandAndAncestors(){let l=[];for(let y=this;y;y=y.parent)l.push(y);return l}command(l,y,S){let $=y,k=S;if(typeof $==="object"&&$!==null)k=$,$=null;k=k||{};let[,b,f]=l.match(/([^ ]+) *(.*)/),I=this.createCommand(b);if($)I.description($),I._executableHandler=!0;if(k.isDefault)this._defaultCommandName=I._name;if(I._hidden=!!(k.noHelp||k.hidden),I._executableFile=k.executableFile||null,f)I.arguments(f);if(this._registerCommand(I),I.parent=this,I.copyInheritedSettings(this),$)return this;return I}createCommand(l){return new Ll(l)}createHelp(){return Object.assign(new Py,this.configureHelp())}configureHelp(l){if(l===void 0)return this._helpConfiguration;return this._helpConfiguration=l,this}configureOutput(l){if(l===void 0)return this._outputConfiguration;return this._outputConfiguration={...this._outputConfiguration,...l},this}showHelpAfterError(l=!0){if(typeof l!=="string")l=!!l;return this._showHelpAfterError=l,this}showSuggestionAfterError(l=!0){return this._showSuggestionAfterError=!!l,this}addCommand(l,y){if(!l._name)throw Error(`Command passed to .addCommand() must have a name
|
|
15
|
+
- specify the name in Command constructor or using .name()`);if(y=y||{},y.isDefault)this._defaultCommandName=l._name;if(y.noHelp||y.hidden)l._hidden=!0;return this._registerCommand(l),l.parent=this,l._checkForBrokenPassThrough(),this}createArgument(l,y){return new Qy(l,y)}argument(l,y,S,$){let k=this.createArgument(l,y);if(typeof S==="function")k.default($).argParser(S);else k.default(S);return this.addArgument(k),this}arguments(l){return l.trim().split(/ +/).forEach((y)=>{this.argument(y)}),this}addArgument(l){let y=this.registeredArguments.slice(-1)[0];if(y?.variadic)throw Error(`only the last argument can be variadic '${y.name()}'`);if(l.required&&l.defaultValue!==void 0&&l.parseArg===void 0)throw Error(`a default value for a required argument is never used: '${l.name()}'`);return this.registeredArguments.push(l),this}helpCommand(l,y){if(typeof l==="boolean"){if(this._addImplicitHelpCommand=l,l&&this._defaultCommandGroup)this._initCommandGroup(this._getHelpCommand());return this}let S=l??"help [command]",[,$,k]=S.match(/([^ ]+) *(.*)/),b=y??"display help for command",f=this.createCommand($);if(f.helpOption(!1),k)f.arguments(k);if(b)f.description(b);if(this._addImplicitHelpCommand=!0,this._helpCommand=f,l||y)this._initCommandGroup(f);return this}addHelpCommand(l,y){if(typeof l!=="object")return this.helpCommand(l,y),this;return this._addImplicitHelpCommand=!0,this._helpCommand=l,this._initCommandGroup(l),this}_getHelpCommand(){if(this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))){if(this._helpCommand===void 0)this.helpCommand(void 0,void 0);return this._helpCommand}return null}hook(l,y){let S=["preSubcommand","preAction","postAction"];if(!S.includes(l))throw Error(`Unexpected value for event passed to hook : '${l}'.
|
|
16
|
+
Expecting one of '${S.join("', '")}'`);if(this._lifeCycleHooks[l])this._lifeCycleHooks[l].push(y);else this._lifeCycleHooks[l]=[y];return this}exitOverride(l){if(l)this._exitCallback=l;else this._exitCallback=(y)=>{if(y.code!=="commander.executeSubCommandAsync")throw y};return this}_exit(l,y,S){if(this._exitCallback)this._exitCallback(new Bl(l,y,S));J.exit(l)}action(l){let y=(S)=>{let $=this.registeredArguments.length,k=S.slice(0,$);if(this._storeOptionsAsProperties)k[$]=this;else k[$]=this.opts();return k.push(this),l.apply(this,k)};return this._actionHandler=y,this}createOption(l,y){return new ul(l,y)}_callParseArg(l,y,S,$){try{return l.parseArg(y,S)}catch(k){if(k.code==="commander.invalidArgument"){let b=`${$} ${k.message}`;this.error(b,{exitCode:k.exitCode,code:k.code})}throw k}}_registerOption(l){let y=l.short&&this._findOption(l.short)||l.long&&this._findOption(l.long);if(y){let S=l.long&&this._findOption(l.long)?l.long:l.short;throw Error(`Cannot add option '${l.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${S}'
|
|
17
|
+
- already used by option '${y.flags}'`)}this._initOptionGroup(l),this.options.push(l)}_registerCommand(l){let y=($)=>{return[$.name()].concat($.aliases())},S=y(l).find(($)=>this._findCommand($));if(S){let $=y(this._findCommand(S)).join("|"),k=y(l).join("|");throw Error(`cannot add command '${k}' as already have command '${$}'`)}this._initCommandGroup(l),this.commands.push(l)}addOption(l){this._registerOption(l);let y=l.name(),S=l.attributeName();if(l.negate){let k=l.long.replace(/^--no-/,"--");if(!this._findOption(k))this.setOptionValueWithSource(S,l.defaultValue===void 0?!0:l.defaultValue,"default")}else if(l.defaultValue!==void 0)this.setOptionValueWithSource(S,l.defaultValue,"default");let $=(k,b,f)=>{if(k==null&&l.presetArg!==void 0)k=l.presetArg;let I=this.getOptionValue(S);if(k!==null&&l.parseArg)k=this._callParseArg(l,k,I,b);else if(k!==null&&l.variadic)k=l._collectValue(k,I);if(k==null)if(l.negate)k=!1;else if(l.isBoolean()||l.optional)k=!0;else k="";this.setOptionValueWithSource(S,k,f)};if(this.on("option:"+y,(k)=>{let b=`error: option '${l.flags}' argument '${k}' is invalid.`;$(k,b,"cli")}),l.envVar)this.on("optionEnv:"+y,(k)=>{let b=`error: option '${l.flags}' value '${k}' from env '${l.envVar}' is invalid.`;$(k,b,"env")});return this}_optionEx(l,y,S,$,k){if(typeof y==="object"&&y instanceof ul)throw Error("To add an Option object use addOption() instead of option() or requiredOption()");let b=this.createOption(y,S);if(b.makeOptionMandatory(!!l.mandatory),typeof $==="function")b.default(k).argParser($);else if($ instanceof RegExp){let f=$;$=(I,T)=>{let R=f.exec(I);return R?R[0]:T},b.default(k).argParser($)}else b.default($);return this.addOption(b)}option(l,y,S,$){return this._optionEx({},l,y,S,$)}requiredOption(l,y,S,$){return this._optionEx({mandatory:!0},l,y,S,$)}combineFlagAndOptionalValue(l=!0){return this._combineFlagAndOptionalValue=!!l,this}allowUnknownOption(l=!0){return this._allowUnknownOption=!!l,this}allowExcessArguments(l=!0){return this._allowExcessArguments=!!l,this}enablePositionalOptions(l=!0){return this._enablePositionalOptions=!!l,this}passThroughOptions(l=!0){return this._passThroughOptions=!!l,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(l=!0){if(this.options.length)throw Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!l,this}getOptionValue(l){if(this._storeOptionsAsProperties)return this[l];return this._optionValues[l]}setOptionValue(l,y){return this.setOptionValueWithSource(l,y,void 0)}setOptionValueWithSource(l,y,S){if(this._storeOptionsAsProperties)this[l]=y;else this._optionValues[l]=y;return this._optionValueSources[l]=S,this}getOptionValueSource(l){return this._optionValueSources[l]}getOptionValueSourceWithGlobals(l){let y;return this._getCommandAndAncestors().forEach((S)=>{if(S.getOptionValueSource(l)!==void 0)y=S.getOptionValueSource(l)}),y}_prepareUserArgs(l,y){if(l!==void 0&&!Array.isArray(l))throw Error("first parameter to parse must be array or undefined");if(y=y||{},l===void 0&&y.from===void 0){if(J.versions?.electron)y.from="electron";let $=J.execArgv??[];if($.includes("-e")||$.includes("--eval")||$.includes("-p")||$.includes("--print"))y.from="eval"}if(l===void 0)l=J.argv;this.rawArgs=l.slice();let S;switch(y.from){case void 0:case"node":this._scriptPath=l[1],S=l.slice(2);break;case"electron":if(J.defaultApp)this._scriptPath=l[1],S=l.slice(2);else S=l.slice(1);break;case"user":S=l.slice(0);break;case"eval":S=l.slice(1);break;default:throw Error(`unexpected parse option { from: '${y.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);return this._name=this._name||"program",S}parse(l,y){this._prepareForParse();let S=this._prepareUserArgs(l,y);return this._parseCommand([],S),this}async parseAsync(l,y){this._prepareForParse();let S=this._prepareUserArgs(l,y);return await this._parseCommand([],S),this}_prepareForParse(){if(this._savedState===null)this.saveStateBeforeParse();else this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw Error(`Can not call parse again when storeOptionsAsProperties is true.
|
|
18
|
+
- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(l,y,S){if(d.existsSync(l))return;let $=y?`searched for local subcommand relative to directory '${y}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",k=`'${l}' does not exist
|
|
19
|
+
- if '${S}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
|
|
20
20
|
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
|
|
21
|
-
- ${$}`;throw Error(
|
|
21
|
+
- ${$}`;throw Error(k)}_executeSubCommand(l,y){y=y.slice();let S=!1,$=[".js",".ts",".tsx",".mjs",".cjs"];function k(R,B){let L=A.resolve(R,B);if(d.existsSync(L))return L;if($.includes(A.extname(B)))return;let X=$.find((P)=>d.existsSync(`${L}${P}`));if(X)return`${L}${X}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let b=l._executableFile||`${this._name}-${l._name}`,f=this._executableDir||"";if(this._scriptPath){let R;try{R=d.realpathSync(this._scriptPath)}catch{R=this._scriptPath}f=A.resolve(A.dirname(R),f)}if(f){let R=k(f,b);if(!R&&!l._executableFile&&this._scriptPath){let B=A.basename(this._scriptPath,A.extname(this._scriptPath));if(B!==this._name)R=k(f,`${B}-${l._name}`)}b=R||b}S=$.includes(A.extname(b));let I;if(J.platform!=="win32")if(S)y.unshift(b),y=dl(J.execArgv).concat(y),I=Tl.spawn(J.argv[0],y,{stdio:"inherit"});else I=Tl.spawn(b,y,{stdio:"inherit"});else this._checkForMissingExecutable(b,f,l._name),y.unshift(b),y=dl(J.execArgv).concat(y),I=Tl.spawn(J.execPath,y,{stdio:"inherit"});if(!I.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((B)=>{J.on(B,()=>{if(I.killed===!1&&I.exitCode===null)I.kill(B)})});let T=this._exitCallback;I.on("close",(R)=>{if(R=R??1,!T)J.exit(R);else T(new Bl(R,"commander.executeSubCommandAsync","(close)"))}),I.on("error",(R)=>{if(R.code==="ENOENT")this._checkForMissingExecutable(b,f,l._name);else if(R.code==="EACCES")throw Error(`'${b}' not executable`);if(!T)J.exit(1);else{let B=new Bl(1,"commander.executeSubCommandAsync","(error)");B.nestedError=R,T(B)}}),this.runningCommand=I}_dispatchSubcommand(l,y,S){let $=this._findCommand(l);if(!$)this.help({error:!0});$._prepareForParse();let k;return k=this._chainOrCallSubCommandHook(k,$,"preSubcommand"),k=this._chainOrCall(k,()=>{if($._executableHandler)this._executeSubCommand($,y.concat(S));else return $._parseCommand(y,S)}),k}_dispatchHelpCommand(l){if(!l)this.help();let y=this._findCommand(l);if(y&&!y._executableHandler)y.help();return this._dispatchSubcommand(l,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach((l,y)=>{if(l.required&&this.args[y]==null)this.missingArgument(l.name())}),this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)return;if(this.args.length>this.registeredArguments.length)this._excessArguments(this.args)}_processArguments(){let l=(S,$,k)=>{let b=$;if($!==null&&S.parseArg){let f=`error: command-argument value '${$}' is invalid for argument '${S.name()}'.`;b=this._callParseArg(S,$,k,f)}return b};this._checkNumberOfArguments();let y=[];this.registeredArguments.forEach((S,$)=>{let k=S.defaultValue;if(S.variadic){if($<this.args.length){if(k=this.args.slice($),S.parseArg)k=k.reduce((b,f)=>{return l(S,f,b)},S.defaultValue)}else if(k===void 0)k=[]}else if($<this.args.length){if(k=this.args[$],S.parseArg)k=l(S,k,S.defaultValue)}y[$]=k}),this.processedArgs=y}_chainOrCall(l,y){if(l?.then&&typeof l.then==="function")return l.then(()=>y());return y()}_chainOrCallHooks(l,y){let S=l,$=[];if(this._getCommandAndAncestors().reverse().filter((k)=>k._lifeCycleHooks[y]!==void 0).forEach((k)=>{k._lifeCycleHooks[y].forEach((b)=>{$.push({hookedCommand:k,callback:b})})}),y==="postAction")$.reverse();return $.forEach((k)=>{S=this._chainOrCall(S,()=>{return k.callback(k.hookedCommand,this)})}),S}_chainOrCallSubCommandHook(l,y,S){let $=l;if(this._lifeCycleHooks[S]!==void 0)this._lifeCycleHooks[S].forEach((k)=>{$=this._chainOrCall($,()=>{return k(this,y)})});return $}_parseCommand(l,y){let S=this.parseOptions(y);if(this._parseOptionsEnv(),this._parseOptionsImplied(),l=l.concat(S.operands),y=S.unknown,this.args=l.concat(y),l&&this._findCommand(l[0]))return this._dispatchSubcommand(l[0],l.slice(1),y);if(this._getHelpCommand()&&l[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(l[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(y),this._dispatchSubcommand(this._defaultCommandName,l,y);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(S.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let $=()=>{if(S.unknown.length>0)this.unknownOption(S.unknown[0])},k=`command:${this.name()}`;if(this._actionHandler){$(),this._processArguments();let b;if(b=this._chainOrCallHooks(b,"preAction"),b=this._chainOrCall(b,()=>this._actionHandler(this.processedArgs)),this.parent)b=this._chainOrCall(b,()=>{this.parent.emit(k,l,y)});return b=this._chainOrCallHooks(b,"postAction"),b}if(this.parent?.listenerCount(k))$(),this._processArguments(),this.parent.emit(k,l,y);else if(l.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",l,y);if(this.listenerCount("command:*"))this.emit("command:*",l,y);else if(this.commands.length)this.unknownCommand();else $(),this._processArguments()}else if(this.commands.length)$(),this.help({error:!0});else $(),this._processArguments()}_findCommand(l){if(!l)return;return this.commands.find((y)=>y._name===l||y._aliases.includes(l))}_findOption(l){return this.options.find((y)=>y.is(l))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach((l)=>{l.options.forEach((y)=>{if(y.mandatory&&l.getOptionValue(y.attributeName())===void 0)l.missingMandatoryOptionValue(y)})})}_checkForConflictingLocalOptions(){let l=this.options.filter((S)=>{let $=S.attributeName();if(this.getOptionValue($)===void 0)return!1;return this.getOptionValueSource($)!=="default"});l.filter((S)=>S.conflictsWith.length>0).forEach((S)=>{let $=l.find((k)=>S.conflictsWith.includes(k.attributeName()));if($)this._conflictingOption(S,$)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach((l)=>{l._checkForConflictingLocalOptions()})}parseOptions(l){let y=[],S=[],$=y;function k(R){return R.length>1&&R[0]==="-"}let b=(R)=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(R))return!1;return!this._getCommandAndAncestors().some((B)=>B.options.map((L)=>L.short).some((L)=>/^-\d$/.test(L)))},f=null,I=null,T=0;while(T<l.length||I){let R=I??l[T++];if(I=null,R==="--"){if($===S)$.push(R);$.push(...l.slice(T));break}if(f&&(!k(R)||b(R))){this.emit(`option:${f.name()}`,R);continue}if(f=null,k(R)){let B=this._findOption(R);if(B){if(B.required){let L=l[T++];if(L===void 0)this.optionMissingArgument(B);this.emit(`option:${B.name()}`,L)}else if(B.optional){let L=null;if(T<l.length&&(!k(l[T])||b(l[T])))L=l[T++];this.emit(`option:${B.name()}`,L)}else this.emit(`option:${B.name()}`);f=B.variadic?B:null;continue}}if(R.length>2&&R[0]==="-"&&R[1]!=="-"){let B=this._findOption(`-${R[1]}`);if(B){if(B.required||B.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${B.name()}`,R.slice(2));else this.emit(`option:${B.name()}`),I=`-${R.slice(2)}`;continue}}if(/^--[^=]+=/.test(R)){let B=R.indexOf("="),L=this._findOption(R.slice(0,B));if(L&&(L.required||L.optional)){this.emit(`option:${L.name()}`,R.slice(B+1));continue}}if($===y&&k(R)&&!(this.commands.length===0&&b(R)))$=S;if((this._enablePositionalOptions||this._passThroughOptions)&&y.length===0&&S.length===0){if(this._findCommand(R)){y.push(R),S.push(...l.slice(T));break}else if(this._getHelpCommand()&&R===this._getHelpCommand().name()){y.push(R,...l.slice(T));break}else if(this._defaultCommandName){S.push(R,...l.slice(T));break}}if(this._passThroughOptions){$.push(R,...l.slice(T));break}$.push(R)}return{operands:y,unknown:S}}opts(){if(this._storeOptionsAsProperties){let l={},y=this.options.length;for(let S=0;S<y;S++){let $=this.options[S].attributeName();l[$]=$===this._versionOptionName?this._version:this[$]}return l}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((l,y)=>Object.assign(l,y.opts()),{})}error(l,y){if(this._outputConfiguration.outputError(`${l}
|
|
22
22
|
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
|
|
23
23
|
`);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
|
|
24
|
-
`),this.outputHelp({error:!0});let y
|
|
25
|
-
`),this._exit(0,"commander.version",l)}),this}description(l,
|
|
26
|
-
Expecting one of '${
|
|
27
|
-
`)}),this}_outputHelpIfRequested(l){let S=this._getHelpOption();if(S&&l.find(($)=>S.is($)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function dl(l){return l.map((S)=>{if(!S.startsWith("--inspect"))return S;let y,$="127.0.0.1",b="9229",I;if((I=S.match(/^(--inspect(-brk)?)$/))!==null)y=I[1];else if((I=S.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(y=I[1],/^\d+$/.test(I[3]))b=I[3];else $=I[3];else if((I=S.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)y=I[1],$=I[3],b=I[4];if(y&&b!=="0")return`${y}=${$}:${parseInt(b)+1}`;return S})}function ql(){if(J.env.NO_COLOR||J.env.FORCE_COLOR==="0"||J.env.FORCE_COLOR==="false")return!1;if(J.env.FORCE_COLOR||J.env.CLICOLOR_FORCE!==void 0)return!0;return}MS.Command=_l;MS.useColor=ql});var el=V((NS)=>{var{Argument:pl}=t(),{Command:Ll}=rl(),{CommanderError:WS,InvalidArgumentError:al}=u(),{Help:wS}=kl(),{Option:ol}=Rl();NS.program=new Ll;NS.createCommand=(l)=>new Ll(l);NS.createOption=(l,S)=>new ol(l,S);NS.createArgument=(l,S)=>new pl(l,S);NS.Command=Ll;NS.Option=ol;NS.Argument=pl;NS.Help=wS;NS.CommanderError=WS;NS.InvalidArgumentError=al;NS.InvalidOptionArgumentError=al});var Xl=V((Py,S1)=>{var Yl={to(l,S){if(!S)return`\x1B[${l+1}G`;return`\x1B[${S+1};${l+1}H`},move(l,S){let y="";if(l<0)y+=`\x1B[${-l}D`;else if(l>0)y+=`\x1B[${l}C`;if(S<0)y+=`\x1B[${-S}A`;else if(S>0)y+=`\x1B[${S}B`;return y},up:(l=1)=>`\x1B[${l}A`,down:(l=1)=>`\x1B[${l}B`,forward:(l=1)=>`\x1B[${l}C`,backward:(l=1)=>`\x1B[${l}D`,nextLine:(l=1)=>"\x1B[E".repeat(l),prevLine:(l=1)=>"\x1B[F".repeat(l),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},sS={up:(l=1)=>"\x1B[S".repeat(l),down:(l=1)=>"\x1B[T".repeat(l)},iS={screen:"\x1B[2J",up:(l=1)=>"\x1B[1J".repeat(l),down:(l=1)=>"\x1B[J".repeat(l),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(l){let S="";for(let y=0;y<l;y++)S+=this.line+(y<l-1?Yl.up():"");if(l)S+=Yl.left;return S}};S1.exports={cursor:Yl,scroll:sS,erase:iS,beep:"\x07"}});var a=V((Uy,Gl)=>{var p=process||{},f1=p.argv||[],r=p.env||{},mS=!(!!r.NO_COLOR||f1.includes("--no-color"))&&(!!r.FORCE_COLOR||f1.includes("--color")||p.platform==="win32"||(p.stdout||{}).isTTY&&r.TERM!=="dumb"||!!r.CI),DS=(l,S,y=l)=>($)=>{let b=""+$,I=b.indexOf(S,l.length);return~I?l+uS(b,S,y,I)+S:l+b+S},uS=(l,S,y,$)=>{let b="",I=0;do b+=l.substring(I,$)+y,I=$+S.length,$=l.indexOf(S,I);while(~$);return b+l.substring(I)},y1=(l=mS)=>{let S=l?DS:()=>String;return{isColorSupported:l,reset:S("\x1B[0m","\x1B[0m"),bold:S("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:S("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:S("\x1B[3m","\x1B[23m"),underline:S("\x1B[4m","\x1B[24m"),inverse:S("\x1B[7m","\x1B[27m"),hidden:S("\x1B[8m","\x1B[28m"),strikethrough:S("\x1B[9m","\x1B[29m"),black:S("\x1B[30m","\x1B[39m"),red:S("\x1B[31m","\x1B[39m"),green:S("\x1B[32m","\x1B[39m"),yellow:S("\x1B[33m","\x1B[39m"),blue:S("\x1B[34m","\x1B[39m"),magenta:S("\x1B[35m","\x1B[39m"),cyan:S("\x1B[36m","\x1B[39m"),white:S("\x1B[37m","\x1B[39m"),gray:S("\x1B[90m","\x1B[39m"),bgBlack:S("\x1B[40m","\x1B[49m"),bgRed:S("\x1B[41m","\x1B[49m"),bgGreen:S("\x1B[42m","\x1B[49m"),bgYellow:S("\x1B[43m","\x1B[49m"),bgBlue:S("\x1B[44m","\x1B[49m"),bgMagenta:S("\x1B[45m","\x1B[49m"),bgCyan:S("\x1B[46m","\x1B[49m"),bgWhite:S("\x1B[47m","\x1B[49m"),blackBright:S("\x1B[90m","\x1B[39m"),redBright:S("\x1B[91m","\x1B[39m"),greenBright:S("\x1B[92m","\x1B[39m"),yellowBright:S("\x1B[93m","\x1B[39m"),blueBright:S("\x1B[94m","\x1B[39m"),magentaBright:S("\x1B[95m","\x1B[39m"),cyanBright:S("\x1B[96m","\x1B[39m"),whiteBright:S("\x1B[97m","\x1B[39m"),bgBlackBright:S("\x1B[100m","\x1B[49m"),bgRedBright:S("\x1B[101m","\x1B[49m"),bgGreenBright:S("\x1B[102m","\x1B[49m"),bgYellowBright:S("\x1B[103m","\x1B[49m"),bgBlueBright:S("\x1B[104m","\x1B[49m"),bgMagentaBright:S("\x1B[105m","\x1B[49m"),bgCyanBright:S("\x1B[106m","\x1B[49m"),bgWhiteBright:S("\x1B[107m","\x1B[49m")}};Gl.exports=y1();Gl.exports.createColors=y1});var l1=c(el(),1),{program:Jl,createCommand:By,createArgument:qy,createOption:_y,CommanderError:Ly,InvalidArgumentError:Jy,InvalidOptionArgumentError:Yy,Command:Xy,Argument:Gy,Option:zy,Help:Qy}=l1.default;var M=c(Xl(),1);import{stdin as L1,stdout as J1}from"node:process";import*as O from"node:readline";import $1 from"node:readline";import{Writable as nS}from"node:stream";function tS({onlyFirst:l=!1}={}){let S=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(S,l?void 0:"g")}var dS=tS();function Y1(l){if(typeof l!="string")throw TypeError(`Expected a \`string\`, got \`${typeof l}\``);return l.replace(dS,"")}function X1(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}var G1={exports:{}};(function(l){var S={};l.exports=S,S.eastAsianWidth=function($){var b=$.charCodeAt(0),I=$.length==2?$.charCodeAt(1):0,f=b;return 55296<=b&&b<=56319&&56320<=I&&I<=57343&&(b&=1023,I&=1023,f=b<<10|I,f+=65536),f==12288||65281<=f&&f<=65376||65504<=f&&f<=65510?"F":f==8361||65377<=f&&f<=65470||65474<=f&&f<=65479||65482<=f&&f<=65487||65490<=f&&f<=65495||65498<=f&&f<=65500||65512<=f&&f<=65518?"H":4352<=f&&f<=4447||4515<=f&&f<=4519||4602<=f&&f<=4607||9001<=f&&f<=9002||11904<=f&&f<=11929||11931<=f&&f<=12019||12032<=f&&f<=12245||12272<=f&&f<=12283||12289<=f&&f<=12350||12353<=f&&f<=12438||12441<=f&&f<=12543||12549<=f&&f<=12589||12593<=f&&f<=12686||12688<=f&&f<=12730||12736<=f&&f<=12771||12784<=f&&f<=12830||12832<=f&&f<=12871||12880<=f&&f<=13054||13056<=f&&f<=19903||19968<=f&&f<=42124||42128<=f&&f<=42182||43360<=f&&f<=43388||44032<=f&&f<=55203||55216<=f&&f<=55238||55243<=f&&f<=55291||63744<=f&&f<=64255||65040<=f&&f<=65049||65072<=f&&f<=65106||65108<=f&&f<=65126||65128<=f&&f<=65131||110592<=f&&f<=110593||127488<=f&&f<=127490||127504<=f&&f<=127546||127552<=f&&f<=127560||127568<=f&&f<=127569||131072<=f&&f<=194367||177984<=f&&f<=196605||196608<=f&&f<=262141?"W":32<=f&&f<=126||162<=f&&f<=163||165<=f&&f<=166||f==172||f==175||10214<=f&&f<=10221||10629<=f&&f<=10630?"Na":f==161||f==164||167<=f&&f<=168||f==170||173<=f&&f<=174||176<=f&&f<=180||182<=f&&f<=186||188<=f&&f<=191||f==198||f==208||215<=f&&f<=216||222<=f&&f<=225||f==230||232<=f&&f<=234||236<=f&&f<=237||f==240||242<=f&&f<=243||247<=f&&f<=250||f==252||f==254||f==257||f==273||f==275||f==283||294<=f&&f<=295||f==299||305<=f&&f<=307||f==312||319<=f&&f<=322||f==324||328<=f&&f<=331||f==333||338<=f&&f<=339||358<=f&&f<=359||f==363||f==462||f==464||f==466||f==468||f==470||f==472||f==474||f==476||f==593||f==609||f==708||f==711||713<=f&&f<=715||f==717||f==720||728<=f&&f<=731||f==733||f==735||768<=f&&f<=879||913<=f&&f<=929||931<=f&&f<=937||945<=f&&f<=961||963<=f&&f<=969||f==1025||1040<=f&&f<=1103||f==1105||f==8208||8211<=f&&f<=8214||8216<=f&&f<=8217||8220<=f&&f<=8221||8224<=f&&f<=8226||8228<=f&&f<=8231||f==8240||8242<=f&&f<=8243||f==8245||f==8251||f==8254||f==8308||f==8319||8321<=f&&f<=8324||f==8364||f==8451||f==8453||f==8457||f==8467||f==8470||8481<=f&&f<=8482||f==8486||f==8491||8531<=f&&f<=8532||8539<=f&&f<=8542||8544<=f&&f<=8555||8560<=f&&f<=8569||f==8585||8592<=f&&f<=8601||8632<=f&&f<=8633||f==8658||f==8660||f==8679||f==8704||8706<=f&&f<=8707||8711<=f&&f<=8712||f==8715||f==8719||f==8721||f==8725||f==8730||8733<=f&&f<=8736||f==8739||f==8741||8743<=f&&f<=8748||f==8750||8756<=f&&f<=8759||8764<=f&&f<=8765||f==8776||f==8780||f==8786||8800<=f&&f<=8801||8804<=f&&f<=8807||8810<=f&&f<=8811||8814<=f&&f<=8815||8834<=f&&f<=8835||8838<=f&&f<=8839||f==8853||f==8857||f==8869||f==8895||f==8978||9312<=f&&f<=9449||9451<=f&&f<=9547||9552<=f&&f<=9587||9600<=f&&f<=9615||9618<=f&&f<=9621||9632<=f&&f<=9633||9635<=f&&f<=9641||9650<=f&&f<=9651||9654<=f&&f<=9655||9660<=f&&f<=9661||9664<=f&&f<=9665||9670<=f&&f<=9672||f==9675||9678<=f&&f<=9681||9698<=f&&f<=9701||f==9711||9733<=f&&f<=9734||f==9737||9742<=f&&f<=9743||9748<=f&&f<=9749||f==9756||f==9758||f==9792||f==9794||9824<=f&&f<=9825||9827<=f&&f<=9829||9831<=f&&f<=9834||9836<=f&&f<=9837||f==9839||9886<=f&&f<=9887||9918<=f&&f<=9919||9924<=f&&f<=9933||9935<=f&&f<=9953||f==9955||9960<=f&&f<=9983||f==10045||f==10071||10102<=f&&f<=10111||11093<=f&&f<=11097||12872<=f&&f<=12879||57344<=f&&f<=63743||65024<=f&&f<=65039||f==65533||127232<=f&&f<=127242||127248<=f&&f<=127277||127280<=f&&f<=127337||127344<=f&&f<=127386||917760<=f&&f<=917999||983040<=f&&f<=1048573||1048576<=f&&f<=1114109?"A":"N"},S.characterLength=function($){var b=this.eastAsianWidth($);return b=="F"||b=="W"||b=="A"?2:1};function y($){return $.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}S.length=function($){for(var b=y($),I=0,f=0;f<b.length;f++)I=I+this.characterLength(b[f]);return I},S.slice=function($,b,I){textLen=S.length($),b=b||0,I=I||1,b<0&&(b=textLen+b),I<0&&(I=textLen+I);for(var f="",k=0,T=y($),R=0;R<T.length;R++){var B=T[R],_=S.length(B);if(k>=b-(_==2?1:0))if(k+_<=I)f+=B;else break;k+=_}return f}})(G1);var rS=G1.exports,pS=X1(rS),aS=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},oS=X1(aS);function n(l,S={}){if(typeof l!="string"||l.length===0||(S={ambiguousIsNarrow:!0,...S},l=Y1(l),l.length===0))return 0;l=l.replace(oS()," ");let y=S.ambiguousIsNarrow?1:2,$=0;for(let b of l){let I=b.codePointAt(0);if(I<=31||I>=127&&I<=159||I>=768&&I<=879)continue;switch(pS.eastAsianWidth(b)){case"F":case"W":$+=2;break;case"A":$+=y;break;default:$+=1}}return $}var zl=10,b1=(l=0)=>(S)=>`\x1B[${S+l}m`,I1=(l=0)=>(S)=>`\x1B[${38+l};5;${S}m`,k1=(l=0)=>(S,y,$)=>`\x1B[${38+l};2;${S};${y};${$}m`,z={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(z.modifier);var eS=Object.keys(z.color),lf=Object.keys(z.bgColor);[...eS,...lf];function Sf(){let l=new Map;for(let[S,y]of Object.entries(z)){for(let[$,b]of Object.entries(y))z[$]={open:`\x1B[${b[0]}m`,close:`\x1B[${b[1]}m`},y[$]=z[$],l.set(b[0],b[1]);Object.defineProperty(z,S,{value:y,enumerable:!1})}return Object.defineProperty(z,"codes",{value:l,enumerable:!1}),z.color.close="\x1B[39m",z.bgColor.close="\x1B[49m",z.color.ansi=b1(),z.color.ansi256=I1(),z.color.ansi16m=k1(),z.bgColor.ansi=b1(zl),z.bgColor.ansi256=I1(zl),z.bgColor.ansi16m=k1(zl),Object.defineProperties(z,{rgbToAnsi256:{value:(S,y,$)=>S===y&&y===$?S<8?16:S>248?231:Math.round((S-8)/247*24)+232:16+36*Math.round(S/255*5)+6*Math.round(y/255*5)+Math.round($/255*5),enumerable:!1},hexToRgb:{value:(S)=>{let y=/[a-f\d]{6}|[a-f\d]{3}/i.exec(S.toString(16));if(!y)return[0,0,0];let[$]=y;$.length===3&&($=[...$].map((I)=>I+I).join(""));let b=Number.parseInt($,16);return[b>>16&255,b>>8&255,b&255]},enumerable:!1},hexToAnsi256:{value:(S)=>z.rgbToAnsi256(...z.hexToRgb(S)),enumerable:!1},ansi256ToAnsi:{value:(S)=>{if(S<8)return 30+S;if(S<16)return 90+(S-8);let y,$,b;if(S>=232)y=((S-232)*10+8)/255,$=y,b=y;else{S-=16;let k=S%36;y=Math.floor(S/36)/5,$=Math.floor(k/6)/5,b=k%6/5}let I=Math.max(y,$,b)*2;if(I===0)return 30;let f=30+(Math.round(b)<<2|Math.round($)<<1|Math.round(y));return I===2&&(f+=60),f},enumerable:!1},rgbToAnsi:{value:(S,y,$)=>z.ansi256ToAnsi(z.rgbToAnsi256(S,y,$)),enumerable:!1},hexToAnsi:{value:(S)=>z.ansi256ToAnsi(z.hexToAnsi256(S)),enumerable:!1}}),z}var ff=Sf(),ll=new Set(["\x1B",""]),yf=39,Pl="\x07",z1="[",$f="]",Q1="m",Ul=`${$f}8;;`,R1=(l)=>`${ll.values().next().value}${z1}${l}${Q1}`,T1=(l)=>`${ll.values().next().value}${Ul}${l}${Pl}`,bf=(l)=>l.split(" ").map((S)=>n(S)),Ql=(l,S,y)=>{let $=[...S],b=!1,I=!1,f=n(Y1(l[l.length-1]));for(let[k,T]of $.entries()){let R=n(T);if(f+R<=y?l[l.length-1]+=T:(l.push(T),f=0),ll.has(T)&&(b=!0,I=$.slice(k+1).join("").startsWith(Ul)),b){I?T===Pl&&(b=!1,I=!1):T===Q1&&(b=!1);continue}f+=R,f===y&&k<$.length-1&&(l.push(""),f=0)}!f&&l[l.length-1].length>0&&l.length>1&&(l[l.length-2]+=l.pop())},If=(l)=>{let S=l.split(" "),y=S.length;for(;y>0&&!(n(S[y-1])>0);)y--;return y===S.length?l:S.slice(0,y).join(" ")+S.slice(y).join("")},kf=(l,S,y={})=>{if(y.trim!==!1&&l.trim()==="")return"";let $="",b,I,f=bf(l),k=[""];for(let[R,B]of l.split(" ").entries()){y.trim!==!1&&(k[k.length-1]=k[k.length-1].trimStart());let _=n(k[k.length-1]);if(R!==0&&(_>=S&&(y.wordWrap===!1||y.trim===!1)&&(k.push(""),_=0),(_>0||y.trim===!1)&&(k[k.length-1]+=" ",_++)),y.hard&&f[R]>S){let Y=S-_,Q=1+Math.floor((f[R]-Y-1)/S);Math.floor((f[R]-1)/S)<Q&&k.push(""),Ql(k,B,S);continue}if(_+f[R]>S&&_>0&&f[R]>0){if(y.wordWrap===!1&&_<S){Ql(k,B,S);continue}k.push("")}if(_+f[R]>S&&y.wordWrap===!1){Ql(k,B,S);continue}k[k.length-1]+=B}y.trim!==!1&&(k=k.map((R)=>If(R)));let T=[...k.join(`
|
|
28
|
-
`)];for(let[R,B]of T.entries()){if($+=B,ll.has(B)){let{groups:
|
|
29
|
-
`?(
|
|
30
|
-
`&&(
|
|
24
|
+
`),this.outputHelp({error:!0});let S=y||{},$=S.exitCode||1,k=S.code||"commander.error";this._exit($,k,l)}_parseOptionsEnv(){this.options.forEach((l)=>{if(l.envVar&&l.envVar in J.env){let y=l.attributeName();if(this.getOptionValue(y)===void 0||["default","config","env"].includes(this.getOptionValueSource(y)))if(l.required||l.optional)this.emit(`optionEnv:${l.name()}`,J.env[l.envVar]);else this.emit(`optionEnv:${l.name()}`)}})}_parseOptionsImplied(){let l=new jy(this.options),y=(S)=>{return this.getOptionValue(S)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(S))};this.options.filter((S)=>S.implied!==void 0&&y(S.attributeName())&&l.valueFromOption(this.getOptionValue(S.attributeName()),S)).forEach((S)=>{Object.keys(S.implied).filter(($)=>!y($)).forEach(($)=>{this.setOptionValueWithSource($,S.implied[$],"implied")})})}missingArgument(l){let y=`error: missing required argument '${l}'`;this.error(y,{code:"commander.missingArgument"})}optionMissingArgument(l){let y=`error: option '${l.flags}' argument missing`;this.error(y,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(l){let y=`error: required option '${l.flags}' not specified`;this.error(y,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(l,y){let S=(b)=>{let f=b.attributeName(),I=this.getOptionValue(f),T=this.options.find((B)=>B.negate&&f===B.attributeName()),R=this.options.find((B)=>!B.negate&&f===B.attributeName());if(T&&(T.presetArg===void 0&&I===!1||T.presetArg!==void 0&&I===T.presetArg))return T;return R||b},$=(b)=>{let f=S(b),I=f.attributeName();if(this.getOptionValueSource(I)==="env")return`environment variable '${f.envVar}'`;return`option '${f.flags}'`},k=`error: ${$(l)} cannot be used with ${$(y)}`;this.error(k,{code:"commander.conflictingOption"})}unknownOption(l){if(this._allowUnknownOption)return;let y="";if(l.startsWith("--")&&this._showSuggestionAfterError){let $=[],k=this;do{let b=k.createHelp().visibleOptions(k).filter((f)=>f.long).map((f)=>f.long);$=$.concat(b),k=k.parent}while(k&&!k._enablePositionalOptions);y=tl(l,$)}let S=`error: unknown option '${l}'${y}`;this.error(S,{code:"commander.unknownOption"})}_excessArguments(l){if(this._allowExcessArguments)return;let y=this.registeredArguments.length,S=y===1?"":"s",k=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${y} argument${S} but got ${l.length}.`;this.error(k,{code:"commander.excessArguments"})}unknownCommand(){let l=this.args[0],y="";if(this._showSuggestionAfterError){let $=[];this.createHelp().visibleCommands(this).forEach((k)=>{if($.push(k.name()),k.alias())$.push(k.alias())}),y=tl(l,$)}let S=`error: unknown command '${l}'${y}`;this.error(S,{code:"commander.unknownCommand"})}version(l,y,S){if(l===void 0)return this._version;this._version=l,y=y||"-V, --version",S=S||"output the version number";let $=this.createOption(y,S);return this._versionOptionName=$.attributeName(),this._registerOption($),this.on("option:"+$.name(),()=>{this._outputConfiguration.writeOut(`${l}
|
|
25
|
+
`),this._exit(0,"commander.version",l)}),this}description(l,y){if(l===void 0&&y===void 0)return this._description;if(this._description=l,y)this._argsDescription=y;return this}summary(l){if(l===void 0)return this._summary;return this._summary=l,this}alias(l){if(l===void 0)return this._aliases[0];let y=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)y=this.commands[this.commands.length-1];if(l===y._name)throw Error("Command alias can't be the same as its name");let S=this.parent?._findCommand(l);if(S){let $=[S.name()].concat(S.aliases()).join("|");throw Error(`cannot add alias '${l}' to command '${this.name()}' as already have command '${$}'`)}return y._aliases.push(l),this}aliases(l){if(l===void 0)return this._aliases;return l.forEach((y)=>this.alias(y)),this}usage(l){if(l===void 0){if(this._usage)return this._usage;let y=this.registeredArguments.map((S)=>{return Zy(S)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?y:[]).join(" ")}return this._usage=l,this}name(l){if(l===void 0)return this._name;return this._name=l,this}helpGroup(l){if(l===void 0)return this._helpGroupHeading??"";return this._helpGroupHeading=l,this}commandsGroup(l){if(l===void 0)return this._defaultCommandGroup??"";return this._defaultCommandGroup=l,this}optionsGroup(l){if(l===void 0)return this._defaultOptionGroup??"";return this._defaultOptionGroup=l,this}_initOptionGroup(l){if(this._defaultOptionGroup&&!l.helpGroupHeading)l.helpGroup(this._defaultOptionGroup)}_initCommandGroup(l){if(this._defaultCommandGroup&&!l.helpGroup())l.helpGroup(this._defaultCommandGroup)}nameFromFilename(l){return this._name=A.basename(l,A.extname(l)),this}executableDir(l){if(l===void 0)return this._executableDir;return this._executableDir=l,this}helpInformation(l){let y=this.createHelp(),S=this._getOutputContext(l);y.prepareContext({error:S.error,helpWidth:S.helpWidth,outputHasColors:S.hasColors});let $=y.formatHelp(this,y);if(S.hasColors)return $;return this._outputConfiguration.stripColor($)}_getOutputContext(l){l=l||{};let y=!!l.error,S,$,k;if(y)S=(f)=>this._outputConfiguration.writeErr(f),$=this._outputConfiguration.getErrHasColors(),k=this._outputConfiguration.getErrHelpWidth();else S=(f)=>this._outputConfiguration.writeOut(f),$=this._outputConfiguration.getOutHasColors(),k=this._outputConfiguration.getOutHelpWidth();return{error:y,write:(f)=>{if(!$)f=this._outputConfiguration.stripColor(f);return S(f)},hasColors:$,helpWidth:k}}outputHelp(l){let y;if(typeof l==="function")y=l,l=void 0;let S=this._getOutputContext(l),$={error:S.error,write:S.write,command:this};this._getCommandAndAncestors().reverse().forEach((b)=>b.emit("beforeAllHelp",$)),this.emit("beforeHelp",$);let k=this.helpInformation({error:S.error});if(y){if(k=y(k),typeof k!=="string"&&!Buffer.isBuffer(k))throw Error("outputHelp callback must return a string or a Buffer")}if(S.write(k),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",$),this._getCommandAndAncestors().forEach((b)=>b.emit("afterAllHelp",$))}helpOption(l,y){if(typeof l==="boolean"){if(l){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(l??"-h, --help",y??"display help for command"),l||y)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption(l){return this._helpOption=l,this._initOptionGroup(l),this}help(l){this.outputHelp(l);let y=Number(J.exitCode??0);if(y===0&&l&&typeof l!=="function"&&l.error)y=1;this._exit(y,"commander.help","(outputHelp)")}addHelpText(l,y){let S=["beforeAll","before","after","afterAll"];if(!S.includes(l))throw Error(`Unexpected value for position to addHelpText.
|
|
26
|
+
Expecting one of '${S.join("', '")}'`);let $=`${l}Help`;return this.on($,(k)=>{let b;if(typeof y==="function")b=y({error:k.error,command:k.command});else b=y;if(b)k.write(`${b}
|
|
27
|
+
`)}),this}_outputHelpIfRequested(l){let y=this._getHelpOption();if(y&&l.find(($)=>y.is($)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function dl(l){return l.map((y)=>{if(!y.startsWith("--inspect"))return y;let S,$="127.0.0.1",k="9229",b;if((b=y.match(/^(--inspect(-brk)?)$/))!==null)S=b[1];else if((b=y.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(S=b[1],/^\d+$/.test(b[3]))k=b[3];else $=b[3];else if((b=y.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)S=b[1],$=b[3],k=b[4];if(S&&k!=="0")return`${S}=${$}:${parseInt(k)+1}`;return y})}function ql(){if(J.env.NO_COLOR||J.env.FORCE_COLOR==="0"||J.env.FORCE_COLOR==="false")return!1;if(J.env.FORCE_COLOR||J.env.CLICOLOR_FORCE!==void 0)return!0;return}My.Command=Ll;My.useColor=ql});var el=V((Ny)=>{var{Argument:pl}=t(),{Command:_l}=rl(),{CommanderError:wy,InvalidArgumentError:al}=n(),{Help:Wy}=Il(),{Option:ol}=Rl();Ny.program=new _l;Ny.createCommand=(l)=>new _l(l);Ny.createOption=(l,y)=>new ol(l,y);Ny.createArgument=(l,y)=>new pl(l,y);Ny.Command=_l;Ny.Option=ol;Ny.Argument=pl;Ny.Help=Wy;Ny.CommanderError=wy;Ny.InvalidArgumentError=al;Ny.InvalidOptionArgumentError=al});var Yl=V((PS,y1)=>{var Gl={to(l,y){if(!y)return`\x1B[${l+1}G`;return`\x1B[${y+1};${l+1}H`},move(l,y){let S="";if(l<0)S+=`\x1B[${-l}D`;else if(l>0)S+=`\x1B[${l}C`;if(y<0)S+=`\x1B[${-y}A`;else if(y>0)S+=`\x1B[${y}B`;return S},up:(l=1)=>`\x1B[${l}A`,down:(l=1)=>`\x1B[${l}B`,forward:(l=1)=>`\x1B[${l}C`,backward:(l=1)=>`\x1B[${l}D`,nextLine:(l=1)=>"\x1B[E".repeat(l),prevLine:(l=1)=>"\x1B[F".repeat(l),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},sy={up:(l=1)=>"\x1B[S".repeat(l),down:(l=1)=>"\x1B[T".repeat(l)},iy={screen:"\x1B[2J",up:(l=1)=>"\x1B[1J".repeat(l),down:(l=1)=>"\x1B[J".repeat(l),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(l){let y="";for(let S=0;S<l;S++)y+=this.line+(S<l-1?Gl.up():"");if(l)y+=Gl.left;return y}};y1.exports={cursor:Gl,scroll:sy,erase:iy,beep:"\x07"}});var a=V((US,Xl)=>{var p=process||{},f1=p.argv||[],r=p.env||{},my=!(!!r.NO_COLOR||f1.includes("--no-color"))&&(!!r.FORCE_COLOR||f1.includes("--color")||p.platform==="win32"||(p.stdout||{}).isTTY&&r.TERM!=="dumb"||!!r.CI),Dy=(l,y,S=l)=>($)=>{let k=""+$,b=k.indexOf(y,l.length);return~b?l+ny(k,y,S,b)+y:l+k+y},ny=(l,y,S,$)=>{let k="",b=0;do k+=l.substring(b,$)+S,b=$+y.length,$=l.indexOf(y,b);while(~$);return k+l.substring(b)},S1=(l=my)=>{let y=l?Dy:()=>String;return{isColorSupported:l,reset:y("\x1B[0m","\x1B[0m"),bold:y("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:y("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:y("\x1B[3m","\x1B[23m"),underline:y("\x1B[4m","\x1B[24m"),inverse:y("\x1B[7m","\x1B[27m"),hidden:y("\x1B[8m","\x1B[28m"),strikethrough:y("\x1B[9m","\x1B[29m"),black:y("\x1B[30m","\x1B[39m"),red:y("\x1B[31m","\x1B[39m"),green:y("\x1B[32m","\x1B[39m"),yellow:y("\x1B[33m","\x1B[39m"),blue:y("\x1B[34m","\x1B[39m"),magenta:y("\x1B[35m","\x1B[39m"),cyan:y("\x1B[36m","\x1B[39m"),white:y("\x1B[37m","\x1B[39m"),gray:y("\x1B[90m","\x1B[39m"),bgBlack:y("\x1B[40m","\x1B[49m"),bgRed:y("\x1B[41m","\x1B[49m"),bgGreen:y("\x1B[42m","\x1B[49m"),bgYellow:y("\x1B[43m","\x1B[49m"),bgBlue:y("\x1B[44m","\x1B[49m"),bgMagenta:y("\x1B[45m","\x1B[49m"),bgCyan:y("\x1B[46m","\x1B[49m"),bgWhite:y("\x1B[47m","\x1B[49m"),blackBright:y("\x1B[90m","\x1B[39m"),redBright:y("\x1B[91m","\x1B[39m"),greenBright:y("\x1B[92m","\x1B[39m"),yellowBright:y("\x1B[93m","\x1B[39m"),blueBright:y("\x1B[94m","\x1B[39m"),magentaBright:y("\x1B[95m","\x1B[39m"),cyanBright:y("\x1B[96m","\x1B[39m"),whiteBright:y("\x1B[97m","\x1B[39m"),bgBlackBright:y("\x1B[100m","\x1B[49m"),bgRedBright:y("\x1B[101m","\x1B[49m"),bgGreenBright:y("\x1B[102m","\x1B[49m"),bgYellowBright:y("\x1B[103m","\x1B[49m"),bgBlueBright:y("\x1B[104m","\x1B[49m"),bgMagentaBright:y("\x1B[105m","\x1B[49m"),bgCyanBright:y("\x1B[106m","\x1B[49m"),bgWhiteBright:y("\x1B[107m","\x1B[49m")}};Xl.exports=S1();Xl.exports.createColors=S1});var l1=g(el(),1),{program:Jl,createCommand:BS,createArgument:qS,createOption:LS,CommanderError:_S,InvalidArgumentError:JS,InvalidOptionArgumentError:GS,Command:YS,Argument:XS,Option:zS,Help:QS}=l1.default;var M=g(Yl(),1);import{stdin as _1,stdout as J1}from"node:process";import*as O from"node:readline";import $1 from"node:readline";import{Writable as uy}from"node:stream";function ty({onlyFirst:l=!1}={}){let y=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(y,l?void 0:"g")}var dy=ty();function G1(l){if(typeof l!="string")throw TypeError(`Expected a \`string\`, got \`${typeof l}\``);return l.replace(dy,"")}function Y1(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}var X1={exports:{}};(function(l){var y={};l.exports=y,y.eastAsianWidth=function($){var k=$.charCodeAt(0),b=$.length==2?$.charCodeAt(1):0,f=k;return 55296<=k&&k<=56319&&56320<=b&&b<=57343&&(k&=1023,b&=1023,f=k<<10|b,f+=65536),f==12288||65281<=f&&f<=65376||65504<=f&&f<=65510?"F":f==8361||65377<=f&&f<=65470||65474<=f&&f<=65479||65482<=f&&f<=65487||65490<=f&&f<=65495||65498<=f&&f<=65500||65512<=f&&f<=65518?"H":4352<=f&&f<=4447||4515<=f&&f<=4519||4602<=f&&f<=4607||9001<=f&&f<=9002||11904<=f&&f<=11929||11931<=f&&f<=12019||12032<=f&&f<=12245||12272<=f&&f<=12283||12289<=f&&f<=12350||12353<=f&&f<=12438||12441<=f&&f<=12543||12549<=f&&f<=12589||12593<=f&&f<=12686||12688<=f&&f<=12730||12736<=f&&f<=12771||12784<=f&&f<=12830||12832<=f&&f<=12871||12880<=f&&f<=13054||13056<=f&&f<=19903||19968<=f&&f<=42124||42128<=f&&f<=42182||43360<=f&&f<=43388||44032<=f&&f<=55203||55216<=f&&f<=55238||55243<=f&&f<=55291||63744<=f&&f<=64255||65040<=f&&f<=65049||65072<=f&&f<=65106||65108<=f&&f<=65126||65128<=f&&f<=65131||110592<=f&&f<=110593||127488<=f&&f<=127490||127504<=f&&f<=127546||127552<=f&&f<=127560||127568<=f&&f<=127569||131072<=f&&f<=194367||177984<=f&&f<=196605||196608<=f&&f<=262141?"W":32<=f&&f<=126||162<=f&&f<=163||165<=f&&f<=166||f==172||f==175||10214<=f&&f<=10221||10629<=f&&f<=10630?"Na":f==161||f==164||167<=f&&f<=168||f==170||173<=f&&f<=174||176<=f&&f<=180||182<=f&&f<=186||188<=f&&f<=191||f==198||f==208||215<=f&&f<=216||222<=f&&f<=225||f==230||232<=f&&f<=234||236<=f&&f<=237||f==240||242<=f&&f<=243||247<=f&&f<=250||f==252||f==254||f==257||f==273||f==275||f==283||294<=f&&f<=295||f==299||305<=f&&f<=307||f==312||319<=f&&f<=322||f==324||328<=f&&f<=331||f==333||338<=f&&f<=339||358<=f&&f<=359||f==363||f==462||f==464||f==466||f==468||f==470||f==472||f==474||f==476||f==593||f==609||f==708||f==711||713<=f&&f<=715||f==717||f==720||728<=f&&f<=731||f==733||f==735||768<=f&&f<=879||913<=f&&f<=929||931<=f&&f<=937||945<=f&&f<=961||963<=f&&f<=969||f==1025||1040<=f&&f<=1103||f==1105||f==8208||8211<=f&&f<=8214||8216<=f&&f<=8217||8220<=f&&f<=8221||8224<=f&&f<=8226||8228<=f&&f<=8231||f==8240||8242<=f&&f<=8243||f==8245||f==8251||f==8254||f==8308||f==8319||8321<=f&&f<=8324||f==8364||f==8451||f==8453||f==8457||f==8467||f==8470||8481<=f&&f<=8482||f==8486||f==8491||8531<=f&&f<=8532||8539<=f&&f<=8542||8544<=f&&f<=8555||8560<=f&&f<=8569||f==8585||8592<=f&&f<=8601||8632<=f&&f<=8633||f==8658||f==8660||f==8679||f==8704||8706<=f&&f<=8707||8711<=f&&f<=8712||f==8715||f==8719||f==8721||f==8725||f==8730||8733<=f&&f<=8736||f==8739||f==8741||8743<=f&&f<=8748||f==8750||8756<=f&&f<=8759||8764<=f&&f<=8765||f==8776||f==8780||f==8786||8800<=f&&f<=8801||8804<=f&&f<=8807||8810<=f&&f<=8811||8814<=f&&f<=8815||8834<=f&&f<=8835||8838<=f&&f<=8839||f==8853||f==8857||f==8869||f==8895||f==8978||9312<=f&&f<=9449||9451<=f&&f<=9547||9552<=f&&f<=9587||9600<=f&&f<=9615||9618<=f&&f<=9621||9632<=f&&f<=9633||9635<=f&&f<=9641||9650<=f&&f<=9651||9654<=f&&f<=9655||9660<=f&&f<=9661||9664<=f&&f<=9665||9670<=f&&f<=9672||f==9675||9678<=f&&f<=9681||9698<=f&&f<=9701||f==9711||9733<=f&&f<=9734||f==9737||9742<=f&&f<=9743||9748<=f&&f<=9749||f==9756||f==9758||f==9792||f==9794||9824<=f&&f<=9825||9827<=f&&f<=9829||9831<=f&&f<=9834||9836<=f&&f<=9837||f==9839||9886<=f&&f<=9887||9918<=f&&f<=9919||9924<=f&&f<=9933||9935<=f&&f<=9953||f==9955||9960<=f&&f<=9983||f==10045||f==10071||10102<=f&&f<=10111||11093<=f&&f<=11097||12872<=f&&f<=12879||57344<=f&&f<=63743||65024<=f&&f<=65039||f==65533||127232<=f&&f<=127242||127248<=f&&f<=127277||127280<=f&&f<=127337||127344<=f&&f<=127386||917760<=f&&f<=917999||983040<=f&&f<=1048573||1048576<=f&&f<=1114109?"A":"N"},y.characterLength=function($){var k=this.eastAsianWidth($);return k=="F"||k=="W"||k=="A"?2:1};function S($){return $.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}y.length=function($){for(var k=S($),b=0,f=0;f<k.length;f++)b=b+this.characterLength(k[f]);return b},y.slice=function($,k,b){textLen=y.length($),k=k||0,b=b||1,k<0&&(k=textLen+k),b<0&&(b=textLen+b);for(var f="",I=0,T=S($),R=0;R<T.length;R++){var B=T[R],L=y.length(B);if(I>=k-(L==2?1:0))if(I+L<=b)f+=B;else break;I+=L}return f}})(X1);var ry=X1.exports,py=Y1(ry),ay=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},oy=Y1(ay);function u(l,y={}){if(typeof l!="string"||l.length===0||(y={ambiguousIsNarrow:!0,...y},l=G1(l),l.length===0))return 0;l=l.replace(oy()," ");let S=y.ambiguousIsNarrow?1:2,$=0;for(let k of l){let b=k.codePointAt(0);if(b<=31||b>=127&&b<=159||b>=768&&b<=879)continue;switch(py.eastAsianWidth(k)){case"F":case"W":$+=2;break;case"A":$+=S;break;default:$+=1}}return $}var zl=10,k1=(l=0)=>(y)=>`\x1B[${y+l}m`,b1=(l=0)=>(y)=>`\x1B[${38+l};5;${y}m`,I1=(l=0)=>(y,S,$)=>`\x1B[${38+l};2;${y};${S};${$}m`,Z={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(Z.modifier);var ey=Object.keys(Z.color),lf=Object.keys(Z.bgColor);[...ey,...lf];function yf(){let l=new Map;for(let[y,S]of Object.entries(Z)){for(let[$,k]of Object.entries(S))Z[$]={open:`\x1B[${k[0]}m`,close:`\x1B[${k[1]}m`},S[$]=Z[$],l.set(k[0],k[1]);Object.defineProperty(Z,y,{value:S,enumerable:!1})}return Object.defineProperty(Z,"codes",{value:l,enumerable:!1}),Z.color.close="\x1B[39m",Z.bgColor.close="\x1B[49m",Z.color.ansi=k1(),Z.color.ansi256=b1(),Z.color.ansi16m=I1(),Z.bgColor.ansi=k1(zl),Z.bgColor.ansi256=b1(zl),Z.bgColor.ansi16m=I1(zl),Object.defineProperties(Z,{rgbToAnsi256:{value:(y,S,$)=>y===S&&S===$?y<8?16:y>248?231:Math.round((y-8)/247*24)+232:16+36*Math.round(y/255*5)+6*Math.round(S/255*5)+Math.round($/255*5),enumerable:!1},hexToRgb:{value:(y)=>{let S=/[a-f\d]{6}|[a-f\d]{3}/i.exec(y.toString(16));if(!S)return[0,0,0];let[$]=S;$.length===3&&($=[...$].map((b)=>b+b).join(""));let k=Number.parseInt($,16);return[k>>16&255,k>>8&255,k&255]},enumerable:!1},hexToAnsi256:{value:(y)=>Z.rgbToAnsi256(...Z.hexToRgb(y)),enumerable:!1},ansi256ToAnsi:{value:(y)=>{if(y<8)return 30+y;if(y<16)return 90+(y-8);let S,$,k;if(y>=232)S=((y-232)*10+8)/255,$=S,k=S;else{y-=16;let I=y%36;S=Math.floor(y/36)/5,$=Math.floor(I/6)/5,k=I%6/5}let b=Math.max(S,$,k)*2;if(b===0)return 30;let f=30+(Math.round(k)<<2|Math.round($)<<1|Math.round(S));return b===2&&(f+=60),f},enumerable:!1},rgbToAnsi:{value:(y,S,$)=>Z.ansi256ToAnsi(Z.rgbToAnsi256(y,S,$)),enumerable:!1},hexToAnsi:{value:(y)=>Z.ansi256ToAnsi(Z.hexToAnsi256(y)),enumerable:!1}}),Z}var ff=yf(),ll=new Set(["\x1B",""]),Sf=39,Pl="\x07",z1="[",$f="]",Q1="m",Ul=`${$f}8;;`,R1=(l)=>`${ll.values().next().value}${z1}${l}${Q1}`,T1=(l)=>`${ll.values().next().value}${Ul}${l}${Pl}`,kf=(l)=>l.split(" ").map((y)=>u(y)),Ql=(l,y,S)=>{let $=[...y],k=!1,b=!1,f=u(G1(l[l.length-1]));for(let[I,T]of $.entries()){let R=u(T);if(f+R<=S?l[l.length-1]+=T:(l.push(T),f=0),ll.has(T)&&(k=!0,b=$.slice(I+1).join("").startsWith(Ul)),k){b?T===Pl&&(k=!1,b=!1):T===Q1&&(k=!1);continue}f+=R,f===S&&I<$.length-1&&(l.push(""),f=0)}!f&&l[l.length-1].length>0&&l.length>1&&(l[l.length-2]+=l.pop())},bf=(l)=>{let y=l.split(" "),S=y.length;for(;S>0&&!(u(y[S-1])>0);)S--;return S===y.length?l:y.slice(0,S).join(" ")+y.slice(S).join("")},If=(l,y,S={})=>{if(S.trim!==!1&&l.trim()==="")return"";let $="",k,b,f=kf(l),I=[""];for(let[R,B]of l.split(" ").entries()){S.trim!==!1&&(I[I.length-1]=I[I.length-1].trimStart());let L=u(I[I.length-1]);if(R!==0&&(L>=y&&(S.wordWrap===!1||S.trim===!1)&&(I.push(""),L=0),(L>0||S.trim===!1)&&(I[I.length-1]+=" ",L++)),S.hard&&f[R]>y){let X=y-L,P=1+Math.floor((f[R]-X-1)/y);Math.floor((f[R]-1)/y)<P&&I.push(""),Ql(I,B,y);continue}if(L+f[R]>y&&L>0&&f[R]>0){if(S.wordWrap===!1&&L<y){Ql(I,B,y);continue}I.push("")}if(L+f[R]>y&&S.wordWrap===!1){Ql(I,B,y);continue}I[I.length-1]+=B}S.trim!==!1&&(I=I.map((R)=>bf(R)));let T=[...I.join(`
|
|
28
|
+
`)];for(let[R,B]of T.entries()){if($+=B,ll.has(B)){let{groups:X}=new RegExp(`(?:\\${z1}(?<code>\\d+)m|\\${Ul}(?<uri>.*)${Pl})`).exec(T.slice(R).join(""))||{groups:{}};if(X.code!==void 0){let P=Number.parseFloat(X.code);k=P===Sf?void 0:P}else X.uri!==void 0&&(b=X.uri.length===0?void 0:X.uri)}let L=ff.codes.get(Number(k));T[R+1]===`
|
|
29
|
+
`?(b&&($+=T1("")),k&&L&&($+=R1(L))):B===`
|
|
30
|
+
`&&(k&&L&&($+=R1(k)),b&&($+=T1(b)))}return $};function B1(l,y,S){return String(l).normalize().replace(/\r\n/g,`
|
|
31
31
|
`).split(`
|
|
32
|
-
`).map(($)=>
|
|
33
|
-
`)}var Rf=["up","down","left","right","space","enter","cancel"],e={actions:new Set(Rf),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["\x03","cancel"],["escape","cancel"]])};function jl(l,
|
|
34
|
-
`),$=
|
|
35
|
-
`),
|
|
32
|
+
`).map(($)=>If($,y,S)).join(`
|
|
33
|
+
`)}var Rf=["up","down","left","right","space","enter","cancel"],e={actions:new Set(Rf),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["\x03","cancel"],["escape","cancel"]])};function jl(l,y){if(typeof l=="string")return e.aliases.get(l)===y;for(let S of l)if(S!==void 0&&jl(S,y))return!0;return!1}function Tf(l,y){if(l===y)return;let S=l.split(`
|
|
34
|
+
`),$=y.split(`
|
|
35
|
+
`),k=[];for(let b=0;b<Math.max(S.length,$.length);b++)S[b]!==$[b]&&k.push(b);return k}var Bf=globalThis.process.platform.startsWith("win"),Zl=Symbol("clack:cancel");function F(l){return l===Zl}function o(l,y){let S=l;S.isTTY&&S.setRawMode(y)}function Z1({input:l=_1,output:y=J1,overwrite:S=!0,hideCursor:$=!0}={}){let k=O.createInterface({input:l,output:y,prompt:"",tabSize:1});O.emitKeypressEvents(l,k),l.isTTY&&l.setRawMode(!0);let b=(f,{name:I,sequence:T})=>{let R=String(f);if(jl([R,I,T],"cancel")){$&&y.write(M.cursor.show),process.exit(0);return}if(!S)return;O.moveCursor(y,I==="return"?0:-1,I==="return"?-1:0,()=>{O.clearLine(y,1,()=>{l.once("keypress",b)})})};return $&&y.write(M.cursor.hide),l.once("keypress",b),()=>{l.off("keypress",b),$&&y.write(M.cursor.show),l.isTTY&&!Bf&&l.setRawMode(!1),k.terminal=!1,k.close()}}var qf=Object.defineProperty,Lf=(l,y,S)=>(y in l)?qf(l,y,{enumerable:!0,configurable:!0,writable:!0,value:S}):l[y]=S,w=(l,y,S)=>(Lf(l,typeof y!="symbol"?y+"":y,S),S);class yl{constructor(l,y=!0){w(this,"input"),w(this,"output"),w(this,"_abortSignal"),w(this,"rl"),w(this,"opts"),w(this,"_render"),w(this,"_track",!1),w(this,"_prevFrame",""),w(this,"_subscribers",new Map),w(this,"_cursor",0),w(this,"state","initial"),w(this,"error",""),w(this,"value");let{input:S=_1,output:$=J1,render:k,signal:b,...f}=l;this.opts=f,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=k.bind(this),this._track=y,this._abortSignal=b,this.input=S,this.output=$}unsubscribe(){this._subscribers.clear()}setSubscriber(l,y){let S=this._subscribers.get(l)??[];S.push(y),this._subscribers.set(l,S)}on(l,y){this.setSubscriber(l,{cb:y})}once(l,y){this.setSubscriber(l,{cb:y,once:!0})}emit(l,...y){let S=this._subscribers.get(l)??[],$=[];for(let k of S)k.cb(...y),k.once&&$.push(()=>S.splice(S.indexOf(k),1));for(let k of $)k()}prompt(){return new Promise((l,y)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),l(Zl);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}let S=new uy;S._write=($,k,b)=>{this._track&&(this.value=this.rl?.line.replace(/\t/g,""),this._cursor=this.rl?.cursor??0,this.emit("value",this.value)),b()},this.input.pipe(S),this.rl=$1.createInterface({input:this.input,output:S,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),$1.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),this.opts.initialValue!==void 0&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),o(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(M.cursor.show),this.output.off("resize",this.render),o(this.input,!1),l(this.value)}),this.once("cancel",()=>{this.output.write(M.cursor.show),this.output.off("resize",this.render),o(this.input,!1),l(Zl)})})}onKeypress(l,y){if(this.state==="error"&&(this.state="active"),y?.name&&(!this._track&&e.aliases.has(y.name)&&this.emit("cursor",e.aliases.get(y.name)),e.actions.has(y.name)&&this.emit("cursor",y.name)),l&&(l.toLowerCase()==="y"||l.toLowerCase()==="n")&&this.emit("confirm",l.toLowerCase()==="y"),l==="\t"&&this.opts.placeholder&&(this.value||(this.rl?.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),l&&this.emit("key",l.toLowerCase()),y?.name==="return"){if(this.opts.validate){let S=this.opts.validate(this.value);S&&(this.error=S instanceof Error?S.message:S,this.state="error",this.rl?.write(this.value))}this.state!=="error"&&(this.state="submit")}jl([l,y?.name,y?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
|
|
36
36
|
`),o(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let l=B1(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
|
|
37
|
-
`).length-1;this.output.write(M.cursor.move(-999,l*-1))}render(){let l=B1(this._render(this)??"",process.stdout.columns,{hard:!0});if(l!==this._prevFrame){if(this.state==="initial")this.output.write(M.cursor.hide);else{let
|
|
38
|
-
`);this.output.write($[
|
|
39
|
-
`).slice(
|
|
40
|
-
`)),this._prevFrame=l;return}this.output.write(M.erase.down())}this.output.write(l),this.state==="initial"&&(this.state="active"),this._prevFrame=l}}}class Ml extends
|
|
37
|
+
`).length-1;this.output.write(M.cursor.move(-999,l*-1))}render(){let l=B1(this._render(this)??"",process.stdout.columns,{hard:!0});if(l!==this._prevFrame){if(this.state==="initial")this.output.write(M.cursor.hide);else{let y=Tf(this._prevFrame,l);if(this.restoreCursor(),y&&y?.length===1){let S=y[0];this.output.write(M.cursor.move(0,S)),this.output.write(M.erase.lines(1));let $=l.split(`
|
|
38
|
+
`);this.output.write($[S]),this._prevFrame=l,this.output.write(M.cursor.move(0,$.length-S-1));return}if(y&&y?.length>1){let S=y[0];this.output.write(M.cursor.move(0,S)),this.output.write(M.erase.down());let $=l.split(`
|
|
39
|
+
`).slice(S);this.output.write($.join(`
|
|
40
|
+
`)),this._prevFrame=l;return}this.output.write(M.erase.down())}this.output.write(l),this.state==="initial"&&(this.state="active"),this._prevFrame=l}}}class Ml extends yl{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(l){super(l,!1),this.value=!!l.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",(y)=>{this.output.write(M.cursor.move(0,-1)),this.value=y,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}var _f;_f=new WeakMap;var Jf=Object.defineProperty,Gf=(l,y,S)=>(y in l)?Jf(l,y,{enumerable:!0,configurable:!0,writable:!0,value:S}):l[y]=S,q1=(l,y,S)=>(Gf(l,typeof y!="symbol"?y+"":y,S),S),P1=class extends yl{constructor(l){super(l,!1),q1(this,"options"),q1(this,"cursor",0),this.options=l.options,this.value=[...l.initialValues??[]],this.cursor=Math.max(this.options.findIndex(({value:y})=>y===l.cursorAt),0),this.on("key",(y)=>{y==="a"&&this.toggleAll()}),this.on("cursor",(y)=>{switch(y){case"left":case"up":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case"down":case"right":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break;case"space":this.toggleValue();break}})}get _value(){return this.options[this.cursor].value}toggleAll(){let l=this.value.length===this.options.length;this.value=l?[]:this.options.map((y)=>y.value)}toggleValue(){let l=this.value.includes(this._value);this.value=l?this.value.filter((y)=>y!==this._value):[...this.value,this._value]}};var Yf=Object.defineProperty,Xf=(l,y,S)=>(y in l)?Yf(l,y,{enumerable:!0,configurable:!0,writable:!0,value:S}):l[y]=S,L1=(l,y,S)=>(Xf(l,typeof y!="symbol"?y+"":y,S),S);class Hl extends yl{constructor(l){super(l,!1),L1(this,"options"),L1(this,"cursor",0),this.options=l.options,this.cursor=this.options.findIndex(({value:y})=>y===l.initialValue),this.cursor===-1&&(this.cursor=0),this.changeValue(),this.on("cursor",(y)=>{switch(y){case"left":case"up":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case"down":case"right":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}this.changeValue()})}get _value(){return this.options[this.cursor]}changeValue(){this.value=this._value.value}}var q=g(a(),1),fl=g(Yl(),1);import N from"node:process";function zf(){return N.platform!=="win32"?N.env.TERM!=="linux":!!N.env.CI||!!N.env.WT_SESSION||!!N.env.TERMINUS_SUBLIME||N.env.ConEmuTask==="{cmd::Cmder}"||N.env.TERM_PROGRAM==="Terminus-Sublime"||N.env.TERM_PROGRAM==="vscode"||N.env.TERM==="xterm-256color"||N.env.TERM==="alacritty"||N.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Kl=zf(),U=(l,y)=>Kl?l:y,Qf=U("◆","*"),j1=U("■","x"),M1=U("▲","x"),El=U("◇","o"),Zf=U("┌","T"),Q=U("│","|"),h=U("└","—"),wl=U("●",">"),Wl=U("○"," "),Pf=U("◻","[•]"),U1=U("◼","[+]"),Uf=U("◻","[ ]"),OS=U("▪","•"),FS=U("─","-"),cS=U("╮","+"),vS=U("├","+"),gS=U("╯","+"),jf=U("●","•"),Mf=U("◆","*"),Hf=U("▲","!"),Kf=U("■","x"),Vl=(l)=>{switch(l){case"initial":case"active":return q.default.cyan(Qf);case"cancel":return q.default.red(j1);case"error":return q.default.yellow(M1);case"submit":return q.default.green(El)}},Nl=(l)=>{let{cursor:y,options:S,style:$}=l,k=l.maxItems??Number.POSITIVE_INFINITY,b=Math.max(process.stdout.rows-4,0),f=Math.min(b,Math.max(k,5)),I=0;y>=I+f-3?I=Math.max(Math.min(y-f+3,S.length-f),0):y<I+2&&(I=Math.max(y-2,0));let T=f<S.length&&I>0,R=f<S.length&&I+f<S.length;return S.slice(I,I+f).map((B,L,X)=>{let P=L===0&&T,m=L===X.length-1&&R;return P||m?q.default.dim("..."):$(B,L+I===y)})};var H1=(l)=>{let y=l.active??"Yes",S=l.inactive??"No";return new Ml({active:y,inactive:S,initialValue:l.initialValue??!0,render(){let $=`${q.default.gray(Q)}
|
|
41
41
|
${Vl(this.state)} ${l.message}
|
|
42
|
-
`,
|
|
43
|
-
${q.default.gray(
|
|
42
|
+
`,k=this.value?y:S;switch(this.state){case"submit":return`${$}${q.default.gray(Q)} ${q.default.dim(k)}`;case"cancel":return`${$}${q.default.gray(Q)} ${q.default.strikethrough(q.default.dim(k))}
|
|
43
|
+
${q.default.gray(Q)}`;default:return`${$}${q.default.cyan(Q)} ${this.value?`${q.default.green(wl)} ${y}`:`${q.default.dim(Wl)} ${q.default.dim(y)}`} ${q.default.dim("/")} ${this.value?`${q.default.dim(Wl)} ${q.default.dim(S)}`:`${q.default.green(wl)} ${S}`}
|
|
44
44
|
${q.default.cyan(h)}
|
|
45
|
-
`}}}).prompt()},K1=(l)=>{let
|
|
45
|
+
`}}}).prompt()},K1=(l)=>{let y=(S,$)=>{let k=S.label??String(S.value);switch($){case"selected":return`${q.default.dim(k)}`;case"active":return`${q.default.green(wl)} ${k} ${S.hint?q.default.dim(`(${S.hint})`):""}`;case"cancelled":return`${q.default.strikethrough(q.default.dim(k))}`;default:return`${q.default.dim(Wl)} ${q.default.dim(k)}`}};return new Hl({options:l.options,initialValue:l.initialValue,render(){let S=`${q.default.gray(Q)}
|
|
46
46
|
${Vl(this.state)} ${l.message}
|
|
47
|
-
`;switch(this.state){case"submit":return`${
|
|
48
|
-
${q.default.gray(
|
|
49
|
-
${q.default.cyan(
|
|
47
|
+
`;switch(this.state){case"submit":return`${S}${q.default.gray(Q)} ${y(this.options[this.cursor],"selected")}`;case"cancel":return`${S}${q.default.gray(Q)} ${y(this.options[this.cursor],"cancelled")}
|
|
48
|
+
${q.default.gray(Q)}`;default:return`${S}${q.default.cyan(Q)} ${Nl({cursor:this.cursor,options:this.options,maxItems:l.maxItems,style:($,k)=>y($,k?"active":"inactive")}).join(`
|
|
49
|
+
${q.default.cyan(Q)} `)}
|
|
50
50
|
${q.default.cyan(h)}
|
|
51
|
-
`}}}).prompt()};var
|
|
52
|
-
${q.default.reset(q.default.dim(`Press ${q.default.gray(q.default.bgWhite(q.default.inverse(" space ")))} to select, ${q.default.gray(q.default.bgWhite(q.default.inverse(" enter ")))} to submit`))}`},render(){let
|
|
51
|
+
`}}}).prompt()};var Sl=(l)=>{let y=(S,$)=>{let k=S.label??String(S.value);return $==="active"?`${q.default.cyan(Pf)} ${k} ${S.hint?q.default.dim(`(${S.hint})`):""}`:$==="selected"?`${q.default.green(U1)} ${q.default.dim(k)} ${S.hint?q.default.dim(`(${S.hint})`):""}`:$==="cancelled"?`${q.default.strikethrough(q.default.dim(k))}`:$==="active-selected"?`${q.default.green(U1)} ${k} ${S.hint?q.default.dim(`(${S.hint})`):""}`:$==="submitted"?`${q.default.dim(k)}`:`${q.default.dim(Uf)} ${q.default.dim(k)}`};return new P1({options:l.options,initialValues:l.initialValues,required:l.required??!0,cursorAt:l.cursorAt,validate(S){if(this.required&&S.length===0)return`Please select at least one option.
|
|
52
|
+
${q.default.reset(q.default.dim(`Press ${q.default.gray(q.default.bgWhite(q.default.inverse(" space ")))} to select, ${q.default.gray(q.default.bgWhite(q.default.inverse(" enter ")))} to submit`))}`},render(){let S=`${q.default.gray(Q)}
|
|
53
53
|
${Vl(this.state)} ${l.message}
|
|
54
|
-
`,$=(b
|
|
55
|
-
${q.default.gray(
|
|
56
|
-
`).map((
|
|
57
|
-
`);return`${
|
|
58
|
-
${q.default.yellow(
|
|
59
|
-
${
|
|
60
|
-
`}default:return`${
|
|
61
|
-
${q.default.cyan(
|
|
54
|
+
`,$=(k,b)=>{let f=this.value.includes(k.value);return b&&f?y(k,"active-selected"):f?y(k,"selected"):y(k,b?"active":"inactive")};switch(this.state){case"submit":return`${S}${q.default.gray(Q)} ${this.options.filter(({value:k})=>this.value.includes(k)).map((k)=>y(k,"submitted")).join(q.default.dim(", "))||q.default.dim("none")}`;case"cancel":{let k=this.options.filter(({value:b})=>this.value.includes(b)).map((b)=>y(b,"cancelled")).join(q.default.dim(", "));return`${S}${q.default.gray(Q)} ${k.trim()?`${k}
|
|
55
|
+
${q.default.gray(Q)}`:""}`}case"error":{let k=this.error.split(`
|
|
56
|
+
`).map((b,f)=>f===0?`${q.default.yellow(h)} ${q.default.yellow(b)}`:` ${b}`).join(`
|
|
57
|
+
`);return`${S+q.default.yellow(Q)} ${Nl({options:this.options,cursor:this.cursor,maxItems:l.maxItems,style:$}).join(`
|
|
58
|
+
${q.default.yellow(Q)} `)}
|
|
59
|
+
${k}
|
|
60
|
+
`}default:return`${S}${q.default.cyan(Q)} ${Nl({options:this.options,cursor:this.cursor,maxItems:l.maxItems,style:$}).join(`
|
|
61
|
+
${q.default.cyan(Q)} `)}
|
|
62
62
|
${q.default.cyan(h)}
|
|
63
63
|
`}}}).prompt()};var s=(l="")=>{process.stdout.write(`${q.default.gray(h)} ${q.default.red(l)}
|
|
64
64
|
|
|
65
|
-
`)},
|
|
66
|
-
`)},i=(l="")=>{process.stdout.write(`${q.default.gray(
|
|
65
|
+
`)},w1=(l="")=>{process.stdout.write(`${q.default.gray(Zf)} ${l}
|
|
66
|
+
`)},i=(l="")=>{process.stdout.write(`${q.default.gray(Q)}
|
|
67
67
|
${q.default.gray(h)} ${l}
|
|
68
68
|
|
|
69
|
-
`)},
|
|
70
|
-
`);
|
|
69
|
+
`)},_={message:(l="",{symbol:y=q.default.gray(Q)}={})=>{let S=[`${q.default.gray(Q)}`];if(l){let[$,...k]=l.split(`
|
|
70
|
+
`);S.push(`${y} ${$}`,...k.map((b)=>`${q.default.gray(Q)} ${b}`))}process.stdout.write(`${S.join(`
|
|
71
71
|
`)}
|
|
72
|
-
`)},info:(l)=>{
|
|
72
|
+
`)},info:(l)=>{_.message(l,{symbol:q.default.blue(jf)})},success:(l)=>{_.message(l,{symbol:q.default.green(Mf)})},step:(l)=>{_.message(l,{symbol:q.default.green(El)})},warn:(l)=>{_.message(l,{symbol:q.default.yellow(Hf)})},warning:(l)=>{_.warn(l)},error:(l)=>{_.message(l,{symbol:q.default.red(Kf)})}},hS=`${q.default.gray(Q)} `;var W1=({indicator:l="dots"}={})=>{let y=Kl?["◒","◐","◓","◑"]:["•","o","O","0"],S=Kl?80:120,$=process.env.CI==="true",k,b,f=!1,I="",T,R=performance.now(),B=(H)=>{let W=H>1?"Something went wrong":"Canceled";f&&Fl(W,H)},L=()=>B(2),X=()=>B(1),P=()=>{process.on("uncaughtExceptionMonitor",L),process.on("unhandledRejection",L),process.on("SIGINT",X),process.on("SIGTERM",X),process.on("exit",B)},m=()=>{process.removeListener("uncaughtExceptionMonitor",L),process.removeListener("unhandledRejection",L),process.removeListener("SIGINT",X),process.removeListener("SIGTERM",X),process.removeListener("exit",B)},Cl=()=>{if(T===void 0)return;$&&process.stdout.write(`
|
|
73
73
|
`);let H=T.split(`
|
|
74
|
-
`);process.stdout.write(fl.cursor.move(-999,H.length-1)),process.stdout.write(fl.erase.down(H.length))},
|
|
75
|
-
`);let W=0,
|
|
76
|
-
`):process.stdout.write(`${
|
|
77
|
-
`),m(),
|
|
78
|
-
`)){let f=
|
|
74
|
+
`);process.stdout.write(fl.cursor.move(-999,H.length-1)),process.stdout.write(fl.erase.down(H.length))},kl=(H)=>H.replace(/\.+$/,""),Ol=(H)=>{let W=(performance.now()-H)/1000,E=Math.floor(W/60),v=Math.floor(W%60);return E>0?`[${E}m ${v}s]`:`[${v}s]`},D1=(H="")=>{f=!0,k=Z1(),I=kl(H),R=performance.now(),process.stdout.write(`${q.default.gray(Q)}
|
|
75
|
+
`);let W=0,E=0;P(),b=setInterval(()=>{if($&&I===T)return;Cl(),T=I;let v=q.default.magenta(y[W]);if($)process.stdout.write(`${v} ${I}...`);else if(l==="timer")process.stdout.write(`${v} ${I} ${Ol(R)}`);else{let n1=".".repeat(Math.floor(E)).slice(0,3);process.stdout.write(`${v} ${I}${n1}`)}W=W+1<y.length?W+1:0,E=E<y.length?E+0.125:0},S)},Fl=(H="",W=0)=>{f=!1,clearInterval(b),Cl();let E=W===0?q.default.green(El):W===1?q.default.red(j1):q.default.red(M1);I=kl(H??I),l==="timer"?process.stdout.write(`${E} ${I} ${Ol(R)}
|
|
76
|
+
`):process.stdout.write(`${E} ${I}
|
|
77
|
+
`),m(),k()};return{start:D1,stop:Fl,message:(H="")=>{I=kl(H??I)}}};var $l=g(a(),1);var z=g(a(),1);import{join as wf}from"path";import{rmSync as Wf}from"fs";import{tmpdir as Nf}from"os";import{spawn as Ef}from"child_process";function E1(l){let y=l.match(/github\.com\/([^/]+)\/([^/]+)\/tree\/([^/]+)\/(.+)/);if(y){let[,f,I,,T]=y;return{type:"github",url:`https://github.com/${f}/${I}.git`,subpath:T}}let S=l.match(/github\.com\/([^/]+)\/([^/]+)/);if(S){let[,f,I]=S,T=I.replace(/\.git$/,"");return{type:"github",url:`https://github.com/${f}/${T}.git`}}let $=l.match(/gitlab\.com\/([^/]+)\/([^/]+)\/-\/tree\/([^/]+)\/(.+)/);if($){let[,f,I,,T]=$;return{type:"gitlab",url:`https://gitlab.com/${f}/${I}.git`,subpath:T}}let k=l.match(/gitlab\.com\/([^/]+)\/([^/]+)/);if(k){let[,f,I]=k,T=I.replace(/\.git$/,"");return{type:"gitlab",url:`https://gitlab.com/${f}/${T}.git`}}let b=l.match(/^([^/]+)\/([^/]+)(?:\/(.+))?$/);if(b&&!l.includes(":")){let[,f,I,T]=b;return{type:"github",url:`https://github.com/${f}/${I}.git`,subpath:T}}return{type:"git",url:l}}async function V1(l){let y=wf(Nf(),`give-skill-${Date.now()}`);return await new Promise((S,$)=>{let k=Ef("git",["clone","--depth","1",l,y],{stdio:"pipe"});k.on("close",(b)=>{if(b===0)S();else $(Error(`Failed to clone repository: ${l}`))}),k.on("error",$)}),y}async function A1(l){Wf(l,{recursive:!0,force:!0})}import{readdir as C1,readFile as Af,stat as xf}from"fs/promises";import{join as x,basename as Cf,dirname as Of}from"path";import{homedir as Vf}from"os";import{join as G}from"path";import{existsSync as K}from"fs";var Y=Vf(),j={opencode:{name:"opencode",displayName:"OpenCode",skillsDir:".opencode/skill",globalSkillsDir:G(Y,".config/opencode/skill"),detectInstalled:async()=>{return K(G(Y,".config/opencode"))}},"claude-code":{name:"claude-code",displayName:"Claude Code",skillsDir:".claude/skills",globalSkillsDir:G(Y,".claude/skills"),detectInstalled:async()=>{return K(G(Y,".claude"))}},codex:{name:"codex",displayName:"Codex",skillsDir:".codex/skills",globalSkillsDir:G(Y,".codex/skills"),detectInstalled:async()=>{return K(G(Y,".codex"))}},cursor:{name:"cursor",displayName:"Cursor",skillsDir:".cursor/skills",globalSkillsDir:G(Y,".cursor/skills"),detectInstalled:async()=>{return K(G(Y,".cursor"))}},amp:{name:"amp",displayName:"Amp",skillsDir:".agents/skills",globalSkillsDir:G(Y,".config/agents/skills"),detectInstalled:async()=>{return K(G(Y,".config/amp"))}},kilo:{name:"kilo",displayName:"Kilo Code",skillsDir:".kilocode/skills",globalSkillsDir:G(Y,".kilocode/skills"),detectInstalled:async()=>{return K(G(Y,".kilocode"))}},roo:{name:"roo",displayName:"Roo Code",skillsDir:".roo/skills",globalSkillsDir:G(Y,".roo/skills"),detectInstalled:async()=>{return K(G(Y,".roo"))}},goose:{name:"goose",displayName:"Goose",skillsDir:".goose/skills",globalSkillsDir:G(Y,".config/goose/skills"),detectInstalled:async()=>{return K(G(Y,".config/goose"))}},antigravity:{name:"antigravity",displayName:"Antigravity",skillsDir:".agent/skills",globalSkillsDir:G(Y,".gemini/antigravity/skills"),detectInstalled:async()=>{return K(G(Y,".gemini/antigravity"))}},copilot:{name:"copilot",displayName:"GitHub Copilot",skillsDir:".github/skills",globalSkillsDir:G(Y,".copilot/skills"),detectInstalled:async()=>{return K(G(Y,".copilot"))}},gemini:{name:"gemini",displayName:"Gemini CLI",skillsDir:".gemini/skills",globalSkillsDir:G(Y,".gemini/skills"),detectInstalled:async()=>{return K(G(Y,".gemini"))}},windsurf:{name:"windsurf",displayName:"Windsurf",skillsDir:".windsurf/skills",globalSkillsDir:G(Y,".codeium/windsurf/skills"),detectInstalled:async()=>{return K(G(Y,".codeium/windsurf"))}},trae:{name:"trae",displayName:"Trae",skillsDir:".trae/skills",globalSkillsDir:G(Y,".trae/skills"),detectInstalled:async()=>{return K(G(Y,".trae"))}},factory:{name:"factory",displayName:"Factory Droid",skillsDir:".factory/skills",globalSkillsDir:G(Y,".factory/skills"),detectInstalled:async()=>{return K(G(Y,".factory"))}}};async function x1(){let l=[];for(let[y,S]of Object.entries(j))if(await S.detectInstalled())l.push(y);return l}var Ff=["node_modules",".git","dist","build","__pycache__"],cf=["skills","skills/.curated","skills/.experimental","skills/.system"];function vf(l){let y=[l];for(let $ of cf)y.push(x(l,$));let S=new Set;for(let $ of Object.values(j))S.add(x(l,$.skillsDir));return y.push(...S),y}function gf(l){let y=l.match(/^---\n([\s\S]+?)\n---\n([\s\S]*)$/);if(!y)return{data:{},content:l};let S=y[1],$=y[2],k={};for(let b of S.split(`
|
|
78
|
+
`)){let f=b.indexOf(":");if(f===-1)continue;let I=b.slice(0,f).trim(),T=b.slice(f+1).trim();if(T.startsWith('"')&&T.endsWith('"')||T.startsWith("'")&&T.endsWith("'"))k[I]=T.slice(1,-1);else if(I==="metadata")try{let R={},B=T.replace(/^\{|\}$/g,"").trim();if(B){for(let L of B.split(",")){let[X,P]=L.split("=").map((m)=>m.trim());if(X&&P)R[X]=P.replace(/^['"]|['"]$/g,"")}k[I]=JSON.stringify(R)}}catch{k[I]=T}else k[I]=T}return{data:k,content:$}}async function xl(l){try{let y=x(l,"SKILL.md");return(await xf(y)).isFile()}catch{return!1}}async function Al(l){try{let y=await Af(l,"utf-8"),{data:S}=gf(y);if(!S.name||!S.description)return null;return{name:S.name,description:S.description,path:Of(l),metadata:S.metadata?JSON.parse(S.metadata):void 0}}catch{return null}}async function O1(l,y=0,S=5){let $=[];if(y>S)return $;try{if(await xl(l))$.push(l);let k=await C1(l,{withFileTypes:!0});for(let b of k)if(b.isDirectory()&&!Ff.includes(b.name)){let f=await O1(x(l,b.name),y+1,S);$.push(...f)}}catch{}return $}async function F1(l,y){let S=[],$=new Set,k=y?x(l,y):l;if(await xl(k)){let f=await Al(x(k,"SKILL.md"));if(f)return S.push(f),S}let b=vf(k);for(let f of b)try{let I=await C1(f,{withFileTypes:!0});for(let T of I)if(T.isDirectory()){let R=x(f,T.name);if(await xl(R)){let B=await Al(x(R,"SKILL.md"));if(B&&!$.has(B.name))S.push(B),$.add(B.name)}}}catch{}if(S.length===0){let f=await O1(k);for(let I of f){let T=await Al(x(I,"SKILL.md"));if(T&&!$.has(T.name))S.push(T),$.add(T.name)}}return S}function C(l){return l.name||Cf(l.path)}import{mkdir as c1,cp as hf,access as sf,readdir as mf}from"fs/promises";import{join as c,basename as Df}from"path";async function v1(l,y,S={}){let $=j[y],k=l.name||Df(l.path),b=S.global?$.globalSkillsDir:c(S.cwd||process.cwd(),$.skillsDir),f=c(b,k);try{return await c1(f,{recursive:!0}),await g1(l.path,f),{success:!0,path:f}}catch(I){return{success:!1,path:f,error:I instanceof Error?I.message:"Unknown error"}}}var nf=new Set(["README.md","metadata.json"]),uf=(l)=>{if(nf.has(l))return!0;if(l.startsWith("_"))return!0;return!1};async function g1(l,y){await c1(y,{recursive:!0});let S=await mf(l,{withFileTypes:!0});for(let $ of S){if(uf($.name))continue;let k=c(l,$.name),b=c(y,$.name);if($.isDirectory())await g1(k,b);else await hf(k,b)}}async function h1(l,y,S={}){let $=j[y],k=S.global?$.globalSkillsDir:c(S.cwd||process.cwd(),$.skillsDir),b=c(k,l);try{return await sf(b),!0}catch{return!1}}function s1(l,y,S={}){let $=j[y],k=S.global?$.globalSkillsDir:c(S.cwd||process.cwd(),$.skillsDir);return c(k,l)}async function i1(l,y){let S={tempDir:null,spinner:W1()};try{S.spinner.start("Parsing source...");let $=E1(l);S.spinner.stop(`Source: ${z.default.cyan($.url)}${$.subpath?` (${$.subpath})`:""}`),S.spinner.start("Cloning repository..."),S.tempDir=await V1($.url),S.spinner.stop("Repository cloned"),S.spinner.start("Discovering skills...");let k=await F1(S.tempDir,$.subpath);if(k.length===0)return S.spinner.stop(z.default.red("No skills found")),i(z.default.red("No valid skills found. Skills require a SKILL.md with name and description.")),{success:!1,installed:0,failed:0,results:[]};if(S.spinner.stop(`Found ${z.default.green(k.length)} skill${k.length>1?"s":""}`),y.list){console.log(),_.step(z.default.bold("Available Skills"));for(let B of k)_.message(` ${z.default.cyan(C(B))}`),_.message(` ${z.default.dim(B.description)}`);return console.log(),i("Use --skill <name> to install specific skills"),{success:!0,installed:0,failed:0,results:[]}}let b=await tf(k,y);if(!b)return{success:!1,installed:0,failed:0,results:[]};let f=await df(y,S);if(!f)return{success:!1,installed:0,failed:0,results:[]};let I=await rf(y);if(I===null)return{success:!1,installed:0,failed:0,results:[]};if(!await pf(y,b,f,I))return{success:!1,installed:0,failed:0,results:[]};S.spinner.start("Installing skills...");let R=await af(b,f,I);return S.spinner.stop("Installation complete"),R}finally{if(S.tempDir)await A1(S.tempDir)}}async function tf(l,y){let S;if(y.skill&&y.skill.length>0){if(S=l.filter(($)=>y.skill.some((k)=>$.name.toLowerCase()===k.toLowerCase()||C($).toLowerCase()===k.toLowerCase())),S.length===0){_.error(`No matching skills found for: ${y.skill.join(", ")}`),_.info("Available skills:");for(let $ of l)_.message(` - ${C($)}`);return null}_.info(`Selected ${S.length} skill${S.length!==1?"s":""}: ${S.map(($)=>z.default.cyan(C($))).join(", ")}`)}else if(l.length===1){S=l;let $=l[0];_.info(`Skill: ${z.default.cyan(C($))}`),_.message(z.default.dim($.description))}else if(y.yes)S=l,_.info(`Installing all ${l.length} skills`);else{let $=l.map((b)=>({value:b,label:C(b),hint:b.description.length>60?b.description.slice(0,57)+"...":b.description})),k=await Sl({message:"Select skills to install",options:$,required:!0});if(F(k))return s("Installation cancelled"),null;S=k}return S}async function df(l,y){if(l.agent&&l.agent.length>0){let $=Object.keys(j),k=l.agent.filter((b)=>!$.includes(b));if(k.length>0)return _.error(`Invalid agents: ${k.join(", ")}`),_.info(`Valid agents: ${$.join(", ")}`),null;return l.agent}y.spinner.start("Detecting installed agents...");let S=await x1();if(y.spinner.stop(`Detected ${S.length} agent${S.length!==1?"s":""}`),S.length===0)if(l.yes){let $=Object.keys(j);return _.info("Installing to all agents (none detected)"),$}else{_.warn("No coding agents detected. You can still install skills.");let $=Object.entries(j).map(([b,f])=>({value:b,label:f.displayName})),k=await Sl({message:"Select agents to install skills to",options:$,required:!0});if(F(k))return s("Installation cancelled"),null;return k}else if(S.length===1||l.yes){if(S.length===1){let $=S[0];_.info(`Installing to: ${z.default.cyan(j[$].displayName)}`)}else _.info(`Installing to: ${S.map(($)=>z.default.cyan(j[$].displayName)).join(", ")}`);return S}else{let $=S.map((b)=>({value:b,label:j[b].displayName,hint:j[b].skillsDir})),k=await Sl({message:"Select agents to install skills to",options:$,required:!0,initialValues:S});if(F(k))return s("Installation cancelled"),null;return k}}async function rf(l){let y=l.global??!1;if(l.global===void 0&&!l.yes){let S=await K1({message:"Installation scope",options:[{value:!1,label:"Project",hint:"Install in current directory (committed with your project)"},{value:!0,label:"Global",hint:"Install in home directory (available across all projects)"}]});if(F(S))return s("Installation cancelled"),null;y=S}return y}async function pf(l,y,S,$){console.log(),_.step(z.default.bold("Installation Summary"));for(let k of y){_.message(` ${z.default.cyan(C(k))}`);for(let b of S){let f=s1(k.name,b,{global:$}),T=await h1(k.name,b,{global:$})?z.default.yellow(" (will overwrite)"):"";_.message(` ${z.default.dim("→")} ${j[b].displayName}: ${z.default.dim(f)}${T}`)}}if(console.log(),!l.yes){let k=await H1({message:"Proceed with installation?"});if(F(k)||!k)return s("Installation cancelled"),!1}return!0}async function af(l,y,S){let $=l.flatMap((T)=>y.map((R)=>v1(T,R,{global:S}))),b=(await Promise.all($)).map((T,R)=>{let B=Math.floor(R/y.length),L=R%y.length,X=l[B],P=y[L];return{skill:C(X),agent:j[P].displayName,...T}});console.log();let f=b.filter((T)=>T.success),I=b.filter((T)=>!T.success);if(f.length>0){_.success(z.default.green(`Successfully installed ${f.length} skill${f.length!==1?"s":""}`));for(let T of f)_.message(` ${z.default.green("✓")} ${T.skill} → ${T.agent}`),_.message(` ${z.default.dim(T.path)}`)}if(I.length>0){console.log(),_.error(z.default.red(`Failed to install ${I.length} skill${I.length!==1?"s":""}`));for(let T of I)_.message(` ${z.default.red("✗")} ${T.skill} → ${T.agent}`),_.message(` ${z.default.dim(T.error)}`)}return console.log(),i(z.default.green("Done!")),{success:I.length===0,installed:f.length,failed:I.length,results:b}}var m1={name:"give-skill",version:"1.0.1",description:"Universal skill installer for AI coding agents - Claude, Cursor, Copilot, and more",type:"module",bin:{"give-skill":"./dist/index.js"},files:["dist","README.md"],scripts:{build:"bun build src/index.ts --outdir dist --target node --minify",dev:"bun src/index.ts",prepublishOnly:"bun run build"},keywords:["cli","skills","claude","cursor","copilot","github-copilot","ai-agents","agent-skills","coding-assistant"],repository:{type:"git",url:"git+https://github.com/compilecafe/give-skill.git"},homepage:"https://github.com/compilecafe/give-skill#readme",bugs:{url:"https://github.com/compilecafe/give-skill/issues"},author:"Compile Café",license:"MIT",dependencies:{"@clack/prompts":"^0.11.0",commander:"^14.0.2",picocolors:"^1.1.1"},devDependencies:{"@types/bun":"latest"},module:"src/index.ts"};var ef=m1.version;Jl.name("give-skill").description("Install skills onto coding agents (Claude Code, Cursor, Copilot, Gemini, Windsurf, Trae, Factory, OpenCode, Codex, Antigravity, Amp, Kilo, Roo, Goose)").version(ef).argument("<source>","Git repo URL, GitHub shorthand (owner/repo), or direct path to skill").option("-g, --global","Install skill globally (user-level) instead of project-level").option("-a, --agent <agents...>","Specify agents to install to (windsurf, gemini, claude-code, cursor, copilot, etc.)").option("-s, --skill <skills...>","Specify skill names to install (skip selection prompt)").option("-l, --list","List available skills in the repository without installing").option("-y, --yes","Skip confirmation prompts").action(async(l,y)=>{await lS(l,y)});Jl.parse();async function lS(l,y){console.log(),w1($l.default.bgCyan($l.default.black(" give-skill ")));try{let S=await i1(l,y);if(!S.success&&S.installed===0&&S.failed===0)process.exit(1);if(S.failed>0)process.exit(1)}catch(S){_.error(S instanceof Error?S.message:"Unknown error occurred"),i($l.default.red("Installation failed")),process.exit(1)}}
|