@newpeak/barista-cli 0.2.273 → 0.2.275
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/commands/liberica/teams/tasks/attachment-add.d.ts +3 -0
- package/dist/commands/liberica/teams/tasks/attachment-add.d.ts.map +1 -0
- package/dist/commands/liberica/teams/tasks/attachment-add.js +104 -0
- package/dist/commands/liberica/teams/tasks/attachment-add.js.map +1 -0
- package/dist/commands/liberica/teams/tasks/attachment-delete.d.ts +3 -0
- package/dist/commands/liberica/teams/tasks/attachment-delete.d.ts.map +1 -0
- package/dist/commands/liberica/teams/tasks/attachment-delete.js +81 -0
- package/dist/commands/liberica/teams/tasks/attachment-delete.js.map +1 -0
- package/dist/commands/liberica/teams/tasks/attachment-list.d.ts +3 -0
- package/dist/commands/liberica/teams/tasks/attachment-list.d.ts.map +1 -0
- package/dist/commands/liberica/teams/tasks/attachment-list.js +90 -0
- package/dist/commands/liberica/teams/tasks/attachment-list.js.map +1 -0
- package/dist/commands/liberica/teams/tasks/comment-add.d.ts +3 -0
- package/dist/commands/liberica/teams/tasks/comment-add.d.ts.map +1 -0
- package/dist/commands/liberica/teams/tasks/comment-add.js +96 -0
- package/dist/commands/liberica/teams/tasks/comment-add.js.map +1 -0
- package/dist/commands/liberica/teams/tasks/comment-list.d.ts +3 -0
- package/dist/commands/liberica/teams/tasks/comment-list.d.ts.map +1 -0
- package/dist/commands/liberica/teams/tasks/comment-list.js +102 -0
- package/dist/commands/liberica/teams/tasks/comment-list.js.map +1 -0
- package/dist/commands/liberica/teams/tasks/index.d.ts.map +1 -1
- package/dist/commands/liberica/teams/tasks/index.js +16 -0
- package/dist/commands/liberica/teams/tasks/index.js.map +1 -1
- package/dist/core/api/client.d.ts +31 -1
- package/dist/core/api/client.d.ts.map +1 -1
- package/dist/core/api/client.js +224 -0
- package/dist/core/api/client.js.map +1 -1
- package/dist/types/team-task.d.ts +81 -0
- package/dist/types/team-task.d.ts.map +1 -1
- package/package.json +1 -1
- package/skills/barista-cli/data/commands.json +21 -1
- package/skills/barista-cli/data/commands.yaml +16 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-add.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/attachment-add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAY5C,wBAAgB,kCAAkC,IAAI,OAAO,CA8H5D"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { Command, Option } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { configManager } from '../../../../core/config/manager.js';
|
|
4
|
+
import { apiClient } from '../../../../core/api/client.js';
|
|
5
|
+
import { shouldUseJson } from '../../../../utils/output.js';
|
|
6
|
+
function collectFileIds(value, previous) {
|
|
7
|
+
return [...previous, value];
|
|
8
|
+
}
|
|
9
|
+
export function createTeamTaskAttachmentAddCommand() {
|
|
10
|
+
const command = new Command('add');
|
|
11
|
+
command
|
|
12
|
+
.description('Add attachments (uploaded files) to a team task')
|
|
13
|
+
.argument('<task-id>', 'Task ID (19-digit taskId or taskCode, auto-resolved)')
|
|
14
|
+
.option('--file-id <fileId>', 'File ID from "barista liberica files upload" (repeatable)', collectFileIds, [])
|
|
15
|
+
.addOption(new Option('--env <string>').hideHelp())
|
|
16
|
+
.addOption(new Option('--tenant <string>').hideHelp())
|
|
17
|
+
.option('--json', 'Output as JSON');
|
|
18
|
+
command.action(async (taskId, options) => {
|
|
19
|
+
const context = configManager.getCurrentContext();
|
|
20
|
+
const environment = context.environment;
|
|
21
|
+
const tenant = context.tenant;
|
|
22
|
+
const outputJson = shouldUseJson(options);
|
|
23
|
+
const fail = (code, message) => {
|
|
24
|
+
if (outputJson) {
|
|
25
|
+
console.log(JSON.stringify({ success: false, error: { code, message } }, null, 2));
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
console.error(chalk.red(`\n✗ ${message}\n`));
|
|
29
|
+
}
|
|
30
|
+
process.exit(1);
|
|
31
|
+
};
|
|
32
|
+
if (!taskId || taskId.trim() === '') {
|
|
33
|
+
fail('MISSING_TASK_ID', 'Task ID is required');
|
|
34
|
+
}
|
|
35
|
+
const fileIds = (options.fileId || []).map((v) => (v || '').trim());
|
|
36
|
+
if (fileIds.length === 0) {
|
|
37
|
+
fail('MISSING_FILE_ID', 'At least one --file-id is required. Upload first with: barista liberica files upload <path> --json');
|
|
38
|
+
}
|
|
39
|
+
for (const fileId of fileIds) {
|
|
40
|
+
if (!/^[1-9]\d*$/.test(fileId)) {
|
|
41
|
+
fail('INVALID_ATTACHMENT_ID', `Invalid file ID: "${fileId}" — must be a positive integer digit string (the fileId returned by "barista liberica files upload").`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
const attachments = [];
|
|
45
|
+
try {
|
|
46
|
+
for (const fileId of fileIds) {
|
|
47
|
+
const response = await apiClient.addTaskAttachment(environment, tenant, {
|
|
48
|
+
taskId,
|
|
49
|
+
taskAttachmentId: fileId,
|
|
50
|
+
});
|
|
51
|
+
if (!response.success) {
|
|
52
|
+
if (outputJson) {
|
|
53
|
+
console.log(JSON.stringify({
|
|
54
|
+
success: false,
|
|
55
|
+
error: response.error,
|
|
56
|
+
data: { taskId, added: attachments, failedFileId: fileId },
|
|
57
|
+
}, null, 2));
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
console.error(chalk.red(`\n✗ Failed to attach file ${fileId}: ${response.error?.message || 'Unknown error'}`));
|
|
61
|
+
if (response.error?.code) {
|
|
62
|
+
console.error(chalk.gray(` Error code: ${response.error.code}`));
|
|
63
|
+
}
|
|
64
|
+
console.error();
|
|
65
|
+
}
|
|
66
|
+
process.exit(1);
|
|
67
|
+
}
|
|
68
|
+
if (response.data && !Array.isArray(response.data)) {
|
|
69
|
+
attachments.push(response.data);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
attachments.push({ taskAttachmentId: fileId, taskId });
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (outputJson) {
|
|
76
|
+
console.log(JSON.stringify({
|
|
77
|
+
success: true,
|
|
78
|
+
data: { taskId, attachments, count: attachments.length },
|
|
79
|
+
}, null, 2));
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
console.log(chalk.green(`\n✓ Attached ${attachments.length} file(s) to task ${taskId}\n`));
|
|
83
|
+
for (const attachment of attachments) {
|
|
84
|
+
console.log(chalk.gray(` • ${attachment.taskAttachmentId}`));
|
|
85
|
+
}
|
|
86
|
+
console.log();
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
if (outputJson) {
|
|
91
|
+
console.log(JSON.stringify({
|
|
92
|
+
success: false,
|
|
93
|
+
error: { message: error instanceof Error ? error.message : 'Unknown error' },
|
|
94
|
+
}));
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
console.error(chalk.red(`\n✗ Error: ${error instanceof Error ? error.message : 'Unknown error'}\n`));
|
|
98
|
+
}
|
|
99
|
+
process.exit(1);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
return command;
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=attachment-add.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-add.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/attachment-add.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-delete.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/attachment-delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAO5C,wBAAgB,qCAAqC,IAAI,OAAO,CAyF/D"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { Command, Option } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { configManager } from '../../../../core/config/manager.js';
|
|
4
|
+
import { apiClient } from '../../../../core/api/client.js';
|
|
5
|
+
import { shouldUseJson } from '../../../../utils/output.js';
|
|
6
|
+
export function createTeamTaskAttachmentDeleteCommand() {
|
|
7
|
+
const command = new Command('delete');
|
|
8
|
+
command
|
|
9
|
+
.description('Delete (detach) an attachment from a team task')
|
|
10
|
+
.argument('<task-id>', 'Task ID (19-digit taskId or taskCode, auto-resolved)')
|
|
11
|
+
.option('--attachment-id <fileId>', 'Attachment ID (= fileId returned by files upload)')
|
|
12
|
+
.addOption(new Option('--env <string>').hideHelp())
|
|
13
|
+
.addOption(new Option('--tenant <string>').hideHelp())
|
|
14
|
+
.option('--json', 'Output as JSON');
|
|
15
|
+
command.action(async (taskId, options) => {
|
|
16
|
+
const context = configManager.getCurrentContext();
|
|
17
|
+
const environment = context.environment;
|
|
18
|
+
const tenant = context.tenant;
|
|
19
|
+
const outputJson = shouldUseJson(options);
|
|
20
|
+
const fail = (code, message) => {
|
|
21
|
+
if (outputJson) {
|
|
22
|
+
console.log(JSON.stringify({ success: false, error: { code, message } }, null, 2));
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
console.error(chalk.red(`\n✗ ${message}\n`));
|
|
26
|
+
}
|
|
27
|
+
process.exit(1);
|
|
28
|
+
};
|
|
29
|
+
if (!taskId || taskId.trim() === '') {
|
|
30
|
+
fail('MISSING_TASK_ID', 'Task ID is required');
|
|
31
|
+
}
|
|
32
|
+
const attachmentId = (options.attachmentId || '').trim();
|
|
33
|
+
if (!attachmentId) {
|
|
34
|
+
fail('MISSING_ATTACHMENT_ID', 'Attachment ID is required. Use --attachment-id <fileId> (the fileId returned by "barista liberica files upload").');
|
|
35
|
+
}
|
|
36
|
+
if (!/^[1-9]\d*$/.test(attachmentId)) {
|
|
37
|
+
fail('INVALID_ATTACHMENT_ID', `Invalid attachment ID: "${attachmentId}" — must be a positive integer digit string.`);
|
|
38
|
+
}
|
|
39
|
+
try {
|
|
40
|
+
const response = await apiClient.deleteTaskAttachment(environment, tenant, {
|
|
41
|
+
taskId,
|
|
42
|
+
taskAttachmentId: attachmentId,
|
|
43
|
+
});
|
|
44
|
+
if (response.success) {
|
|
45
|
+
if (outputJson) {
|
|
46
|
+
console.log(JSON.stringify({ success: true, data: { taskId, taskAttachmentId: attachmentId } }, null, 2));
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
console.log(chalk.green(`\n✓ Attachment ${attachmentId} removed from task ${taskId}\n`));
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
if (outputJson) {
|
|
54
|
+
console.log(JSON.stringify({ success: false, error: response.error }, null, 2));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
console.error(chalk.red(`\n✗ Failed to delete attachment: ${response.error?.message || 'Unknown error'}`));
|
|
58
|
+
if (response.error?.code) {
|
|
59
|
+
console.error(chalk.gray(` Error code: ${response.error.code}`));
|
|
60
|
+
}
|
|
61
|
+
console.error();
|
|
62
|
+
}
|
|
63
|
+
process.exit(1);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
if (outputJson) {
|
|
68
|
+
console.log(JSON.stringify({
|
|
69
|
+
success: false,
|
|
70
|
+
error: { message: error instanceof Error ? error.message : 'Unknown error' },
|
|
71
|
+
}));
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
console.error(chalk.red(`\n✗ Error: ${error instanceof Error ? error.message : 'Unknown error'}\n`));
|
|
75
|
+
}
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
return command;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=attachment-delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-delete.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/attachment-delete.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-list.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/attachment-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAS5C,wBAAgB,mCAAmC,IAAI,OAAO,CAiG7D"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { Command, Option } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import Table from 'cli-table3';
|
|
4
|
+
import { configManager } from '../../../../core/config/manager.js';
|
|
5
|
+
import { apiClient } from '../../../../core/api/client.js';
|
|
6
|
+
import { shouldUseJson } from '../../../../utils/output.js';
|
|
7
|
+
export function createTeamTaskAttachmentListCommand() {
|
|
8
|
+
const command = new Command('list');
|
|
9
|
+
command
|
|
10
|
+
.description('List attachments of a team task')
|
|
11
|
+
.argument('<task-id>', 'Task ID (19-digit taskId or taskCode, auto-resolved)')
|
|
12
|
+
.addOption(new Option('--env <string>').hideHelp())
|
|
13
|
+
.addOption(new Option('--tenant <string>').hideHelp())
|
|
14
|
+
.option('--json', 'Output as JSON');
|
|
15
|
+
command.action(async (taskId, options) => {
|
|
16
|
+
const context = configManager.getCurrentContext();
|
|
17
|
+
const environment = context.environment;
|
|
18
|
+
const tenant = context.tenant;
|
|
19
|
+
const outputJson = shouldUseJson(options);
|
|
20
|
+
if (!taskId || taskId.trim() === '') {
|
|
21
|
+
if (outputJson) {
|
|
22
|
+
console.log(JSON.stringify({ success: false, error: { code: 'MISSING_TASK_ID', message: 'Task ID is required' } }, null, 2));
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
console.error(chalk.red('\n✗ Task ID is required\n'));
|
|
26
|
+
}
|
|
27
|
+
process.exit(1);
|
|
28
|
+
}
|
|
29
|
+
try {
|
|
30
|
+
const response = await apiClient.listTaskAttachments(environment, tenant, { taskId });
|
|
31
|
+
if (response.success) {
|
|
32
|
+
const data = response.data;
|
|
33
|
+
const rows = (Array.isArray(data) ? data : []);
|
|
34
|
+
if (outputJson) {
|
|
35
|
+
console.log(JSON.stringify({ success: true, data: { rows, count: rows.length } }, null, 2));
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
if (rows.length === 0) {
|
|
39
|
+
console.log(chalk.yellow('\n⚠ No attachments found for this task\n'));
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const table = new Table({
|
|
43
|
+
head: ['Attachment ID (fileId)', 'Task ID', 'Created'],
|
|
44
|
+
style: { head: ['cyan'] },
|
|
45
|
+
colWidths: [26, 22, 20],
|
|
46
|
+
wordWrap: true,
|
|
47
|
+
});
|
|
48
|
+
for (const attachment of rows) {
|
|
49
|
+
table.push([
|
|
50
|
+
attachment.taskAttachmentId || '',
|
|
51
|
+
attachment.taskId || '',
|
|
52
|
+
attachment.createTime || '',
|
|
53
|
+
]);
|
|
54
|
+
}
|
|
55
|
+
console.log();
|
|
56
|
+
console.log(table.toString());
|
|
57
|
+
console.log(chalk.gray(`${rows.length} attachment(s)`));
|
|
58
|
+
console.log();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
if (outputJson) {
|
|
63
|
+
console.log(JSON.stringify({ success: false, error: response.error }, null, 2));
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
console.error(chalk.red(`\n✗ Failed to list attachments: ${response.error?.message || 'Unknown error'}`));
|
|
67
|
+
if (response.error?.code) {
|
|
68
|
+
console.error(chalk.gray(` Error code: ${response.error.code}`));
|
|
69
|
+
}
|
|
70
|
+
console.error();
|
|
71
|
+
}
|
|
72
|
+
process.exit(1);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
if (outputJson) {
|
|
77
|
+
console.log(JSON.stringify({
|
|
78
|
+
success: false,
|
|
79
|
+
error: { message: error instanceof Error ? error.message : 'Unknown error' },
|
|
80
|
+
}));
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
console.error(chalk.red(`\n✗ Error: ${error instanceof Error ? error.message : 'Unknown error'}\n`));
|
|
84
|
+
}
|
|
85
|
+
process.exit(1);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
return command;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=attachment-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-list.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/attachment-list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-add.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/comment-add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAQ5C,wBAAgB,+BAA+B,IAAI,OAAO,CAyGzD"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { Command, Option } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { readFileSync } from 'fs';
|
|
4
|
+
import { configManager } from '../../../../core/config/manager.js';
|
|
5
|
+
import { apiClient } from '../../../../core/api/client.js';
|
|
6
|
+
import { shouldUseJson } from '../../../../utils/output.js';
|
|
7
|
+
export function createTeamTaskCommentAddCommand() {
|
|
8
|
+
const command = new Command('add');
|
|
9
|
+
command
|
|
10
|
+
.description('Add a comment to a team task')
|
|
11
|
+
.argument('<task-id>', 'Task ID (19-digit taskId or taskCode, auto-resolved)')
|
|
12
|
+
.option('--content <string>', 'Comment content')
|
|
13
|
+
.option('--content-file <path>', 'Read comment content from file (for content exceeding shell limits)')
|
|
14
|
+
.option('--creator-name <string>', 'Creator name')
|
|
15
|
+
.option('--creator-email <string>', 'Creator email')
|
|
16
|
+
.addOption(new Option('--env <string>').hideHelp())
|
|
17
|
+
.addOption(new Option('--tenant <string>').hideHelp())
|
|
18
|
+
.option('--json', 'Output as JSON');
|
|
19
|
+
command.action(async (taskId, options) => {
|
|
20
|
+
const context = configManager.getCurrentContext();
|
|
21
|
+
const environment = context.environment;
|
|
22
|
+
const tenant = context.tenant;
|
|
23
|
+
const outputJson = shouldUseJson(options);
|
|
24
|
+
if (!taskId || taskId.trim() === '') {
|
|
25
|
+
if (outputJson) {
|
|
26
|
+
console.log(JSON.stringify({ success: false, error: { code: 'MISSING_TASK_ID', message: 'Task ID is required' } }, null, 2));
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
console.error(chalk.red('\n✗ Task ID is required\n'));
|
|
30
|
+
}
|
|
31
|
+
process.exit(1);
|
|
32
|
+
}
|
|
33
|
+
const contentValue = options.contentFile
|
|
34
|
+
? readFileSync(options.contentFile, 'utf-8')
|
|
35
|
+
: options.content;
|
|
36
|
+
if (!contentValue || contentValue.trim() === '') {
|
|
37
|
+
if (outputJson) {
|
|
38
|
+
console.log(JSON.stringify({
|
|
39
|
+
success: false,
|
|
40
|
+
error: {
|
|
41
|
+
code: 'MISSING_CONTENT',
|
|
42
|
+
message: 'Comment content is required. Use --content or --content-file',
|
|
43
|
+
},
|
|
44
|
+
}, null, 2));
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
console.error(chalk.red('\n✗ Comment content is required. Use --content or --content-file\n'));
|
|
48
|
+
}
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
const request = {
|
|
52
|
+
taskId,
|
|
53
|
+
commentContent: contentValue,
|
|
54
|
+
creatorName: options.creatorName || undefined,
|
|
55
|
+
creatorEmail: options.creatorEmail || undefined,
|
|
56
|
+
};
|
|
57
|
+
try {
|
|
58
|
+
const response = await apiClient.createTeamTaskComment(environment, tenant, request);
|
|
59
|
+
if (response.success) {
|
|
60
|
+
if (outputJson) {
|
|
61
|
+
console.log(JSON.stringify({ success: true, data: response.data }, null, 2));
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
console.log(chalk.green('\n✓ Comment added successfully\n'));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
if (outputJson) {
|
|
69
|
+
console.log(JSON.stringify({ success: false, error: response.error }, null, 2));
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
console.error(chalk.red(`\n✗ Failed to add comment: ${response.error?.message || 'Unknown error'}`));
|
|
73
|
+
if (response.error?.code) {
|
|
74
|
+
console.error(chalk.gray(` Error code: ${response.error.code}`));
|
|
75
|
+
}
|
|
76
|
+
console.error();
|
|
77
|
+
}
|
|
78
|
+
process.exit(1);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
if (outputJson) {
|
|
83
|
+
console.log(JSON.stringify({
|
|
84
|
+
success: false,
|
|
85
|
+
error: { message: error instanceof Error ? error.message : 'Unknown error' },
|
|
86
|
+
}));
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
console.error(chalk.red(`\n✗ Error: ${error instanceof Error ? error.message : 'Unknown error'}\n`));
|
|
90
|
+
}
|
|
91
|
+
process.exit(1);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
return command;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=comment-add.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-add.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/comment-add.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-list.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/comment-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAQ5C,wBAAgB,gCAAgC,IAAI,OAAO,CA4G1D"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { Command, Option } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import Table from 'cli-table3';
|
|
4
|
+
import { configManager } from '../../../../core/config/manager.js';
|
|
5
|
+
import { apiClient } from '../../../../core/api/client.js';
|
|
6
|
+
import { shouldUseJson } from '../../../../utils/output.js';
|
|
7
|
+
export function createTeamTaskCommentListCommand() {
|
|
8
|
+
const command = new Command('list');
|
|
9
|
+
command
|
|
10
|
+
.description('List comments on a team task')
|
|
11
|
+
.argument('<task-id>', 'Task ID (19-digit taskId or taskCode, auto-resolved)')
|
|
12
|
+
.option('--page <number>', 'Page number', '1')
|
|
13
|
+
.option('--size <number>', 'Page size', '20')
|
|
14
|
+
.addOption(new Option('--env <string>').hideHelp())
|
|
15
|
+
.addOption(new Option('--tenant <string>').hideHelp())
|
|
16
|
+
.option('--json', 'Output as JSON');
|
|
17
|
+
command.action(async (taskId, options) => {
|
|
18
|
+
const context = configManager.getCurrentContext();
|
|
19
|
+
const environment = context.environment;
|
|
20
|
+
const tenant = context.tenant;
|
|
21
|
+
const outputJson = shouldUseJson(options);
|
|
22
|
+
if (!taskId || taskId.trim() === '') {
|
|
23
|
+
if (outputJson) {
|
|
24
|
+
console.log(JSON.stringify({ success: false, error: { code: 'MISSING_TASK_ID', message: 'Task ID is required' } }, null, 2));
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
console.error(chalk.red('\n✗ Task ID is required\n'));
|
|
28
|
+
}
|
|
29
|
+
process.exit(1);
|
|
30
|
+
}
|
|
31
|
+
const page = parseInt(options.page, 10) || 1;
|
|
32
|
+
const size = parseInt(options.size, 10) || 20;
|
|
33
|
+
try {
|
|
34
|
+
const response = await apiClient.listTeamTaskComments(environment, tenant, {
|
|
35
|
+
taskId,
|
|
36
|
+
pageNo: page,
|
|
37
|
+
pageSize: size,
|
|
38
|
+
});
|
|
39
|
+
if (response.success) {
|
|
40
|
+
const data = response.data;
|
|
41
|
+
const rows = (data?.rows || data?.items || []);
|
|
42
|
+
const pagination = data?.pagination;
|
|
43
|
+
if (outputJson) {
|
|
44
|
+
console.log(JSON.stringify({ success: true, data: { rows, pagination } }, null, 2));
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
if (rows.length === 0) {
|
|
48
|
+
console.log(chalk.yellow('\n⚠ No comments found for this task\n'));
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const table = new Table({
|
|
52
|
+
head: ['ID', 'Creator', 'Content', 'Created'],
|
|
53
|
+
style: { head: ['cyan'] },
|
|
54
|
+
colWidths: [12, 20, 50, 20],
|
|
55
|
+
wordWrap: true,
|
|
56
|
+
});
|
|
57
|
+
for (const comment of rows) {
|
|
58
|
+
table.push([
|
|
59
|
+
comment.teamTaskCommentId || '',
|
|
60
|
+
comment.creatorName || '',
|
|
61
|
+
(comment.commentContent || '').substring(0, 100),
|
|
62
|
+
comment.createTime || '',
|
|
63
|
+
]);
|
|
64
|
+
}
|
|
65
|
+
console.log();
|
|
66
|
+
console.log(table.toString());
|
|
67
|
+
if (pagination) {
|
|
68
|
+
console.log(chalk.gray(`Page ${pagination.pageNo || page} of ${pagination.totalPage || '?'} (${pagination.totalRows || rows.length} total)`));
|
|
69
|
+
}
|
|
70
|
+
console.log();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
if (outputJson) {
|
|
75
|
+
console.log(JSON.stringify({ success: false, error: response.error }, null, 2));
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
console.error(chalk.red(`\n✗ Failed to list comments: ${response.error?.message || 'Unknown error'}`));
|
|
79
|
+
if (response.error?.code) {
|
|
80
|
+
console.error(chalk.gray(` Error code: ${response.error.code}`));
|
|
81
|
+
}
|
|
82
|
+
console.error();
|
|
83
|
+
}
|
|
84
|
+
process.exit(1);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
if (outputJson) {
|
|
89
|
+
console.log(JSON.stringify({
|
|
90
|
+
success: false,
|
|
91
|
+
error: { message: error instanceof Error ? error.message : 'Unknown error' },
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
console.error(chalk.red(`\n✗ Error: ${error instanceof Error ? error.message : 'Unknown error'}\n`));
|
|
96
|
+
}
|
|
97
|
+
process.exit(1);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
return command;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=comment-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-list.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/comment-list.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,wBAAgB,sBAAsB,IAAI,OAAO,CAwBhD"}
|
|
@@ -4,6 +4,11 @@ import { createTeamTaskGetCommand } from './get.js';
|
|
|
4
4
|
import { createTeamTaskCreateCommand } from './create.js';
|
|
5
5
|
import { createTeamTaskUpdateCommand } from './update.js';
|
|
6
6
|
import { createTeamTaskDeleteCommand } from './delete.js';
|
|
7
|
+
import { createTeamTaskCommentAddCommand } from './comment-add.js';
|
|
8
|
+
import { createTeamTaskCommentListCommand } from './comment-list.js';
|
|
9
|
+
import { createTeamTaskAttachmentAddCommand } from './attachment-add.js';
|
|
10
|
+
import { createTeamTaskAttachmentListCommand } from './attachment-list.js';
|
|
11
|
+
import { createTeamTaskAttachmentDeleteCommand } from './attachment-delete.js';
|
|
7
12
|
export function createTeamTasksCommand() {
|
|
8
13
|
const tasksCommand = new Command('tasks');
|
|
9
14
|
tasksCommand.description('Manage team tasks');
|
|
@@ -12,6 +17,17 @@ export function createTeamTasksCommand() {
|
|
|
12
17
|
tasksCommand.addCommand(createTeamTaskCreateCommand());
|
|
13
18
|
tasksCommand.addCommand(createTeamTaskUpdateCommand());
|
|
14
19
|
tasksCommand.addCommand(createTeamTaskDeleteCommand());
|
|
20
|
+
const commentCommand = new Command('comment');
|
|
21
|
+
commentCommand.description('Manage task comments');
|
|
22
|
+
commentCommand.addCommand(createTeamTaskCommentAddCommand());
|
|
23
|
+
commentCommand.addCommand(createTeamTaskCommentListCommand());
|
|
24
|
+
tasksCommand.addCommand(commentCommand);
|
|
25
|
+
const attachmentCommand = new Command('attachment');
|
|
26
|
+
attachmentCommand.description('Manage task attachments');
|
|
27
|
+
attachmentCommand.addCommand(createTeamTaskAttachmentAddCommand());
|
|
28
|
+
attachmentCommand.addCommand(createTeamTaskAttachmentListCommand());
|
|
29
|
+
attachmentCommand.addCommand(createTeamTaskAttachmentDeleteCommand());
|
|
30
|
+
tasksCommand.addCommand(attachmentCommand);
|
|
15
31
|
return tasksCommand;
|
|
16
32
|
}
|
|
17
33
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/teams/tasks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,kCAAkC,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,mCAAmC,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,qCAAqC,EAAE,MAAM,wBAAwB,CAAC;AAE/E,MAAM,UAAU,sBAAsB;IACpC,MAAM,YAAY,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,YAAY,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAE9C,YAAY,CAAC,UAAU,CAAC,yBAAyB,EAAE,CAAC,CAAC;IACrD,YAAY,CAAC,UAAU,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACpD,YAAY,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC,CAAC;IACvD,YAAY,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC,CAAC;IACvD,YAAY,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAEvD,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAC9C,cAAc,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;IACnD,cAAc,CAAC,UAAU,CAAC,+BAA+B,EAAE,CAAC,CAAC;IAC7D,cAAc,CAAC,UAAU,CAAC,gCAAgC,EAAE,CAAC,CAAC;IAC9D,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAExC,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IACpD,iBAAiB,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;IACzD,iBAAiB,CAAC,UAAU,CAAC,kCAAkC,EAAE,CAAC,CAAC;IACnE,iBAAiB,CAAC,UAAU,CAAC,mCAAmC,EAAE,CAAC,CAAC;IACpE,iBAAiB,CAAC,UAAU,CAAC,qCAAqC,EAAE,CAAC,CAAC;IACtE,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAE3C,OAAO,YAAY,CAAC;AACtB,CAAC"}
|