@doist/twist-cli 2.23.0 → 2.23.2
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/CHANGELOG.md +12 -0
- package/dist/commands/auth/status.d.ts.map +1 -1
- package/dist/commands/auth/status.js +28 -24
- package/dist/commands/auth/status.js.map +1 -1
- package/dist/commands/auth/token.d.ts.map +1 -1
- package/dist/commands/auth/token.js +6 -3
- package/dist/commands/auth/token.js.map +1 -1
- package/dist/commands/away/helpers.d.ts.map +1 -1
- package/dist/commands/away/helpers.js +2 -4
- package/dist/commands/away/helpers.js.map +1 -1
- package/dist/commands/away/index.d.ts.map +1 -1
- package/dist/commands/away/index.js +13 -0
- package/dist/commands/away/index.js.map +1 -1
- package/dist/commands/away/set.d.ts.map +1 -1
- package/dist/commands/away/set.js +2 -2
- package/dist/commands/away/set.js.map +1 -1
- package/dist/commands/changelog.d.ts.map +1 -1
- package/dist/commands/changelog.js +3 -6
- package/dist/commands/changelog.js.map +1 -1
- package/dist/commands/channel.d.ts.map +1 -1
- package/dist/commands/channel.js +8 -2
- package/dist/commands/channel.js.map +1 -1
- package/dist/commands/comment/index.d.ts.map +1 -1
- package/dist/commands/comment/index.js +13 -0
- package/dist/commands/comment/index.js.map +1 -1
- package/dist/commands/comment/update.d.ts.map +1 -1
- package/dist/commands/comment/update.js +2 -2
- package/dist/commands/comment/update.js.map +1 -1
- package/dist/commands/completion/install.d.ts.map +1 -1
- package/dist/commands/completion/install.js +2 -3
- package/dist/commands/completion/install.js.map +1 -1
- package/dist/commands/conversation/helpers.d.ts.map +1 -1
- package/dist/commands/conversation/helpers.js +4 -3
- package/dist/commands/conversation/helpers.js.map +1 -1
- package/dist/commands/conversation/index.d.ts.map +1 -1
- package/dist/commands/conversation/index.js +30 -0
- package/dist/commands/conversation/index.js.map +1 -1
- package/dist/commands/conversation/reply.d.ts.map +1 -1
- package/dist/commands/conversation/reply.js +2 -2
- package/dist/commands/conversation/reply.js.map +1 -1
- package/dist/commands/conversation/unread.d.ts.map +1 -1
- package/dist/commands/conversation/unread.js +4 -2
- package/dist/commands/conversation/unread.js.map +1 -1
- package/dist/commands/conversation/with.d.ts.map +1 -1
- package/dist/commands/conversation/with.js +36 -41
- package/dist/commands/conversation/with.js.map +1 -1
- package/dist/commands/inbox.d.ts.map +1 -1
- package/dist/commands/inbox.js +11 -3
- package/dist/commands/inbox.js.map +1 -1
- package/dist/commands/msg/index.d.ts.map +1 -1
- package/dist/commands/msg/index.js +13 -0
- package/dist/commands/msg/index.js.map +1 -1
- package/dist/commands/msg/update.d.ts.map +1 -1
- package/dist/commands/msg/update.js +2 -2
- package/dist/commands/msg/update.js.map +1 -1
- package/dist/commands/react.d.ts.map +1 -1
- package/dist/commands/react.js +12 -4
- package/dist/commands/react.js.map +1 -1
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +23 -31
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/skill/install.d.ts.map +1 -1
- package/dist/commands/skill/install.js +8 -13
- package/dist/commands/skill/install.js.map +1 -1
- package/dist/commands/skill/uninstall.d.ts.map +1 -1
- package/dist/commands/skill/uninstall.js +7 -11
- package/dist/commands/skill/uninstall.js.map +1 -1
- package/dist/commands/skill/update.d.ts.map +1 -1
- package/dist/commands/skill/update.js +9 -14
- package/dist/commands/skill/update.js.map +1 -1
- package/dist/commands/thread/create.d.ts.map +1 -1
- package/dist/commands/thread/create.js +2 -2
- package/dist/commands/thread/create.js.map +1 -1
- package/dist/commands/thread/delete.d.ts.map +1 -1
- package/dist/commands/thread/delete.js +3 -6
- package/dist/commands/thread/delete.js.map +1 -1
- package/dist/commands/thread/helpers.d.ts.map +1 -1
- package/dist/commands/thread/helpers.js +2 -1
- package/dist/commands/thread/helpers.js.map +1 -1
- package/dist/commands/thread/index.d.ts.map +1 -1
- package/dist/commands/thread/index.js +32 -0
- package/dist/commands/thread/index.js.map +1 -1
- package/dist/commands/thread/mute.d.ts.map +1 -1
- package/dist/commands/thread/mute.js +2 -2
- package/dist/commands/thread/mute.js.map +1 -1
- package/dist/commands/thread/reply.d.ts.map +1 -1
- package/dist/commands/thread/reply.js +3 -4
- package/dist/commands/thread/reply.js.map +1 -1
- package/dist/commands/update/action.d.ts.map +1 -1
- package/dist/commands/update/action.js +13 -20
- package/dist/commands/update/action.js.map +1 -1
- package/dist/commands/update/switch.d.ts.map +1 -1
- package/dist/commands/update/switch.js +3 -6
- package/dist/commands/update/switch.js.map +1 -1
- package/dist/commands/user.d.ts.map +1 -1
- package/dist/commands/user.js +13 -2
- package/dist/commands/user.js.map +1 -1
- package/dist/commands/view.d.ts.map +1 -1
- package/dist/commands/view.js +3 -2
- package/dist/commands/view.js.map +1 -1
- package/dist/commands/workspace.d.ts.map +1 -1
- package/dist/commands/workspace.js +8 -0
- package/dist/commands/workspace.js.map +1 -1
- package/dist/index.js +21 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +3 -2
- package/dist/lib/api.js.map +1 -1
- package/dist/lib/auth.d.ts +4 -0
- package/dist/lib/auth.d.ts.map +1 -1
- package/dist/lib/auth.js +10 -3
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/errors.d.ts +14 -0
- package/dist/lib/errors.d.ts.map +1 -0
- package/dist/lib/errors.js +13 -0
- package/dist/lib/errors.js.map +1 -0
- package/dist/lib/global-args.d.ts +38 -0
- package/dist/lib/global-args.d.ts.map +1 -0
- package/dist/lib/global-args.js +100 -0
- package/dist/lib/global-args.js.map +1 -0
- package/dist/lib/input.d.ts.map +1 -1
- package/dist/lib/input.js +37 -9
- package/dist/lib/input.js.map +1 -1
- package/dist/lib/oauth.d.ts.map +1 -1
- package/dist/lib/oauth.js +14 -9
- package/dist/lib/oauth.js.map +1 -1
- package/dist/lib/output.d.ts +4 -1
- package/dist/lib/output.d.ts.map +1 -1
- package/dist/lib/output.js +23 -5
- package/dist/lib/output.js.map +1 -1
- package/dist/lib/permissions.d.ts.map +1 -1
- package/dist/lib/permissions.js +2 -1
- package/dist/lib/permissions.js.map +1 -1
- package/dist/lib/progress.d.ts.map +1 -1
- package/dist/lib/progress.js +3 -18
- package/dist/lib/progress.js.map +1 -1
- package/dist/lib/public-channels.d.ts +0 -1
- package/dist/lib/public-channels.d.ts.map +1 -1
- package/dist/lib/public-channels.js +5 -8
- package/dist/lib/public-channels.js.map +1 -1
- package/dist/lib/refs.d.ts.map +1 -1
- package/dist/lib/refs.js +15 -18
- package/dist/lib/refs.js.map +1 -1
- package/dist/lib/search-api.d.ts.map +1 -1
- package/dist/lib/search-api.js +2 -1
- package/dist/lib/search-api.js.map +1 -1
- package/dist/lib/skills/content.d.ts +1 -1
- package/dist/lib/skills/content.d.ts.map +1 -1
- package/dist/lib/skills/content.js +3 -1
- package/dist/lib/skills/content.js.map +1 -1
- package/dist/lib/skills/create-installer.d.ts.map +1 -1
- package/dist/lib/skills/create-installer.js +5 -4
- package/dist/lib/skills/create-installer.js.map +1 -1
- package/dist/lib/spinner.d.ts.map +1 -1
- package/dist/lib/spinner.js +1 -16
- package/dist/lib/spinner.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE/D,wBAAsB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAavF"}
|
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
+
import { CliError } from '../../lib/errors.js';
|
|
2
3
|
import { getInstaller } from '../../lib/skills/index.js';
|
|
3
4
|
export async function install(agentName, options) {
|
|
4
5
|
const installer = getInstaller(agentName);
|
|
5
6
|
if (!installer) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
try {
|
|
11
|
-
await installer.install(options);
|
|
12
|
-
const location = options.local ? 'locally' : 'globally';
|
|
13
|
-
console.log(chalk.green('✓'), `Installed ${agentName} ${location}`);
|
|
14
|
-
console.log(chalk.dim(` ${installer.getInstallPath(options)}`));
|
|
15
|
-
}
|
|
16
|
-
catch (err) {
|
|
17
|
-
console.error(err.message);
|
|
18
|
-
process.exit(1);
|
|
7
|
+
throw new CliError('UNKNOWN_AGENT', `Unknown agent: ${agentName}`, [
|
|
8
|
+
'Run `tw skill list` to see available agents',
|
|
9
|
+
]);
|
|
19
10
|
}
|
|
11
|
+
await installer.install(options);
|
|
12
|
+
const location = options.local ? 'locally' : 'globally';
|
|
13
|
+
console.log(chalk.green('✓'), `Installed ${agentName} ${location}`);
|
|
14
|
+
console.log(chalk.dim(` ${installer.getInstallPath(options)}`));
|
|
20
15
|
}
|
|
21
16
|
//# sourceMappingURL=install.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAGxD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,SAAiB,EAAE,OAAuB;IACpE,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAGxD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,SAAiB,EAAE,OAAuB;IACpE,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,eAAe,EAAE,kBAAkB,SAAS,EAAE,EAAE;YAC/D,6CAA6C;SAChD,CAAC,CAAA;IACN,CAAC;IAED,MAAM,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;IACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,aAAa,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAA;IACnE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;AACpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAEjE,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAY3F"}
|
|
@@ -1,19 +1,15 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
+
import { CliError } from '../../lib/errors.js';
|
|
2
3
|
import { getInstaller } from '../../lib/skills/index.js';
|
|
3
4
|
export async function uninstall(agentName, options) {
|
|
4
5
|
const installer = getInstaller(agentName);
|
|
5
6
|
if (!installer) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
try {
|
|
10
|
-
await installer.uninstall(options);
|
|
11
|
-
const location = options.local ? 'locally' : 'globally';
|
|
12
|
-
console.log(chalk.green('✓'), `Uninstalled ${agentName} ${location}`);
|
|
13
|
-
}
|
|
14
|
-
catch (err) {
|
|
15
|
-
console.error(err.message);
|
|
16
|
-
process.exit(1);
|
|
7
|
+
throw new CliError('UNKNOWN_AGENT', `Unknown agent: ${agentName}`, [
|
|
8
|
+
'Run `tw skill list` to see available agents',
|
|
9
|
+
]);
|
|
17
10
|
}
|
|
11
|
+
await installer.uninstall(options);
|
|
12
|
+
const location = options.local ? 'locally' : 'globally';
|
|
13
|
+
console.log(chalk.green('✓'), `Uninstalled ${agentName} ${location}`);
|
|
18
14
|
}
|
|
19
15
|
//# sourceMappingURL=uninstall.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAGxD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,SAAiB,EAAE,OAAyB;IACxE,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAGxD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,SAAiB,EAAE,OAAyB;IACxE,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,eAAe,EAAE,kBAAkB,SAAS,EAAE,EAAE;YAC/D,6CAA6C;SAChD,CAAC,CAAA;IACN,CAAC;IAED,MAAM,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;IAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;IACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,eAAe,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAA;AACzE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/update.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAG9D,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAqC1F"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
+
import { CliError } from '../../lib/errors.js';
|
|
2
3
|
import { getInstaller } from '../../lib/skills/index.js';
|
|
3
4
|
import { updateAllInstalledSkills } from '../../lib/skills/update-installed.js';
|
|
4
5
|
export async function updateSkill(agentName, options) {
|
|
@@ -18,25 +19,19 @@ export async function updateSkill(agentName, options) {
|
|
|
18
19
|
console.log('No skills are currently installed.');
|
|
19
20
|
}
|
|
20
21
|
if (result.errors.length > 0) {
|
|
21
|
-
process.
|
|
22
|
+
process.exitCode = 1;
|
|
22
23
|
}
|
|
23
24
|
return;
|
|
24
25
|
}
|
|
25
26
|
const installer = getInstaller(agentName);
|
|
26
27
|
if (!installer) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
try {
|
|
32
|
-
await installer.update(options);
|
|
33
|
-
const location = options.local ? 'locally' : 'globally';
|
|
34
|
-
console.log(chalk.green('✓'), `Updated ${agentName} ${location}`);
|
|
35
|
-
console.log(chalk.dim(` ${installer.getInstallPath(options)}`));
|
|
36
|
-
}
|
|
37
|
-
catch (err) {
|
|
38
|
-
console.error(err.message);
|
|
39
|
-
process.exit(1);
|
|
28
|
+
throw new CliError('UNKNOWN_AGENT', `Unknown agent: ${agentName}`, [
|
|
29
|
+
'Run `tw skill list` to see available agents',
|
|
30
|
+
]);
|
|
40
31
|
}
|
|
32
|
+
await installer.update(options);
|
|
33
|
+
const location = options.local ? 'locally' : 'globally';
|
|
34
|
+
console.log(chalk.green('✓'), `Updated ${agentName} ${location}`);
|
|
35
|
+
console.log(chalk.dim(` ${installer.getInstallPath(options)}`));
|
|
41
36
|
}
|
|
42
37
|
//# sourceMappingURL=update.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/skill/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAE/E,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,SAAiB,EAAE,OAAsB;IACvE,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAA;QACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;QAEvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,IAAI,IAAI,QAAQ,EAAE,CAAC,CAAA;QAChE,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,IAAI,kBAAkB,CAAC,CAAC,CAAA;QAC/D,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;QACtC,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAA;QACrD,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/skill/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAE/E,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,SAAiB,EAAE,OAAsB;IACvE,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAA;QACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;QAEvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,IAAI,IAAI,QAAQ,EAAE,CAAC,CAAA;QAChE,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,IAAI,kBAAkB,CAAC,CAAC,CAAA;QAC/D,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;QACtC,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAA;QACrD,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;QACxB,CAAC;QACD,OAAM;IACV,CAAC;IAED,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,eAAe,EAAE,kBAAkB,SAAS,EAAE,EAAE;YAC/D,6CAA6C;SAChD,CAAC,CAAA;IACN,CAAC;IAED,MAAM,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAA;IACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAA;IACjE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;AACpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/create.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/create.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAK3D,KAAK,aAAa,GAAG,eAAe,GAAG;IACnC,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAsB,YAAY,CAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,aAAa,GACvB,OAAO,CAAC,IAAI,CAAC,CA8Cf"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getTwistClient } from '../../lib/api.js';
|
|
2
|
+
import { CliError } from '../../lib/errors.js';
|
|
2
3
|
import { openEditor, readStdin } from '../../lib/input.js';
|
|
3
4
|
import { formatJson } from '../../lib/output.js';
|
|
4
5
|
import { assertChannelIsPublic } from '../../lib/public-channels.js';
|
|
@@ -13,8 +14,7 @@ export async function createThread(channelRef, title, content, options) {
|
|
|
13
14
|
threadContent = await openEditor();
|
|
14
15
|
}
|
|
15
16
|
if (!threadContent || threadContent.trim() === '') {
|
|
16
|
-
|
|
17
|
-
process.exit(1);
|
|
17
|
+
throw new CliError('MISSING_CONTENT', 'No content provided. Pass content as an argument or pipe via stdin.');
|
|
18
18
|
}
|
|
19
19
|
const recipients = options.notify ? parseUserIdRefs(options.notify) : undefined;
|
|
20
20
|
if (options.dryRun) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/thread/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAMrE,MAAM,CAAC,KAAK,UAAU,YAAY,CAC9B,UAAkB,EAClB,KAAa,EACb,OAA2B,EAC3B,OAAsB;IAEtB,MAAM,SAAS,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAA;IAE9C,IAAI,aAAa,GAAG,MAAM,SAAS,EAAE,CAAA;IACrC,IAAI,CAAC,aAAa,IAAI,OAAO,EAAE,CAAC;QAC5B,aAAa,GAAG,OAAO,CAAA;IAC3B,CAAC;IACD,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,aAAa,GAAG,MAAM,UAAU,EAAE,CAAA;IACtC,CAAC;IACD,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAChD,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/thread/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAMrE,MAAM,CAAC,KAAK,UAAU,YAAY,CAC9B,UAAkB,EAClB,KAAa,EACb,OAA2B,EAC3B,OAAsB;IAEtB,MAAM,SAAS,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAA;IAE9C,IAAI,aAAa,GAAG,MAAM,SAAS,EAAE,CAAA;IACrC,IAAI,CAAC,aAAa,IAAI,OAAO,EAAE,CAAC;QAC5B,aAAa,GAAG,OAAO,CAAA;IAC3B,CAAC;IACD,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,aAAa,GAAG,MAAM,UAAU,EAAE,CAAA;IACtC,CAAC;IACD,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAChD,MAAM,IAAI,QAAQ,CACd,iBAAiB,EACjB,qEAAqE,CACxE,CAAA;IACL,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE/E,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,SAAS,CAAC,CAAA;QACjE,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,EAAE,CAAC,CAAA;QAC9B,IAAI,UAAU,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACnD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAC1B,OAAM;IACV,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAA;IACrC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IAC3D,MAAM,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;QAC7C,SAAS;QACT,KAAK;QACL,OAAO,EAAE,aAAa;QACtB,UAAU;KACb,CAAC,CAAA;IAEF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QACvD,OAAM;IACV,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;AAChD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/delete.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/delete.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAK3D,KAAK,aAAa,GAAG,eAAe,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAExD,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA2CrF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { assertBatchData, getTwistClient } from '../../lib/api.js';
|
|
2
|
+
import { CliError } from '../../lib/errors.js';
|
|
2
3
|
import { formatJson } from '../../lib/output.js';
|
|
3
4
|
import { assertChannelIsPublic } from '../../lib/public-channels.js';
|
|
4
5
|
import { resolveThreadId } from '../../lib/refs.js';
|
|
@@ -10,9 +11,7 @@ export async function deleteThread(ref, options) {
|
|
|
10
11
|
const user = assertBatchData(userResponse, 'user');
|
|
11
12
|
await assertChannelIsPublic(thread.channelId, thread.workspaceId);
|
|
12
13
|
if (thread.creator !== user.id) {
|
|
13
|
-
|
|
14
|
-
process.exitCode = 1;
|
|
15
|
-
return;
|
|
14
|
+
throw new CliError('NOT_CREATOR', 'You can only delete threads that you created.');
|
|
16
15
|
}
|
|
17
16
|
if (options.dryRun) {
|
|
18
17
|
console.log(`Dry run: would delete thread ${threadId}`);
|
|
@@ -20,9 +19,7 @@ export async function deleteThread(ref, options) {
|
|
|
20
19
|
}
|
|
21
20
|
if (!options.yes) {
|
|
22
21
|
if (options.json) {
|
|
23
|
-
|
|
24
|
-
process.exitCode = 1;
|
|
25
|
-
return;
|
|
22
|
+
throw new CliError('MISSING_YES_FLAG', '--yes is required to execute deletion in --json mode.');
|
|
26
23
|
}
|
|
27
24
|
console.log(`Would delete: ${thread.title}`);
|
|
28
25
|
console.log('Use --yes to confirm.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/thread/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/thread/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAInD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,OAAsB;IAClE,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;IAErC,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAA;IACrC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,GAAG,MAAM,MAAM,CAAC,KAAK,CACrD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACnD,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAC/C,CAAA;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;IACxD,MAAM,IAAI,GAAG,eAAe,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;IAElD,MAAM,qBAAqB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;IAEjE,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,QAAQ,CAAC,aAAa,EAAE,+CAA+C,CAAC,CAAA;IACtF,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAA;QACvD,OAAM;IACV,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACf,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,QAAQ,CACd,kBAAkB,EAClB,uDAAuD,CAC1D,CAAA;QACL,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;QAC5C,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;QACpC,OAAM;IACV,CAAC;IAED,MAAM,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;IAE3C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACxD,OAAM;IACV,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,KAAK,KAAK,QAAQ,YAAY,CAAC,CAAA;AAChE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/helpers.ts"],"names":[],"mappings":"AAMA,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAalD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,IAAI,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,YAAY,CACxB,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,GAAG,EAAE,OAAO,GACb,IAAI,CAMN"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { formatRelativeDate } from '../../lib/dates.js';
|
|
3
|
+
import { isAccessible } from '../../lib/global-args.js';
|
|
3
4
|
import { renderMarkdown } from '../../lib/markdown.js';
|
|
4
|
-
import { colors
|
|
5
|
+
import { colors } from '../../lib/output.js';
|
|
5
6
|
export function printSeparator(label) {
|
|
6
7
|
const totalWidth = 60;
|
|
7
8
|
const labelWithPadding = ` ${label} `;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/thread/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/thread/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAE5C,MAAM,UAAU,cAAc,CAAC,KAAa;IACxC,MAAM,UAAU,GAAG,EAAE,CAAA;IACrB,MAAM,gBAAgB,GAAG,IAAI,KAAK,GAAG,CAAA;IACrC,MAAM,cAAc,GAAG,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAA;IAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAA;IAChD,MAAM,UAAU,GAAG,cAAc,GAAG,SAAS,CAAA;IAC7C,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;IAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAClB,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAC9E,CAAA;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACjB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AACnB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,QAAgB;IACrD,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,CAAA;AAClD,CAAC;AASD,MAAM,UAAU,YAAY,CACxB,OAAoB,EACpB,OAA4B,EAC5B,GAAY;IAEZ,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IACvF,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IACjE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,KAAK,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;IAC1E,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;IACpE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAA;AAS3C,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAA;AAS3C,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwI5D"}
|
|
@@ -21,6 +21,11 @@ export function registerThreadCommand(program) {
|
|
|
21
21
|
.option('--json', 'Output as JSON')
|
|
22
22
|
.option('--ndjson', 'Output as newline-delimited JSON')
|
|
23
23
|
.option('--full', 'Include all fields in JSON output')
|
|
24
|
+
.addHelpText('after', `
|
|
25
|
+
Examples:
|
|
26
|
+
tw thread 12345
|
|
27
|
+
tw thread view 12345 --unread
|
|
28
|
+
tw thread view 12345 --limit 10 --json`)
|
|
24
29
|
.action((ref, options) => {
|
|
25
30
|
if (!ref) {
|
|
26
31
|
thread.help();
|
|
@@ -37,6 +42,11 @@ export function registerThreadCommand(program) {
|
|
|
37
42
|
.option('--dry-run', 'Show what would be posted without posting')
|
|
38
43
|
.option('--json', 'Output posted comment as JSON')
|
|
39
44
|
.option('--full', 'Include all fields in JSON output')
|
|
45
|
+
.addHelpText('after', `
|
|
46
|
+
Examples:
|
|
47
|
+
tw thread reply 12345 "Sounds good!"
|
|
48
|
+
echo "Long reply" | tw thread reply 12345
|
|
49
|
+
tw thread reply 12345 "Done" --close --json`)
|
|
40
50
|
.action(replyToThread);
|
|
41
51
|
thread
|
|
42
52
|
.command('create <channel-ref> <title> [content]')
|
|
@@ -45,12 +55,22 @@ export function registerThreadCommand(program) {
|
|
|
45
55
|
.option('--dry-run', 'Show what would be posted without posting')
|
|
46
56
|
.option('--json', 'Output created thread as JSON')
|
|
47
57
|
.option('--full', 'Include all fields in JSON output')
|
|
58
|
+
.addHelpText('after', `
|
|
59
|
+
Examples:
|
|
60
|
+
tw thread create 12345 "Weekly update" "Here's what happened..."
|
|
61
|
+
echo "Body from stdin" | tw thread create id:12345 "Title"
|
|
62
|
+
tw thread create 12345 "Title" "Body" --notify 67890,11111 --json`)
|
|
48
63
|
.action(createThread);
|
|
49
64
|
thread
|
|
50
65
|
.command('done <thread-ref>')
|
|
51
66
|
.description('Archive a thread (mark as done)')
|
|
52
67
|
.option('--dry-run', 'Show what would happen without executing')
|
|
53
68
|
.option('--json', 'Output result as JSON')
|
|
69
|
+
.addHelpText('after', `
|
|
70
|
+
Examples:
|
|
71
|
+
tw thread done 12345
|
|
72
|
+
tw thread done 12345 --dry-run
|
|
73
|
+
tw thread done 12345 --json`)
|
|
54
74
|
.action(markThreadDone);
|
|
55
75
|
thread
|
|
56
76
|
.command('delete <thread-ref>')
|
|
@@ -58,6 +78,11 @@ export function registerThreadCommand(program) {
|
|
|
58
78
|
.option('--yes', 'Confirm deletion')
|
|
59
79
|
.option('--dry-run', 'Show what would happen without executing')
|
|
60
80
|
.option('--json', 'Output result as JSON')
|
|
81
|
+
.addHelpText('after', `
|
|
82
|
+
Examples:
|
|
83
|
+
tw thread delete 12345 --yes
|
|
84
|
+
tw thread delete 12345 --dry-run
|
|
85
|
+
tw thread delete 12345 --yes --json`)
|
|
61
86
|
.action(deleteThread);
|
|
62
87
|
thread
|
|
63
88
|
.command('mute <thread-ref>')
|
|
@@ -66,6 +91,10 @@ export function registerThreadCommand(program) {
|
|
|
66
91
|
.option('--dry-run', 'Show what would happen without executing')
|
|
67
92
|
.option('--json', 'Output result as JSON')
|
|
68
93
|
.option('--full', 'Include all fields in JSON output')
|
|
94
|
+
.addHelpText('after', `
|
|
95
|
+
Examples:
|
|
96
|
+
tw thread mute 12345
|
|
97
|
+
tw thread mute 12345 --minutes 480`)
|
|
69
98
|
.action(muteThread);
|
|
70
99
|
thread
|
|
71
100
|
.command('unmute <thread-ref>')
|
|
@@ -73,6 +102,9 @@ export function registerThreadCommand(program) {
|
|
|
73
102
|
.option('--dry-run', 'Show what would happen without executing')
|
|
74
103
|
.option('--json', 'Output result as JSON')
|
|
75
104
|
.option('--full', 'Include all fields in JSON output')
|
|
105
|
+
.addHelpText('after', `
|
|
106
|
+
Examples:
|
|
107
|
+
tw thread unmute 12345`)
|
|
76
108
|
.action(unmuteThread);
|
|
77
109
|
}
|
|
78
110
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/thread/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/thread/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mute.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/mute.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mute.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/mute.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAK3D,KAAK,WAAW,GAAG,eAAe,GAAG;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAcD,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBjF;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBvF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getTwistClient } from '../../lib/api.js';
|
|
2
|
+
import { CliError } from '../../lib/errors.js';
|
|
2
3
|
import { formatJson } from '../../lib/output.js';
|
|
3
4
|
import { assertChannelIsPublic } from '../../lib/public-channels.js';
|
|
4
5
|
import { resolveThreadId } from '../../lib/refs.js';
|
|
@@ -7,8 +8,7 @@ function parseMinutes(value) {
|
|
|
7
8
|
return 60;
|
|
8
9
|
const parsed = Number(value);
|
|
9
10
|
if (!Number.isInteger(parsed) || parsed <= 0) {
|
|
10
|
-
|
|
11
|
-
process.exit(1);
|
|
11
|
+
throw new CliError('INVALID_MINUTES', `Invalid --minutes value: ${value} (must be a positive integer)`);
|
|
12
12
|
}
|
|
13
13
|
return parsed;
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mute.js","sourceRoot":"","sources":["../../../src/commands/thread/mute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"mute.js","sourceRoot":"","sources":["../../../src/commands/thread/mute.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reply.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/reply.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reply.d.ts","sourceRoot":"","sources":["../../../src/commands/thread/reply.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAK3D,KAAK,YAAY,GAAG,eAAe,GAAG;IAClC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,YAAY,GACtB,OAAO,CAAC,IAAI,CAAC,CAuEf"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getTwistClient } from '../../lib/api.js';
|
|
2
|
+
import { CliError } from '../../lib/errors.js';
|
|
2
3
|
import { openEditor, readStdin } from '../../lib/input.js';
|
|
3
4
|
import { formatJson } from '../../lib/output.js';
|
|
4
5
|
import { assertChannelIsPublic } from '../../lib/public-channels.js';
|
|
@@ -6,8 +7,7 @@ import { parseUserIdRefs, resolveThreadId } from '../../lib/refs.js';
|
|
|
6
7
|
export async function replyToThread(ref, content, options) {
|
|
7
8
|
const threadId = resolveThreadId(ref);
|
|
8
9
|
if (options.close && options.reopen) {
|
|
9
|
-
|
|
10
|
-
process.exit(1);
|
|
10
|
+
throw new CliError('CONFLICTING_OPTIONS', 'Cannot use --close and --reopen together.');
|
|
11
11
|
}
|
|
12
12
|
let replyContent = await readStdin();
|
|
13
13
|
if (!replyContent && content) {
|
|
@@ -17,8 +17,7 @@ export async function replyToThread(ref, content, options) {
|
|
|
17
17
|
replyContent = await openEditor();
|
|
18
18
|
}
|
|
19
19
|
if (!replyContent || replyContent.trim() === '') {
|
|
20
|
-
|
|
21
|
-
process.exit(1);
|
|
20
|
+
throw new CliError('MISSING_CONTENT', 'No content provided. Pass content as an argument or pipe via stdin.');
|
|
22
21
|
}
|
|
23
22
|
const notifyValue = options.notify ?? 'EVERYONE_IN_THREAD';
|
|
24
23
|
let recipients;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reply.js","sourceRoot":"","sources":["../../../src/commands/thread/reply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAQpE,MAAM,CAAC,KAAK,UAAU,aAAa,CAC/B,GAAW,EACX,OAA2B,EAC3B,OAAqB;IAErB,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;IAErC,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAClC,
|
|
1
|
+
{"version":3,"file":"reply.js","sourceRoot":"","sources":["../../../src/commands/thread/reply.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../src/commands/update/action.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../src/commands/update/action.ts"],"names":[],"mappings":"AAmCA,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQrE;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAM7C;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAejG;AAED,UAAU,aAAa;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAyGxE"}
|
|
@@ -2,6 +2,7 @@ import { spawn } from 'node:child_process';
|
|
|
2
2
|
import chalk from 'chalk';
|
|
3
3
|
import pkg from '../../../package.json' with { type: 'json' };
|
|
4
4
|
import { getConfig } from '../../lib/config.js';
|
|
5
|
+
import { CliError } from '../../lib/errors.js';
|
|
5
6
|
import { withSpinner } from '../../lib/spinner.js';
|
|
6
7
|
const PACKAGE_NAME = '@doist/twist-cli';
|
|
7
8
|
function parseVersion(version) {
|
|
@@ -28,7 +29,7 @@ export async function fetchLatestVersion(tag) {
|
|
|
28
29
|
const url = `https://registry.npmjs.org/${PACKAGE_NAME}/${tag}`;
|
|
29
30
|
const response = await fetch(url);
|
|
30
31
|
if (!response.ok) {
|
|
31
|
-
throw new
|
|
32
|
+
throw new CliError('API_ERROR', `Registry returned ${response.status}`);
|
|
32
33
|
}
|
|
33
34
|
const data = (await response.json());
|
|
34
35
|
return data.version;
|
|
@@ -56,9 +57,7 @@ export function runInstall(pm, tag) {
|
|
|
56
57
|
}
|
|
57
58
|
export async function updateAction(options) {
|
|
58
59
|
if (options.check && options.channel) {
|
|
59
|
-
|
|
60
|
-
process.exitCode = 1;
|
|
61
|
-
return;
|
|
60
|
+
throw new CliError('CONFLICTING_OPTIONS', 'Specify either --check or --channel, not both.');
|
|
62
61
|
}
|
|
63
62
|
if (options.channel) {
|
|
64
63
|
const config = await getConfig();
|
|
@@ -81,10 +80,10 @@ export async function updateAction(options) {
|
|
|
81
80
|
latestVersion = await withSpinner({ text: `Checking for updates${label}...` }, () => fetchLatestVersion(tag));
|
|
82
81
|
}
|
|
83
82
|
catch (error) {
|
|
83
|
+
if (error instanceof CliError)
|
|
84
|
+
throw error;
|
|
84
85
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
85
|
-
|
|
86
|
-
process.exitCode = 1;
|
|
87
|
-
return;
|
|
86
|
+
throw new CliError('API_ERROR', `Failed to check for updates: ${message}`);
|
|
88
87
|
}
|
|
89
88
|
const updateAvailable = isNewer(currentVersion, latestVersion);
|
|
90
89
|
if (options.check) {
|
|
@@ -120,22 +119,16 @@ export async function updateAction(options) {
|
|
|
120
119
|
}
|
|
121
120
|
catch (error) {
|
|
122
121
|
if (error instanceof Error && 'code' in error && error.code === 'EACCES') {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
127
|
-
console.error(chalk.red('Update failed:'), message);
|
|
122
|
+
throw new CliError('INTERNAL_ERROR', 'Permission denied.', [
|
|
123
|
+
`Try running with sudo: sudo ${pm} ${pm === 'pnpm' ? 'add' : 'install'} -g ${PACKAGE_NAME}@${tag}`,
|
|
124
|
+
]);
|
|
128
125
|
}
|
|
129
|
-
|
|
130
|
-
|
|
126
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
127
|
+
throw new CliError('INTERNAL_ERROR', `Update failed: ${message}`);
|
|
131
128
|
}
|
|
132
129
|
if (result.exitCode !== 0) {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
console.error(chalk.dim(result.stderr.trim()));
|
|
136
|
-
}
|
|
137
|
-
process.exitCode = 1;
|
|
138
|
-
return;
|
|
130
|
+
const detail = result.stderr ? `\n${result.stderr.trim()}` : '';
|
|
131
|
+
throw new CliError('INTERNAL_ERROR', `Update failed: ${pm} exited with code ${result.exitCode}${detail}`);
|
|
139
132
|
}
|
|
140
133
|
console.log(chalk.green('✓'), `Updated to v${latestVersion}`);
|
|
141
134
|
if (channel !== 'pre-release') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action.js","sourceRoot":"","sources":["../../../src/commands/update/action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElD,MAAM,YAAY,GAAG,kBAAkB,CAAA;AASvC,SAAS,YAAY,CAAC,OAAe;IACjC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC1C,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;AAC5F,CAAC;AAED,SAAS,OAAO,CAAC,OAAe,EAAE,SAAiB;IAC/C,MAAM,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;IAC/B,MAAM,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IACjC,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAU,EAAE,CAAC;QACrD,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;IACjD,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU;QAAE,OAAO,KAAK,CAAA;IAC/C,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,UAAU;QAAE,OAAO,IAAI,CAAA;IAC9C,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU;QAC5B,OAAO,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAA;IACrF,OAAO,KAAK,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAW;IAChD,MAAM,GAAG,GAAG,8BAA8B,YAAY,IAAI,GAAG,EAAE,CAAA;IAC/D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;IACjC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"action.js","sourceRoot":"","sources":["../../../src/commands/update/action.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/commands/update/switch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/commands/update/switch.ts"],"names":[],"mappings":"AAIA,wBAAsB,aAAa,CAAC,OAAO,EAAE;IACzC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,UAAU,CAAC,EAAE,OAAO,CAAA;CACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgChB"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { getConfig, setConfig } from '../../lib/config.js';
|
|
3
|
+
import { CliError } from '../../lib/errors.js';
|
|
3
4
|
export async function switchChannel(options) {
|
|
4
5
|
if (options.stable && options.preRelease) {
|
|
5
|
-
|
|
6
|
-
process.exitCode = 1;
|
|
7
|
-
return;
|
|
6
|
+
throw new CliError('CONFLICTING_OPTIONS', 'Specify either --stable or --pre-release, not both.');
|
|
8
7
|
}
|
|
9
8
|
if (!options.stable && !options.preRelease) {
|
|
10
|
-
|
|
11
|
-
process.exitCode = 1;
|
|
12
|
-
return;
|
|
9
|
+
throw new CliError('CONFLICTING_OPTIONS', 'Specify --stable or --pre-release.');
|
|
13
10
|
}
|
|
14
11
|
const channel = options.preRelease ? 'pre-release' : 'stable';
|
|
15
12
|
const config = await getConfig();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/commands/update/switch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAsB,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/commands/update/switch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAsB,MAAM,qBAAqB,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAGnC;IACG,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvC,MAAM,IAAI,QAAQ,CACd,qBAAqB,EACrB,qDAAqD,CACxD,CAAA;IACL,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,QAAQ,CAAC,qBAAqB,EAAE,oCAAoC,CAAC,CAAA;IACnF,CAAC;IAED,MAAM,OAAO,GAAkB,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC5E,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;IAChC,MAAM,CAAC,aAAa,GAAG,OAAO,CAAA;IAC9B,MAAM,SAAS,CAAC,MAAM,CAAC,CAAA;IAEvB,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,yBAAyB,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;QACtF,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EACrB,gCAAgC,EAChC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAClB,SAAS,CACZ,CAAA;QACD,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAA;QACpF,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAA;QAC1F,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAA;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAA;IACzD,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,8BAA8B,CAAC,CAAA;IACjE,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA0EnC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4B1D"}
|