dyson-swarm-cli 1.0.0 → 1.1.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/dist/index.js +28 -29
- package/dist/index.js.map +1 -1
- package/package.json +14 -11
- package/dist/__tests__/help.test.d.ts +0 -2
- package/dist/__tests__/help.test.d.ts.map +0 -1
- package/dist/__tests__/help.test.js +0 -42
- package/dist/__tests__/help.test.js.map +0 -1
- package/dist/commands/__tests__/assign.test.d.ts +0 -2
- package/dist/commands/__tests__/assign.test.d.ts.map +0 -1
- package/dist/commands/__tests__/assign.test.js +0 -47
- package/dist/commands/__tests__/assign.test.js.map +0 -1
- package/dist/commands/__tests__/create.test.d.ts +0 -2
- package/dist/commands/__tests__/create.test.d.ts.map +0 -1
- package/dist/commands/__tests__/create.test.js +0 -98
- package/dist/commands/__tests__/create.test.js.map +0 -1
- package/dist/commands/__tests__/delete.test.d.ts +0 -2
- package/dist/commands/__tests__/delete.test.d.ts.map +0 -1
- package/dist/commands/__tests__/delete.test.js +0 -46
- package/dist/commands/__tests__/delete.test.js.map +0 -1
- package/dist/commands/__tests__/get.test.d.ts +0 -2
- package/dist/commands/__tests__/get.test.d.ts.map +0 -1
- package/dist/commands/__tests__/get.test.js +0 -67
- package/dist/commands/__tests__/get.test.js.map +0 -1
- package/dist/commands/__tests__/list.test.d.ts +0 -2
- package/dist/commands/__tests__/list.test.d.ts.map +0 -1
- package/dist/commands/__tests__/list.test.js +0 -74
- package/dist/commands/__tests__/list.test.js.map +0 -1
- package/dist/commands/__tests__/status.test.d.ts +0 -2
- package/dist/commands/__tests__/status.test.d.ts.map +0 -1
- package/dist/commands/__tests__/status.test.js +0 -71
- package/dist/commands/__tests__/status.test.js.map +0 -1
- package/dist/commands/__tests__/unassign.test.d.ts +0 -2
- package/dist/commands/__tests__/unassign.test.d.ts.map +0 -1
- package/dist/commands/__tests__/unassign.test.js +0 -47
- package/dist/commands/__tests__/unassign.test.js.map +0 -1
- package/dist/commands/__tests__/update.test.d.ts +0 -2
- package/dist/commands/__tests__/update.test.d.ts.map +0 -1
- package/dist/commands/__tests__/update.test.js +0 -88
- package/dist/commands/__tests__/update.test.js.map +0 -1
- package/dist/commands/assign.d.ts +0 -3
- package/dist/commands/assign.d.ts.map +0 -1
- package/dist/commands/assign.js +0 -26
- package/dist/commands/assign.js.map +0 -1
- package/dist/commands/create.d.ts +0 -3
- package/dist/commands/create.d.ts.map +0 -1
- package/dist/commands/create.js +0 -38
- package/dist/commands/create.js.map +0 -1
- package/dist/commands/delete.d.ts +0 -3
- package/dist/commands/delete.d.ts.map +0 -1
- package/dist/commands/delete.js +0 -29
- package/dist/commands/delete.js.map +0 -1
- package/dist/commands/get.d.ts +0 -3
- package/dist/commands/get.d.ts.map +0 -1
- package/dist/commands/get.js +0 -39
- package/dist/commands/get.js.map +0 -1
- package/dist/commands/list.d.ts +0 -3
- package/dist/commands/list.d.ts.map +0 -1
- package/dist/commands/list.js +0 -51
- package/dist/commands/list.js.map +0 -1
- package/dist/commands/status.d.ts +0 -3
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -29
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/unassign.d.ts +0 -3
- package/dist/commands/unassign.d.ts.map +0 -1
- package/dist/commands/unassign.js +0 -25
- package/dist/commands/unassign.js.map +0 -1
- package/dist/commands/update.d.ts +0 -3
- package/dist/commands/update.d.ts.map +0 -1
- package/dist/commands/update.js +0 -42
- package/dist/commands/update.js.map +0 -1
- package/dist/help.d.ts +0 -2
- package/dist/help.d.ts.map +0 -1
- package/dist/help.js +0 -38
- package/dist/help.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,31 +1,30 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { Command } from "@cliffy/command";
|
|
3
|
-
|
|
4
|
-
import { listCommand } from "./commands/list.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
})
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
})
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
.command("update", updateCommand)
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
.parse();
|
|
2
|
+
function bt(){let{Deno:s,process:t,Bun:e}=globalThis;return s?.args??e?.argv.slice(2)??t?.argv.slice(2)??[]}var{ceil:Xe}=Math,H=new Uint32Array(1114112);function Le(s,t){let e=s.length,n=t.length;for(let i=0;i<n;i++)H[t[i].codePointAt(0)]|=1<<i;let r=n-1,o=-1,a=0,l=n;for(let i=0;i<e;i++){let p=H[s[i].codePointAt(0)],u=p|a,f=(p&o)+o^o|p,h=a|~(f|o),g=o&f;l+=(h>>>r&1)-(g>>>r&1),h=h<<1|1,g=g<<1,o=g|~(u|h),a=h&u}for(let i=0;i<n;i++)H[t[i].codePointAt(0)]=0;return l}function Ie(s,t){let e=s.length,n=t.length,r=new Int8Array(e).fill(1),o=Xe(n/32)-1;for(let f=0;f<o;f++){let h=f*32,g=(f+1)*32;for(let c=h;c<g;c++)H[t[c].codePointAt(0)]|=1<<c;let d=-1,x=0;for(let c=0;c<e;c++){let m=r[c],b=H[s[c].codePointAt(0)],L=b|x;b|=m>>>31;let q=(b&d)+d^d|b,O=x|~(q|d),D=d&q;r[c]=(O>>>31)-(D>>>31),O=O<<1|-m>>>31,D=D<<1|m>>>31,d=D|~(L|O),x=O&L}for(let c=h;c<g;c++)H[t[c].codePointAt(0)]=0}let a=o*32;for(let f=a;f<n;f++)H[t[f].codePointAt(0)]|=1<<f;let l=n-1,i=-1,p=0,u=n;for(let f=0;f<e;f++){let h=r[f],g=H[s[f].codePointAt(0)],d=g|p;g|=h>>>31;let x=(g&i)+i^i|g,c=p|~(x|i),m=i&x;u+=(c>>>l&1)-(m>>>l&1),c=c<<1|-h>>>31,m=m<<1|h>>>31,i=m|~(d|c),p=c&d}for(let f=a;f<n;f++)H[t[f].codePointAt(0)]=0;return u}function Ee(s,t){let e=[...s],n=[...t];return e.length<n.length&&([n,e]=[e,n]),n.length===0?e.length:n.length<=32?Le(e,n):Ie(e,n)}function wt(s,t,e){if(t.length===0)throw new TypeError("When using closestString(), the possibleWords array must contain at least one word");let{caseSensitive:n,compareFn:r=Ee}={...e};n||(s=s.toLowerCase());let o=t[0],a=1/0;for(let l of t){let i=n?r(s,l):r(s,l.toLowerCase());i<a&&(o=l,a=i)}return o}function Z(s){return s.replace(/-([a-z])/g,t=>t[1].toUpperCase())}function z(s,t){for(;t[0]==="-";)t=t.slice(1);for(let e of s)if(Ye(e,t))return e}function it(s,t){let e=t.map(n=>[n.name,...n.aliases??[]]).flat().map(n=>w(n));return Qe(" Did you mean option",w(s),e)}function Ve(s,t){return Qe(" Did you mean type",s,t)}function Qe(s,t,e){let n=e.length?wt(t,e):void 0;return n?`${s} "${n}"?`:""}function w(s){return s.startsWith("-")?s:s.length>1?`--${s}`:`-${s}`}function Ye(s,t){return s.name===t||s.aliases&&s.aliases.indexOf(t)!==-1}function ye(s,t){for(let e of t){if(e.name.indexOf("*")===-1)continue;let n=Ze(s,e);if(n)return n={...n,name:s},t.push(n),n}}function Ze(s,t){let e=t.name.split("."),n=s.split(".");if(e.length!==n.length)return!1;let r=Math.max(e.length,n.length);for(let o=0;o<r;o++)if(e[o]!==n[o]&&e[o]!=="*")return!1;return t}function xt(s){return typeof s.default=="function"?s.default():s.default}var nt=class s extends Error{constructor(t){super(t),Object.setPrototypeOf(this,s.prototype)}},Ct=class s extends nt{constructor(t,e){super(`Unknown required option "${w(t)}".${it(t,e)}`),Object.setPrototypeOf(this,s.prototype)}},Ot=class s extends nt{constructor(t,e){super(`Unknown conflicting option "${w(t)}".${it(t,e)}`),Object.setPrototypeOf(this,s.prototype)}},J=class s extends nt{constructor(t,e){super(`Unknown type "${t}".${Ve(t,e)}`),Object.setPrototypeOf(this,s.prototype)}},Q=class s extends nt{constructor(t){super(t),Object.setPrototypeOf(this,s.prototype)}},vt=class s extends Q{constructor(t){super(`Option "${w(t).replace(/^--no-/,"--")}" can only occur once, but was found several times.`),Object.setPrototypeOf(this,s.prototype)}},Rt=class s extends Q{constructor(t,e){super(`Invalid option "${w(t)}".${it(t,e)}`),Object.setPrototypeOf(this,s.prototype)}},K=class s extends Q{constructor(t,e){super(`Unknown option "${w(t)}".${it(t,e)}`),Object.setPrototypeOf(this,s.prototype)}},_=class s extends Q{constructor(t){super(`Missing value for option "${w(t)}".`),Object.setPrototypeOf(this,s.prototype)}},at=class s extends Q{constructor(t,e,n){super(`Option "${w(t)}" must be of type "${e}", but got "${n}".`),Object.setPrototypeOf(this,s.prototype)}},Ut=class extends Q{constructor(t,e){super(`Option "${w(t)}" doesn't take a value, but got "${e}".`),Object.setPrototypeOf(this,at.prototype)}},kt=class s extends Q{constructor(t){super(`Option "${w(t)}" cannot be combined with other options.`),Object.setPrototypeOf(this,s.prototype)}},$t=class s extends Q{constructor(t,e){super(`Option "${w(t)}" conflicts with option "${w(e)}".`),Object.setPrototypeOf(this,s.prototype)}},Ft=class s extends Q{constructor(t,e){super(`Option "${w(t)}" depends on option "${w(e)}".`),Object.setPrototypeOf(this,s.prototype)}},Dt=class s extends Q{constructor(t){super(`Missing required option "${w(t)}".`),Object.setPrototypeOf(this,s.prototype)}},tt=class s extends Q{constructor(t){super(`An required argument cannot follow an optional argument, but "${t}" is defined as required.`),Object.setPrototypeOf(this,s.prototype)}},et=class s extends Q{constructor(t){super(`An argument cannot follow an variadic argument, but got "${t}".`),Object.setPrototypeOf(this,s.prototype)}},G=class extends Q{constructor({label:t,name:e,value:n,type:r},o){super(`${t} "${e}" must be of type "${r}", but got "${n}".`+(o?` Expected values: ${o.map(a=>`"${a}"`).join(", ")}`:"")),Object.setPrototypeOf(this,_.prototype)}};var lt=s=>{if(~["1","true"].indexOf(s.value))return!0;if(~["0","false"].indexOf(s.value))return!1;throw new G(s,["true","false","1","0"])};var pt=s=>{let t=Number(s.value);if(Number.isFinite(t))return t;throw new G(s)};var ut=({value:s})=>s;function be(s,t,e=new Map){if(!t.flags)return;Je(s,t);let n=Object.keys(s.flags);if(!(!n.length&&t.allowEmpty)){if(s.standalone){Ke(s,e,n);return}for(let[r,o]of e)ze(o,t),_e(s,o),tn(s,o,t),en(s,o,r);nn(s,e,t)}}function ze(s,t){if(!z(t.flags??[],s.name))throw new K(s.name,t.flags??[])}function Je(s,t){if(t.flags?.length)for(let e of t.flags){let n,r;if(e.name.startsWith("no-")){let a=e.name.replace(/^no-/,"");if(typeof s.flags[a]<"u"||z(t.flags,a))continue;n=Z(a),r=!0}n||(n=Z(e.name)),(!t.ignoreDefaults||typeof t.ignoreDefaults[n]>"u")&&typeof s.flags[n]>"u"&&(typeof e.default<"u"||typeof r<"u")&&(s.flags[n]=xt(e)??r,s.defaults[e.name]=!0,typeof e.value=="function"&&(s.flags[n]=e.value(s.flags[n])))}}function Ke(s,t,e){if(!(!s.standalone||e.length===1)){for(let[n,r]of t)if(!s.defaults[r.name]&&r!==s.standalone)throw new kt(s.standalone.name)}}function _e(s,t){if(t.conflicts?.length){for(let e of t.conflicts)if(we(e,s.flags))throw new $t(t.name,e)}}function tn(s,t,e){if(t.depends){for(let n of t.depends)if(!we(n,s.flags)&&!s.defaults[t.name]&&(!e.ignoreDefaults||typeof e.ignoreDefaults[n]>"u"))throw new Ft(t.name,n)}}function en(s,t,e){if(!t.args)return;let n=t.args.length>1;for(let r=0;r<t.args.length;r++){if(t.args[r].optional)continue;if(!(n?typeof s.flags[e][r]<"u":typeof s.flags[e]<"u"))throw new _(t.name)}}function nn(s,t,e){if(!e.flags?.length)return;let n=[...t.values()];for(let r of e.flags)if(!(!r.required||Z(r.name)in s.flags||(r.conflicts??[]).find(i=>!!s.flags[i])||n.find(i=>i.conflicts?.find(p=>p===r.name))))throw new Dt(r.name)}function we(s,t){let e=Z(s);return typeof t[e]<"u"}var ft=s=>{let t=Number(s.value);if(Number.isInteger(t))return t;throw new G(s)};var xe={string:ut,number:pt,integer:ft,boolean:lt};function oe(s=bt(),t={}){let e,n;Array.isArray(s)?(n={},e=s):(n=s,e=s.unknown,s.unknown=[]),e=e.slice(),n.flags??={},n.literal??=[],n.unknown??=[],n.stopEarly=!1,n.stopOnUnknown=!1,n.defaults??={},t.dotted??=!0,sn(t);let r=rn(n,e,t);return be(n,t,r),t.dotted&&on(n),n}function sn(s){s.flags?.forEach(t=>{t.depends?.forEach(e=>{if(!s.flags||!z(s.flags,e))throw new Ct(e,s.flags??[])}),t.conflicts?.forEach(e=>{if(!s.flags||!z(s.flags,e))throw new Ot(e,s.flags??[])})})}function rn(s,t,e){let n=new Map,r=!1;for(let l=0;l<t.length;l++){let D=function(B){if(f){T(!1);return}else if(!B.args?.length){T(void 0);return}let V=B.args[b];if(!V){let v=q();throw new K(v,e.flags??[])}if(V.type||(V.type="boolean"),!B.args?.length&&V.type==="boolean"&&V.optional===void 0&&(V.optional=!0),V.optional)L=!0;else if(L)throw new tt(B.name);let j,re=!1;if(V.list&&yt(V)){let v=q().split(V.separator||",").map(P=>{let ot=Ae(B,V,P);if(typeof ot>"u")throw new at(B.name,V.type??"?",P);return ot});v?.length&&(j=v)}else yt(V)?j=Ae(B,V,q()):V.optional&&V.type==="boolean"&&(j=!0);if(re&&typeof u>"u"){if(l++,!V.variadic)b++;else if(B.args[b+1])throw new et(q())}typeof j<"u"&&(B.args.length>1||V.variadic)?(s.flags[m]||T([]),s.flags[m].push(j),yt(V)&&D(B)):T(j);function yt(v){if(!B.args?.length)return!1;let P=u??t[l+1];return!P||B.args.length>1&&b>=B.args.length?!1:v.optional?B.equalsSign&&v.optional&&!v.variadic&&typeof u>"u"?!1:v.optional||v.variadic?P[0]!=="-"||typeof u<"u"||v.type==="number"&&!isNaN(Number(P)):!1:!0}function Ae(v,P,ot){let Be=e.parse?e.parse({label:"Option",type:P.type||"string",name:`--${v.name}`,value:ot}):ln(v,P,ot);return typeof Be<"u"&&(re=!0),Be}},T=function(B){s.flags[m]=B,s.defaults[m]&&delete s.defaults[m]};var o=D,a=T;let i,p=t[l],u,f=!1;if(r){s.literal.push(p);continue}else if(p==="--"){r=!0;continue}else if(s.stopEarly||s.stopOnUnknown){s.unknown.push(p);continue}if(!(p.length>1&&p[0]==="-")){e.stopEarly&&(s.stopEarly=!0),s.unknown.push(p);continue}let g=p[1]!=="-",d=g?!1:p.length>3&&p[2]!=="-";if(!g&&!d)throw new Rt(p,e.flags??[]);g&&p.length>2&&p[2]!=="."?(t.splice(l,1,...an(p)),p=t[l]):d&&p.startsWith("--no-")&&(f=!0);let x=p.indexOf("=");if(x!==-1&&(u=p.slice(x+1)||void 0,p=p.slice(0,x)),e.flags){if(i=z(e.flags,p),!i){let B=p.replace(/^-+/,"");if(i=ye(B,e.flags),!i){if(e.stopOnUnknown){s.stopOnUnknown=!0,s.unknown.push(t[l]);continue}throw new K(p,e.flags)}}}else i={name:p.replace(/^-+/,""),optionalValue:!0,type:"string"};i.standalone&&(s.standalone=i);let c=f?i.name.replace(/^no-?/,""):i.name,m=Z(c);if(typeof s.flags[m]<"u"){if(!e.flags?.length)i.collect=!0;else if(!i.collect&&!s.defaults[i.name])throw new vt(p)}if(i.type&&!i.args?.length&&(i.args=[{type:i.type,optional:i.optionalValue,variadic:i.variadic,list:i.list,separator:i.separator}]),e.flags?.length&&!i.args?.length&&typeof u<"u")throw new Ut(i.name,u);let b=0,L=!1,q=()=>u??t[l+1],O=s.flags[m];if(D(i),typeof s.flags[m]>"u"){if(i.args?.length&&!i.args?.[b].optional)throw new _(i.name);typeof i.default<"u"&&(i.type||i.value||i.args?.length)?s.flags[m]=xt(i):T(!0)}if(i.value){let B=i.value(s.flags[m],O);T(B)}else if(i.collect){let B=typeof O<"u"?Array.isArray(O)?O:[O]:[];B.push(s.flags[m]),T(B)}n.set(m,i),e.option?.(i,s.flags[m])}return n}function on(s){s.flags=Object.keys(s.flags).reduce((t,e)=>(~e.indexOf(".")?e.split(".").reduce((n,r,o,a)=>(o===a.length-1?n[r]=s.flags[e]:n[r]=n[r]??{},n[r]),t):t[e]=s.flags[e],t),{})}function an(s){s=s.slice(1);let t=[],e=s.indexOf("="),n=(e!==-1?s.slice(0,e):s).split("");return isNaN(Number(s[s.length-1]))?n.forEach(r=>t.push(`-${r}`)):(t.push(`-${n.shift()}`),n.length&&t.push(n.join(""))),e!==-1&&(t[t.length-1]+=s.slice(e)),t}function ln(s,t,e){let n=t.type||"string",r=xe[n];if(!r)throw new J(n,Object.keys(xe));return r({label:"Option",type:n,name:`--${s.name}`,value:e})}var{Deno:ie}=globalThis,pn=typeof ie?.noColor=="boolean"?ie.noColor:!1,ae=!pn;function le(s){ie?.noColor||(ae=s)}function Ce(){return ae}function I(s,t){return{open:`\x1B[${s.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function Y(s,t){return ae?`${t.open}${s.replace(t.regexp,t.open)}${t.close}`:s}function A(s){return Y(s,I([1],22))}function Oe(s){return Y(s,I([2],22))}function pe(s){return Y(s,I([3],23))}function M(s){return Y(s,I([31],39))}function ve(s){return Y(s,I([32],39))}function S(s){return Y(s,I([33],39))}function N(s){return Y(s,I([94],39))}function ue(s){return Y(s,I([95],39))}var un=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TXZcf-nq-uy=><~]))"].join("|"),"g");function Re(s){return s.replace(un,"")}function ct(s){return s.startsWith("-")?s:s.length>1?`--${s}`:`-${s}`}function fn(s,t,e){let n=e.length?wt(t,e):void 0;return n?`${s} "${n}"?`:""}function Tt(s,t,e=[]){let n=t.map(r=>r.getName()).filter(r=>!e.includes(r));return fn(" Did you mean command",s,n)}var cn=/^[<\[].+[\]>]$/,hn=/[<\[:>\]]/;function Mt(s){let t=s.trim().split(/[, =] */g),e=[];for(;t[t.length-1]&&cn.test(t[t.length-1]);)e.unshift(t.pop());let n=e.join(" ");return{flags:t,typeDefinition:n,equalsSign:s.includes("=")}}function st(s,t=!0,e){let n=[],r=!1,o=!1,a=Array.isArray(s)?s:s.split(/ +/);for(let l of a){if(typeof l=="string"&&(l={arg:l}),t&&o)throw new et(l.arg);let i=l.arg.split(hn);if(!i[1]){e&&n.push(i[0]);continue}let p=i[2]||"string",u={description:l.description,optional:l.arg[0]==="[",raw:l.arg,name:i[1],action:i[3]||p,variadic:!1,list:p?l.arg.indexOf(p+"[]")!==-1:!1,type:p};if(t&&!u.optional&&r)throw new tt(u.name);if(l.arg[0]==="["&&(r=!0),u.name.length>3){let f=u.name.slice(0,3)==="...",h=u.name.slice(-3)==="...";o=u.variadic=f||h,f?u.name=u.name.slice(3):h&&(u.name=u.name.slice(0,-3))}n.push(u)}return n}function ht(s){let t=s.split(/\r?\n|\r/g),e="",n=0;for(let r of t)(e||r.trim())&&(e?e+=r.slice(n):(e=r.trimStart(),n=r.length-e.length),e+=`
|
|
3
|
+
`);return e.trimEnd()}function rt(s,t){return t?s.trim().split(`
|
|
4
|
+
`,1)[0].trim():ht(s)}function Ue(s){return s.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase().replace(/_([a-z])/g,t=>t[1].toUpperCase())}var C=class s extends Error{constructor(t){super(t),Object.setPrototypeOf(this,s.prototype)}},R=class s extends C{exitCode;cmd;constructor(t,{exitCode:e}={}){super(t),Object.setPrototypeOf(this,s.prototype),this.exitCode=e??2}},St=class s extends C{constructor(t,e){super(`An option with name '${A(ct(t))}' is already registered on command '${A(e)}'. If it is intended to override the option, set the '${A("override")}' option of the '${A("option")}' method to true.`),Object.setPrototypeOf(this,s.prototype)}};var qt=class s extends C{constructor(){super("Missing command name."),Object.setPrototypeOf(this,s.prototype)}},Gt=class s extends C{constructor(t){super(`Duplicate command name "${t}".`),Object.setPrototypeOf(this,s.prototype)}},Wt=class s extends C{constructor(t){super(`Duplicate command alias "${t}".`),Object.setPrototypeOf(this,s.prototype)}},jt=class s extends C{constructor(t,e,n){super(`Unknown command "${t}".${Tt(t,e,n)}`),Object.setPrototypeOf(this,s.prototype)}},Pt=class s extends C{constructor(t){super(`Type with name "${t}" already exists.`),Object.setPrototypeOf(this,s.prototype)}},Ht=class s extends C{constructor(t){super(`Completion with name "${t}" already exists.`),Object.setPrototypeOf(this,s.prototype)}},Nt=class s extends C{constructor(t){super(`Example with name "${t}" already exists.`),Object.setPrototypeOf(this,s.prototype)}},Xt=class s extends C{constructor(t){super(`Environment variable with name "${t}" already exists.`),Object.setPrototypeOf(this,s.prototype)}},Lt=class s extends R{constructor(t){super(`Missing required environment variable "${t.names[0]}".`),Object.setPrototypeOf(this,s.prototype)}},It=class s extends C{constructor(t){super(`An environment variable can only have one value, but "${t}" has more than one.`),Object.setPrototypeOf(this,s.prototype)}},Yt=class s extends C{constructor(t){super(`An environment variable cannot have an optional value, but "${t}" is defined as optional.`),Object.setPrototypeOf(this,s.prototype)}},Zt=class s extends C{constructor(t){super(`An environment variable cannot have an variadic value, but "${t}" is defined as variadic.`),Object.setPrototypeOf(this,s.prototype)}},zt=class s extends C{constructor(t,e){super(`Default command "${t}" not found.${Tt(t,e)}`),Object.setPrototypeOf(this,s.prototype)}};var Jt=class s extends R{constructor(t,e,n){super(`Unknown command "${t}".${Tt(t,e,n)}`),Object.setPrototypeOf(this,s.prototype)}},Kt=class s extends R{constructor(t){super(`No arguments allowed for command "${t}".`),Object.setPrototypeOf(this,s.prototype)}},_t=class s extends R{constructor(t){super(`Missing argument(s): ${t.join(", ")}`),Object.setPrototypeOf(this,s.prototype)}},te=class s extends R{constructor(t){super(`Missing argument: ${t}`),Object.setPrototypeOf(this,s.prototype)}},gt=class s extends R{constructor(t){super(`Too many arguments: ${t.join(" ")}`),Object.setPrototypeOf(this,s.prototype)}};function fe(s){let{Deno:t,process:e}=globalThis,n=t?.exit??e?.exit;throw n&&n(s),new Error("unsupported runtime")}function ke(s){let{Deno:t,process:e}=globalThis;if(t)return t.env.get(s);if(e)return e.env[s];throw new Error("unsupported runtime")}var ce={top:"\u2500",topMid:"\u252C",topLeft:"\u250C",topRight:"\u2510",bottom:"\u2500",bottomMid:"\u2534",bottomLeft:"\u2514",bottomRight:"\u2518",left:"\u2502",leftMid:"\u251C",mid:"\u2500",midMid:"\u253C",right:"\u2502",rightMid:"\u2524",middle:"\u2502"};var k=class s{value;options;get length(){return this.toString().length}get unclosedAnsiRuns(){return this.options.unclosedAnsiRuns??""}set unclosedAnsiRuns(t){this.options.unclosedAnsiRuns=t}static from(t){let e;return t instanceof s?(e=new this(t.getValue()),e.options={...t.options}):e=new this(t),e}constructor(t){this.value=t,this.options={}}toString(){return this.value.toString()}getValue(){return this.value}setValue(t){return this.value=t,this}clone(t){return s.from(t??this)}border(t=!0,e=!0){return(e||typeof this.options.border>"u")&&(this.options.border=t),this}colSpan(t,e=!0){return(e||typeof this.options.colSpan>"u")&&(this.options.colSpan=t),this}rowSpan(t,e=!0){return(e||typeof this.options.rowSpan>"u")&&(this.options.rowSpan=t),this}align(t,e=!0){return(e||typeof this.options.align>"u")&&(this.options.align=t),this}getBorder(){return this.options.border===!0}getColSpan(){return typeof this.options.colSpan=="number"&&this.options.colSpan>0?this.options.colSpan:1}getRowSpan(){return typeof this.options.rowSpan=="number"&&this.options.rowSpan>0?this.options.rowSpan:1}getAlign(){return this.options.align??"left"}};var X=class s{static from(t){let e=t instanceof s?t.opts:t;return new s().options(e)}opts={};options(t){return Object.assign(this.opts,t),this}minWidth(t){return this.opts.minWidth=t,this}maxWidth(t){return this.opts.maxWidth=t,this}border(t=!0){return this.opts.border=t,this}padding(t){return this.opts.padding=t,this}align(t){return this.opts.align=t,this}getMinWidth(){return this.opts.minWidth}getMaxWidth(){return this.opts.maxWidth}getBorder(){return this.opts.border}getPadding(){return this.opts.padding}getAlign(){return this.opts.align}};var dt=null,gn={UNICODE_VERSION:"15.0.0",tables:[{d:"AAECAwQFBgcICQoLDA0OAw8DDwkQCRESERIA",r:"AQEBAgEBAQEBAQEBAQEBBwEHAVABBwcBBwF4"},{d:"AAECAwQFBgcGCAYJCgsMDQ4PEAYREhMUBhUWFxgZGhscHR4fICEiIyIkJSYnKCkqJSssLS4vMDEyMzQ1Njc4OToGOzwKBj0GPj9AQUIGQwZEBkVGR0hJSktMTQZOBgoGT1BRUlNUVVZXWFkGWgZbBlxdXl1fYGFiY2RlZmdoBmlqBmsGAQZsBm1uO29wcXI7czt0dXZ3OwY7eHkGent8Bn0Gfn+AgYKDhIWGBoc7iAZdO4kGiosGAXGMBo0GjgaPBpAGkQaSBpMGlJUGlpcGmJmam5ydnp+gLgahLKIGo6SlpganqKmqqwasBq0Grq8GsLGyswa0BrUGtre4Brm6uwZHvAa9vga/wME7wjvDxAbFO8bHO8gGyQbKywbMzQbOBs/Q0QbSBr8GvgbT1AbUBtUG1gbXBtjZ2tsG3N0G3t/g4eLjO+Tl5ufoO+k76gbrBuztOwbu7/AGO+XxCgYKCwZd8g==",r:"AQEBAQEBAQEBAQEBAQEBAQEBAQMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECBQEOAQEBAQEBAQEBAwEBAQEBAQEBAQIBAwEIAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBDQEBBQEBAQEBAgEBAwEBAQEBAQEBAQEBbQHaAQEFAQEBBAECAQEBAQEBAQEBAwGuASFkCAELAQEBAQEBAQEHAQMBAQEaAQIBCAEFAQEBAQEBAQEBAQEBAQEBAQEBAQECAQEBAQIBAQEBAQEBAwEDAQEBAQEBAQUBAQEBAQEBBAEBAVIBAdkBARABAQFfARMBAYoBBAEBBQEmAUkBAQcBAQIBHgEBARUBAQEBAQUBAQcBDwEBARoBAgEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQMBBAEBAgEBAQEUfwEBAQIDAXj/AQ=="},{d:"AFUVAF3Xd3X/93//VXVVV9VX9V91f1/31X93XVXdVdVV9dVV/VVX1X9X/131VfXVVXV3V1VdVV1V1/1dV1X/3VUAVf3/3/9fVf3/3/9fVV1V/11VFQBQVQEAEEEQVQBQVQBAVFUVAFVUVQUAEAAUBFBVFVFVAEBVBQBUVRUAVVFVBRAAAVBVAVVQVQBVBQBAVUVUAQBUUQEAVQVVUVVUAVRVUVUFVUVBVVRBFRRQUVVQUVUBEFRRVQVVBQBRVRQBVFVRVUFVBVVFVVRVUVVUVQRUBQRQVUFVBVVFVVBVBVVQVRVUAVRVUVUFVVFVRVUFRFVRAEBVFQBAVVEAVFUAQFVQVRFRVQEAQAAEVQEAAQBUVUVVAQQAQVVQBVRVAVRVRUFVUVVRVaoAVQFVBVRVBVUFVQVVEABQVUUBAFVRVRUAVUFVUVVAFVRVRVUBVRUUVUUAQEQBAFQVABRVAEBVAFUEQFRFVRUAVVBVBVAQUFVFUBFQVQAFVUAABABUUVVUUFUVANd/X3//BUD3XdV1VQAEAFVXVdX9V1VXVQBUVdVdVdV1VX111VXVV9V//1X/X1VdVf9fVV9VdVdV1VX31dfVXXX9193/d1X/VV9VV3VVX//1VfVVXVVdVdVVdVWlVWlVqVaWVf/f/1X/Vf/1X1Xf/19V9VVf9df1X1X1X1XVVWlVfV31VVpVd1V3VapV33/fVZVVlVX1WVWlVelV+v/v//7/31Xv/6/77/tVWaVVVlVdVWaVmlX1/1WpVVZVlVWVVlVW+V9VFVBVAKqaqlWqWlWqVaoKoKpqqapqgapVqaqpqmqqVapqqv+qVqpqVRVAAFBVBVVQVUUVVUFVVFVQVQBQVRVVBQBQVRUAUFWqVkBVFQVQVVFVAUBBVRVVVFVUVQQUVAVRVVBVRVVRVFFVqlVFVQCqWlUAqmqqaqpVqlZVqmpVAV1VUVVUVQVAVQFBVQBVQBVVQVUAVRVUVQFVBQBUVQVQVVFVAEBVFFRVFVBVFUBBUUVVUVVAVRUAAQBUVRVVUFUFAEBVARRVFVAEVUVVFQBAVVRVBQBUAFRVAAVEVUVVFQBEFQRVBVBVEFRVUFUVAEARVFUVUQAQVQEFEABVFQBBVRVEFVUABVVUVQEAQFUVABRAVRVVAUABVQUAQFBVAEAAEFUFAAUABEFVAUBFEAAQVVARVRVUVVBVBUBVRFVUFQBQVQBUVQBAVRVVFUBVqlRVWlWqVapaVapWVaqpqmmqalVlVWpZVapVqlVBAFUAUABAVRVQVRUAQAEAVQVQVQVUVQBAFQBUVVFVVFUVAAEAVQBAABQAEARAVUVVAFUAQFUAQFVWVZVV/39V/1//X1X/76uq6v9XVWpVqlWqVlVaVapaVapWVamqmqqmqlWqapWqVapWqmqmqpaqWlWVaqpVZVVpVVZVlapVqlpVVmqpVapVlVZVqlZVqlVWVapqqpqqVapWqlZVqpqqWlWlqlWqVlWqVlVRVQD/Xw==",r:"CBcBCAEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQMBAQECAQEBAQEBAQEBAQEBBAEBGAEDAQwBAwEIAQEBAQEBAQgcCAEDAQEBAQEDAQEBDQEDEAELAQEBEQEKAQEBDgEBAgIBAQoBBQQBCAEBAQEBAQEHAQEHBgEWAQIBDQECAgEFAQECAgEKAQ0BAQIKAQ0BDQEBAQEBAQEBAgEHAQ4BAQEBAQQBBgEBDgEBAQEBAQcBAQIBAQEBBAEFAQEBDgEBAQEBAQECAQcBDwECAQwCDQEBAQEBAQECAQgBAQEEAQcBDQEBAQEBAQQBBwERAQEBARYBAQECAQEBGAECAQIBARIBBgEBDQECAQEBAQECAQgBAQEZAQEBAgYBAQEDAQECAQEBAQMBCBgIBwEMAQEGAQcBBwEQAQEBAQEBAgIBCgEBDQEIAQ0BAQEBAQEBBgEBDgEBAQEBAQEBAgEMBwEMAQwBAQEBCQECAwEHAQEBAQ0BAQEBDgIBBgEDAQEBAQEBAQMBAQEBAgEBAQEBAQEBCAEBAgEBAQEBAQkBCAgBAwECAQEBAgEBAQkBAQEBAwECAQMBAQIBBwEFAQEDAQYBAQEBAgEBAQEBAQEBAQECAgEDAQECBAIDAgIBBQEEAQEBAwEPAQEBCyIBCAEJAwQBAQIBAQEBAgECAQEBAQMBAQEBAwEBAQEBAQEBAQgBAQMDAgEBAwEEAQIBAQEBBAEBAQEBAQECAQEBAQEBAQEBAQEHAQQBAwEBAQcBAgUBBgECAQYBAQwBAQEUAQELCAYBFgMFAQYDAQoBAQMBARQBAQkBAQoBBgEVAwsBCgIPAQ0BGQEBAgEHARQBAwIBBgEBAQUBBgQBAgEJAQEBBQECAQMHAQELAQECCQEQAQECAgECAQsBDAEBAQEBCgEBAQsBAQEECQ4BCAQCAQEECAEEAQEFCAEPAQEEAQEPAQgBFAEBAQEBAQEKAQEJAQ8BEAEBEwEBAQIBCwEBDgENAwEKAQEBAQELAQEBAQECAQwBCAEBAQEBDgEDAQwBAQECAQEXAQEBAQEHAgEBBQEIAQEBAQEQAgEBBQEUAQEBAQEbAQEBAQEGARQBAQEBARkBAQEBCQEBAQEQAQIBDwEBARQBAQEBBwEBAQkBAQEBAQECAQEBCwECAQEVAQEBAQQBBQEBAQEOAQEBAQEBEgEBFgEBAgEMAQEBAQ8BAQMBFgEBDgEBBQEPAQETAQECAQMOAgUBCgIBGQEBAQEIAQMBBwEBAwECEwgBAQcLAQUBFwEBAQEDAQEBBwEBBAEBDg0BAQwBAQEDAQQBAQEDBAEBBAEBAQEBEAEPAQgBAQsBAQ4BEQEMAgEBBwEOAQEHAQEBAQQBBAEDCwECAQEBAwEBBggBAgEBAREBBQMKAQEBAwQCEQEBHgEPAQIBAQYEAQYBAwEUAQUMAQEBAQEBAQECAQEBAgEIAwEBBgsBAgEODAMBAgEBCwEBAQEBAwECAQECAQEBBwgPAQ=="}]};function dn(s){dt||(dt=gn.tables.map(An));let t=dt[0][s>>13&255],e=dt[1][128*t+(s>>6&127)],r=dt[2][16*e+(s>>2&15)]>>2*(s&3)&3;return r===3?1:r}var he=new Map;function mn(s){if(he.has(s))return he.get(s);let t=s.codePointAt(0),e=null;return t<127?e=t>=32?1:t===0?0:null:t>=160?e=dn(t):e=null,he.set(s,e),e}function $e(s){return[...s].map(t=>mn(t)??0).reduce((t,e)=>t+e,0)}function An({d:s,r:t}){let e=atob(s),n=atob(t),r="";for(let[o,a]of[...n].entries())r+=e[o].repeat(a.codePointAt(0));return Uint8Array.from([...r].map(o=>o.codePointAt(0)))}function Fe(s,t,e){let n=t.map(r=>{let o=r[s];return(o instanceof k&&o.getColSpan()>1?"":o?.toString()||"").split(`
|
|
5
|
+
`).map(l=>{let i=typeof e>"u"?l:mt(e,l);return W(i)||0})}).flat();return Math.max(...n)}var W=s=>$e(Re(s)),ge=/\x1b\[(?:(?<_0>0)|(?<_22>1|2|22)|(?<_23>3|23)|(?<_24>4|24)|(?<_27>7|27)|(?<_28>8|28)|(?<_29>9|29)|(?<_39>30|31|32|33|34|35|36|37|38;2;\d+;\d+;\d+|38;5;\d+|39|90|91|92|93|94|95|96|97)|(?<_49>40|41|42|43|44|45|46|47|48;2;\d+;\d+;\d+|48;5;\d+|49|100|101|102|103|104|105|106|107))m/.source;function De(s){let t=[];for(let{groups:o}of s.matchAll(new RegExp(ge,"g"))){let[a,l]=Object.entries(o).find(([i,p])=>p);t.push({kind:a.slice(1),content:l})}let e=[];for(let o of t)e=[...e.filter(a=>a.kind!==o.kind),o];e=e.filter(({content:o,kind:a})=>o!==a);let n=e.map(({kind:o})=>`\x1B[${o}m`).reverse().join(""),r=e.map(({content:o})=>`\x1B[${o}m`).join("");return{currentSuffix:n,nextPrefix:r}}function mt(s,t){let e="",n=t.split(`
|
|
6
|
+
`)[0]?.split(/ /g);for(let r=0;r<n.length;r++){let o=n[r];if(e){let a=W(o);if(W(e)+a>=s)break}e+=(r>0?" ":"")+o}return e}function Te(s,t){let e="",n=[...t.split(`
|
|
7
|
+
`)[0].matchAll(new RegExp(`(?:${ge})+|.`,"gu"))].map(([r])=>r);for(let r of n){if(e){let o=W(r);if(W(e)+o>s)break}e+=r}return e}var $=class s extends Array{options={};static from(t){let e=new this(...t);return t instanceof s&&(e.options={...t.options}),e}clone(){let t=new s(...this.map(e=>e instanceof k?e.clone():e));return t.options={...this.options},t}border(t=!0,e=!0){return(e||typeof this.options.border>"u")&&(this.options.border=t),this}align(t,e=!0){return(e||typeof this.options.align>"u")&&(this.options.align=t),this}getBorder(){return this.options.border===!0}hasBorder(){return this.getBorder()||this.some(t=>t instanceof k&&t.getBorder())}getAlign(){return this.options.align??"left"}};var ee=class{table;options;constructor(t,e){this.table=t,this.options=e}toString(){let t=this.createLayout();return t.rows.length?this.renderRows(t):""}createLayout(){Object.keys(this.options.chars).forEach(i=>{typeof this.options.chars[i]!="string"&&(this.options.chars[i]="")});let t=this.table.getBorder()||this.table.hasBodyBorder(),e=this.table.hasHeaderBorder(),n=e||t,r=this.#t(),o=Math.max(...r.map(i=>i.length));for(let i=0;i<r.length;i++){let p=r[i],u=p.length;if(u<o){let f=o-u;for(let h=0;h<f;h++)p.push(this.createCell(null,p,i,u+h))}}let a=[],l=[];for(let i=0;i<o;i++){let p=this.options.columns.at(i),u=p?.getMinWidth()??(Array.isArray(this.options.minColWidth)?this.options.minColWidth[i]:this.options.minColWidth),f=p?.getMaxWidth()??(Array.isArray(this.options.maxColWidth)?this.options.maxColWidth[i]:this.options.maxColWidth),h=Fe(i,r,f);l[i]=Math.min(f,Math.max(u,h)),a[i]=p?.getPadding()??(Array.isArray(this.options.padding)?this.options.padding[i]:this.options.padding)}return{padding:a,width:l,rows:r,columns:o,hasBorder:n,hasBodyBorder:t,hasHeaderBorder:e}}#t(){let t=this.table.getHeader(),e=t?[t,...this.table]:this.table.slice();return e.some(r=>r.some(o=>o instanceof k&&(o.getColSpan()>1||o.getRowSpan()>1)))?this.spanRows(e):e.map((r,o)=>{let a=this.createRow(r);for(let l=0;l<r.length;l++)a[l]=this.createCell(r[l],a,o,l);return a})}spanRows(t){let e=[],n=1,r=-1;for(;r++,!(r===t.length&&e.every(l=>l===1));){let o=t[r]=this.createRow(t[r]||[]),a=-1;for(;a++,!(a===o.length&&a===e.length&&n===1);){if(n>1){n--,e[a]=e[a-1],o.splice(a,this.getDeleteCount(t,r,a),o[a-1]);continue}if(e[a]>1){e[a]--,t[r].splice(a,this.getDeleteCount(t,r,a),t[r-1][a]);continue}let l=o[a]=this.createCell(o[a]||null,o,r,a);n=l.getColSpan(),e[a]=l.getRowSpan()}}return t}getDeleteCount(t,e,n){return n<=t[e].length-1&&typeof t[e][n]>"u"?1:0}createRow(t){return $.from(t).border(this.table.getBorder(),!1).align(this.table.getAlign(),!1)}createCell(t,e,n,r){let o=this.options.columns.at(r),a=this.isHeaderRow(n);return k.from(t??"").border((a?null:o?.getBorder())??e.getBorder(),!1).align((a?null:o?.getAlign())??e.getAlign(),!1)}isHeaderRow(t){return t===0&&this.table.getHeader()!==void 0}renderRows(t){let e="",n=new Array(t.columns).fill(1);for(let r=0;r<t.rows.length;r++)e+=this.renderRow(n,r,t);return e.slice(0,-1)}renderRow(t,e,n,r){let o=n.rows[e],a=n.rows[e-1],l=n.rows[e+1],i="",p=1;!r&&e===0&&o.hasBorder()&&(i+=this.renderBorderRow(void 0,o,t,n));let u=!1;i+=" ".repeat(this.options.indent||0);for(let f=0;f<n.columns;f++){if(p>1){p--,t[f]=t[f-1];continue}i+=this.renderCell(f,o,n),t[f]>1?r||t[f]--:(!a||a[f]!==o[f])&&(t[f]=o[f].getRowSpan()),p=o[f].getColSpan(),t[f]===1&&o[f].length&&(u=!0)}return n.columns>0&&(o[n.columns-1].getBorder()?i+=this.options.chars.right:n.hasBorder&&(i+=" ")),i+=`
|
|
8
|
+
`,u?i+this.renderRow(t,e,n,u):(n.rows.length>1&&(e===0&&n.hasHeaderBorder||e<n.rows.length-1&&n.hasBodyBorder)&&(i+=this.renderBorderRow(o,l,t,n)),e===n.rows.length-1&&o.hasBorder()&&(i+=this.renderBorderRow(o,void 0,t,n)),i)}renderCell(t,e,n,r){let o="",a=e[t-1],l=e[t];r||(t===0?l.getBorder()?o+=this.options.chars.left:n.hasBorder&&(o+=" "):l.getBorder()||a?.getBorder()?o+=this.options.chars.middle:n.hasBorder&&(o+=" "));let i=n.width[t],p=l.getColSpan();if(p>1)for(let h=1;h<p;h++)i+=n.width[t+h]+n.padding[t+h],n.hasBorder&&(i+=n.padding[t+h]+1);let{current:u,next:f}=this.renderCellValue(l,i);return e[t].setValue(f),n.hasBorder&&(o+=" ".repeat(n.padding[t])),o+=u,(n.hasBorder||t<n.columns-1)&&(o+=" ".repeat(n.padding[t])),o}renderCellValue(t,e){let n=Math.min(e,W(t.toString())),r=mt(n,t.toString()),o=W(r)>n;o&&(r=Te(n,r));let a=t.toString().slice(r.length+(o?0:1));r=t.unclosedAnsiRuns+r;let{currentSuffix:l,nextPrefix:i}=De(r);r+=l,t.unclosedAnsiRuns=i;let p=e-W(r),u=t.getAlign(),f;if(p===0)f=r;else if(u==="left")f=r+" ".repeat(p);else if(u==="center")f=" ".repeat(Math.floor(p/2))+r+" ".repeat(Math.ceil(p/2));else if(u==="right")f=" ".repeat(p)+r;else throw new Error("Unknown direction: "+u);return{current:f,next:a}}renderBorderRow(t,e,n,r){let o="",a=1;for(let l=0;l<r.columns;l++){if(n[l]>1){if(!e)throw new Error("invalid layout");if(a>1){a--;continue}}o+=this.renderBorderCell(l,t,e,n,r),a=e?.[l].getColSpan()??1}return o.length?" ".repeat(this.options.indent)+o+`
|
|
9
|
+
`:""}renderBorderCell(t,e,n,r,o){let a=e?.[t-1],l=n?.[t-1],i=e?.[t],p=n?.[t],u=!!a?.getBorder(),f=!!l?.getBorder(),h=!!i?.getBorder(),g=!!p?.getBorder(),d=b=>(b?.getColSpan()??1)>1,x=b=>(b?.getRowSpan()??1)>1,c="";if(t===0)r[t]>1?h?c+=this.options.chars.left:c+=" ":h&&g?c+=this.options.chars.leftMid:h?c+=this.options.chars.bottomLeft:g?c+=this.options.chars.topLeft:c+=" ";else if(t<o.columns)if(u&&g||h&&f){let b=d(a),L=d(l),q=d(i),O=d(p),D=x(a),T=x(l),B=x(i),V=x(p),j=u&&g&&h&&f;D&&B&&T&&V&&j?c+=this.options.chars.middle:b&&q&&L&&O&&j&&a===i&&l===p?c+=this.options.chars.mid:b&&q&&a===i?c+=this.options.chars.topMid:L&&O&&l===p?c+=this.options.chars.bottomMid:D&&T&&a===l?c+=this.options.chars.leftMid:B&&V&&i===p?c+=this.options.chars.rightMid:c+=this.options.chars.midMid}else u&&h?d(a)&&d(i)&&a===i?c+=this.options.chars.bottom:c+=this.options.chars.bottomMid:h&&g?r[t]>1?c+=this.options.chars.left:c+=this.options.chars.leftMid:g&&f?d(l)&&d(p)&&l===p?c+=this.options.chars.top:c+=this.options.chars.topMid:u&&f?x(a)&&a===l?c+=this.options.chars.right:c+=this.options.chars.rightMid:u?c+=this.options.chars.bottomRight:h?c+=this.options.chars.bottomLeft:f?c+=this.options.chars.topRight:g?c+=this.options.chars.topLeft:c+=" ";let m=o.padding[t]+o.width[t]+o.padding[t];if(r[t]>1&&n){if(c+=this.renderCell(t,n,o,!0),n[t]===n[n.length-1])return h?c+=this.options.chars.right:c+=" ",c}else h&&g?c+=this.options.chars.mid.repeat(m):h?c+=this.options.chars.bottom.repeat(m):g?c+=this.options.chars.top.repeat(m):c+=" ".repeat(m);return t===o.columns-1&&(h&&g?c+=this.options.chars.rightMid:h?c+=this.options.chars.bottomRight:g?c+=this.options.chars.topRight:c+=" "),c}};var U=class s extends Array{static _chars={...ce};options={indent:0,border:!1,maxColWidth:1/0,minColWidth:0,padding:1,chars:{...s._chars},columns:[]};headerRow;static from(t){let e=new this(...t);return t instanceof s&&(e.options={...t.options},e.headerRow=t.headerRow?$.from(t.headerRow):void 0),e}static fromJson(t){return new this().fromJson(t)}static chars(t){return Object.assign(this._chars,t),this}static render(t){s.from(t).render()}fromJson(t){return this.header(Object.keys(t[0])),this.body(t.map(e=>Object.values(e))),this}columns(t){return this.options.columns=t.map(e=>e instanceof X?e:X.from(e)),this}column(t,e){return e instanceof X?this.options.columns[t]=e:this.options.columns[t]?this.options.columns[t].options(e):this.options.columns[t]=X.from(e),this}header(t){return this.headerRow=t instanceof $?t:$.from(t),this}body(t){return this.length=0,this.push(...t),this}clone(){let t=new s(...this.map(e=>e instanceof $?e.clone():$.from(e).clone()));return t.options={...this.options},t.headerRow=this.headerRow?.clone(),t}toString(){return new ee(this,this.options).toString()}render(){return console.log(this.toString()),this}maxColWidth(t,e=!0){return(e||typeof this.options.maxColWidth>"u")&&(this.options.maxColWidth=t),this}minColWidth(t,e=!0){return(e||typeof this.options.minColWidth>"u")&&(this.options.minColWidth=t),this}indent(t,e=!0){return(e||typeof this.options.indent>"u")&&(this.options.indent=t),this}padding(t,e=!0){return(e||typeof this.options.padding>"u")&&(this.options.padding=t),this}border(t=!0,e=!0){return(e||typeof this.options.border>"u")&&(this.options.border=t),this}align(t,e=!0){return(e||typeof this.options.align>"u")&&(this.options.align=t),this}chars(t){return Object.assign(this.options.chars,t),this}getHeader(){return this.headerRow}getBody(){return[...this]}getMaxColWidth(){return this.options.maxColWidth}getMinColWidth(){return this.options.minColWidth}getIndent(){return this.options.indent}getPadding(){return this.options.padding}getBorder(){return this.options.border===!0}hasHeaderBorder(){let t=this.headerRow?.hasBorder();return t===!0||this.getBorder()&&t!==!1}hasBodyBorder(){return this.getBorder()||this.options.columns.some(t=>t.getBorder())||this.some(t=>t instanceof $?t.hasBorder():t.some(e=>e instanceof k?e.getBorder():!1))}hasBorder(){return this.hasHeaderBorder()||this.hasBodyBorder()}getAlign(){return this.options.align??"left"}getColumns(){return this.options.columns}getColumn(t){return this.options.columns[t]??=new X}};function de(s,t){let{Deno:e}=globalThis;return e?.inspect(s,{depth:1,colors:t,trailingComma:!1})??JSON.stringify(s,null,2)}var y=class{};var se=class s{cmd;indent;options;static generate(t,e){return new s(t,e).generate()}constructor(t,e={}){this.cmd=t,this.indent=2,this.options={types:!1,hints:!0,colors:!0,long:!1,...e}}generate(){let t=Ce();le(this.options.colors);let e=this.generateHeader()+this.generateMeta()+this.generateDescription()+this.generateArguments()+this.generateOptions()+this.generateCommands()+this.generateEnvironmentVariables()+this.generateExamples();return le(t),e}generateHeader(){let t=this.cmd.getUsage(),e=[[A("Usage:"),ue(this.cmd.getPath()+(t?" "+ne(t,this.options.types):""))]];return this.cmd.getVersion()&&e.push([A("Version:"),S(`${this.cmd.getVersion()}`)]),`
|
|
10
|
+
`+U.from(e).padding(1).toString()+`
|
|
11
|
+
`}generateMeta(){let t=Object.entries(this.cmd.getMeta());if(!t.length)return"";let e=[];for(let[n,r]of t)e.push([A(`${n}: `)+r]);return`
|
|
12
|
+
`+U.from(e).padding(1).toString()+`
|
|
13
|
+
`}generateDescription(){return this.cmd.getDescription()?this.label("Description")+U.from([[ht(this.cmd.getDescription())]]).indent(this.indent).maxColWidth(140).padding(1).toString()+`
|
|
14
|
+
`:""}generateArguments(){let t=this.cmd.getArguments();return!t.length||!t.find(e=>e.description)?"":this.label("Arguments")+U.from([...t.filter(e=>e.description).map(e=>[ne(e.raw||"",this.options.types),M(A("-")),rt(e.description??"",!this.options.long),this.generateArgumentHints(e)])]).padding([2,1,2]).indent(this.indent).maxColWidth([60,1,80,60]).toString()+`
|
|
15
|
+
`}generateOptions(){let t=this.cmd.getOptions(!1);if(!t.length)return"";let e=[];if(t.some(o=>o.groupName))for(let o of t){let a=e.find(l=>l.name===o.groupName);a||(a={name:o.groupName,options:[]},e.push(a)),a.options.push(o)}else e=[{name:"Options",options:t}];let r="";for(let o of e)r+=this.generateOptionGroup(o);return r}generateOptionGroup(t){return t.options.length?t.options.find(n=>!!n.typeDefinition)?this.label(t.name??"Options")+U.from([...t.options.map(n=>[n.flags.map(r=>N(r)).join(", "),ne(n.typeDefinition||"",this.options.types),M(A("-")),rt(n.description,!this.options.long),this.generateOptionHints(n)])]).padding([2,2,1,2]).indent(this.indent).maxColWidth([60,60,1,80,60]).toString()+`
|
|
16
|
+
`:this.label(t.name??"Options")+U.from([...t.options.map(n=>[n.flags.map(r=>N(r)).join(", "),M(A("-")),rt(n.description,!this.options.long),this.generateOptionHints(n)])]).indent(this.indent).maxColWidth([60,1,80,60]).padding([2,1,2]).toString()+`
|
|
17
|
+
`:""}generateCommands(){let t=this.cmd.getCommands(!1);return t.length?t.find(n=>!!n.getArgsDefinition())?this.label("Commands")+U.from([...t.map(n=>[[n.getName(),...n.getAliases()].map(r=>N(r)).join(", "),ne(n.getArgsDefinition()||"",this.options.types),M(A("-")),n.getShortDescription()])]).indent(this.indent).maxColWidth([60,60,1,80]).padding([2,2,1,2]).toString()+`
|
|
18
|
+
`:this.label("Commands")+U.from([...t.map(n=>[[n.getName(),...n.getAliases()].map(r=>N(r)).join(", "),M(A("-")),n.getShortDescription()])]).maxColWidth([60,1,80]).padding([2,1,2]).indent(this.indent).toString()+`
|
|
19
|
+
`:""}generateEnvironmentVariables(){let t=this.cmd.getEnvVars(!1);return t.length?this.label("Environment variables")+U.from([...t.map(e=>[e.names.map(n=>N(n)).join(", "),Me(e.details,this.options.types),M(A("-")),this.options.long?ht(e.description):e.description.trim().split(`
|
|
20
|
+
`,1)[0],e.required?`(${S("required")})`:""])]).padding([2,2,1,2]).indent(this.indent).maxColWidth([60,60,1,80,10]).toString()+`
|
|
21
|
+
`:""}generateExamples(){let t=this.cmd.getExamples();return t.length?this.label("Examples")+U.from(t.map(e=>[Oe(A(e.name)),ht(e.description)])).padding(1).indent(this.indent).maxColWidth(150).toString()+`
|
|
22
|
+
`:""}generateOptionHints(t){if(!this.options.hints)return"";let e=[];t.required&&e.push(S("required"));let n=this.cmd.getType(t.args[0]?.type)?.handler;if(typeof t.default<"u"||typeof t.defaultText<"u"){let r=typeof t.default=="function"?t.default():t.default,o=typeof t.defaultText=="function"?t.defaultText(r):typeof t.defaultText<"u"?t.defaultText:n instanceof y&&n.defaultText?n.defaultText():r;typeof o<"u"&&e.push(A("Default: ")+de(o,this.options.colors))}return t.depends?.length&&e.push(S(A("Depends: "))+pe(t.depends.map(ct).join(", "))),t.conflicts?.length&&e.push(M(A("Conflicts: "))+pe(t.conflicts.map(ct).join(", "))),this.generateHints(n,e)}generateArgumentHints(t){if(!this.options.hints)return"";let e=[];!t.optional&&e.push(S("required"));let n=this.cmd.getType(t.type)?.handler;return this.generateHints(n,e)}generateHints(t,e){if(t instanceof y){let n=t.values?.(this.cmd,this.cmd.getParent());n?.length&&e.push(A("Values: ")+n.map(r=>de(r,this.options.colors)).join(", "))}return e.length?`(${e.join(", ")})`:""}label(t){return`
|
|
23
|
+
`+A(`${t}:`)+`
|
|
24
|
+
|
|
25
|
+
`}};function ne(s,t=!0){return s?st(s,!1,!0).map(e=>typeof e=="string"?e:Me(e,t)).join(" "):""}function Me(s,t=!0){let e="";e+=S(s.optional?"[":"<");let n="";return n+=s.name,s.variadic&&(n+="..."),n=ue(n),e+=n,t&&(e+=S(":"),e+=M(s.type),s.list&&(e+=ve("[]"))),e+=S(s.optional?"]":">"),e}var At=class extends y{parse(t){return lt(t)}complete(){return["true","false"]}};var F=class extends y{parse(t){return ut(t)}};var Bt=class extends F{constructor(){super()}};var Et=class extends y{parse(t){return ft(t)}};var Vt=class extends y{parse(t){return pt(t)}};var Qt=class extends F{defaultText(){return"******"}};async function me(s){let t=s.getMainCommand(),e=t.getCommand("upgrade");if(!Bn(e)||!await e.hasRequiredPermissions())return;let n=await e.getLatestVersion(),r=t.getVersion();if(!r||r===n)return;let o=`(New version available: ${n}. Run '${t.getName()} upgrade' to upgrade to the latest version!)`;t.version(`${r} ${A(S(o))}`)}function Bn(s){return s instanceof E&&"getLatestVersion"in s&&"hasRequiredPermissions"in s}var E=class s{cmd=this;parent;props={rawArgs:[],literalArgs:[],args:[]};settings={name:"COMMAND",description:"",examples:[],aliases:[],meta:{},commands:new Map};builder={groupName:null,types:new Map,options:[],envVars:[],completions:new Map};versionOption(t,e,n){return this.settings.versionOptions=t===!1?t:{flags:t,desc:e,opts:typeof n=="function"?{action:n}:n},this}helpOption(t,e,n){return this.settings.helpOptions=t===!1?t:{flags:t,desc:e,opts:typeof n=="function"?{action:n}:n},this}command(t,e,{override:n}={}){this.reset();let r=Mt(t),o=r.flags.shift(),a=r.flags;if(!o)throw new qt;if(this.getBaseCommand(o,!0)){if(!n)throw new Gt(o);this.removeCommand(o)}let l,i;return typeof e=="string"&&(l=e),e instanceof s?i=e.reset():i=new s,i.settings.name=o,i.parent=this,l&&i.description(l),r.typeDefinition&&i.arguments(r.typeDefinition),a.forEach(p=>i.alias(p)),this.settings.commands.set(o,i),this.select(o),this}alias(t){if(this.cmd.settings.name===t||this.cmd.settings.aliases.includes(t))throw new Wt(t);return this.cmd.settings.aliases.push(t),this}reset(){return this.builder.groupName=null,this.cmd=this,this}select(t){let e=this.getBaseCommand(t,!0);if(!e)throw new jt(t,this.getBaseCommands(!0));return this.cmd=e,this}name(t){return this.cmd.settings.name=t,this}version(t){return typeof t=="string"?this.cmd.settings.version=()=>t:typeof t=="function"&&(this.cmd.settings.version=t),this}meta(t,e){return this.cmd.settings.meta[t]=e,this}getMeta(t){return typeof t>"u"?this.settings.meta:this.settings.meta[t]}help(t){return typeof t=="string"?this.cmd.settings.help=()=>t:typeof t=="function"?this.cmd.settings.help=t:this.cmd.settings.help=(e,n)=>se.generate(e,{...t,...n}),this}description(t){return this.cmd.settings.description=t,this}usage(t){return this.cmd.settings.usage=t,this}hidden(){return this.cmd.settings.isHidden=!0,this}global(){return this.cmd.settings.isGlobal=!0,this}arguments(t,e){return this.cmd.settings.arguments=t.split(" ").map((n,r)=>({arg:n,description:e?.[r]})),this}argument(t,e,n){return this.cmd.settings.arguments??=[],this.cmd.settings.arguments.push({arg:t,description:e,...n}),this}action(t){return this.cmd.settings.actionHandler=t,this}globalAction(t){return this.cmd.settings.globalActionHandler=t,this}allowEmpty(t){return this.cmd.settings.allowEmpty=t!==!1,this}stopEarly(t=!0){return this.cmd.settings.stopEarly=t,this}useRawArgs(t=!0){return this.cmd.settings.useRawArgs=t,this}default(t){return this.cmd.settings.defaultCommand=t,this}globalType(t,e,n){return this.type(t,e,{...n,global:!0})}type(t,e,n){if(this.cmd.builder.types.get(t)&&!n?.override)throw new Pt(t);if(this.cmd.builder.types.set(t,{...n,name:t,handler:e}),e instanceof y&&(typeof e.complete<"u"||typeof e.values<"u")){let r=(o,a)=>e.complete?.(o,a)||[];this.complete(t,r,n)}return this}globalComplete(t,e,n){return this.complete(t,e,{...n,global:!0})}complete(t,e,n){if(this.cmd.builder.completions.has(t)&&!n?.override)throw new Ht(t);return this.cmd.builder.completions.set(t,{name:t,complete:e,...n}),this}throwErrors(){return this.cmd.settings.throwOnError=!0,this}error(t){return this.cmd.settings.errorHandler=t,this}getErrorHandler(){return this.settings.errorHandler??(this.parent&&this.parent.settings.errorHandler)}noExit(){return this.cmd.settings.shouldExit=!1,this.throwErrors(),this}noGlobals(){return this.cmd.settings.noGlobals=!0,this}shouldThrowErrors(){return this.settings.throwOnError||!!this.parent?.shouldThrowErrors()}shouldExit(){return this.settings.shouldExit??this.parent?.shouldExit()??!0}group(t){return this.cmd.builder.groupName=t,this}globalOption(t,e,n){return typeof n=="function"?this.option(t,e,{value:n,global:!0}):this.option(t,e,{...n,global:!0})}option(t,e,n){typeof n=="function"&&(n={value:n});let r=Mt(t),o=r.typeDefinition?st(r.typeDefinition):[],a={...n,name:"",description:e,args:o,flags:r.flags,equalsSign:r.equalsSign,typeDefinition:r.typeDefinition,groupName:this.builder.groupName??void 0};if(a.separator)for(let l of o)l.list&&(l.separator=a.separator);for(let l of a.flags){let i=l.trim(),p=/^--/.test(i),u=p?i.slice(2):i.slice(1);if(this.cmd.getBaseOption(u,!0))if(n?.override)this.removeOption(u);else throw new St(u,this.getPath());!a.name&&p?a.name=u:a.aliases?a.aliases.push(u):a.aliases=[u]}return a.prepend?this.cmd.builder.options.unshift(a):this.cmd.builder.options.push(a),this}example(t,e){if(this.cmd.hasExample(t))throw new Nt(t);return this.cmd.settings.examples.push({name:t,description:e}),this}globalEnv(t,e,n){return this.env(t,e,{...n,global:!0})}env(t,e,n){let r=Mt(t);if(r.typeDefinition||(r.typeDefinition="<value:boolean>"),r.flags.some(a=>this.cmd.getBaseEnvVar(a,!0)))throw new Xt(t);let o=st(r.typeDefinition);if(o.length>1)throw new It(t);if(o.length&&o[0].optional)throw new Yt(t);if(o.length&&o[0].variadic)throw new Zt(t);return this.cmd.builder.envVars.push({name:r.flags[0],names:r.flags,description:e,type:o[0].type,details:o.shift(),...n}),this}parse(t=bt()){this.props.isRoot=!0;let e={unknown:t.slice(),flags:{},env:{},literal:[],stopEarly:!1,stopOnUnknown:!1,defaults:{},actions:[]};return this.parseCommand(e)}async parseCommand(t){try{if(this.reset(),this.registerDefaults(),this.props.rawArgs=t.unknown.slice(),this.settings.useRawArgs)return await this.parseEnvVars(t,this.builder.envVars),await this.execute(t.env,t.unknown);let e=!1,n;if(t.unknown.length>0&&(n=this.getSubCommand(t),!n)){let a=t.unknown[0].replace(/^-+/,"").split("=")[0];this.getOption(a,!0)?.global&&(e=!0,await this.parseGlobalOptionsAndEnvVars(t))}if((n||t.unknown.length>0)&&(n??=this.getSubCommand(t),n))return n.props.globalParent=this,n.parseCommand(t);await this.parseOptionsAndEnvVars(t,e);let r={...t.env,...t.flags},o=await this.parseArguments(t,r);return this.props.literalArgs=t.literal,t.actions.length&&(await Promise.all(t.actions.map(a=>a.call(this,r,...o))),t.standalone)?{options:r,args:o,cmd:this,literal:this.props.literalArgs}:await this.execute(r,o)}catch(e){this.handleError(e)}}getSubCommand(t){let e=this.getCommand(t.unknown[0],!0);return e&&t.unknown.shift(),e}async parseGlobalOptionsAndEnvVars(t){let e=this.getHelpOption()?.flags.includes(t.unknown[0]),n=[...this.builder.envVars.filter(o=>o.global),...this.getGlobalEnvVars(!0)];await this.parseEnvVars(t,n,!e);let r=[...this.builder.options.filter(o=>o.global),...this.getGlobalOptions(!0)];this.parseOptions(t,r,{stopEarly:!0,stopOnUnknown:!0,dotted:!1})}async parseOptionsAndEnvVars(t,e){let n=this.getHelpOption(),r=this.props.versionOption?.flags.includes(t.unknown[0]),o=n&&t.flags?.[n.name]===!0,a=e?this.builder.envVars.filter(i=>!i.global):this.getEnvVars(!0);await this.parseEnvVars(t,a,!o&&!r);let l=this.getOptions(!0);this.parseOptions(t,l)}registerDefaults(){return this.props.hasDefaults?this:this.parent?(this.props.isRoot&&this.getMainCommand().registerDefaults(),this):(this.props.hasDefaults=!0,this.reset(),!this.builder.types.has("string")&&this.type("string",new F,{global:!0}),!this.builder.types.has("number")&&this.type("number",new Vt,{global:!0}),!this.builder.types.has("integer")&&this.type("integer",new Et,{global:!0}),!this.builder.types.has("boolean")&&this.type("boolean",new At,{global:!0}),!this.builder.types.has("file")&&this.type("file",new Bt,{global:!0}),!this.builder.types.has("secret")&&this.type("secret",new Qt,{global:!0}),this.settings.help||this.help({}),this.settings.versionOptions!==!1&&(this.settings.versionOptions||this.settings.version)&&(this.option(this.settings.versionOptions?.flags||"-V, --version",this.settings.versionOptions?.desc||"Show the version number for this program.",{standalone:!0,prepend:!0,action:async function(){this.getRawArgs().includes(`--${this.props.versionOption?.name}`)?(await me(this),this.showLongVersion()):this.showVersion(),this.exit()},...this.settings.versionOptions?.opts??{}}),this.props.versionOption=this.builder.options[0]),this.settings.helpOptions!==!1&&(this.option(this.settings.helpOptions?.flags||"-h, --help",this.settings.helpOptions?.desc||"Show this help.",{standalone:!0,global:!0,prepend:!0,action:async function(){let t=this.getRawArgs().includes(`--${this.getHelpOption()?.name}`);await me(this),this.showHelp({long:t}),this.exit()},...this.settings.helpOptions?.opts??{}}),this.props.helpOption=this.builder.options[0]),this)}async execute(t,e){if(this.settings.defaultCommand&&!e.length&&!Object.keys(t).length){let n=this.getCommand(this.settings.defaultCommand,!0);if(!n)throw new zt(this.settings.defaultCommand,this.getCommands());return n.props.globalParent=this,n.execute(t,e)}return await this.executeGlobalAction(t,e),this.settings.actionHandler&&await this.settings.actionHandler.call(this,t,...e),{options:t,args:e,cmd:this,literal:this.props.literalArgs}}async executeGlobalAction(t,e){this.settings.noGlobals||await this.parent?.executeGlobalAction(t,e),await this.settings.globalActionHandler?.call(this,t,...e)}parseOptions(t,e,{stopEarly:n=this.settings.stopEarly,stopOnUnknown:r=!1,dotted:o=!0}={}){oe(t,{stopEarly:n,stopOnUnknown:r,dotted:o,allowEmpty:this.settings.allowEmpty,flags:e,ignoreDefaults:t.env,parse:a=>this.parseType(a),option:a=>{a.action&&t.actions.push(a.action)}})}parseType(t){let e=this.getType(t.type);if(!e)throw new J(t.type,this.getTypes().map(n=>n.name));return e.handler instanceof y?e.handler.parse(t):e.handler(t)}async parseEnvVars(t,e,n=!0){for(let r of e){let o=await this.findEnvVar(r.names);if(o){let a=i=>this.parseType({label:"Environment variable",type:r.type,name:o.name,value:i}),l=Ue(r.prefix?r.names[0].replace(new RegExp(`^${r.prefix}`),""):r.names[0]);r.details.list?t.env[l]=o.value.split(r.details.separator??",").map(a):t.env[l]=a(o.value),r.value&&typeof t.env[l]<"u"&&(t.env[l]=r.value(t.env[l]))}else if(r.required&&n)throw new Lt(r)}}async findEnvVar(t){for(let e of t){let n=await globalThis.Deno?.permissions.query({name:"env",variable:e});if(!n||n.state==="granted"){let r=ke(e);if(r)return{name:e,value:r}}}}async parseArguments(t,e){let n=[],r=t.unknown.slice();if(this.hasArguments()){let a=this.settings.arguments?.some(l=>l.default);if(!r.length&&!a){let l=this.getArguments().filter(i=>!i.optional).map(i=>i.name);if(l.length&&!!!Object.keys(e).find(u=>this.getOption(u,!0)?.standalone))throw new _t(l)}else{for(let[l,i]of this.getArguments().entries()){let p=g=>this.settings.arguments?.[l].value?this.settings.arguments[l].value(g):g;if(!r.length){if(this.settings.arguments?.[l].default!==void 0){let g=typeof this.settings.arguments[l].default=="function"?this.settings.arguments[l].default.call(this):this.settings.arguments[l].default,d=p(g);if(i.variadic&&Array.isArray(d)){n.push(...d);continue}n.push(d);continue}if(i.optional){a&&n.push(void 0);continue}throw new te(i.name)}let u,f=g=>i.list?g.split(",").map(d=>h(d)):h(g),h=g=>this.parseType({label:"Argument",type:i.type,name:i.name,value:g});i.variadic?u=r.splice(0,r.length).map(g=>f(g)):u=f(r.shift()),u=p(u),i.variadic&&Array.isArray(u)?n.push(...u):typeof u<"u"&&n.push(u)}if(r.length)throw new gt(r)}}else if(r.length)throw this.hasCommands(!0)?this.hasCommand(r[0],!0)?new gt(r):new Jt(r[0],this.getCommands()):new Kt(this.getPath());let o=await Promise.all(n);for(;o.length&&o.at(-1)===void 0;)o.pop();return o}handleError(t){this.throw(t instanceof Q?new R(t.message):t instanceof Error?t:new Error(`[non-error-thrown] ${t}`))}throw(t){if(t instanceof R&&(t.cmd=this),this.getErrorHandler()?.(t,this),this.shouldThrowErrors()||!(t instanceof R))throw t;this.showHelp(),console.error(M(` ${A("error")}: ${t.message}
|
|
26
|
+
`)),fe(t instanceof R?t.exitCode:1)}getName(){return this.settings.name}getParent(){return this.parent}getGlobalParent(){return this.props.globalParent}getMainCommand(){return this.parent?.getMainCommand()??this}getAliases(){return this.settings.aliases}getPath(t){return this.parent&&!this.props.isRoot?this.parent.getPath(t)+" "+this.settings.name:t||this.settings.name}getArgsDefinition(){return this.settings.arguments?.map(({arg:t})=>t).join(" ")}getArgument(t){return this.getArguments().find(e=>e.name===t)}getArguments(){return!this.props.args.length&&this.settings.arguments&&(this.props.args=st(this.settings.arguments)),this.props.args}hasArguments(){return!!this.settings.arguments?.length}getVersion(){return this.getVersionHandler()?.call(this,this)}getVersionHandler(){return this.settings.version??this.parent?.getVersionHandler()}getDescription(){return typeof this.settings.description=="function"?this.settings.description=this.settings.description.call(this):this.settings.description}getUsage(){return this.settings.usage??[this.getArgsDefinition(),this.getRequiredOptionsDefinition()].join(" ").trim()}getRequiredOptionsDefinition(){return this.getOptions().filter(t=>t.required).map(t=>[En(t.flags),t.typeDefinition].filter(e=>e).join(" ").trim()).join(" ")}getShortDescription(){return rt(this.getDescription(),!0)}getRawArgs(){return this.props.rawArgs}getLiteralArgs(){return this.props.literalArgs}showVersion(){console.log(this.getVersion())}getLongVersion(){return`${A(this.getMainCommand().getName())} ${N(this.getVersion()??"")}`+Object.entries(this.getMeta()).map(([t,e])=>`
|
|
27
|
+
${A(t)} ${N(e)}`).join("")}showLongVersion(){console.log(this.getLongVersion())}showHelp(t){console.log(this.getHelp(t))}getHelp(t){return this.registerDefaults(),this.getHelpHandler().call(this,this,t??{})}getHelpHandler(){return this.settings.help??this.parent?.getHelpHandler()}exit(t=0){this.shouldExit()&&fe(t)}hasOptions(t){return this.getOptions(t).length>0}getOptions(t){return this.getGlobalOptions(t).concat(this.getBaseOptions(t))}getBaseOptions(t){return this.builder.options.length?t?this.builder.options.slice(0):this.builder.options.filter(e=>!e.hidden):[]}getGlobalOptions(t){let e=this.getHelpOption(),n=(r,o,a=[],l=[])=>{if(r.builder.options.length){for(let i of r.builder.options)if(i.global&&!this.builder.options.find(p=>p.name===i.name)&&l.indexOf(i.name)===-1&&(t||!i.hidden)){if(o&&i!==e)continue;l.push(i.name),a.push(i)}}return r.parent?n(r.parent,o||r.settings.noGlobals,a,l):a};return this.parent?n(this.parent,this.settings.noGlobals):[]}hasOption(t,e){return!!this.getOption(t,e)}getOption(t,e){return this.getBaseOption(t,e)??this.getGlobalOption(t,e)}getBaseOption(t,e){let n=this.builder.options.find(r=>r.name===t||r.aliases?.includes(t));return n&&(e||!n.hidden)?n:void 0}getGlobalOption(t,e){let n=this.getHelpOption(),r=(o,a)=>{let l=o.getBaseOption(t,e);if(!l?.global)return o.parent&&r(o.parent,a||o.settings.noGlobals);if(!(a&&l!==n))return l};return this.parent&&r(this.parent,this.settings.noGlobals)}removeOption(t){let e=this.builder.options.findIndex(n=>n.name===t);if(e!==-1)return this.builder.options.splice(e,1)[0]}hasCommands(t){return this.getCommands(t).length>0}getCommands(t){return this.getGlobalCommands(t).concat(this.getBaseCommands(t))}getBaseCommands(t){let e=Array.from(this.settings.commands.values());return t?e:e.filter(n=>!n.settings.isHidden)}getGlobalCommands(t){let e=(n,r,o=[],a=[])=>{if(n.settings.commands.size){for(let[l,i]of n.settings.commands)if(i.settings.isGlobal&&this!==i&&!this.settings.commands.has(i.settings.name)&&a.indexOf(i.settings.name)===-1&&(t||!i.settings.isHidden)){if(r&&i?.getName()!=="help")continue;a.push(i.settings.name),o.push(i)}}return n.parent?e(n.parent,r||n.settings.noGlobals,o,a):o};return this.parent?e(this.parent,this.settings.noGlobals):[]}hasCommand(t,e){return!!this.getCommand(t,e)}getCommand(t,e){return this.getBaseCommand(t,e)??this.getGlobalCommand(t,e)}getBaseCommand(t,e){for(let n of this.settings.commands.values())if(n.settings.name===t||n.settings.aliases.includes(t))return n&&(e||!n.settings.isHidden)?n:void 0}getGlobalCommand(t,e){let n=(r,o)=>{let a=r.getBaseCommand(t,e);if(!a||!a.settings.isGlobal)return r.parent&&n(r.parent,o||r.settings.noGlobals);if(!(o&&a.getName()!=="help"))return a};return this.parent&&n(this.parent,this.settings.noGlobals)}removeCommand(t){let e=this.getBaseCommand(t,!0);return e&&this.settings.commands.delete(e.settings.name),e}getTypes(){return this.getGlobalTypes().concat(this.getBaseTypes())}getBaseTypes(){return Array.from(this.builder.types.values())}getGlobalTypes(){let t=(e,n=[],r=[])=>e?(e.builder.types.size&&e.builder.types.forEach(o=>{o.global&&!this.builder.types.has(o.name)&&r.indexOf(o.name)===-1&&(r.push(o.name),n.push(o))}),t(e.parent,n,r)):n;return t(this.parent)}getType(t){return this.getBaseType(t)??this.getGlobalType(t)}getBaseType(t){return this.builder.types.get(t)}getGlobalType(t){if(!this.parent)return;let e=this.parent.getBaseType(t);return e?.global?e:this.parent.getGlobalType(t)}getCompletions(){return this.getGlobalCompletions().concat(this.getBaseCompletions())}getBaseCompletions(){return Array.from(this.builder.completions.values())}getGlobalCompletions(){let t=(e,n=[],r=[])=>e?(e.builder.completions.size&&e.builder.completions.forEach(o=>{o.global&&!this.builder.completions.has(o.name)&&r.indexOf(o.name)===-1&&(r.push(o.name),n.push(o))}),t(e.parent,n,r)):n;return t(this.parent)}getCompletion(t){return this.getBaseCompletion(t)??this.getGlobalCompletion(t)}getBaseCompletion(t){return this.builder.completions.get(t)}getGlobalCompletion(t){if(!this.parent)return;let e=this.parent.getBaseCompletion(t);return e?.global?e:this.parent.getGlobalCompletion(t)}hasEnvVars(t){return this.getEnvVars(t).length>0}getEnvVars(t){return this.getGlobalEnvVars(t).concat(this.getBaseEnvVars(t))}getBaseEnvVars(t){return this.builder.envVars.length?t?this.builder.envVars.slice(0):this.builder.envVars.filter(e=>!e.hidden):[]}getGlobalEnvVars(t){if(this.settings.noGlobals)return[];let e=(n,r=[],o=[])=>n?(n.builder.envVars.length&&n.builder.envVars.forEach(a=>{a.global&&!this.builder.envVars.find(l=>l.names[0]===a.names[0])&&o.indexOf(a.names[0])===-1&&(t||!a.hidden)&&(o.push(a.names[0]),r.push(a))}),e(n.parent,r,o)):r;return e(this.parent)}hasEnvVar(t,e){return!!this.getEnvVar(t,e)}getEnvVar(t,e){return this.getBaseEnvVar(t,e)??this.getGlobalEnvVar(t,e)}getBaseEnvVar(t,e){let n=this.builder.envVars.find(r=>r.names.indexOf(t)!==-1);return n&&(e||!n.hidden)?n:void 0}getGlobalEnvVar(t,e){if(!this.parent||this.settings.noGlobals)return;let n=this.parent.getBaseEnvVar(t,e);return n?.global?n:this.parent.getGlobalEnvVar(t,e)}hasExamples(){return this.settings.examples.length>0}getExamples(){return this.settings.examples}hasExample(t){return!!this.getExample(t)}getExample(t){return this.settings.examples.find(e=>e.name===t)}getHelpOption(){return this.props.helpOption??this.parent?.getHelpOption()}};function En(s){for(let t of s)if(t.startsWith("--"))return t;return s[0]}import{flatHelp as Mn}from"cliffy-flat-help";import{TaskManager as Vn}from"dyson-swarm";async function Qn(s){let t=new Vn;try{let e=await t.createTask({title:s.title,description:s.description,assignee:s.assignee,parentTaskId:s.parent});console.log(`Created task: ${e.id}`),console.log(`Title: ${e.frontmatter.title}`),console.log(`Status: ${e.status}`),e.frontmatter.assignee&&console.log(`Assignee: ${e.frontmatter.assignee}`),s.parent&&console.log(`Parent: ${s.parent}`)}catch(e){console.error("Failed to create task:",e instanceof Error?e.message:e),process.exit(1)}}var Se=new E().description("Create a new task.").option("-t, --title <title>","Task title.",{required:!0}).option("-d, --description <description>","Task description.",{required:!0}).option("-a, --assignee <assignee>","Assignee username.").option("-p, --parent <parentTaskId>","Parent task ID to create a subtask.").action(Qn);import{TaskManager as yn}from"dyson-swarm";async function bn(s){let t=new yn;try{let e={};s.status&&(["open","in-progress","closed"].includes(s.status)||(console.error("Invalid status. Must be one of: open, in-progress, closed"),process.exit(1)),e.status=s.status),s.assignee&&(e.assignee=s.assignee),s.task&&(e.taskId=s.task);let n=await t.listTasks(e);if(n.length===0){console.log("No tasks found.");return}console.log(`Found ${n.length} task(s):
|
|
28
|
+
`);for(let r of n)console.log(`ID: ${r.id}`),console.log(`Title: ${r.frontmatter.title}`),console.log(`Status: ${r.status}`),r.frontmatter.assignee&&console.log(`Assignee: ${r.frontmatter.assignee}`),console.log("---")}catch(e){console.error("Failed to list tasks:",e instanceof Error?e.message:e),process.exit(1)}}var qe=new E().description("List tasks with optional filters.").option("-s, --status <status>","Filter by status (open, in-progress, closed).").option("-a, --assignee <assignee>","Filter by assignee.").option("-t, --task <taskId>","Filter by task ID and include all subtasks (nested).").action(bn);import{TaskManager as wn}from"dyson-swarm";async function xn(s){let t=new wn;try{let e=await t.getTask(s);e||(console.error(`Task not found: ${s}`),process.exit(1)),console.log(`ID: ${e.id}`),console.log(`Title: ${e.frontmatter.title}`),console.log(`Status: ${e.status}`),e.frontmatter.assignee&&console.log(`Assignee: ${e.frontmatter.assignee}`),console.log(`
|
|
29
|
+
Description:`),console.log(e.description)}catch(e){console.error("Failed to get task:",e instanceof Error?e.message:e),process.exit(1)}}var Ge=new E().name("get").description("Get a specific task by ID.").argument("<taskId>","The id of the task to get.").action(async(s,t)=>xn(t));import{TaskManager as Cn}from"dyson-swarm";async function On(s,t){let e=new Cn;try{let n={};t.title&&(n.title=t.title),t.description&&(n.description=t.description),t.assignee&&(n.assignee=t.assignee),Object.keys(n).length===0&&(console.error("No updates specified. Use --title, --description, or --assignee."),process.exit(1));let r=await e.updateTask(s,n);r||(console.error(`Task not found: ${s}`),process.exit(1)),console.log(`Updated task: ${r.id}`),console.log(`Title: ${r.frontmatter.title}`),console.log(`Status: ${r.status}`),r.frontmatter.assignee&&console.log(`Assignee: ${r.frontmatter.assignee}`)}catch(n){console.error("Failed to update task:",n instanceof Error?n.message:n),process.exit(1)}}var We=new E().name("update").description("Update a task.").argument("<taskId>","The id of the task to update.").option("-t, --title <title>","New title.").option("-d, --description <description>","New description.").option("-a, --assignee <assignee>","New assignee.").action(async(s,t)=>On(t,s));import{TaskManager as vn}from"dyson-swarm";async function Rn(s,t){let e=new vn;["open","in-progress","closed"].includes(t)||(console.error("Invalid status. Must be one of: open, in-progress, closed"),process.exit(1));try{let n=await e.changeTaskStatus(s,t);n||(console.error(`Task not found: ${s}`),process.exit(1)),console.log(`Changed status of task ${n.id} to: ${n.status}`),console.log(`Title: ${n.frontmatter.title}`)}catch(n){console.error("Failed to change task status:",n instanceof Error?n.message:n),process.exit(1)}}var je=new E().name("status").description("Change the status of a task.").argument("<taskId>","The id of the task to update.").argument("<status>","The new status (open, in-progress, or closed).").action(async(s,t,e)=>Rn(t,e));import{TaskManager as Un}from"dyson-swarm";async function kn(s,t){let e=new Un;try{let n=await e.assignTask(s,t);n||(console.error(`Task not found: ${s}`),process.exit(1)),console.log(`Assigned task ${n.id} to: ${n.frontmatter.assignee}`),console.log(`Title: ${n.frontmatter.title}`),console.log(`Status: ${n.status}`)}catch(n){console.error("Failed to assign task:",n instanceof Error?n.message:n),process.exit(1)}}var Pe=new E().name("assign").description("Assign a task to someone.").argument("<taskId>","The id of the task to add an assignee to.").argument("<assignee>","The assignee to assign the task to.").action(async(s,t,e)=>kn(t,e));import{TaskManager as $n}from"dyson-swarm";async function Fn(s){let t=new $n;try{let e=await t.unassignTask(s);e||(console.error(`Task not found: ${s}`),process.exit(1)),console.log(`Unassigned task: ${e.id}`),console.log(`Title: ${e.frontmatter.title}`),console.log(`Status: ${e.status}`)}catch(e){console.error("Failed to unassign task:",e instanceof Error?e.message:e),process.exit(1)}}var He=new E().name("unassign").description("Unassign a task.").argument("<taskId>","The id of the task to unassign.").action(async(s,t)=>Fn(t));import{TaskManager as Dn}from"dyson-swarm";async function Tn(s,t){let e=new Dn;t.force||(console.log(`Are you sure you want to delete task ${s}?`),console.log("Use --force to skip this confirmation."),process.exit(1));try{await e.deleteTask(s)||(console.error(`Task not found: ${s}`),process.exit(1)),console.log(`Deleted task: ${s}`)}catch(n){console.error("Failed to delete task:",n instanceof Error?n.message:n),process.exit(1)}}var Ne=new E().name("delete").description("Delete a task.").argument("<taskId>","The id of the task to delete.").option("-f, --force","Force deletion without confirmation.").action(async(s,t)=>Tn(t,s));await new E().help(Mn()).name("swarm").description("A markdown-based issue tracking system CLI").version("1.0.0").action(function(){this.showHelp()}).command("create",Se).command("list",qe).command("get",Ge).command("update",We).command("status",je).command("assign",Pe).command("unassign",He).command("delete",Ne).parse();
|
|
31
30
|
//# sourceMappingURL=index.js.map
|