New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@stricli/core

Package Overview
Dependencies
Maintainers
0
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@stricli/core - npm Package Compare versions

Comparing version

to
1.1.0

6

dist/index.d.ts

@@ -1294,2 +1294,6 @@ /**

interface CustomUsage {
readonly input: string;
readonly brief: string;
}
interface CommandDocumentation {

@@ -1307,3 +1311,3 @@ /**

*/
readonly customUsage?: readonly string[];
readonly customUsage?: readonly (string | CustomUsage)[];
}

@@ -1310,0 +1314,0 @@

23

dist/index.js

@@ -1,22 +0,23 @@

function K(e,t){let n=e.env?.[t];return typeof n=="string"&&n!=="0"}var b={UnknownCommand:-5,InvalidArgument:-4,ContextLoadError:-3,CommandLoadError:-2,InternalError:-1,Success:0,CommandRunError:1};function I(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function A(e){return Array.from(e).map((t,n)=>{let a=t.toUpperCase(),r=t.toLowerCase();return n===0||a!==t||a===r?t:`-${r}`}).join("")}function ve(e){let t=new Map;return{get:(...n)=>t.get(n.join(","))??e,set:(n,...a)=>{t.set(a.join(","),n)}}}function Xe(e,t,n){let{threshold:a,weights:r}=n;if(e===t)return 0;let i=Math.abs(e.length-t.length);if(typeof a=="number"&&i>a)return 1/0;let o=ve(1/0);o.set(0,-1,-1);for(let s=0;s<t.length;++s)o.set((s+1)*r.insertion,-1,s);for(let s=0;s<e.length;++s)o.set((s+1)*r.deletion,s,-1);let d=-1/0;for(let s=0;s<e.length;++s){let p=1/0;for(let l=0;l<=t.length-1;++l){let u=e[s]===t[l]?0:1,c=[o.get(s-1,l)+r.deletion,o.get(s,l-1)+r.insertion,o.get(s-1,l-1)+u*r.substitution];e[s]===t[l-1]&&e[s-1]===t[l]&&c.push(o.get(s-2,l-2)+u*r.transposition);let f=Math.min(...c);o.set(f,s,l),f<p&&(p=f)}if(p>a){if(d>a)return 1/0;d=p}else d=-1/0}let m=o.get(e.length-1,t.length-1);return m>a?1/0:m}function we(e,t,n){let a=e[1]-t[1];if(a!==0)return a;let r=e[0].startsWith(n),i=t[0].startsWith(n);return r&&!i?-1:!r&&i?1:e[0].localeCompare(t[0])}function D(e,t,n){let a=t.map(i=>[i,Xe(e,i,n)]).filter(([,i])=>i<=n.threshold),r=Math.min(...a.map(([,i])=>i));return a.filter(([,i])=>i===r).sort((i,o)=>we(i,o,e)).map(([i])=>i)}var x=class extends Error{};function q(e){return e instanceof Error?e.stack??String(e):String(e)}function $e(e,t){let n=[],a=Math.max(e.length,t.length);for(let r=0;r<a;++r)n[r]=Math.max(e[r],t[r]);return n}function $(e,t){if(e.length===0)return[];let n=Array(Math.max(...e.map(r=>r.length))).fill(0,0),a=e.reduce((r,i)=>{let o=i.map(d=>d.length);return $e(r,o)},n);return e.map(r=>{let i=(r[0]??"").padEnd(a[0]);return r.slice(1).reduce((o,d,m,s)=>{let p=s.length===m+1?d:d.padEnd(a[m+1]);return[...o,t?.[m]??" ",p]},[i]).join("").trimEnd()})}function V(e,t){if(e.length<=1)return e[0]??"";if(e.length===2)return e.join(` ${t.conjunction} `);let n=e.slice(0,e.length-1).join(", ");return t.serialComma&&(n+=","),[n,t.conjunction,e[e.length-1]].join(" ")}function Le(e,t){return e.reduce((n,a)=>{let r=t(a),i=n[r]??[];return i.push(a),n[r]=i,n},{})}function me(e,t){return Le(e,n=>n[t])}async function z(e){let t=await Promise.allSettled(e),n=me(t,"status");return n.rejected&&n.rejected.length>0?{status:"rejected",reasons:n.rejected.map(a=>a.reason)}:{status:"fulfilled",value:n.fulfilled?.map(a=>a.value)??[]}}var ke=e=>{switch(e.toLowerCase()){case"true":return!0;case"false":return!1}throw new SyntaxError(`Cannot convert ${e} to a boolean`)},re=e=>{switch(e.toLowerCase()){case"true":case"yes":case"y":return!0;case"false":case"no":case"n":return!1}throw new SyntaxError(`Cannot convert ${e} to a boolean`)};var oe=e=>{let t=Number(e);if(Number.isNaN(t))throw new SyntaxError(`Cannot convert ${e} to a number`);return t};var h=class extends x{_brand};function se(e,t){let n=e.constructor.name,a=t[n];return a?a(e):e.message}function Ie(e,t,n){return Object.fromEntries(Object.entries(t).map(([a,r])=>{let i=r,o=e[i];if(!o){let d=v(i,n);throw new L(d,[],a)}return[a,[i,o]]}))}var L=class extends h{input;corrections;aliasName;constructor(t,n,a){let r=`No flag registered for --${t}`;if(a)r+=` (aliased from -${a})`;else if(n.length>0){let i=V(n.map(o=>`--${o}`),{kind:"conjunctive",conjunction:"or",serialComma:!0});r+=`, did you mean ${i}?`}super(r),this.input=t,this.corrections=n,this.aliasName=a}},G=class extends h{input;constructor(t){super(`No alias registered for -${t}`),this.input=t}};function ae(e,t){return e.placeholder?e.placeholder:typeof t=="number"?`arg${t}`:"args"}function v(e,t){return t==="allow-kebab-for-camel"?A(e):e}var j=class extends h{externalFlagNameOrPlaceholder;input;exception;constructor(t,n,a){super(`Failed to parse "${n}" for ${t}: ${a instanceof Error?a.message:String(a)}`),this.externalFlagNameOrPlaceholder=t,this.input=n,this.exception=a}};function M(e,t,n,a){try{return t.parse.call(a,n)}catch(r){throw new j(e,n,r)}}var W=class extends h{externalFlagName;input;values;constructor(t,n,a,r){let i=`Expected "${n}" to be one of (${a.join("|")})`;if(r.length>0){let o=V(r.map(d=>`"${d}"`),{kind:"conjunctive",conjunction:"or",serialComma:!0});i+=`, did you mean ${o}?`}super(i),this.externalFlagName=t,this.input=n,this.values=a}},X=class extends h{externalFlagName;nextFlagName;constructor(t,n){let a=`Expected input for flag --${t}`;n&&(a+=` but encountered --${n} instead`),super(a),this.externalFlagName=t,this.nextFlagName=n}},H=class extends h{expectedCount;input;constructor(t,n){super(`Too many arguments, expected ${t} but encountered "${n}"`),this.expectedCount=t,this.input=n}},_=class extends h{placeholder;limit;constructor(t,n){let a;n?(a=`Expected at least ${n[0]} argument(s) for ${t}`,n[1]===0?a+=" but found none":a+=` but only found ${n[1]}`):a=`Expected argument for ${t}`,super(a),this.placeholder=t,this.limit=n}};function de(e){if(e.startsWith("no")&&e.length>2){if(e[2]==="-")return e.slice(4);let t=e[2],n=t.toUpperCase();return t!==n?void 0:t.toLowerCase()+e.slice(3)}}function pe(e,t,n){let a=e,r=t[a];if(!r){let o=de(a);if(o&&(r=t[o],r&&r.kind=="boolean"))return{namedFlag:[o,r],negated:!0}}let i=I(e);if(n.caseStyle==="allow-kebab-for-camel"&&!r){if(r=t[i],r)return{namedFlag:[i,r]};let o=de(i);if(o&&(r=t[o],r&&r.kind=="boolean"))return{namedFlag:[o,r],negated:!0}}if(!r){if(i in t)throw new L(e,[i]);let o=A(e);if(o in t)throw new L(e,[o]);let d=D(a,Object.keys(t),n.distanceOptions);throw new L(e,d)}return{namedFlag:[a,r]}}function ue(e){return e.namedFlag[1].kind==="boolean"||e.namedFlag[1].kind==="counter"}var ce=/^-([a-z]+)$/i,De=/^--([a-z][a-z-]+)$/i;function Me(e,t,n,a){let r=ce.exec(e);if(r){let o=r[1];return Array.from(o).map(d=>{let m=d,s=n[m];if(!s)throw new G(m);return{namedFlag:s}})}let i=De.exec(e);if(i){let o=i[1];return[pe(o,t,a)]}return[]}var Ge=/^--([a-z][a-z-]+)=(.+)$/i,je=/^-([a-z])=(.+)$/i,J=class extends h{externalFlagName;valueText;constructor(t,n){super(`Cannot negate flag --${t} and pass "${n}" as value`),this.externalFlagName=t,this.valueText=n}};function Ue(e,t,n,a){let r=Ge.exec(e);if(r){let o=r[1],{namedFlag:d,negated:m}=pe(o,t,a),s=r[2];if(m)throw new J(o,s);return[d,s]}let i=je.exec(e);if(i){let o=i[1],d=n[o];if(!d)throw new G(o);let m=i[2];return[d,m]}}async function qe(e,t,n,a,r){if(!n){if("default"in t&&typeof t.default<"u")return t.kind==="boolean"||t.kind==="enum"?t.default:M(e,t,t.default,r);if(t.optional)return;if(t.kind==="boolean")return!1;if(t.kind==="counter")return 0;throw new X(e)}if(t.kind==="counter")return n.reduce((o,d)=>{try{return o+oe.call(r,d)}catch(m){throw new j(e,d,m)}},0);if("variadic"in t&&t.variadic){if(t.kind==="enum"){for(let o of n)if(!t.values.includes(o)){let d=D(o,t.values,a.distanceOptions);throw new W(e,o,t.values,d)}return n}return Promise.all(n.map(o=>M(e,t,o,r)))}let i=n[0];if(t.kind==="boolean")try{return re.call(r,i)}catch(o){throw new j(e,i,o)}if(t.kind==="enum"){if(!t.values.includes(i)){let o=D(i,t.values,a.distanceOptions);throw new W(e,i,t.values,o)}return i}return M(e,t,i,r)}var Q=class extends h{externalFlagName;previousInput;input;constructor(t,n,a){super(`Too many arguments for --${t}, encountered "${a}" after "${n}"`),this.externalFlagName=t,this.previousInput=n,this.input=a}};function fe(e){return e.kind==="counter"?!0:"variadic"in e?!!e.variadic:!1}function B(e,t,n,a){let r=e.get(n[0])??[];if(r.length>0&&!fe(n[1])){let i=v(n[0],t);throw new Q(i,r[0],a)}e.set(n[0],[...r,a])}function ie(e,t,n){if(t.get(n)){let r=e[n];return!fe(r)}return!1}function Y(e,t){let{flags:n={},aliases:a={},positional:r={kind:"tuple",parameters:[]}}=e,i=Ie(n,a,t.caseStyle),o=[],d=new Map,m=0,s,p=!1;return{next:l=>{if(!p&&t.allowArgumentEscapeSequence&&l==="--"){if(s)if(s[1].kind==="parsed"&&s[1].inferEmpty)B(d,t.caseStyle,s,""),s=void 0;else{let u=v(s[0],t.caseStyle);throw new X(u)}p=!0;return}if(!p){let u=Ue(l,n,i,t);if(u){if(s)if(s[1].kind==="parsed"&&s[1].inferEmpty)B(d,t.caseStyle,s,""),s=void 0;else{let f=v(s[0],t.caseStyle),T=v(u[0][0],t.caseStyle);throw new X(f,T)}B(d,t.caseStyle,...u);return}let c=Me(l,n,i,t);if(c.length>0){if(s)if(s[1].kind==="parsed"&&s[1].inferEmpty)B(d,t.caseStyle,s,""),s=void 0;else{let f=v(s[0],t.caseStyle),T=v(c[0].namedFlag[0],t.caseStyle);throw new X(f,T)}if(c.every(ue))for(let f of c)f.namedFlag[1].kind==="boolean"?B(d,t.caseStyle,f.namedFlag,f.negated?"false":"true"):B(d,t.caseStyle,f.namedFlag,"1");else if(c.length>1){let f=c.find(E=>!ue(E)),T=v(f.namedFlag[0],t.caseStyle);throw new X(T)}else s=c[0].namedFlag;return}}if(s)B(d,t.caseStyle,s,l),s=void 0;else{if(r.kind==="tuple"){if(m>=r.parameters.length)throw new H(r.parameters.length,l)}else if(typeof r.maximum=="number"&&m>=r.maximum)throw new H(r.maximum,l);o[m]=l,++m}},parseArguments:async l=>{let u=[],c;r.kind==="array"?(typeof r.minimum=="number"&&m<r.minimum&&u.push(new _(ae(r.parameter),[r.minimum,m])),c=z(o.map(async(g,C)=>{let y=ae(r.parameter,C+1);return M(y,r.parameter,g,l)}))):c=z(r.parameters.map(async(g,C)=>{let y=ae(g,C+1),N=o[C];if(typeof N!="string"){if(typeof g.default=="string")return M(y,g,g.default,l);if(g.optional)return;throw new _(y)}return M(y,g,N,l)})),s&&s[1].kind==="parsed"&&s[1].inferEmpty&&(B(d,t.caseStyle,s,""),s=void 0);let f=z(Object.entries(n).map(async g=>{let[C,y]=g,N=v(C,t.caseStyle);if(s&&s[0]===C)throw new X(N);let P=d.get(C),w=await qe(N,y,P,t,l);return[C,w]})),[T,E]=await Promise.all([c,f]);if(T.status==="rejected")for(let g of T.reasons)u.push(g);if(E.status==="rejected")for(let g of E.reasons)u.push(g);if(u.length>0)return{success:!1,errors:u};if(T.status==="rejected")throw new x("Unknown failure while scanning positional arguments");if(E.status==="rejected")throw new x("Unknown failure while scanning flag arguments");return{success:!0,arguments:[Object.fromEntries(E.value),...T.value]}},proposeCompletions:async({partial:l,completionConfig:u,text:c,context:f,includeVersionFlag:T})=>{if(s){let F=s[1],g;return F.kind==="enum"?g=F.values:F.proposeCompletions?g=await F.proposeCompletions.call(f,l):g=[],g.map(C=>({kind:"argument:value",completion:C,brief:F.brief})).filter(({completion:C})=>C.startsWith(l))}let E=[];if(!p){let F=ce.exec(l);if(u.includeAliases){if(l===""||l==="-"){let g=Object.entries(a).filter(C=>!ie(n,d,C[1]));for(let[C]of g){let y=i[C];y&&E.push({kind:"argument:flag",completion:`-${C}`,brief:y[1].brief})}}else if(F){let g=Array.from(F[1]);if(g.includes("h"))return[];if(T&&g.includes("v"))return[];let C=new Map(d);for(let P of g){let w=i[P];if(!w)throw new G(P);B(C,t.caseStyle,w,w[1].kind==="boolean"?"true":"1")}let y=g[g.length-1];if(y){let P=i[y];P&&E.push({kind:"argument:flag",completion:l,brief:P[1].brief})}let N=Object.entries(a).filter(P=>!ie(n,C,P[1]));for(let[P]of N){let w=i[P];w&&E.push({kind:"argument:flag",completion:`${l}${P}`,brief:w[1].brief})}}}if(l===""||l==="-"||l.startsWith("--")){t.allowArgumentEscapeSequence&&E.push({kind:"argument:flag",completion:"--",brief:c.briefs.argumentEscapeSequence});let g=Object.entries(n).filter(([y])=>!ie(n,d,y));t.caseStyle==="allow-kebab-for-camel"&&(g=g.map(([y,N])=>[A(y),N]));let C=g.map(([y,N])=>[`--${y}`,N]).filter(([y])=>y.startsWith(l));E.push(...C.map(([y,N])=>({kind:"argument:flag",completion:y,brief:N.brief})))}}if(r.kind==="array"){if(r.parameter.proposeCompletions&&(typeof r.maximum!="number"||m<r.maximum)){let F=await r.parameter.proposeCompletions.call(f,l);E.push(...F.map(g=>({kind:"argument:value",completion:g,brief:r.parameter.brief})))}}else{let F=r.parameters[m];if(F?.proposeCompletions){let g=await F.proposeCompletions.call(f,l);E.push(...g.map(C=>({kind:"argument:value",completion:C,brief:F.brief})))}}return E.filter(({completion:F})=>F.startsWith(l))}}}function ge(e,t,n){let a=t==="allow-kebab-for-camel"?"convert-camel-to-kebab":t,r=e.getAllEntries();return n.includeHiddenRoutes||(r=r.filter(i=>!i.hidden)),r.flatMap(i=>{let o=i.name[a];return n.includeAliases?[o,...i.aliases]:[o]})}var Ce={headers:{usage:"USAGE",aliases:"ALIASES",commands:"COMMANDS",flags:"FLAGS",arguments:"ARGUMENTS"},keywords:{default:"default ="},briefs:{help:"Print help information and exit",helpAll:"Print help information (including hidden commands/flags) and exit",version:"Print version information and exit",argumentEscapeSequence:"All subsequent inputs should be interpreted as arguments"},noCommandRegisteredForInput:({input:e,corrections:t})=>{let n=`No command registered for \`${e}\``;if(t.length>0){let a=V(t,{kind:"conjunctive",conjunction:"or",serialComma:!0});return`${n}, did you mean ${a}?`}else return n},noTextAvailableForLocale:({requestedLocale:e,defaultLocale:t})=>`Application does not support "${e}" locale, defaulting to "${t}"`,exceptionWhileParsingArguments:e=>e instanceof h?se(e,{}):`Unable to parse arguments, ${q(e)}`,exceptionWhileLoadingCommandFunction:e=>`Unable to load command function, ${q(e)}`,exceptionWhileLoadingCommandContext:e=>`Unable to load command context, ${q(e)}`,exceptionWhileRunningCommand:e=>`Command failed, ${q(e)}`,commandErrorResult:e=>e.message,currentVersionIsNotLatest:({currentVersion:e,latestVersion:t,upgradeCommand:n})=>n?`Latest available version is ${t} (currently running ${e}), upgrade with "${n}"`:`Latest available version is ${t} (currently running ${e})`};function ye(e){if(e.startsWith("en"))return Ce}function S(e,t,n){return!n.disableAnsiColor&&!K(e,"STRICLI_NO_COLOR")&&(t.getColorDepth?.(e.env)??1)>=4}async function xe({loader:e,parameters:t},{context:n,inputs:a,scannerConfig:r,errorFormatting:i,documentationConfig:o,determineExitCode:d}){let m=e(),s;try{let l=Y(t,r);for(let c of a)l.next(c);let u=await l.parseArguments(n);if(u.success)s=u.arguments;else{let c=S(n.process,n.process.stderr,o);for(let f of u.errors){let T=i.exceptionWhileParsingArguments(f,c);n.process.stderr.write(c?`\x1B[1m\x1B[31m${T}\x1B[39m\x1B[22m
function K(e,t){let n=e.env?.[t];return typeof n=="string"&&n!=="0"}var b={UnknownCommand:-5,InvalidArgument:-4,ContextLoadError:-3,CommandLoadError:-2,InternalError:-1,Success:0,CommandRunError:1};function I(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function A(e){return Array.from(e).map((t,n)=>{let a=t.toUpperCase(),r=t.toLowerCase();return n===0||a!==t||a===r?t:`-${r}`}).join("")}function ve(e){let t=new Map;return{get:(...n)=>t.get(n.join(","))??e,set:(n,...a)=>{t.set(a.join(","),n)}}}function Xe(e,t,n){let{threshold:a,weights:r}=n;if(e===t)return 0;let i=Math.abs(e.length-t.length);if(typeof a=="number"&&i>a)return 1/0;let o=ve(1/0);o.set(0,-1,-1);for(let s=0;s<t.length;++s)o.set((s+1)*r.insertion,-1,s);for(let s=0;s<e.length;++s)o.set((s+1)*r.deletion,s,-1);let d=-1/0;for(let s=0;s<e.length;++s){let u=1/0;for(let l=0;l<=t.length-1;++l){let p=e[s]===t[l]?0:1,c=[o.get(s-1,l)+r.deletion,o.get(s,l-1)+r.insertion,o.get(s-1,l-1)+p*r.substitution];e[s]===t[l-1]&&e[s-1]===t[l]&&c.push(o.get(s-2,l-2)+p*r.transposition);let f=Math.min(...c);o.set(f,s,l),f<u&&(u=f)}if(u>a){if(d>a)return 1/0;d=u}else d=-1/0}let m=o.get(e.length-1,t.length-1);return m>a?1/0:m}function we(e,t,n){let a=e[1]-t[1];if(a!==0)return a;let r=e[0].startsWith(n),i=t[0].startsWith(n);return r&&!i?-1:!r&&i?1:e[0].localeCompare(t[0])}function D(e,t,n){let a=t.map(i=>[i,Xe(e,i,n)]).filter(([,i])=>i<=n.threshold),r=Math.min(...a.map(([,i])=>i));return a.filter(([,i])=>i===r).sort((i,o)=>we(i,o,e)).map(([i])=>i)}var x=class extends Error{};function q(e){return e instanceof Error?e.stack??String(e):String(e)}function $e(e,t){let n=[],a=Math.max(e.length,t.length);for(let r=0;r<a;++r)n[r]=Math.max(e[r],t[r]);return n}function $(e,t){if(e.length===0)return[];let n=Array(Math.max(...e.map(r=>r.length))).fill(0,0),a=e.reduce((r,i)=>{let o=i.map(d=>d.length);return $e(r,o)},n);return e.map(r=>{let i=(r[0]??"").padEnd(a[0]);return r.slice(1).reduce((o,d,m,s)=>{let u=s.length===m+1?d:d.padEnd(a[m+1]);return[...o,t?.[m]??" ",u]},[i]).join("").trimEnd()})}function V(e,t){if(e.length<=1)return e[0]??"";if(e.length===2)return e.join(` ${t.conjunction} `);let n=e.slice(0,e.length-1).join(", ");return t.serialComma&&(n+=","),[n,t.conjunction,e[e.length-1]].join(" ")}function Le(e,t){return e.reduce((n,a)=>{let r=t(a),i=n[r]??[];return i.push(a),n[r]=i,n},{})}function me(e,t){return Le(e,n=>n[t])}async function z(e){let t=await Promise.allSettled(e),n=me(t,"status");return n.rejected&&n.rejected.length>0?{status:"rejected",reasons:n.rejected.map(a=>a.reason)}:{status:"fulfilled",value:n.fulfilled?.map(a=>a.value)??[]}}var ke=e=>{switch(e.toLowerCase()){case"true":return!0;case"false":return!1}throw new SyntaxError(`Cannot convert ${e} to a boolean`)},re=e=>{switch(e.toLowerCase()){case"true":case"yes":case"y":return!0;case"false":case"no":case"n":return!1}throw new SyntaxError(`Cannot convert ${e} to a boolean`)};var oe=e=>{let t=Number(e);if(Number.isNaN(t))throw new SyntaxError(`Cannot convert ${e} to a number`);return t};var h=class extends x{_brand};function se(e,t){let n=e.constructor.name,a=t[n];return a?a(e):e.message}function Ie(e,t,n){return Object.fromEntries(Object.entries(t).map(([a,r])=>{let i=r,o=e[i];if(!o){let d=v(i,n);throw new L(d,[],a)}return[a,[i,o]]}))}var L=class extends h{input;corrections;aliasName;constructor(t,n,a){let r=`No flag registered for --${t}`;if(a)r+=` (aliased from -${a})`;else if(n.length>0){let i=V(n.map(o=>`--${o}`),{kind:"conjunctive",conjunction:"or",serialComma:!0});r+=`, did you mean ${i}?`}super(r),this.input=t,this.corrections=n,this.aliasName=a}},G=class extends h{input;constructor(t){super(`No alias registered for -${t}`),this.input=t}};function ae(e,t){return e.placeholder?e.placeholder:typeof t=="number"?`arg${t}`:"args"}function v(e,t){return t==="allow-kebab-for-camel"?A(e):e}var j=class extends h{externalFlagNameOrPlaceholder;input;exception;constructor(t,n,a){super(`Failed to parse "${n}" for ${t}: ${a instanceof Error?a.message:String(a)}`),this.externalFlagNameOrPlaceholder=t,this.input=n,this.exception=a}};function M(e,t,n,a){try{return t.parse.call(a,n)}catch(r){throw new j(e,n,r)}}var W=class extends h{externalFlagName;input;values;constructor(t,n,a,r){let i=`Expected "${n}" to be one of (${a.join("|")})`;if(r.length>0){let o=V(r.map(d=>`"${d}"`),{kind:"conjunctive",conjunction:"or",serialComma:!0});i+=`, did you mean ${o}?`}super(i),this.externalFlagName=t,this.input=n,this.values=a}},X=class extends h{externalFlagName;nextFlagName;constructor(t,n){let a=`Expected input for flag --${t}`;n&&(a+=` but encountered --${n} instead`),super(a),this.externalFlagName=t,this.nextFlagName=n}},H=class extends h{expectedCount;input;constructor(t,n){super(`Too many arguments, expected ${t} but encountered "${n}"`),this.expectedCount=t,this.input=n}},_=class extends h{placeholder;limit;constructor(t,n){let a;n?(a=`Expected at least ${n[0]} argument(s) for ${t}`,n[1]===0?a+=" but found none":a+=` but only found ${n[1]}`):a=`Expected argument for ${t}`,super(a),this.placeholder=t,this.limit=n}};function de(e){if(e.startsWith("no")&&e.length>2){if(e[2]==="-")return e.slice(4);let t=e[2],n=t.toUpperCase();return t!==n?void 0:t.toLowerCase()+e.slice(3)}}function pe(e,t,n){let a=e,r=t[a];if(!r){let o=de(a);if(o&&(r=t[o],r&&r.kind=="boolean"))return{namedFlag:[o,r],negated:!0}}let i=I(e);if(n.caseStyle==="allow-kebab-for-camel"&&!r){if(r=t[i],r)return{namedFlag:[i,r]};let o=de(i);if(o&&(r=t[o],r&&r.kind=="boolean"))return{namedFlag:[o,r],negated:!0}}if(!r){if(i in t)throw new L(e,[i]);let o=A(e);if(o in t)throw new L(e,[o]);let d=D(a,Object.keys(t),n.distanceOptions);throw new L(e,d)}return{namedFlag:[a,r]}}function ue(e){return e.namedFlag[1].kind==="boolean"||e.namedFlag[1].kind==="counter"}var ce=/^-([a-z]+)$/i,De=/^--([a-z][a-z-]+)$/i;function Me(e,t,n,a){let r=ce.exec(e);if(r){let o=r[1];return Array.from(o).map(d=>{let m=d,s=n[m];if(!s)throw new G(m);return{namedFlag:s}})}let i=De.exec(e);if(i){let o=i[1];return[pe(o,t,a)]}return[]}var Ge=/^--([a-z][a-z-]+)=(.+)$/i,je=/^-([a-z])=(.+)$/i,J=class extends h{externalFlagName;valueText;constructor(t,n){super(`Cannot negate flag --${t} and pass "${n}" as value`),this.externalFlagName=t,this.valueText=n}};function Ue(e,t,n,a){let r=Ge.exec(e);if(r){let o=r[1],{namedFlag:d,negated:m}=pe(o,t,a),s=r[2];if(m)throw new J(o,s);return[d,s]}let i=je.exec(e);if(i){let o=i[1],d=n[o];if(!d)throw new G(o);let m=i[2];return[d,m]}}async function qe(e,t,n,a,r){if(!n){if("default"in t&&typeof t.default<"u")return t.kind==="boolean"||t.kind==="enum"?t.default:M(e,t,t.default,r);if(t.optional)return;if(t.kind==="boolean")return!1;if(t.kind==="counter")return 0;throw new X(e)}if(t.kind==="counter")return n.reduce((o,d)=>{try{return o+oe.call(r,d)}catch(m){throw new j(e,d,m)}},0);if("variadic"in t&&t.variadic){if(t.kind==="enum"){for(let o of n)if(!t.values.includes(o)){let d=D(o,t.values,a.distanceOptions);throw new W(e,o,t.values,d)}return n}return Promise.all(n.map(o=>M(e,t,o,r)))}let i=n[0];if(t.kind==="boolean")try{return re.call(r,i)}catch(o){throw new j(e,i,o)}if(t.kind==="enum"){if(!t.values.includes(i)){let o=D(i,t.values,a.distanceOptions);throw new W(e,i,t.values,o)}return i}return M(e,t,i,r)}var Q=class extends h{externalFlagName;previousInput;input;constructor(t,n,a){super(`Too many arguments for --${t}, encountered "${a}" after "${n}"`),this.externalFlagName=t,this.previousInput=n,this.input=a}};function fe(e){return e.kind==="counter"?!0:"variadic"in e?!!e.variadic:!1}function B(e,t,n,a){let r=e.get(n[0])??[];if(r.length>0&&!fe(n[1])){let i=v(n[0],t);throw new Q(i,r[0],a)}e.set(n[0],[...r,a])}function ie(e,t,n){if(t.get(n)){let r=e[n];return!fe(r)}return!1}function Y(e,t){let{flags:n={},aliases:a={},positional:r={kind:"tuple",parameters:[]}}=e,i=Ie(n,a,t.caseStyle),o=[],d=new Map,m=0,s,u=!1;return{next:l=>{if(!u&&t.allowArgumentEscapeSequence&&l==="--"){if(s)if(s[1].kind==="parsed"&&s[1].inferEmpty)B(d,t.caseStyle,s,""),s=void 0;else{let p=v(s[0],t.caseStyle);throw new X(p)}u=!0;return}if(!u){let p=Ue(l,n,i,t);if(p){if(s)if(s[1].kind==="parsed"&&s[1].inferEmpty)B(d,t.caseStyle,s,""),s=void 0;else{let f=v(s[0],t.caseStyle),T=v(p[0][0],t.caseStyle);throw new X(f,T)}B(d,t.caseStyle,...p);return}let c=Me(l,n,i,t);if(c.length>0){if(s)if(s[1].kind==="parsed"&&s[1].inferEmpty)B(d,t.caseStyle,s,""),s=void 0;else{let f=v(s[0],t.caseStyle),T=v(c[0].namedFlag[0],t.caseStyle);throw new X(f,T)}if(c.every(ue))for(let f of c)f.namedFlag[1].kind==="boolean"?B(d,t.caseStyle,f.namedFlag,f.negated?"false":"true"):B(d,t.caseStyle,f.namedFlag,"1");else if(c.length>1){let f=c.find(E=>!ue(E)),T=v(f.namedFlag[0],t.caseStyle);throw new X(T)}else s=c[0].namedFlag;return}}if(s)B(d,t.caseStyle,s,l),s=void 0;else{if(r.kind==="tuple"){if(m>=r.parameters.length)throw new H(r.parameters.length,l)}else if(typeof r.maximum=="number"&&m>=r.maximum)throw new H(r.maximum,l);o[m]=l,++m}},parseArguments:async l=>{let p=[],c;r.kind==="array"?(typeof r.minimum=="number"&&m<r.minimum&&p.push(new _(ae(r.parameter),[r.minimum,m])),c=z(o.map(async(g,C)=>{let y=ae(r.parameter,C+1);return M(y,r.parameter,g,l)}))):c=z(r.parameters.map(async(g,C)=>{let y=ae(g,C+1),N=o[C];if(typeof N!="string"){if(typeof g.default=="string")return M(y,g,g.default,l);if(g.optional)return;throw new _(y)}return M(y,g,N,l)})),s&&s[1].kind==="parsed"&&s[1].inferEmpty&&(B(d,t.caseStyle,s,""),s=void 0);let f=z(Object.entries(n).map(async g=>{let[C,y]=g,N=v(C,t.caseStyle);if(s&&s[0]===C)throw new X(N);let P=d.get(C),w=await qe(N,y,P,t,l);return[C,w]})),[T,E]=await Promise.all([c,f]);if(T.status==="rejected")for(let g of T.reasons)p.push(g);if(E.status==="rejected")for(let g of E.reasons)p.push(g);if(p.length>0)return{success:!1,errors:p};if(T.status==="rejected")throw new x("Unknown failure while scanning positional arguments");if(E.status==="rejected")throw new x("Unknown failure while scanning flag arguments");return{success:!0,arguments:[Object.fromEntries(E.value),...T.value]}},proposeCompletions:async({partial:l,completionConfig:p,text:c,context:f,includeVersionFlag:T})=>{if(s){let F=s[1],g;return F.kind==="enum"?g=F.values:F.proposeCompletions?g=await F.proposeCompletions.call(f,l):g=[],g.map(C=>({kind:"argument:value",completion:C,brief:F.brief})).filter(({completion:C})=>C.startsWith(l))}let E=[];if(!u){let F=ce.exec(l);if(p.includeAliases){if(l===""||l==="-"){let g=Object.entries(a).filter(C=>!ie(n,d,C[1]));for(let[C]of g){let y=i[C];y&&E.push({kind:"argument:flag",completion:`-${C}`,brief:y[1].brief})}}else if(F){let g=Array.from(F[1]);if(g.includes("h"))return[];if(T&&g.includes("v"))return[];let C=new Map(d);for(let P of g){let w=i[P];if(!w)throw new G(P);B(C,t.caseStyle,w,w[1].kind==="boolean"?"true":"1")}let y=g[g.length-1];if(y){let P=i[y];P&&E.push({kind:"argument:flag",completion:l,brief:P[1].brief})}let N=Object.entries(a).filter(P=>!ie(n,C,P[1]));for(let[P]of N){let w=i[P];w&&E.push({kind:"argument:flag",completion:`${l}${P}`,brief:w[1].brief})}}}if(l===""||l==="-"||l.startsWith("--")){t.allowArgumentEscapeSequence&&E.push({kind:"argument:flag",completion:"--",brief:c.briefs.argumentEscapeSequence});let g=Object.entries(n).filter(([y])=>!ie(n,d,y));t.caseStyle==="allow-kebab-for-camel"&&(g=g.map(([y,N])=>[A(y),N]));let C=g.map(([y,N])=>[`--${y}`,N]).filter(([y])=>y.startsWith(l));E.push(...C.map(([y,N])=>({kind:"argument:flag",completion:y,brief:N.brief})))}}if(r.kind==="array"){if(r.parameter.proposeCompletions&&(typeof r.maximum!="number"||m<r.maximum)){let F=await r.parameter.proposeCompletions.call(f,l);E.push(...F.map(g=>({kind:"argument:value",completion:g,brief:r.parameter.brief})))}}else{let F=r.parameters[m];if(F?.proposeCompletions){let g=await F.proposeCompletions.call(f,l);E.push(...g.map(C=>({kind:"argument:value",completion:C,brief:F.brief})))}}return E.filter(({completion:F})=>F.startsWith(l))}}}function ge(e,t,n){let a=t==="allow-kebab-for-camel"?"convert-camel-to-kebab":t,r=e.getAllEntries();return n.includeHiddenRoutes||(r=r.filter(i=>!i.hidden)),r.flatMap(i=>{let o=i.name[a];return n.includeAliases?[o,...i.aliases]:[o]})}var Ce={headers:{usage:"USAGE",aliases:"ALIASES",commands:"COMMANDS",flags:"FLAGS",arguments:"ARGUMENTS"},keywords:{default:"default ="},briefs:{help:"Print help information and exit",helpAll:"Print help information (including hidden commands/flags) and exit",version:"Print version information and exit",argumentEscapeSequence:"All subsequent inputs should be interpreted as arguments"},noCommandRegisteredForInput:({input:e,corrections:t})=>{let n=`No command registered for \`${e}\``;if(t.length>0){let a=V(t,{kind:"conjunctive",conjunction:"or",serialComma:!0});return`${n}, did you mean ${a}?`}else return n},noTextAvailableForLocale:({requestedLocale:e,defaultLocale:t})=>`Application does not support "${e}" locale, defaulting to "${t}"`,exceptionWhileParsingArguments:e=>e instanceof h?se(e,{}):`Unable to parse arguments, ${q(e)}`,exceptionWhileLoadingCommandFunction:e=>`Unable to load command function, ${q(e)}`,exceptionWhileLoadingCommandContext:e=>`Unable to load command context, ${q(e)}`,exceptionWhileRunningCommand:e=>`Command failed, ${q(e)}`,commandErrorResult:e=>e.message,currentVersionIsNotLatest:({currentVersion:e,latestVersion:t,upgradeCommand:n})=>n?`Latest available version is ${t} (currently running ${e}), upgrade with "${n}"`:`Latest available version is ${t} (currently running ${e})`};function ye(e){if(e.startsWith("en"))return Ce}function S(e,t,n){return!n.disableAnsiColor&&!K(e,"STRICLI_NO_COLOR")&&(t.getColorDepth?.(e.env)??1)>=4}async function xe({loader:e,parameters:t},{context:n,inputs:a,scannerConfig:r,errorFormatting:i,documentationConfig:o,determineExitCode:d}){let m=e(),s;try{let l=Y(t,r);for(let c of a)l.next(c);let p=await l.parseArguments(n);if(p.success)s=p.arguments;else{let c=S(n.process,n.process.stderr,o);for(let f of p.errors){let T=i.exceptionWhileParsingArguments(f,c);n.process.stderr.write(c?`\x1B[1m\x1B[31m${T}\x1B[39m\x1B[22m
`:`${T}
`)}return b.InvalidArgument}}catch(l){let u=S(n.process,n.process.stderr,o),c=i.exceptionWhileParsingArguments(l,u);return n.process.stderr.write(u?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`)}return b.InvalidArgument}}catch(l){let p=S(n.process,n.process.stderr,o),c=i.exceptionWhileParsingArguments(l,p);return n.process.stderr.write(p?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`:`${c}
`),b.InvalidArgument}let p;try{let l=await m;typeof l=="function"?p=l:p=l.default}catch(l){let u=S(n.process,n.process.stderr,o),c=i.exceptionWhileLoadingCommandFunction(l,u);return n.process.stderr.write(u?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`),b.InvalidArgument}let u;try{let l=await m;typeof l=="function"?u=l:u=l.default}catch(l){let p=S(n.process,n.process.stderr,o),c=i.exceptionWhileLoadingCommandFunction(l,p);return n.process.stderr.write(p?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`:`${c}
`),b.CommandLoadError}try{let l=await p.call(n,...s);if(l instanceof Error){let u=S(n.process,n.process.stderr,o),c=i.commandErrorResult(l,u);return n.process.stderr.write(u?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`),b.CommandLoadError}try{let l=await u.call(n,...s);if(l instanceof Error){let p=S(n.process,n.process.stderr,o),c=i.commandErrorResult(l,p);return n.process.stderr.write(p?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`:`${c}
`),d?d(l):b.CommandRunError}}catch(l){let u=S(n.process,n.process.stderr,o),c=i.exceptionWhileRunningCommand(l,u);return n.process.stderr.write(u?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`),d?d(l):b.CommandRunError}}catch(l){let p=S(n.process,n.process.stderr,o),c=i.exceptionWhileRunningCommand(l,p);return n.process.stderr.write(p?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m
`:`${c}
`),d?d(l):b.CommandRunError}return b.Success}var R=Symbol("RouteMap");var O=Symbol("Command");function Z(e,t,n){let a=[...n],r=[],i,o=e,d,m=!0,s=!1;return{next:p=>{if(p==="--help"||p==="-h"){s=!0,d||(d=o);return}else if(p==="--helpAll"||p==="--help-all"||p==="-H"){s="all",d||(d=o);return}if(d){r.push(p);return}if(o.kind===O){d=o,r.push(p);return}let l=I(p),u=p,c=o.getRoutingTargetForInput(u);if(t.caseStyle==="allow-kebab-for-camel"&&!c&&(c=o.getRoutingTargetForInput(l),c&&(u=l)),!c){let f=o.getDefaultCommand();if(f){m=!1,i=[o,""],r.push(p),o=f;return}return{input:p,routeMap:o}}m=!1,i=[o,p],o=c,a.push(p)},finish:()=>{if(d=d??o,d.kind===R&&!s){let l=d.getDefaultCommand();l&&(i=[d,""],d=l,m=!1)}let p=i?i[0].getOtherAliasesForInput(i[1],t.caseStyle):{original:[],"convert-camel-to-kebab":[]};return{target:d,unprocessedInputs:r,helpRequested:s,prefix:a,rootLevel:m,aliases:p}}}}async function Te({root:e,defaultText:t,config:n},a,r){let i=t;if(r.locale){let l=n.localization.loadText(r.locale);if(l)i=l;else{let u=S(r.process,r.process.stderr,n.documentation),c=i.noTextAvailableForLocale({requestedLocale:r.locale,defaultLocale:n.localization.defaultLocale,ansiColor:u});r.process.stderr.write(u?`\x1B[1m\x1B[33m${c}\x1B[39m\x1B[22m
`),d?d(l):b.CommandRunError}return b.Success}var R=Symbol("RouteMap");var O=Symbol("Command");function Z(e,t,n){let a=[...n],r=[],i,o=e,d,m=!0,s=!1;return{next:u=>{if(u==="--help"||u==="-h"){s=!0,d||(d=o);return}else if(u==="--helpAll"||u==="--help-all"||u==="-H"){s="all",d||(d=o);return}if(d){r.push(u);return}if(o.kind===O){d=o,r.push(u);return}let l=I(u),p=u,c=o.getRoutingTargetForInput(p);if(t.caseStyle==="allow-kebab-for-camel"&&!c&&(c=o.getRoutingTargetForInput(l),c&&(p=l)),!c){let f=o.getDefaultCommand();if(f){m=!1,i=[o,""],r.push(u),o=f;return}return{input:u,routeMap:o}}m=!1,i=[o,u],o=c,a.push(u)},finish:()=>{if(d=d??o,d.kind===R&&!s){let l=d.getDefaultCommand();l&&(i=[d,""],d=l,m=!1)}let u=i?i[0].getOtherAliasesForInput(i[1],t.caseStyle):{original:[],"convert-camel-to-kebab":[]};return{target:d,unprocessedInputs:r,helpRequested:s,prefix:a,rootLevel:m,aliases:u}}}}async function Te({root:e,defaultText:t,config:n},a,r){let i=t;if(r.locale){let l=n.localization.loadText(r.locale);if(l)i=l;else{let p=S(r.process,r.process.stderr,n.documentation),c=i.noTextAvailableForLocale({requestedLocale:r.locale,defaultLocale:n.localization.defaultLocale,ansiColor:p});r.process.stderr.write(p?`\x1B[1m\x1B[33m${c}\x1B[39m\x1B[22m
`:`${c}
`)}}if(n.versionInfo?.getLatestVersion&&!K(r.process,"STRICLI_SKIP_VERSION_CHECK")){let l;"currentVersion"in n.versionInfo?l=n.versionInfo.currentVersion:l=await n.versionInfo.getCurrentVersion.call(r);let u=await n.versionInfo.getLatestVersion.call(r,l);if(u&&l!==u){let c=S(r.process,r.process.stderr,n.documentation),f=i.currentVersionIsNotLatest({currentVersion:l,latestVersion:u,upgradeCommand:n.versionInfo.upgradeCommand,ansiColor:c});r.process.stderr.write(c?`\x1B[1m\x1B[33m${f}\x1B[39m\x1B[22m
`)}}if(n.versionInfo?.getLatestVersion&&!K(r.process,"STRICLI_SKIP_VERSION_CHECK")){let l;"currentVersion"in n.versionInfo?l=n.versionInfo.currentVersion:l=await n.versionInfo.getCurrentVersion.call(r);let p=await n.versionInfo.getLatestVersion.call(r,l);if(p&&l!==p){let c=S(r.process,r.process.stderr,n.documentation),f=i.currentVersionIsNotLatest({currentVersion:l,latestVersion:p,upgradeCommand:n.versionInfo.upgradeCommand,ansiColor:c});r.process.stderr.write(c?`\x1B[1m\x1B[33m${f}\x1B[39m\x1B[22m
`:`${f}
`)}}let o=a.slice();if(n.versionInfo&&(o[0]==="--version"||o[0]==="-v")){let l;return"currentVersion"in n.versionInfo?l=n.versionInfo.currentVersion:l=await n.versionInfo.getCurrentVersion.call(r),r.process.stdout.write(l+`
`),b.Success}let d=Z(e,n.scanner,[n.name]),m;for(;o.length>0&&!m;){let l=o.shift();m=d.next(l)}if(m){let l=ge(m.routeMap,n.scanner.caseStyle,n.completion),u=D(m.input,l,n.scanner.distanceOptions).map(T=>`\`${T}\``),c=S(r.process,r.process.stderr,n.documentation),f=i.noCommandRegisteredForInput({input:m.input,corrections:u,ansiColor:c});return r.process.stderr.write(c?`\x1B[1m\x1B[31m${f}\x1B[39m\x1B[22m
`),b.Success}let d=Z(e,n.scanner,[n.name]),m;for(;o.length>0&&!m;){let l=o.shift();m=d.next(l)}if(m){let l=ge(m.routeMap,n.scanner.caseStyle,n.completion),p=D(m.input,l,n.scanner.distanceOptions).map(T=>`\`${T}\``),c=S(r.process,r.process.stderr,n.documentation),f=i.noCommandRegisteredForInput({input:m.input,corrections:p,ansiColor:c});return r.process.stderr.write(c?`\x1B[1m\x1B[31m${f}\x1B[39m\x1B[22m
`:`${f}
`),b.UnknownCommand}let s=d.finish();if(s.helpRequested||s.target.kind===R){let l=S(r.process,r.process.stdout,n.documentation);return r.process.stdout.write(s.target.formatHelp({prefix:s.prefix,includeVersionFlag:!!n.versionInfo&&s.rootLevel,includeArgumentEscapeSequenceFlag:n.scanner.allowArgumentEscapeSequence,includeHelpAllFlag:s.helpRequested==="all"||n.documentation.alwaysShowHelpAllFlag,includeHidden:s.helpRequested==="all",config:n.documentation,aliases:s.aliases[n.documentation.caseStyle],text:i,ansiColor:l})),b.Success}let p;if("forCommand"in r)try{p=await r.forCommand({prefix:s.prefix})}catch(l){let u=S(r.process,r.process.stderr,n.documentation),c=i.exceptionWhileLoadingCommandContext(l,u);return r.process.stderr.write(u?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m`:c),b.ContextLoadError}else p=r;return xe(s.target,{context:p,inputs:s.unprocessedInputs,scannerConfig:n.scanner,documentationConfig:n.documentation,errorFormatting:i,determineExitCode:n.determineExitCode})}function U(e,t){return t==="convert-camel-to-kebab"?A(e):e}function Fe(e,t){return t==="convert-camel-to-kebab"?`no-${A(e)}`:`no${e[0].toUpperCase()}${e.slice(1)}`}function Ae(e){let t=e.scanner?.caseStyle??"original",n;if(e.documentation?.caseStyle){if(t==="original"&&e.documentation.caseStyle==="convert-camel-to-kebab")throw new x("Cannot convert route and flag names on display but scan as original");n=e.documentation.caseStyle}else t==="allow-kebab-for-camel"?n="convert-camel-to-kebab":n=t;let a={caseStyle:t,allowArgumentEscapeSequence:e.scanner?.allowArgumentEscapeSequence??!1,distanceOptions:e.scanner?.distanceOptions??{threshold:7,weights:{insertion:1,deletion:3,substitution:2,transposition:0}}},r={alwaysShowHelpAllFlag:e.documentation?.alwaysShowHelpAllFlag??!1,useAliasInUsageLine:e.documentation?.useAliasInUsageLine??!1,onlyRequiredInUsageLine:e.documentation?.onlyRequiredInUsageLine??!1,caseStyle:n,disableAnsiColor:e.documentation?.disableAnsiColor??!1},i={includeAliases:e.completion?.includeAliases??r.useAliasInUsageLine,includeHiddenRoutes:e.completion?.includeHiddenRoutes??!1,...e.completion};return{...e,scanner:a,completion:i,documentation:r,localization:{defaultLocale:"en",loadText:ye,...e.localization}}}function Ve(e,t){let n=Ae(t);if(e.kind===O&&n.versionInfo){if(e.usesFlag("version"))throw new x("Unable to use command with flag --version as root when version info is supplied");if(e.usesFlag("v"))throw new x("Unable to use command with alias -v as root when version info is supplied")}let a=n.localization.loadText(n.localization.defaultLocale);if(!a)throw new x(`No text available for the default locale "${n.localization.defaultLocale}"`);return{root:e,config:n,defaultText:a}}function*Ee(e,t,n){for(let a of e.getAllEntries()){if(a.hidden)continue;let r=a.name[n],i=[...t,r];a.target.kind===R?yield*Ee(a.target,i,n):yield[i,a.target,a.aliases]}}function We({root:e,defaultText:t,config:n},a){let r=t;if(a){let o=n.localization.loadText(a);if(o)r=o;else throw new x(`Application does not support "${a}" locale`)}let i=[];return e.kind===O?i.push([[n.name],e,[]]):i.push(...Ee(e,[n.name],n.documentation.caseStyle)),i.map(([o,d,m])=>[o.join(" "),d.formatHelp({prefix:o,config:n.documentation,includeVersionFlag:!!n.versionInfo&&o.length===1,includeArgumentEscapeSequenceFlag:n.scanner.allowArgumentEscapeSequence,includeHelpAllFlag:n.documentation.alwaysShowHelpAllFlag,includeHidden:!1,aliases:m,text:r,ansiColor:!1})])}async function he({parameters:e},t){try{let n=Y(e,t.scannerConfig);for(let a of t.inputs)n.next(a);return await n.proposeCompletions(t)}catch{return[]}}async function Ne(e,{partial:t,scannerConfig:n,completionConfig:a}){let r=e.getAllEntries();a.includeHiddenRoutes||(r=r.filter(o=>!o.hidden));let i=n.caseStyle==="allow-kebab-for-camel"?"convert-camel-to-kebab":n.caseStyle;return r.flatMap(o=>{let d=o.target.kind===O?"routing-target:command":"routing-target:route-map",m=o.target.brief,s={kind:d,completion:o.name[i],brief:m};return a.includeAliases?[s,...o.aliases.map(p=>({kind:d,completion:p,brief:m}))]:[s]}).filter(({completion:o})=>o.startsWith(t))}async function He({root:e,config:t,defaultText:n},a,r){if(a.length===0)return[];let i=Z(e,t.scanner,[]),o=a.slice(0,-1),d;for(;o.length>0&&!d;){let l=o.shift();d=i.next(l)}if(d)return[];let m=i.finish();if(m.helpRequested)return[];let s;if("forCommand"in r)try{s=await r.forCommand({prefix:m.prefix})}catch{return[]}else s=r;let p=a[a.length-1];return m.target.kind===R?Ne(m.target,{context:s,partial:p,scannerConfig:t.scanner,completionConfig:t.completion}):he(m.target,{context:s,inputs:m.unprocessedInputs,partial:p,scannerConfig:t.scanner,completionConfig:t.completion,text:n,includeVersionFlag:!!t.versionInfo&&m.rootLevel})}function _e(e,t){return e.includes(t)}function Ke(e){return t=>{if(!_e(e,t))throw new SyntaxError(`${t} is not one of (${e.join("|")})`);return t}}function le(e){return"default"in e&&typeof e.default<"u"}function k(e){return e.optional??le(e)}function be(e){return`(${e})`}function Pe(e){return`[${e}]`}function Se(e){return`${e}...`}function ze(e){return`<${e}>`}function Je(e){return`[<${e}>]`}function Qe(e){return`<${e}>...`}function ee(e,t){let n=Object.entries(e.flags??{}).filter(([,i])=>!(i.hidden||t.config.onlyRequiredInUsageLine&&k(i))).map(([i,o])=>{let d=t.config.caseStyle==="convert-camel-to-kebab"?`--${A(i)}`:`--${i}`;if(e.aliases&&t.config.useAliasInUsageLine){let s=Object.entries(e.aliases).filter(p=>p[1]===i);s.length===1&&s[0]&&(d=`-${s[0][0]}`)}if(o.kind==="boolean")return[o,d];if(o.kind==="enum"&&typeof o.placeholder!="string")return[o,`${d} ${o.values.join("|")}`];let m=o.placeholder??"value";return[o,`${d} ${m}`]}).map(([i,o])=>i.kind==="parsed"&&i.variadic?k(i)?Se(Pe(o)):Se(be(o)):k(i)?Pe(o):be(o)),a=[],r=e.positional;if(r)if(r.kind==="array")a=[Qe(r.parameter.placeholder??"args")];else{let i=r.parameters;t.config.onlyRequiredInUsageLine&&(i=i.filter(o=>!o.optional&&typeof o.default>"u")),a=i.map((o,d)=>{let m=o.placeholder??`arg${d+1}`;return o.optional||typeof o.default<"u"?Je(m):ze(m)})}return[...t.prefix,...n,...a].join(" ")}function ne(e,t,n){let{keywords:a,briefs:r}=n.text,i=Object.entries(e).filter(([,m])=>!(m.hidden&&!n.includeHidden)),o=i.some(([,m])=>k(m)),d=i.map(([m,s])=>{let p=Object.entries(t).filter(f=>f[1]===m).map(([f])=>`-${f}`),l="--"+U(m,n.config.caseStyle);if(s.kind==="boolean"&&s.default!==!1){let f=Fe(m,n.config.caseStyle);l=`${l}/--${f}`}k(s)?l=`[${l}]`:o&&(l=` ${l}`),s.kind==="parsed"&&s.variadic&&(l=`${l}...`);let u=[];if(s.kind==="enum"){let f=s.values.join("|");u.push(f)}if(le(s)){let f=n.ansiColor?`\x1B[90m${a.default}\x1B[39m`:a.default;u.push(`${f} ${s.default===""?'""':String(s.default)}`)}let c=u.length>0?`[${u.join(", ")}]`:void 0;return{aliases:p.join(" "),flagName:l,brief:s.brief,suffix:c,hidden:s.hidden}});if(d.push({aliases:"-h",flagName:o?" --help":"--help",brief:r.help}),n.includeHelpAllFlag){let m=U("helpAll",n.config.caseStyle);d.push({aliases:"-H",flagName:o?` --${m}`:`--${m}`,brief:r.helpAll,hidden:!n.config.alwaysShowHelpAllFlag})}return n.includeVersionFlag&&d.push({aliases:"-v",flagName:o?" --version":"--version",brief:r.version}),n.includeArgumentEscapeSequenceFlag&&d.push({aliases:"",flagName:o?" --":"--",brief:r.argumentEscapeSequence}),$(d.map(m=>n.ansiColor?[m.hidden?`\x1B[90m${m.aliases}\x1B[39m`:`\x1B[97m${m.aliases}\x1B[39m`,m.hidden?`\x1B[90m${m.flagName}\x1B[39m`:`\x1B[97m${m.flagName}\x1B[39m`,m.hidden?`\x1B[90m${m.brief}\x1B[39m`:`\x1B[03m${m.brief}\x1B[23m`,m.suffix??""]:[m.aliases,m.flagName,m.brief,m.suffix??""]),[" "," "," "])}function*te(e){if(yield e.config.useAliasInUsageLine?"-h":"--help",e.includeHelpAllFlag){let t=U("helpAll",e.config.caseStyle);yield e.config.useAliasInUsageLine?"-H":`--${t}`}e.includeVersionFlag&&(yield e.config.useAliasInUsageLine?"-v":"--version")}function Re(e,t){if(e.kind==="array"){let r=e.parameter.placeholder??"args",i=t.ansiColor?`\x1B[97m${r}...\x1B[39m`:`${r}...`,o=t.ansiColor?`\x1B[3m${e.parameter.brief}\x1B[23m`:e.parameter.brief;return $([[i,o]],[" "])}let{keywords:n}=t.text,a=e.parameters.some(r=>r.optional);return $(e.parameters.map((r,i)=>{let o=r.placeholder??`arg${i+1}`,d;return r.optional?o=`[${o}]`:a&&(o=` ${o}`),r.default&&(d=`[${t.ansiColor?`\x1B[90m${n.default}\x1B[39m`:n.default} ${r.default}]`),[t.ansiColor?`\x1B[97m${o}\x1B[39m`:o,t.ansiColor?`\x1B[3m${r.brief}\x1B[23m`:r.brief,d??""]}),[" "," "])}function*Oe(e,t,n){let{brief:a,fullDescription:r,customUsage:i}=t,{headers:o}=n.text,d=n.prefix.join(" ");if(yield n.ansiColor?`\x1B[1m${o.usage}\x1B[22m`:o.usage,i)for(let s of i)yield` ${d} ${s}`;else yield` ${ee(e,n)}`;for(let s of te(n))yield` ${d} ${s}`;if(yield"",yield r??a,n.aliases&&n.aliases.length>0){let s=n.prefix.slice(0,-1).join(" ");yield"",yield n.ansiColor?`\x1B[1m${o.aliases}\x1B[22m`:o.aliases;for(let p of n.aliases)yield` ${s} ${p}`}yield"",yield n.ansiColor?`\x1B[1m${o.flags}\x1B[22m`:o.flags;for(let s of ne(e.flags??{},e.aliases??{},n))yield` ${s}`;let m=e.positional??{kind:"tuple",parameters:[]};if(m.kind==="array"||m.parameters.length>0){yield"",yield n.ansiColor?`\x1B[1m${o.arguments}\x1B[22m`:o.arguments;for(let s of Re(m,n))yield` ${s}`}}function Ye(e,t){for(let n of t)if(n in e)throw new x(`Unable to use reserved flag --${n}`)}function Ze(e,t){for(let n of t)if(n in e)throw new x(`Unable to use reserved alias -${n}`)}function*en(e){yield`no-${A(e)}`,yield`no${e[0].toUpperCase()}${e.slice(1)}`}function nn(e){let t=Object.entries(e).filter(([,n])=>n.kind==="boolean"&&!n.optional);for(let[n]of t)for(let a of en(n))if(a in e)throw new x(`Unable to allow negation for --${n} as it conflicts with --${a}`)}function tn(e){let{flags:t={},aliases:n={}}=e.parameters;Ye(t,["help","helpAll","help-all"]),Ze(n,["h","H"]),nn(t);let a;return"func"in e?a=async()=>e.func:a=e.loader,{kind:O,loader:a,parameters:e.parameters,get brief(){return e.docs.brief},formatUsageLine:r=>ee(e.parameters,r),formatHelp:r=>[...Oe(e.parameters,e.docs,r)].join(`
`),b.UnknownCommand}let s=d.finish();if(s.helpRequested||s.target.kind===R){let l=S(r.process,r.process.stdout,n.documentation);return r.process.stdout.write(s.target.formatHelp({prefix:s.prefix,includeVersionFlag:!!n.versionInfo&&s.rootLevel,includeArgumentEscapeSequenceFlag:n.scanner.allowArgumentEscapeSequence,includeHelpAllFlag:s.helpRequested==="all"||n.documentation.alwaysShowHelpAllFlag,includeHidden:s.helpRequested==="all",config:n.documentation,aliases:s.aliases[n.documentation.caseStyle],text:i,ansiColor:l})),b.Success}let u;if("forCommand"in r)try{u=await r.forCommand({prefix:s.prefix})}catch(l){let p=S(r.process,r.process.stderr,n.documentation),c=i.exceptionWhileLoadingCommandContext(l,p);return r.process.stderr.write(p?`\x1B[1m\x1B[31m${c}\x1B[39m\x1B[22m`:c),b.ContextLoadError}else u=r;return xe(s.target,{context:u,inputs:s.unprocessedInputs,scannerConfig:n.scanner,documentationConfig:n.documentation,errorFormatting:i,determineExitCode:n.determineExitCode})}function U(e,t){return t==="convert-camel-to-kebab"?A(e):e}function Fe(e,t){return t==="convert-camel-to-kebab"?`no-${A(e)}`:`no${e[0].toUpperCase()}${e.slice(1)}`}function Ae(e){let t=e.scanner?.caseStyle??"original",n;if(e.documentation?.caseStyle){if(t==="original"&&e.documentation.caseStyle==="convert-camel-to-kebab")throw new x("Cannot convert route and flag names on display but scan as original");n=e.documentation.caseStyle}else t==="allow-kebab-for-camel"?n="convert-camel-to-kebab":n=t;let a={caseStyle:t,allowArgumentEscapeSequence:e.scanner?.allowArgumentEscapeSequence??!1,distanceOptions:e.scanner?.distanceOptions??{threshold:7,weights:{insertion:1,deletion:3,substitution:2,transposition:0}}},r={alwaysShowHelpAllFlag:e.documentation?.alwaysShowHelpAllFlag??!1,useAliasInUsageLine:e.documentation?.useAliasInUsageLine??!1,onlyRequiredInUsageLine:e.documentation?.onlyRequiredInUsageLine??!1,caseStyle:n,disableAnsiColor:e.documentation?.disableAnsiColor??!1},i={includeAliases:e.completion?.includeAliases??r.useAliasInUsageLine,includeHiddenRoutes:e.completion?.includeHiddenRoutes??!1,...e.completion};return{...e,scanner:a,completion:i,documentation:r,localization:{defaultLocale:"en",loadText:ye,...e.localization}}}function Ve(e,t){let n=Ae(t);if(e.kind===O&&n.versionInfo){if(e.usesFlag("version"))throw new x("Unable to use command with flag --version as root when version info is supplied");if(e.usesFlag("v"))throw new x("Unable to use command with alias -v as root when version info is supplied")}let a=n.localization.loadText(n.localization.defaultLocale);if(!a)throw new x(`No text available for the default locale "${n.localization.defaultLocale}"`);return{root:e,config:n,defaultText:a}}function*Ee(e,t,n){for(let a of e.getAllEntries()){if(a.hidden)continue;let r=a.name[n],i=[...t,r];a.target.kind===R?yield*Ee(a.target,i,n):yield[i,a.target,a.aliases]}}function We({root:e,defaultText:t,config:n},a){let r=t;if(a){let o=n.localization.loadText(a);if(o)r=o;else throw new x(`Application does not support "${a}" locale`)}let i=[];return e.kind===O?i.push([[n.name],e,[]]):i.push(...Ee(e,[n.name],n.documentation.caseStyle)),i.map(([o,d,m])=>[o.join(" "),d.formatHelp({prefix:o,config:n.documentation,includeVersionFlag:!!n.versionInfo&&o.length===1,includeArgumentEscapeSequenceFlag:n.scanner.allowArgumentEscapeSequence,includeHelpAllFlag:n.documentation.alwaysShowHelpAllFlag,includeHidden:!1,aliases:m,text:r,ansiColor:!1})])}async function he({parameters:e},t){try{let n=Y(e,t.scannerConfig);for(let a of t.inputs)n.next(a);return await n.proposeCompletions(t)}catch{return[]}}async function Ne(e,{partial:t,scannerConfig:n,completionConfig:a}){let r=e.getAllEntries();a.includeHiddenRoutes||(r=r.filter(o=>!o.hidden));let i=n.caseStyle==="allow-kebab-for-camel"?"convert-camel-to-kebab":n.caseStyle;return r.flatMap(o=>{let d=o.target.kind===O?"routing-target:command":"routing-target:route-map",m=o.target.brief,s={kind:d,completion:o.name[i],brief:m};return a.includeAliases?[s,...o.aliases.map(u=>({kind:d,completion:u,brief:m}))]:[s]}).filter(({completion:o})=>o.startsWith(t))}async function He({root:e,config:t,defaultText:n},a,r){if(a.length===0)return[];let i=Z(e,t.scanner,[]),o=a.slice(0,-1),d;for(;o.length>0&&!d;){let l=o.shift();d=i.next(l)}if(d)return[];let m=i.finish();if(m.helpRequested)return[];let s;if("forCommand"in r)try{s=await r.forCommand({prefix:m.prefix})}catch{return[]}else s=r;let u=a[a.length-1];return m.target.kind===R?Ne(m.target,{context:s,partial:u,scannerConfig:t.scanner,completionConfig:t.completion}):he(m.target,{context:s,inputs:m.unprocessedInputs,partial:u,scannerConfig:t.scanner,completionConfig:t.completion,text:n,includeVersionFlag:!!t.versionInfo&&m.rootLevel})}function _e(e,t){return e.includes(t)}function Ke(e){return t=>{if(!_e(e,t))throw new SyntaxError(`${t} is not one of (${e.join("|")})`);return t}}function le(e){return"default"in e&&typeof e.default<"u"}function k(e){return e.optional??le(e)}function be(e){return`(${e})`}function Pe(e){return`[${e}]`}function Se(e){return`${e}...`}function ze(e){return`<${e}>`}function Je(e){return`[<${e}>]`}function Qe(e){return`<${e}>...`}function ee(e,t){let n=Object.entries(e.flags??{}).filter(([,i])=>!(i.hidden||t.config.onlyRequiredInUsageLine&&k(i))).map(([i,o])=>{let d=t.config.caseStyle==="convert-camel-to-kebab"?`--${A(i)}`:`--${i}`;if(e.aliases&&t.config.useAliasInUsageLine){let s=Object.entries(e.aliases).filter(u=>u[1]===i);s.length===1&&s[0]&&(d=`-${s[0][0]}`)}if(o.kind==="boolean")return[o,d];if(o.kind==="enum"&&typeof o.placeholder!="string")return[o,`${d} ${o.values.join("|")}`];let m=o.placeholder??"value";return[o,`${d} ${m}`]}).map(([i,o])=>i.kind==="parsed"&&i.variadic?k(i)?Se(Pe(o)):Se(be(o)):k(i)?Pe(o):be(o)),a=[],r=e.positional;if(r)if(r.kind==="array")a=[Qe(r.parameter.placeholder??"args")];else{let i=r.parameters;t.config.onlyRequiredInUsageLine&&(i=i.filter(o=>!o.optional&&typeof o.default>"u")),a=i.map((o,d)=>{let m=o.placeholder??`arg${d+1}`;return o.optional||typeof o.default<"u"?Je(m):ze(m)})}return[...t.prefix,...n,...a].join(" ")}function ne(e,t,n){let{keywords:a,briefs:r}=n.text,i=Object.entries(e).filter(([,m])=>!(m.hidden&&!n.includeHidden)),o=i.some(([,m])=>k(m)),d=i.map(([m,s])=>{let u=Object.entries(t).filter(f=>f[1]===m).map(([f])=>`-${f}`),l="--"+U(m,n.config.caseStyle);if(s.kind==="boolean"&&s.default!==!1){let f=Fe(m,n.config.caseStyle);l=`${l}/--${f}`}k(s)?l=`[${l}]`:o&&(l=` ${l}`),s.kind==="parsed"&&s.variadic&&(l=`${l}...`);let p=[];if(s.kind==="enum"){let f=s.values.join("|");p.push(f)}if(le(s)){let f=n.ansiColor?`\x1B[90m${a.default}\x1B[39m`:a.default;p.push(`${f} ${s.default===""?'""':String(s.default)}`)}let c=p.length>0?`[${p.join(", ")}]`:void 0;return{aliases:u.join(" "),flagName:l,brief:s.brief,suffix:c,hidden:s.hidden}});if(d.push({aliases:"-h",flagName:o?" --help":"--help",brief:r.help}),n.includeHelpAllFlag){let m=U("helpAll",n.config.caseStyle);d.push({aliases:"-H",flagName:o?` --${m}`:`--${m}`,brief:r.helpAll,hidden:!n.config.alwaysShowHelpAllFlag})}return n.includeVersionFlag&&d.push({aliases:"-v",flagName:o?" --version":"--version",brief:r.version}),n.includeArgumentEscapeSequenceFlag&&d.push({aliases:"",flagName:o?" --":"--",brief:r.argumentEscapeSequence}),$(d.map(m=>n.ansiColor?[m.hidden?`\x1B[90m${m.aliases}\x1B[39m`:`\x1B[97m${m.aliases}\x1B[39m`,m.hidden?`\x1B[90m${m.flagName}\x1B[39m`:`\x1B[97m${m.flagName}\x1B[39m`,m.hidden?`\x1B[90m${m.brief}\x1B[39m`:`\x1B[03m${m.brief}\x1B[23m`,m.suffix??""]:[m.aliases,m.flagName,m.brief,m.suffix??""]),[" "," "," "])}function*te(e){if(yield e.config.useAliasInUsageLine?"-h":"--help",e.includeHelpAllFlag){let t=U("helpAll",e.config.caseStyle);yield e.config.useAliasInUsageLine?"-H":`--${t}`}e.includeVersionFlag&&(yield e.config.useAliasInUsageLine?"-v":"--version")}function Re(e,t){if(e.kind==="array"){let r=e.parameter.placeholder??"args",i=t.ansiColor?`\x1B[97m${r}...\x1B[39m`:`${r}...`,o=t.ansiColor?`\x1B[3m${e.parameter.brief}\x1B[23m`:e.parameter.brief;return $([[i,o]],[" "])}let{keywords:n}=t.text,a=e.parameters.some(r=>r.optional);return $(e.parameters.map((r,i)=>{let o=r.placeholder??`arg${i+1}`,d;return r.optional?o=`[${o}]`:a&&(o=` ${o}`),r.default&&(d=`[${t.ansiColor?`\x1B[90m${n.default}\x1B[39m`:n.default} ${r.default}]`),[t.ansiColor?`\x1B[97m${o}\x1B[39m`:o,t.ansiColor?`\x1B[3m${r.brief}\x1B[23m`:r.brief,d??""]}),[" "," "])}function*Oe(e,t,n){let{brief:a,fullDescription:r,customUsage:i}=t,{headers:o}=n.text,d=n.prefix.join(" ");if(yield n.ansiColor?`\x1B[1m${o.usage}\x1B[22m`:o.usage,i)for(let s of i)if(typeof s=="string")yield` ${d} ${s}`;else{let u=n.ansiColor?`\x1B[3m${s.brief}\x1B[23m`:s.brief;yield` ${d} ${s.input}
${u}`}else yield` ${ee(e,n)}`;for(let s of te(n))yield` ${d} ${s}`;if(yield"",yield r??a,n.aliases&&n.aliases.length>0){let s=n.prefix.slice(0,-1).join(" ");yield"",yield n.ansiColor?`\x1B[1m${o.aliases}\x1B[22m`:o.aliases;for(let u of n.aliases)yield` ${s} ${u}`}yield"",yield n.ansiColor?`\x1B[1m${o.flags}\x1B[22m`:o.flags;for(let s of ne(e.flags??{},e.aliases??{},n))yield` ${s}`;let m=e.positional??{kind:"tuple",parameters:[]};if(m.kind==="array"||m.parameters.length>0){yield"",yield n.ansiColor?`\x1B[1m${o.arguments}\x1B[22m`:o.arguments;for(let s of Re(m,n))yield` ${s}`}}function Ye(e,t){for(let n of t)if(n in e)throw new x(`Unable to use reserved flag --${n}`)}function Ze(e,t){for(let n of t)if(n in e)throw new x(`Unable to use reserved alias -${n}`)}function*en(e){yield`no-${A(e)}`,yield`no${e[0].toUpperCase()}${e.slice(1)}`}function nn(e){let t=Object.entries(e).filter(([,n])=>n.kind==="boolean"&&!n.optional);for(let[n]of t)for(let a of en(n))if(a in e)throw new x(`Unable to allow negation for --${n} as it conflicts with --${a}`)}function tn(e){let{flags:t={},aliases:n={}}=e.parameters;Ye(t,["help","helpAll","help-all"]),Ze(n,["h","H"]),nn(t);let a;return"func"in e?a=async()=>e.func:a=e.loader,{kind:O,loader:a,parameters:e.parameters,get brief(){return e.docs.brief},formatUsageLine:r=>ee(e.parameters,r),formatHelp:r=>[...Oe(e.parameters,e.docs,r)].join(`
`)+`
`,usesFlag:r=>r in t||r in n}}function*Be(e,t,n){let{brief:a,fullDescription:r,hideRoute:i}=t,{headers:o}=n.text;yield n.ansiColor?`\x1B[1m${o.usage}\x1B[22m`:o.usage;for(let[l,u]of Object.entries(e))if(!i||!i[l]||n.includeHidden){let c=n.config.caseStyle==="convert-camel-to-kebab"?A(l):l;yield` ${u.formatUsageLine({...n,prefix:[...n.prefix,c]})}`}let d=n.prefix.join(" ");for(let l of te(n))yield` ${d} ${l}`;if(yield"",yield r??a,n.aliases&&n.aliases.length>0){let l=n.prefix.slice(0,-1).join(" ");yield"",yield n.ansiColor?`\x1B[1m${o.aliases}\x1B[22m`:o.aliases;for(let u of n.aliases)yield` ${l} ${u}`}yield"",yield n.ansiColor?`\x1B[1m${o.flags}\x1B[22m`:o.flags;for(let l of ne({},{},n))yield` ${l}`;yield"",yield n.ansiColor?`\x1B[1m${o.commands}\x1B[22m`:o.commands;let s=Object.entries(e).filter(([l])=>!i||!i[l]||n.includeHidden).map(([l,u])=>({routeName:U(l,n.config.caseStyle),brief:u.brief,hidden:i&&i[l]})),p=$(s.map(l=>n.ansiColor?[l.hidden?`\x1B[90m${l.routeName}\x1B[39m`:`\x1B[97m${l.routeName}\x1B[39m`,l.hidden?`\x1B[90m${l.brief}\x1B[39m`:`\x1B[03m${l.brief}\x1B[23m`]:[l.routeName,l.brief]),[" "]);for(let l of p)yield` ${l}`}function rn({routes:e,defaultCommand:t,docs:n,aliases:a}){if(Object.entries(e).length===0)throw new x("Route map must contain at least one route");let r=a??{},i=new Map;for(let[m,s]of Object.entries(r)){if(m in e)throw new x(`Cannot use "${m}" as an alias when a route with that name already exists`);let p=i.get(s)??[];i.set(s,[...p,m])}let o=t?e[t]:void 0;if(o&&o.kind===R)throw new x(`Cannot use "${t}" as the default command because it is not a Command`);let d=m=>{if(m in r)return r[m];if(m in e)return m};return{kind:R,get brief(){return n.brief},formatUsageLine(m){let s=this.getAllEntries().filter(p=>!p.hidden).map(p=>p.name[m.config.caseStyle]);return`${m.prefix.join(" ")} ${s.join("|")} ...`},formatHelp:m=>[...Be(e,n,m)].join(`
`,usesFlag:r=>r in t||r in n}}function*Be(e,t,n){let{brief:a,fullDescription:r,hideRoute:i}=t,{headers:o}=n.text;yield n.ansiColor?`\x1B[1m${o.usage}\x1B[22m`:o.usage;for(let[l,p]of Object.entries(e))if(!i||!i[l]||n.includeHidden){let c=n.config.caseStyle==="convert-camel-to-kebab"?A(l):l;yield` ${p.formatUsageLine({...n,prefix:[...n.prefix,c]})}`}let d=n.prefix.join(" ");for(let l of te(n))yield` ${d} ${l}`;if(yield"",yield r??a,n.aliases&&n.aliases.length>0){let l=n.prefix.slice(0,-1).join(" ");yield"",yield n.ansiColor?`\x1B[1m${o.aliases}\x1B[22m`:o.aliases;for(let p of n.aliases)yield` ${l} ${p}`}yield"",yield n.ansiColor?`\x1B[1m${o.flags}\x1B[22m`:o.flags;for(let l of ne({},{},n))yield` ${l}`;yield"",yield n.ansiColor?`\x1B[1m${o.commands}\x1B[22m`:o.commands;let s=Object.entries(e).filter(([l])=>!i||!i[l]||n.includeHidden).map(([l,p])=>({routeName:U(l,n.config.caseStyle),brief:p.brief,hidden:i&&i[l]})),u=$(s.map(l=>n.ansiColor?[l.hidden?`\x1B[90m${l.routeName}\x1B[39m`:`\x1B[97m${l.routeName}\x1B[39m`,l.hidden?`\x1B[90m${l.brief}\x1B[39m`:`\x1B[03m${l.brief}\x1B[23m`]:[l.routeName,l.brief]),[" "]);for(let l of u)yield` ${l}`}function rn({routes:e,defaultCommand:t,docs:n,aliases:a}){if(Object.entries(e).length===0)throw new x("Route map must contain at least one route");let r=a??{},i=new Map;for(let[m,s]of Object.entries(r)){if(m in e)throw new x(`Cannot use "${m}" as an alias when a route with that name already exists`);let u=i.get(s)??[];i.set(s,[...u,m])}let o=t?e[t]:void 0;if(o&&o.kind===R)throw new x(`Cannot use "${t}" as the default command because it is not a Command`);let d=m=>{if(m in r)return r[m];if(m in e)return m};return{kind:R,get brief(){return n.brief},formatUsageLine(m){let s=this.getAllEntries().filter(u=>!u.hidden).map(u=>u.name[m.config.caseStyle]);return`${m.prefix.join(" ")} ${s.join("|")} ...`},formatHelp:m=>[...Be(e,n,m)].join(`
`)+`
`,getDefaultCommand:()=>o,getOtherAliasesForInput:(m,s)=>{if(t){if(m===t)return{original:[""],"convert-camel-to-kebab":[""]};if(m==="")return{original:[t],"convert-camel-to-kebab":[t]}}let p=I(m),l=d(m);if(!l&&s==="allow-kebab-for-camel"&&(l=d(p)),!l)return{original:[],"convert-camel-to-kebab":[]};let u=[l,...i.get(l)??[]].filter(c=>c!==m&&c!==p);return{original:u,"convert-camel-to-kebab":u.map(A)}},getRoutingTargetForInput:m=>{let s=m in r?r[m]:m;return e[s]},getAllEntries(){let m=n.hideRoute;return Object.entries(e).map(([s,p])=>({name:{original:s,"convert-camel-to-kebab":A(s)},target:p,aliases:i.get(s)??[],hidden:m?.[s]??!1}))}}}async function _t(e,t,n){let a=await Te(e,t,n);n.process.exit?.(a)}export{G as AliasNotFoundError,j as ArgumentParseError,h as ArgumentScannerError,W as EnumValidationError,b as ExitCode,L as FlagNotFoundError,J as InvalidNegatedFlagSyntaxError,Q as UnexpectedFlagError,H as UnexpectedPositionalError,X as UnsatisfiedFlagError,_ as UnsatisfiedPositionalError,ke as booleanParser,Ve as buildApplication,Ke as buildChoiceParser,tn as buildCommand,rn as buildRouteMap,se as formatMessageForArgumentScannerError,We as generateHelpTextForAllCommands,re as looseBooleanParser,oe as numberParser,He as proposeCompletions,_t as run,Ce as text_en};
`,getDefaultCommand:()=>o,getOtherAliasesForInput:(m,s)=>{if(t){if(m===t)return{original:[""],"convert-camel-to-kebab":[""]};if(m==="")return{original:[t],"convert-camel-to-kebab":[t]}}let u=I(m),l=d(m);if(!l&&s==="allow-kebab-for-camel"&&(l=d(u)),!l)return{original:[],"convert-camel-to-kebab":[]};let p=[l,...i.get(l)??[]].filter(c=>c!==m&&c!==u);return{original:p,"convert-camel-to-kebab":p.map(A)}},getRoutingTargetForInput:m=>{let s=m in r?r[m]:m;return e[s]},getAllEntries(){let m=n.hideRoute;return Object.entries(e).map(([s,u])=>({name:{original:s,"convert-camel-to-kebab":A(s)},target:u,aliases:i.get(s)??[],hidden:m?.[s]??!1}))}}}async function _t(e,t,n){let a=await Te(e,t,n);n.process.exit?.(a)}export{G as AliasNotFoundError,j as ArgumentParseError,h as ArgumentScannerError,W as EnumValidationError,b as ExitCode,L as FlagNotFoundError,J as InvalidNegatedFlagSyntaxError,Q as UnexpectedFlagError,H as UnexpectedPositionalError,X as UnsatisfiedFlagError,_ as UnsatisfiedPositionalError,ke as booleanParser,Ve as buildApplication,Ke as buildChoiceParser,tn as buildCommand,rn as buildRouteMap,se as formatMessageForArgumentScannerError,We as generateHelpTextForAllCommands,re as looseBooleanParser,oe as numberParser,He as proposeCompletions,_t as run,Ce as text_en};
{
"name": "@stricli/core",
"version": "1.0.1",
"version": "1.1.0",
"description": "Build complex CLIs with type safety and no dependencies",

@@ -5,0 +5,0 @@ "license": "Apache-2.0",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet