@fnmoa/cli 0.2.4 → 0.3.0
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/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/login.js
CHANGED
|
@@ -2,9 +2,13 @@ import { createInterface } from 'node:readline';
|
|
|
2
2
|
import { DEFAULT_URL, CONFIG_PATH, resolveProfile, currentProfileName, setProfileField, mask, } from '../config.js';
|
|
3
3
|
import { banner, c, die } from '../ui.js';
|
|
4
4
|
const cleanUrl = (u) => u.replace(/\/$/, '');
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
const RULE = '─'.repeat(48);
|
|
6
|
+
/** Ask a question with an optional default (Enter accepts the default). Set
|
|
7
|
+
* `bracket: false` to accept the default on Enter without showing the `[def]`
|
|
8
|
+
* hint inline (used when the default is already shown on its own line). */
|
|
9
|
+
function ask(rl, query, def, opts = {}) {
|
|
10
|
+
const showBracket = opts.bracket ?? true;
|
|
11
|
+
const prompt = def && showBracket ? `${query} ${c.dim(`[${def}]`)} ` : `${query} `;
|
|
8
12
|
return new Promise((resolve) => rl.question(prompt, (a) => resolve(a.trim() || def || '')));
|
|
9
13
|
}
|
|
10
14
|
/** Ask for a secret without echoing keystrokes to the terminal. */
|
|
@@ -17,7 +21,8 @@ function askSecret(rl, query) {
|
|
|
17
21
|
resolve(a.trim());
|
|
18
22
|
}));
|
|
19
23
|
}
|
|
20
|
-
/** Probe the server with the key — returns
|
|
24
|
+
/** Probe the server with the key — returns `{ error }` (null on success) plus the
|
|
25
|
+
* operator's GitHub login when reachable, so login can confirm *who* the key acts as.
|
|
21
26
|
* Lenient by design: only a definitive 401/403 means a bad key, and a network
|
|
22
27
|
* failure/timeout means unreachable. Any other HTTP status (the public URL is a
|
|
23
28
|
* control-plane proxy whose exact routes vary) counts as "reached, key accepted".
|
|
@@ -30,13 +35,21 @@ async function verify(url, key) {
|
|
|
30
35
|
signal: AbortSignal.timeout(6000),
|
|
31
36
|
});
|
|
32
37
|
if (res.status === 401 || res.status === 403)
|
|
33
|
-
return 'key rejected';
|
|
34
|
-
|
|
38
|
+
return { error: 'key rejected' };
|
|
39
|
+
let login;
|
|
40
|
+
try {
|
|
41
|
+
const body = (await res.json());
|
|
42
|
+
login = body?.github?.login;
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
/* non-JSON body from a proxy is fine — still "reached" */
|
|
46
|
+
}
|
|
47
|
+
return { error: null, login };
|
|
35
48
|
}
|
|
36
49
|
catch (e) {
|
|
37
50
|
if (e instanceof Error && e.name === 'TimeoutError')
|
|
38
|
-
return 'no response (timed out)';
|
|
39
|
-
return e instanceof Error ? e.message : String(e);
|
|
51
|
+
return { error: 'no response (timed out)' };
|
|
52
|
+
return { error: e instanceof Error ? e.message : String(e) };
|
|
40
53
|
}
|
|
41
54
|
}
|
|
42
55
|
export async function runLogin(_a) {
|
|
@@ -46,7 +59,19 @@ export async function runLogin(_a) {
|
|
|
46
59
|
}
|
|
47
60
|
const current = resolveProfile();
|
|
48
61
|
const name = currentProfileName();
|
|
49
|
-
|
|
62
|
+
const existing = current.apiKey;
|
|
63
|
+
const reconfigure = !!existing;
|
|
64
|
+
// Header + rule. Reconfiguring an existing profile shows its name so it's clear
|
|
65
|
+
// which profile this edits (multi-operator / multi-org setups have several).
|
|
66
|
+
console.log(` ${c.bold('connect the moa CLI')}${reconfigure ? c.dim(` · profile "${name}"`) : ''}`);
|
|
67
|
+
console.log(` ${c.dim(RULE)}\n`);
|
|
68
|
+
// Already configured → show what's set so the user knows what Enter will keep.
|
|
69
|
+
if (reconfigure) {
|
|
70
|
+
console.log(` ${c.dim('already connected:')}`);
|
|
71
|
+
console.log(` url ${c.cyan(current.apiUrl)}`);
|
|
72
|
+
console.log(` key ${mask(existing)} ${c.dim('(saved)')}`);
|
|
73
|
+
console.log(`\n ${c.dim('Press Enter to keep each, or type a new value.')}\n`);
|
|
74
|
+
}
|
|
50
75
|
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
51
76
|
// Honor muting so secret entry doesn't echo to the terminal.
|
|
52
77
|
rl._writeToOutput = (s) => {
|
|
@@ -56,20 +81,28 @@ export async function runLogin(_a) {
|
|
|
56
81
|
let url;
|
|
57
82
|
let key;
|
|
58
83
|
try {
|
|
59
|
-
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
key
|
|
84
|
+
// Step 1 — Workspace URL. Default shown on its own line; Enter accepts it.
|
|
85
|
+
const urlDefault = current.apiUrl || DEFAULT_URL;
|
|
86
|
+
console.log(` ${c.bold('Step 1/2')} ${c.dim('·')} Workspace URL`);
|
|
87
|
+
console.log(` ${c.dim('default ▸')} ${c.cyan(urlDefault)} ${c.dim('(press Enter to accept)')}`);
|
|
88
|
+
url = cleanUrl(await ask(rl, ' url ▸', urlDefault, { bracket: false }));
|
|
89
|
+
// Step 2 — API key. Tell the user exactly where to get it; mask on entry.
|
|
90
|
+
console.log(`\n ${c.bold('Step 2/2')} ${c.dim('·')} API key`);
|
|
91
|
+
if (reconfigure) {
|
|
92
|
+
console.log(` ${c.dim(`Enter keeps ${mask(existing)}, or paste a new key`)}`);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
console.log(` ${c.dim('get one ▸')} ${c.cyan('app.fnmoa.com')} ${c.dim('▸ Settings ▸ CLI')}`);
|
|
96
|
+
}
|
|
97
|
+
key = (await askSecret(rl, ' key ▸')) || existing || '';
|
|
65
98
|
}
|
|
66
99
|
finally {
|
|
67
100
|
rl.close();
|
|
68
101
|
}
|
|
69
102
|
if (!key)
|
|
70
|
-
die('no API key provided — grab one from
|
|
103
|
+
die('no API key provided — grab one from app.fnmoa.com ▸ Settings ▸ CLI, then run `moa login` again.');
|
|
71
104
|
process.stdout.write(`\n ${c.dim('verifying…')}`);
|
|
72
|
-
const err = await verify(url, key);
|
|
105
|
+
const { error: err, login } = await verify(url, key);
|
|
73
106
|
process.stdout.write('\r\x1b[K'); // clear the "verifying…" line
|
|
74
107
|
setProfileField(name, 'apiUrl', url);
|
|
75
108
|
setProfileField(name, 'apiKey', key);
|
|
@@ -77,10 +110,11 @@ export async function runLogin(_a) {
|
|
|
77
110
|
console.log(` ${c.yellow('⚠')} couldn't verify ${c.dim(`(${err})`)} — saved anyway; check the URL/key.`);
|
|
78
111
|
}
|
|
79
112
|
else {
|
|
80
|
-
|
|
113
|
+
const who = login ? ` ${c.dim('as')} ${c.cyan('@' + login)}` : '';
|
|
114
|
+
console.log(` ${c.green('✓')} connected${who} ${c.dim('▸')} ${c.cyan(url)}`);
|
|
81
115
|
}
|
|
82
|
-
console.log(` ${c.green('✓')} saved
|
|
83
|
-
console.log(`
|
|
116
|
+
console.log(` ${c.green('✓')} saved ${c.dim('▸')} profile ${c.bold(name)} ${c.dim(`(${CONFIG_PATH})`)}\n`);
|
|
117
|
+
console.log(` ${c.dim('next ▸')} ${c.cyan('moa status')} ${c.dim('·')} ${c.cyan('moa wf pending')} ${c.dim('·')} ${c.cyan('moa whoami')}\n`);
|
|
84
118
|
}
|
|
85
119
|
export const loginCmd = {
|
|
86
120
|
name: 'login',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkB,MAAM,eAAe,CAAC;AAChE,OAAO,EACL,WAAW,EACX,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,IAAI,GACL,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAI1C,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/repos.js
CHANGED
|
@@ -9,11 +9,15 @@ function permBadge(p) {
|
|
|
9
9
|
return c.yellow('read');
|
|
10
10
|
return c.dim('none');
|
|
11
11
|
}
|
|
12
|
-
/**
|
|
12
|
+
/** Turn a write-path API error into a clean `die()` message: an actionable hint
|
|
13
|
+
* for the 403 write-gate, else the server's message (e.g. a 400 for a malformed
|
|
14
|
+
* `owner/name`). Non-API errors re-throw to the global handler. */
|
|
13
15
|
function explain(e) {
|
|
14
|
-
if (e instanceof ApiError
|
|
15
|
-
|
|
16
|
-
'
|
|
16
|
+
if (e instanceof ApiError) {
|
|
17
|
+
if (e.status === 403)
|
|
18
|
+
die('only an org owner/admin can change the repo allowlist — ' +
|
|
19
|
+
'ask an admin, or add it in the dashboard (Settings → Repositories).');
|
|
20
|
+
die(e.message);
|
|
17
21
|
}
|
|
18
22
|
throw e;
|
|
19
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repos.js","sourceRoot":"","sources":["../../src/commands/repos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAa,MAAM,YAAY,CAAC;AAGhD,yEAAyE;AACzE,SAAS,SAAS,CAAC,CAAS;IAC1B,IAAI,CAAC,KAAK,OAAO;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"repos.js","sourceRoot":"","sources":["../../src/commands/repos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAa,MAAM,YAAY,CAAC;AAGhD,yEAAyE;AACzE,SAAS,SAAS,CAAC,CAAS;IAC1B,IAAI,CAAC,KAAK,OAAO;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC;AAED;;oEAEoE;AACpE,SAAS,OAAO,CAAC,CAAU;IACzB,IAAI,CAAC,YAAY,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG;YAClB,GAAG,CACD,0DAA0D;gBACxD,qEAAqE,CACxE,CAAC;QACJ,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IACD,MAAM,CAAC,CAAC;AACV,CAAC;AAED,KAAK,UAAU,IAAI,CAAC,CAAO;IACzB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;IACpC,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3E,IAAI,CAAC,KAAK,CAAC,MAAM;QACf,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,8EAA8E,CAAC,CAAC,CAAC;IAC5G,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAY;IAC9B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,gFAAgF;IACzF,KAAK,EAAE,oDAAoD;IAC3D,IAAI,EAAE;QACJ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,yBAAyB,EAAE;QACnD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,EAAE;QACjD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,kCAAkC,EAAE;KAC7D;IACD,QAAQ,EAAE,CAAC,UAAU,EAAE,8BAA8B,EAAE,6BAA6B,CAAC;IACrF,WAAW,EAAE;QACX,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,0DAA0D,EAAE,KAAK,EAAE,wBAAwB,EAAE;QAC1I,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,4CAA4C,EAAE,KAAK,EAAE,2BAA2B,EAAE;QAChI,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,iDAAiD,EAAE,KAAK,EAAE,0BAA0B,EAAE;KACpI;IACD,KAAK,CAAC,GAAG,CAAC,CAAO;QACf,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QAChC,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;QAEpC,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,IAAI;gBAAE,GAAG,CAAC,mBAAmB,MAAM,eAAe,CAAC,CAAC;YACzD,IAAI,CAAC;gBACH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC1F,MAAM,IAAI,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,QAAQ,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;YACpI,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,CAAC,CAAC,CAAC;YACb,CAAC;YACD,OAAO;QACT,CAAC;QAED,GAAG,CAAC,2DAA2D,CAAC,CAAC;IACnE,CAAC;CACF,CAAC"}
|
package/dist/commands/tasks.js
CHANGED
|
@@ -4,6 +4,17 @@ import { flagStr, flagNum, hasFlag } from '../args.js';
|
|
|
4
4
|
import { pollRetry, sleep } from '../poll.js';
|
|
5
5
|
const short = (t) => `${c.dim(t.id.slice(0, 8))} ${statusColor(t.status.padEnd(9))} ${c.dim(relTime(t.createdAt).padEnd(7))} ${t.prompt.replace(/\n/g, ' ').slice(0, 70)}`;
|
|
6
6
|
const fmtActivity = (e) => e.kind === 'tool' ? `${e.tool ?? 'tool'}${e.text ? `: ${e.text}` : ''}` : (e.text ?? e.kind);
|
|
7
|
+
const fmtBytes = (n) => n >= 1024 * 1024 ? `${(n / 1024 / 1024).toFixed(1)} MB` : n >= 1024 ? `${Math.round(n / 1024)} KB` : `${n} B`;
|
|
8
|
+
/** Print the task's uploaded files with their (expiring) download links. */
|
|
9
|
+
function printArtifacts(t) {
|
|
10
|
+
if (!t.artifacts?.length)
|
|
11
|
+
return;
|
|
12
|
+
console.log(c.bold('\nartifacts:'));
|
|
13
|
+
for (const a of t.artifacts) {
|
|
14
|
+
console.log(` ${a.name} ${c.dim(`(${fmtBytes(a.sizeBytes)})`)}`);
|
|
15
|
+
console.log(` ${c.dim(a.url)}`);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
7
18
|
/** Resolve a unique task-id prefix against the task list. */
|
|
8
19
|
async function resolveTaskId(idOrPrefix) {
|
|
9
20
|
const matches = (await api.tasks()).filter((t) => t.id.startsWith(idOrPrefix));
|
|
@@ -28,6 +39,7 @@ async function waitTask(id) {
|
|
|
28
39
|
console.log('\n' + cur.result);
|
|
29
40
|
if (cur.error)
|
|
30
41
|
console.log(c.red('\n' + cur.error));
|
|
42
|
+
printArtifacts(cur);
|
|
31
43
|
if (cur.status !== 'succeeded')
|
|
32
44
|
process.exitCode = 1;
|
|
33
45
|
return;
|
|
@@ -56,6 +68,7 @@ async function watchTask(id) {
|
|
|
56
68
|
console.log('\n' + cur.result);
|
|
57
69
|
if (cur.error)
|
|
58
70
|
console.log(c.red('\n' + cur.error));
|
|
71
|
+
printArtifacts(cur);
|
|
59
72
|
if (cur.status !== 'succeeded')
|
|
60
73
|
process.exitCode = 1;
|
|
61
74
|
return;
|
|
@@ -110,17 +123,19 @@ export const taskCmd = {
|
|
|
110
123
|
console.log(c.bold('\nresult:') + '\n' + t.result);
|
|
111
124
|
if (t.error)
|
|
112
125
|
console.log(c.red('\nerror:') + '\n' + t.error);
|
|
126
|
+
printArtifacts(t);
|
|
113
127
|
},
|
|
114
128
|
};
|
|
115
129
|
export const runCmd = {
|
|
116
130
|
name: 'run',
|
|
117
131
|
group: 'tasks',
|
|
118
132
|
summary: 'Enqueue a coding task for the agent.',
|
|
119
|
-
usage: 'moa run "<prompt>" [--dir D] [--mode M] [--watch | --wait]',
|
|
133
|
+
usage: 'moa run "<prompt>" [--dir D] [--mode M] [--model M] [--watch | --wait]',
|
|
120
134
|
args: [
|
|
121
135
|
{ name: 'prompt', required: true, desc: 'the instruction for the agent' },
|
|
122
136
|
{ name: '--dir', desc: 'working directory (defaults to the server workspace)' },
|
|
123
137
|
{ name: '--mode', desc: 'agent pipeline mode: scout (default) | oracle | architect | striker' },
|
|
138
|
+
{ name: '--model', desc: 'model alias or id (e.g. opus, sonnet, claude-haiku-4-5); default = the server CLI’s model' },
|
|
124
139
|
{ name: '--watch', desc: 'stream activity until the task finishes' },
|
|
125
140
|
{ name: '--wait', desc: 'block (server-side long-poll) until the task settles, then print the result' },
|
|
126
141
|
],
|
|
@@ -134,7 +149,7 @@ export const runCmd = {
|
|
|
134
149
|
if (mode && !['scout', 'oracle', 'architect', 'striker'].includes(mode)) {
|
|
135
150
|
die('--mode must be one of: scout, oracle, architect, striker');
|
|
136
151
|
}
|
|
137
|
-
const t = await api.run({ task: prompt, dir: flagStr(a, 'dir'), mode });
|
|
152
|
+
const t = await api.run({ task: prompt, dir: flagStr(a, 'dir'), mode, model: flagStr(a, 'model') });
|
|
138
153
|
console.log(c.green(`queued task ${t.id}`));
|
|
139
154
|
if (hasFlag(a, 'wait'))
|
|
140
155
|
await waitTask(t.id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../src/commands/tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAqC,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAa,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAG9C,MAAM,KAAK,GAAG,CAAC,CAAO,EAAE,EAAE,CACxB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AAE3J,MAAM,WAAW,GAAG,CAAC,CAAoB,EAAE,EAAE,CAC3C,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,6DAA6D;AAC7D,KAAK,UAAU,aAAa,CAAC,UAAkB;IAC7C,MAAM,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QACpB,GAAG,CAAC,sBAAsB,UAAU,eAAe,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxG,OAAO,UAAU,CAAC,CAAC,0DAA0D;AAC/E,CAAC;AAED,iFAAiF;AACjF,MAAM,WAAW,GAAG,MAAM,CAAC;AAE3B;;6EAE6E;AAC7E,KAAK,UAAU,QAAQ,CAAC,EAAU;IAChC,SAAS,CAAC;QACR,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;YAC5C,IAAI,GAAG,CAAC,MAAM;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,GAAG,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACpD,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW;gBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QACD,6EAA6E;QAC7E,8EAA8E;QAC9E,mDAAmD;QACnD,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED;yDACyD;AACzD,KAAK,UAAU,SAAS,CAAC,EAAU;IACjC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,SAAS,CAAC;QACR,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;QAChC,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM;YAAE,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,+BAA+B;QAC3E,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjF,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;QACnB,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YACrC,IAAI,GAAG,CAAC,MAAM;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,GAAG,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACpD,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW;gBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QACD,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAY;IAC/B,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,4BAA4B;IACrC,KAAK,EAAE,gCAAgC;IACvC,IAAI,EAAE;QACJ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,gCAAgC,EAAE;QAC3D,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,oCAAoC,EAAE;KAC/D;IACD,KAAK,CAAC,GAAG,CAAC,CAAO;QACf,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,EAAE,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QACtD,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAY;IAC9B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,sDAAsD;IAC/D,KAAK,EAAE,2CAA2C;IAClD,IAAI,EAAE;QACJ,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,iCAAiC,EAAE;QACvE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,yCAAyC,EAAE;QACpE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,6EAA6E,EAAE;QACvG,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,oCAAoC,EAAE;KAC/D;IACD,KAAK,CAAC,GAAG,CAAC,CAAO;QACf,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChF,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC;YAAE,OAAO,SAAS,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC;YAAE,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9I,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,CAAC,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../src/commands/tasks.ts"],"names":[],"mappings":"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"}
|