agkan 1.3.2 → 1.4.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/task/update.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/task/update.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwJ7D"}
|
|
@@ -12,6 +12,7 @@ const services_1 = require("../../../services");
|
|
|
12
12
|
const error_handler_1 = require("../../utils/error-handler");
|
|
13
13
|
const validators_1 = require("../../utils/validators");
|
|
14
14
|
const format_1 = require("../../../utils/format");
|
|
15
|
+
const output_formatter_1 = require("../../utils/output-formatter");
|
|
15
16
|
const add_helpers_1 = require("./add-helpers");
|
|
16
17
|
const SUPPORTED_FIELDS = ['status', 'title', 'body', 'author'];
|
|
17
18
|
function setupTaskUpdateCommand(program) {
|
|
@@ -25,23 +26,31 @@ function setupTaskUpdateCommand(program) {
|
|
|
25
26
|
.argument('<field>', 'Field to update (status, title, body, author)')
|
|
26
27
|
.argument('[value]', 'New value')
|
|
27
28
|
.option('--file <path>', 'Read body from file (only valid for body field)')
|
|
29
|
+
.option('--json', 'Output in JSON format')
|
|
28
30
|
.description('Update a task field')
|
|
29
31
|
.action(async (id, field, value, options) => {
|
|
32
|
+
const formatter = (0, output_formatter_1.createFormatter)(options);
|
|
30
33
|
try {
|
|
31
34
|
const taskService = new services_1.TaskService();
|
|
32
35
|
const taskId = (0, error_handler_1.validateNumberInput)(id);
|
|
33
36
|
if (taskId === null) {
|
|
34
|
-
|
|
37
|
+
formatter.error('Task ID must be a number', () => {
|
|
38
|
+
console.log(chalk_1.default.red('\nError: Task ID must be a number\n'));
|
|
39
|
+
});
|
|
35
40
|
process.exit(1);
|
|
36
41
|
}
|
|
37
42
|
if (!SUPPORTED_FIELDS.includes(field)) {
|
|
38
|
-
|
|
39
|
-
|
|
43
|
+
formatter.error(`Unsupported field: ${field}. Supported fields: ${SUPPORTED_FIELDS.join(', ')}`, () => {
|
|
44
|
+
console.log(chalk_1.default.red(`\nUnsupported field: ${field}`));
|
|
45
|
+
console.log(`Supported fields: ${SUPPORTED_FIELDS.join(', ')}\n`);
|
|
46
|
+
});
|
|
40
47
|
process.exit(1);
|
|
41
48
|
}
|
|
42
49
|
// Validate --file option usage
|
|
43
50
|
if (options.file && field !== 'body') {
|
|
44
|
-
|
|
51
|
+
formatter.error('--file option is only valid for the body field', () => {
|
|
52
|
+
console.log(chalk_1.default.red(`\nError: --file option is only valid for the body field\n`));
|
|
53
|
+
});
|
|
45
54
|
process.exit(1);
|
|
46
55
|
}
|
|
47
56
|
// Resolve the body value from file if --file is specified
|
|
@@ -52,21 +61,27 @@ function setupTaskUpdateCommand(program) {
|
|
|
52
61
|
}
|
|
53
62
|
catch (error) {
|
|
54
63
|
const msg = error instanceof Error ? error.message : 'Error reading file';
|
|
55
|
-
|
|
64
|
+
formatter.error(msg, () => {
|
|
65
|
+
console.log(chalk_1.default.red(`\n✗ Error: ${msg}\n`));
|
|
66
|
+
});
|
|
56
67
|
process.exit(1);
|
|
57
68
|
return;
|
|
58
69
|
}
|
|
59
70
|
}
|
|
60
71
|
// Require a value when not using --file
|
|
61
72
|
if (resolvedValue === undefined) {
|
|
62
|
-
|
|
73
|
+
formatter.error(`Missing value for field '${field}'. Provide a value argument or use --file for body.`, () => {
|
|
74
|
+
console.log(chalk_1.default.red(`\nError: Missing value for field '${field}'. Provide a value argument or use --file for body.\n`));
|
|
75
|
+
});
|
|
63
76
|
process.exit(1);
|
|
64
77
|
}
|
|
65
78
|
const updateInput = {};
|
|
66
79
|
if (field === 'status') {
|
|
67
80
|
if (!(0, validators_1.validateTaskStatus)(resolvedValue)) {
|
|
68
|
-
|
|
69
|
-
|
|
81
|
+
formatter.error(`Invalid status: ${resolvedValue}. Valid statuses: icebox, backlog, ready, in_progress, review, done, closed`, () => {
|
|
82
|
+
console.log(chalk_1.default.red(`\nInvalid status: ${resolvedValue}`));
|
|
83
|
+
console.log('Valid statuses: icebox, backlog, ready, in_progress, review, done, closed\n');
|
|
84
|
+
});
|
|
70
85
|
process.exit(1);
|
|
71
86
|
}
|
|
72
87
|
updateInput.status = resolvedValue;
|
|
@@ -81,39 +96,49 @@ function setupTaskUpdateCommand(program) {
|
|
|
81
96
|
...(updateInput.author !== undefined && { author: updateInput.author }),
|
|
82
97
|
});
|
|
83
98
|
if (!task) {
|
|
84
|
-
|
|
99
|
+
formatter.error(`Task with ID ${id} not found`, () => {
|
|
100
|
+
console.log(chalk_1.default.red(`\nTask with ID ${id} not found\n`));
|
|
101
|
+
});
|
|
85
102
|
process.exit(1);
|
|
86
103
|
}
|
|
87
|
-
const statusColor = (0, format_1.getStatusColor)(task.status);
|
|
88
|
-
console.log(chalk_1.default.green('\n✓ Task updated successfully\n'));
|
|
89
|
-
console.log(`${chalk_1.default.bold('ID:')} ${task.id}`);
|
|
90
|
-
console.log(`${chalk_1.default.bold('Title:')} ${task.title}`);
|
|
91
|
-
console.log(`${chalk_1.default.bold('Status:')} ${chalk_1.default[statusColor](task.status)}`);
|
|
92
|
-
console.log(`${chalk_1.default.bold('Updated:')} ${(0, format_1.formatDate)(task.updated_at)}\n`);
|
|
93
|
-
// Get and display task count by status
|
|
94
104
|
const statusCounts = taskService.getTaskCountByStatus();
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
{
|
|
103
|
-
{
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
console.log(
|
|
105
|
+
const statusColor = (0, format_1.getStatusColor)(task.status);
|
|
106
|
+
formatter.output(() => ({
|
|
107
|
+
success: true,
|
|
108
|
+
task,
|
|
109
|
+
counts: statusCounts,
|
|
110
|
+
}), () => {
|
|
111
|
+
console.log(chalk_1.default.green('\n✓ Task updated successfully\n'));
|
|
112
|
+
console.log(`${chalk_1.default.bold('ID:')} ${task.id}`);
|
|
113
|
+
console.log(`${chalk_1.default.bold('Title:')} ${task.title}`);
|
|
114
|
+
console.log(`${chalk_1.default.bold('Status:')} ${chalk_1.default[statusColor](task.status)}`);
|
|
115
|
+
console.log(`${chalk_1.default.bold('Updated:')} ${(0, format_1.formatDate)(task.updated_at)}\n`);
|
|
116
|
+
// Get and display task count by status
|
|
117
|
+
console.log(chalk_1.default.bold('Task Count by Status:'));
|
|
118
|
+
const statusEntries = [
|
|
119
|
+
{ status: 'icebox', count: statusCounts.icebox },
|
|
120
|
+
{ status: 'backlog', count: statusCounts.backlog },
|
|
121
|
+
{ status: 'ready', count: statusCounts.ready },
|
|
122
|
+
{ status: 'in_progress', count: statusCounts.in_progress },
|
|
123
|
+
{ status: 'review', count: statusCounts.review },
|
|
124
|
+
{ status: 'done', count: statusCounts.done },
|
|
125
|
+
{ status: 'closed', count: statusCounts.closed },
|
|
126
|
+
];
|
|
127
|
+
statusEntries.forEach(({ status, count }) => {
|
|
128
|
+
const color = (0, format_1.getStatusColor)(status);
|
|
129
|
+
console.log(` ${chalk_1.default[color](status)}: ${count}`);
|
|
130
|
+
});
|
|
131
|
+
console.log();
|
|
108
132
|
});
|
|
109
|
-
console.log();
|
|
110
133
|
}
|
|
111
134
|
catch (error) {
|
|
112
135
|
if (error instanceof Error) {
|
|
113
|
-
|
|
136
|
+
(0, error_handler_1.handleError)(error, options);
|
|
114
137
|
}
|
|
115
138
|
else {
|
|
116
|
-
|
|
139
|
+
formatter.error('An unknown error occurred', () => {
|
|
140
|
+
console.log(chalk_1.default.red('\n✗ An unknown error occurred\n'));
|
|
141
|
+
});
|
|
117
142
|
}
|
|
118
143
|
process.exit(1);
|
|
119
144
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/cli/commands/task/update.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/cli/commands/task/update.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agkan",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "TypeScript-based CLI task management tool with SQLite storage",
|
|
5
5
|
"main": "dist/cli/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"dev": "tsc --watch",
|
|
16
16
|
"start": "node dist/cli/index.js",
|
|
17
17
|
"test": "vitest",
|
|
18
|
+
"test:all": "npm install && npm run build && npm run type-check && npm run lint && vitest run && npm run test:e2e",
|
|
18
19
|
"test:errors": "vitest run --reporter=./tests/reporters/error-only.ts",
|
|
19
20
|
"test:e2e": "./test-e2e.sh",
|
|
20
21
|
"lint": "eslint src tests --ext .ts",
|
|
@@ -49,20 +50,20 @@
|
|
|
49
50
|
"dependencies": {
|
|
50
51
|
"better-sqlite3": "^11.7.0",
|
|
51
52
|
"chalk": "^4.1.2",
|
|
52
|
-
"commander": "^
|
|
53
|
+
"commander": "^14.0.3",
|
|
53
54
|
"js-yaml": "^4.1.1"
|
|
54
55
|
},
|
|
55
56
|
"devDependencies": {
|
|
56
57
|
"@types/better-sqlite3": "^7.6.12",
|
|
57
58
|
"@types/js-yaml": "^4.0.9",
|
|
58
59
|
"@types/node": "^22.10.5",
|
|
59
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
60
|
-
"@typescript-eslint/parser": "^8.
|
|
60
|
+
"@typescript-eslint/eslint-plugin": "^8.56.0",
|
|
61
|
+
"@typescript-eslint/parser": "^8.56.0",
|
|
61
62
|
"@vitest/coverage-v8": "^4.0.18",
|
|
62
|
-
"eslint": "^
|
|
63
|
+
"eslint": "^10.0.1",
|
|
63
64
|
"eslint-config-prettier": "^10.1.8",
|
|
64
65
|
"husky": "^9.1.7",
|
|
65
|
-
"lint-staged": "^
|
|
66
|
+
"lint-staged": "^16.2.7",
|
|
66
67
|
"prettier": "^3.8.1",
|
|
67
68
|
"typescript": "^5.7.3",
|
|
68
69
|
"vitest": "^4.0.18"
|