agkan 2.0.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.ja.md +17 -17
  2. package/README.md +17 -17
  3. package/dist/board/server.d.ts +2 -1
  4. package/dist/board/server.d.ts.map +1 -1
  5. package/dist/board/server.js +141 -41
  6. package/dist/board/server.js.map +1 -1
  7. package/dist/cli/commands/task/add-helpers.d.ts.map +1 -1
  8. package/dist/cli/commands/task/add-helpers.js +1 -0
  9. package/dist/cli/commands/task/add-helpers.js.map +1 -1
  10. package/dist/cli/commands/task/add.d.ts.map +1 -1
  11. package/dist/cli/commands/task/add.js +11 -0
  12. package/dist/cli/commands/task/add.js.map +1 -1
  13. package/dist/cli/commands/task/get.d.ts.map +1 -1
  14. package/dist/cli/commands/task/get.js +9 -0
  15. package/dist/cli/commands/task/get.js.map +1 -1
  16. package/dist/cli/commands/task/purge.d.ts +6 -0
  17. package/dist/cli/commands/task/purge.d.ts.map +1 -0
  18. package/dist/cli/commands/task/purge.js +138 -0
  19. package/dist/cli/commands/task/purge.js.map +1 -0
  20. package/dist/cli/commands/task/update.d.ts.map +1 -1
  21. package/dist/cli/commands/task/update.js +26 -1
  22. package/dist/cli/commands/task/update.js.map +1 -1
  23. package/dist/cli/index.js +2 -0
  24. package/dist/cli/index.js.map +1 -1
  25. package/dist/db/schema.d.ts.map +1 -1
  26. package/dist/db/schema.js +28 -0
  27. package/dist/db/schema.js.map +1 -1
  28. package/dist/models/Task.d.ts +4 -0
  29. package/dist/models/Task.d.ts.map +1 -1
  30. package/dist/services/TaskService.d.ts +9 -0
  31. package/dist/services/TaskService.d.ts.map +1 -1
  32. package/dist/services/TaskService.js +35 -3
  33. package/dist/services/TaskService.js.map +1 -1
  34. package/package.json +1 -1
package/README.ja.md CHANGED
@@ -199,34 +199,34 @@ agkan task delete 1
199
199
 
200
200
  タグを作成:
201
201
  ```bash
202
- agkan task tag add "frontend"
202
+ agkan tag add "frontend"
203
203
  ```
204
204
 
205
205
  タグ一覧を表示:
206
206
  ```bash
207
- agkan task tag list
207
+ agkan tag list
208
208
  ```
209
209
 
210
210
  タグを削除:
211
211
  ```bash
212
- agkan task tag delete "frontend"
212
+ agkan tag delete "frontend"
213
213
  ```
214
214
 
215
215
  ### タスクへのタグ付け
216
216
 
217
217
  タスクにタグを付与:
218
218
  ```bash
219
- agkan task tag attach 1 "frontend"
219
+ agkan tag attach 1 "frontend"
220
220
  ```
221
221
 
222
222
  タスクからタグを削除:
223
223
  ```bash
224
- agkan task tag detach 1 "frontend"
224
+ agkan tag detach 1 "frontend"
225
225
  ```
226
226
 
227
227
  タスクに付けられたタグを表示:
228
228
  ```bash
229
- agkan task tag show 1
229
+ agkan tag show 1
230
230
  ```
231
231
 
232
232
  ### メタデータの管理
@@ -551,7 +551,7 @@ agkan task count --status in_progress --json
551
551
 
552
552
  JSON出力フォーマット:
553
553
  ```bash
554
- agkan task tag list --json
554
+ agkan tag list --json
555
555
  ```
556
556
 
557
557
  ```json
@@ -576,7 +576,7 @@ agkan task tag list --json
576
576
 
577
577
  JSON出力フォーマット:
578
578
  ```bash
579
- agkan task tag show 1 --json
579
+ agkan tag show 1 --json
580
580
  ```
581
581
 
582
582
  ```json
@@ -693,21 +693,21 @@ agkan task block remove 1 2
693
693
 
694
694
  ```bash
695
695
  # タグを作成
696
- agkan task tag add "frontend"
697
- agkan task tag add "backend"
698
- agkan task tag add "urgent"
696
+ agkan tag add "frontend"
697
+ agkan tag add "backend"
698
+ agkan tag add "urgent"
699
699
 
700
700
  # タスクを作成してタグを付与
701
701
  agkan task add "ログイン画面の実装"
702
702
  # 出力: Task created with ID: 1
703
703
 
704
- agkan task tag attach 1 "frontend"
705
- agkan task tag attach 1 "urgent"
704
+ agkan tag attach 1 "frontend"
705
+ agkan tag attach 1 "urgent"
706
706
 
707
707
  agkan task add "API開発"
708
708
  # 出力: Task created with ID: 2
709
709
 
710
- agkan task tag attach 2 "backend"
710
+ agkan tag attach 2 "backend"
711
711
 
712
712
  # タグでフィルタリング
713
713
  agkan task list --tag "frontend"
@@ -715,17 +715,17 @@ agkan task list --tag "frontend"
715
715
  # 1 [backlog] ログイン画面の実装 (tags: frontend, urgent)
716
716
 
717
717
  # タスクのタグを確認
718
- agkan task tag show 1
718
+ agkan tag show 1
719
719
  # 出力:
720
720
  # Tags for task 1:
721
721
  # - frontend
722
722
  # - urgent
723
723
 
724
724
  # タグを削除
725
- agkan task tag detach 1 "urgent"
725
+ agkan tag detach 1 "urgent"
726
726
 
727
727
  # タグ自体を削除(関連するすべてのタスクから削除される)
728
- agkan task tag delete "urgent"
728
+ agkan tag delete "urgent"
729
729
  ```
730
730
 
731
731
  ## タスクステータス
package/README.md CHANGED
@@ -358,22 +358,22 @@ agkan task delete 1
358
358
 
359
359
  Create a tag:
360
360
  ```bash
361
- agkan task tag add "frontend"
361
+ agkan tag add "frontend"
362
362
  ```
363
363
 
364
364
  List all tags:
365
365
  ```bash
366
- agkan task tag list
366
+ agkan tag list
367
367
  ```
368
368
 
369
369
  Delete a tag:
370
370
  ```bash
371
- agkan task tag delete "frontend"
371
+ agkan tag delete "frontend"
372
372
  ```
373
373
 
374
374
  JSON output format for tag list:
375
375
  ```bash
376
- agkan task tag list --json
376
+ agkan tag list --json
377
377
  ```
378
378
 
379
379
  ```json
@@ -400,22 +400,22 @@ agkan task tag list --json
400
400
 
401
401
  Attach a tag to a task:
402
402
  ```bash
403
- agkan task tag attach 1 "frontend"
403
+ agkan tag attach 1 "frontend"
404
404
  ```
405
405
 
406
406
  Remove a tag from a task:
407
407
  ```bash
408
- agkan task tag detach 1 "frontend"
408
+ agkan tag detach 1 "frontend"
409
409
  ```
410
410
 
411
411
  Display tags on a task:
412
412
  ```bash
413
- agkan task tag show 1
413
+ agkan tag show 1
414
414
  ```
415
415
 
416
416
  JSON output format for tag show:
417
417
  ```bash
418
- agkan task tag show 1 --json
418
+ agkan tag show 1 --json
419
419
  ```
420
420
 
421
421
  ```json
@@ -708,21 +708,21 @@ Example of classifying tasks with tags:
708
708
 
709
709
  ```bash
710
710
  # Create tags
711
- agkan task tag add "frontend"
712
- agkan task tag add "backend"
713
- agkan task tag add "urgent"
711
+ agkan tag add "frontend"
712
+ agkan tag add "backend"
713
+ agkan tag add "urgent"
714
714
 
715
715
  # Create tasks and attach tags
716
716
  agkan task add "Implement login screen"
717
717
  # Output: Task created with ID: 1
718
718
 
719
- agkan task tag attach 1 "frontend"
720
- agkan task tag attach 1 "urgent"
719
+ agkan tag attach 1 "frontend"
720
+ agkan tag attach 1 "urgent"
721
721
 
722
722
  agkan task add "API development"
723
723
  # Output: Task created with ID: 2
724
724
 
725
- agkan task tag attach 2 "backend"
725
+ agkan tag attach 2 "backend"
726
726
 
727
727
  # Filter by tag
728
728
  agkan task list --tag "frontend"
@@ -730,17 +730,17 @@ agkan task list --tag "frontend"
730
730
  # 1 [backlog] Implement login screen (tags: frontend, urgent)
731
731
 
732
732
  # Display task tags
733
- agkan task tag show 1
733
+ agkan tag show 1
734
734
  # Output:
735
735
  # Tags for task 1:
736
736
  # - frontend
737
737
  # - urgent
738
738
 
739
739
  # Remove a tag
740
- agkan task tag detach 1 "urgent"
740
+ agkan tag detach 1 "urgent"
741
741
 
742
742
  # Delete a tag (removes from all associated tasks)
743
- agkan task tag delete "urgent"
743
+ agkan tag delete "urgent"
744
744
  ```
745
745
 
746
746
  ## Task Statuses
@@ -2,6 +2,7 @@ import { Hono } from 'hono';
2
2
  import { TaskService } from '../services/TaskService';
3
3
  import { TaskTagService } from '../services/TaskTagService';
4
4
  import { MetadataService } from '../services/MetadataService';
5
- export declare function createBoardApp(taskService?: TaskService, taskTagService?: TaskTagService, metadataService?: MetadataService): Hono;
5
+ import { StorageProvider } from '../db/types/storage';
6
+ export declare function createBoardApp(taskService?: TaskService, taskTagService?: TaskTagService, metadataService?: MetadataService, db?: StorageProvider): Hono;
6
7
  export declare function startBoardServer(port: number): void;
7
8
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/board/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAqd9D,wBAAgB,cAAc,CAC5B,WAAW,CAAC,EAAE,WAAW,EACzB,cAAc,CAAC,EAAE,cAAc,EAC/B,eAAe,CAAC,EAAE,eAAe,GAChC,IAAI,CA6FN;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMnD"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/board/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAI9D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAwhBtD,wBAAgB,cAAc,CAC5B,WAAW,CAAC,EAAE,WAAW,EACzB,cAAc,CAAC,EAAE,cAAc,EAC/B,eAAe,CAAC,EAAE,eAAe,EACjC,EAAE,CAAC,EAAE,eAAe,GACnB,IAAI,CAmIN;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMnD"}
@@ -8,6 +8,7 @@ const TaskService_1 = require("../services/TaskService");
8
8
  const TaskTagService_1 = require("../services/TaskTagService");
9
9
  const MetadataService_1 = require("../services/MetadataService");
10
10
  const models_1 = require("../models");
11
+ const connection_1 = require("../db/connection");
11
12
  const STATUSES = ['icebox', 'backlog', 'ready', 'in_progress', 'review', 'done', 'closed'];
12
13
  const STATUS_LABELS = {
13
14
  icebox: 'Icebox',
@@ -35,8 +36,8 @@ function escapeHtml(text) {
35
36
  .replace(/"/g, '"')
36
37
  .replace(/'/g, ''');
37
38
  }
38
- function renderCard(task, tags, metadata) {
39
- const priority = metadata.find((m) => m.key === 'priority')?.value;
39
+ function renderCard(task, tags) {
40
+ const priority = task.priority;
40
41
  const priorityBadge = priority
41
42
  ? `<span class="priority priority-${escapeHtml(priority)}">${escapeHtml(priority)}</span>`
42
43
  : '';
@@ -51,12 +52,12 @@ function renderCard(task, tags, metadata) {
51
52
  ${tagBadges ? `<div class="card-tags">${tagBadges}</div>` : ''}
52
53
  </div>`;
53
54
  }
54
- function renderBoard(tasksByStatus, tagMap, metaMap) {
55
+ function renderBoard(tasksByStatus, tagMap) {
55
56
  const columns = STATUSES.map((status) => {
56
57
  const tasks = tasksByStatus.get(status) || [];
57
58
  const color = STATUS_COLORS[status];
58
59
  const label = STATUS_LABELS[status];
59
- const cards = tasks.map((t) => renderCard(t, tagMap.get(t.id) || [], metaMap.get(t.id) || [])).join('');
60
+ const cards = tasks.map((t) => renderCard(t, tagMap.get(t.id) || [])).join('');
60
61
  return `
61
62
  <div class="column" data-status="${status}">
62
63
  <div class="column-header" style="border-top-color:${color}">
@@ -142,6 +143,15 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
142
143
  .detail-meta-table td { padding: 4px 0; font-size: 12px; }
143
144
  .detail-meta-table td:first-child { color: #64748b; width: 100px; }
144
145
  .detail-meta-table td:last-child { color: #1e293b; }
146
+ .detail-panel-footer { padding: 12px 20px; border-top: 1px solid #e2e8f0; display: flex; justify-content: flex-end; }
147
+ .detail-panel-footer button { padding: 7px 18px; border-radius: 6px; font-size: 13px; font-weight: 600; cursor: pointer; border: 1px solid #3b82f6; background: #3b82f6; color: white; }
148
+ .detail-panel-footer button:hover { background: #2563eb; border-color: #2563eb; }
149
+ .detail-edit-input { width: 100%; border: 1px solid #e2e8f0; border-radius: 6px; padding: 7px 10px; font-size: 13px; font-family: inherit; background: white; color: #1e293b; }
150
+ .detail-edit-input:focus { outline: none; border-color: #3b82f6; box-shadow: 0 0 0 2px rgba(59,130,246,0.2); }
151
+ .detail-edit-textarea { width: 100%; border: 1px solid #e2e8f0; border-radius: 6px; padding: 7px 10px; font-size: 13px; font-family: inherit; resize: vertical; min-height: 80px; background: white; color: #1e293b; }
152
+ .detail-edit-textarea:focus { outline: none; border-color: #3b82f6; box-shadow: 0 0 0 2px rgba(59,130,246,0.2); }
153
+ .detail-edit-select { width: 100%; border: 1px solid #e2e8f0; border-radius: 6px; padding: 7px 10px; font-size: 13px; font-family: inherit; background: white; color: #1e293b; }
154
+ .detail-edit-select:focus { outline: none; border-color: #3b82f6; box-shadow: 0 0 0 2px rgba(59,130,246,0.2); }
145
155
  </style>
146
156
  </head>
147
157
  <body>
@@ -175,6 +185,9 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
175
185
  <button class="detail-panel-close" id="detail-panel-close" title="Close">&times;</button>
176
186
  </div>
177
187
  <div class="detail-panel-body" id="detail-panel-body"></div>
188
+ <div class="detail-panel-footer">
189
+ <button id="detail-save-btn">Save</button>
190
+ </div>
178
191
  </div>
179
192
  <div class="toast" id="toast">Failed to update task</div>
180
193
  <script>
@@ -276,7 +289,7 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
276
289
  });
277
290
 
278
291
  addTitle.addEventListener('keydown', e => {
279
- if (e.key === 'Enter') { e.preventDefault(); document.getElementById('add-submit').click(); }
292
+ if (e.key === 'Enter' && !e.isComposing) { e.preventDefault(); document.getElementById('add-submit').click(); }
280
293
  });
281
294
 
282
295
  document.getElementById('add-submit').addEventListener('click', async () => {
@@ -345,51 +358,66 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
345
358
  const detailPanel = document.getElementById('detail-panel');
346
359
  const detailPanelTitle = document.getElementById('detail-panel-title');
347
360
  const detailPanelBody = document.getElementById('detail-panel-body');
361
+ let detailTaskId = null;
348
362
 
349
363
  function closeDetailPanel() {
350
364
  detailPanel.classList.remove('open');
365
+ detailTaskId = null;
351
366
  }
352
367
 
353
368
  document.getElementById('detail-panel-close').addEventListener('click', closeDetailPanel);
354
369
 
355
370
  const statusColors = ${JSON.stringify(STATUS_COLORS)};
371
+ const allStatuses = ${JSON.stringify(STATUSES)};
372
+ const statusLabels = ${JSON.stringify(STATUS_LABELS)};
373
+ const allPriorities = ${JSON.stringify(models_1.PRIORITIES)};
356
374
 
357
375
  function renderDetailPanel(data) {
358
376
  const task = data.task;
359
377
  const tags = data.tags || [];
360
378
  const metadata = data.metadata || [];
361
- const priority = metadata.find(m => m.key === 'priority');
362
379
 
380
+ detailTaskId = task.id;
363
381
  detailPanelTitle.textContent = '#' + task.id + ' ' + task.title;
364
382
 
365
383
  let html = '';
366
384
 
367
- // Status
368
- const sColor = statusColors[task.status] || '#64748b';
385
+ // Title (editable)
386
+ html += '<div class="detail-field">';
387
+ html += '<div class="detail-field-label">Title</div>';
388
+ html += '<input id="detail-edit-title" class="detail-edit-input" type="text" value="' + escapeHtmlClient(task.title) + '">';
389
+ html += '</div>';
390
+
391
+ // Status (editable)
369
392
  html += '<div class="detail-field">';
370
393
  html += '<div class="detail-field-label">Status</div>';
371
- html += '<div class="detail-field-value"><span class="detail-status-badge" style="background:' + sColor + '">' + escapeHtmlClient(task.status.replace('_', ' ')) + '</span></div>';
394
+ html += '<select id="detail-edit-status" class="detail-edit-select">';
395
+ allStatuses.forEach(s => {
396
+ const selected = s === task.status ? ' selected' : '';
397
+ html += '<option value="' + s + '"' + selected + '>' + statusLabels[s] + '</option>';
398
+ });
399
+ html += '</select>';
372
400
  html += '</div>';
373
401
 
374
- // Priority
375
- if (priority) {
376
- html += '<div class="detail-field">';
377
- html += '<div class="detail-field-label">Priority</div>';
378
- html += '<div class="detail-field-value"><span class="priority priority-' + escapeHtmlClient(priority.value) + '">' + escapeHtmlClient(priority.value) + '</span></div>';
379
- html += '</div>';
380
- }
402
+ // Priority (editable)
403
+ html += '<div class="detail-field">';
404
+ html += '<div class="detail-field-label">Priority</div>';
405
+ html += '<select id="detail-edit-priority" class="detail-edit-select">';
406
+ html += '<option value="">None</option>';
407
+ allPriorities.forEach(p => {
408
+ const selected = task.priority === p ? ' selected' : '';
409
+ html += '<option value="' + p + '"' + selected + '>' + p.charAt(0).toUpperCase() + p.slice(1) + '</option>';
410
+ });
411
+ html += '</select>';
412
+ html += '</div>';
381
413
 
382
- // Body
414
+ // Body (editable)
383
415
  html += '<div class="detail-field">';
384
416
  html += '<div class="detail-field-label">Description</div>';
385
- if (task.body) {
386
- html += '<div class="detail-field-value">' + escapeHtmlClient(task.body) + '</div>';
387
- } else {
388
- html += '<div class="detail-field-value empty">No description</div>';
389
- }
417
+ html += '<textarea id="detail-edit-body" class="detail-edit-textarea">' + escapeHtmlClient(task.body || '') + '</textarea>';
390
418
  html += '</div>';
391
419
 
392
- // Tags
420
+ // Tags (read-only)
393
421
  if (tags.length > 0) {
394
422
  html += '<div class="detail-field">';
395
423
  html += '<div class="detail-field-label">Tags</div>';
@@ -398,7 +426,7 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
398
426
  html += '</div></div>';
399
427
  }
400
428
 
401
- // Metadata table
429
+ // Metadata table (read-only, non-priority)
402
430
  const otherMeta = metadata.filter(m => m.key !== 'priority');
403
431
  if (otherMeta.length > 0) {
404
432
  html += '<div class="detail-field">';
@@ -410,7 +438,7 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
410
438
  html += '</table></div>';
411
439
  }
412
440
 
413
- // Timestamps
441
+ // Timestamps (read-only)
414
442
  html += '<div class="detail-field">';
415
443
  html += '<div class="detail-field-label">Created</div>';
416
444
  html += '<div class="detail-field-value">' + escapeHtmlClient(task.created_at) + '</div>';
@@ -430,6 +458,33 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
430
458
  return div.innerHTML;
431
459
  }
432
460
 
461
+ document.getElementById('detail-save-btn').addEventListener('click', async () => {
462
+ if (detailTaskId === null) return;
463
+ const titleInput = document.getElementById('detail-edit-title');
464
+ const title = titleInput ? titleInput.value.trim() : '';
465
+ if (!title) { if (titleInput) titleInput.focus(); return; }
466
+ const bodyEl = document.getElementById('detail-edit-body');
467
+ const statusEl = document.getElementById('detail-edit-status');
468
+ const priorityEl = document.getElementById('detail-edit-priority');
469
+
470
+ try {
471
+ const res = await fetch('/api/tasks/' + detailTaskId, {
472
+ method: 'PATCH',
473
+ headers: { 'Content-Type': 'application/json' },
474
+ body: JSON.stringify({
475
+ title,
476
+ body: bodyEl ? (bodyEl.value.trim() || null) : null,
477
+ status: statusEl ? statusEl.value : undefined,
478
+ priority: priorityEl ? (priorityEl.value || null) : null
479
+ })
480
+ });
481
+ if (!res.ok) throw new Error('Server error');
482
+ location.reload();
483
+ } catch {
484
+ showToast('Failed to update task');
485
+ }
486
+ });
487
+
433
488
  document.querySelectorAll('.card').forEach(card => {
434
489
  card.addEventListener('click', async e => {
435
490
  if (e.defaultPrevented) return;
@@ -445,28 +500,48 @@ function renderBoard(tasksByStatus, tagMap, metaMap) {
445
500
  }
446
501
  });
447
502
  });
503
+
504
+ // Board polling: reload when updated_at changes (skip during drag or detail panel open)
505
+ let lastUpdatedAt = null;
506
+ async function pollBoardUpdates() {
507
+ if (draggedCard !== null) return;
508
+ if (detailPanel.classList.contains('open')) return;
509
+ try {
510
+ const res = await fetch('/api/board/updated-at');
511
+ if (!res.ok) return;
512
+ const data = await res.json();
513
+ const ts = data.updatedAt;
514
+ if (lastUpdatedAt === null) {
515
+ lastUpdatedAt = ts;
516
+ } else if (ts !== lastUpdatedAt) {
517
+ location.reload();
518
+ }
519
+ } catch {
520
+ // Ignore network errors during polling
521
+ }
522
+ }
523
+ setInterval(pollBoardUpdates, 10000);
524
+ pollBoardUpdates();
448
525
  </script>
449
526
  </body>
450
527
  </html>`;
451
528
  }
452
- function sortByPriority(tasks, metaMap) {
529
+ function sortByPriority(tasks) {
453
530
  return [...tasks].sort((a, b) => {
454
- const pa = metaMap.get(a.id)?.find((m) => m.key === 'priority')?.value;
455
- const pb = metaMap.get(b.id)?.find((m) => m.key === 'priority')?.value;
456
- const oa = pa && (0, models_1.isPriority)(pa) ? models_1.PRIORITY_ORDER[pa] : 4;
457
- const ob = pb && (0, models_1.isPriority)(pb) ? models_1.PRIORITY_ORDER[pb] : 4;
531
+ const oa = a.priority ? models_1.PRIORITY_ORDER[a.priority] : 4;
532
+ const ob = b.priority ? models_1.PRIORITY_ORDER[b.priority] : 4;
458
533
  return oa - ob;
459
534
  });
460
535
  }
461
- function createBoardApp(taskService, taskTagService, metadataService) {
536
+ function createBoardApp(taskService, taskTagService, metadataService, db) {
462
537
  const app = new hono_1.Hono();
463
538
  const ts = taskService ?? new TaskService_1.TaskService();
464
539
  const tts = taskTagService ?? new TaskTagService_1.TaskTagService();
465
540
  const ms = metadataService ?? new MetadataService_1.MetadataService();
541
+ const database = db ?? (0, connection_1.getDatabase)();
466
542
  app.get('/', (c) => {
467
543
  const tasks = ts.listTasks({}, 'id', 'asc');
468
544
  const tagMap = tts.getAllTaskTags();
469
- const metaMap = ms.getAllTasksMetadata();
470
545
  const tasksByStatus = new Map();
471
546
  for (const status of STATUSES) {
472
547
  tasksByStatus.set(status, []);
@@ -475,9 +550,20 @@ function createBoardApp(taskService, taskTagService, metadataService) {
475
550
  tasksByStatus.get(task.status)?.push(task);
476
551
  }
477
552
  for (const [status, statusTasks] of tasksByStatus) {
478
- tasksByStatus.set(status, sortByPriority(statusTasks, metaMap));
553
+ tasksByStatus.set(status, sortByPriority(statusTasks));
479
554
  }
480
- return c.html(renderBoard(tasksByStatus, tagMap, metaMap));
555
+ return c.html(renderBoard(tasksByStatus, tagMap));
556
+ });
557
+ app.get('/api/board/updated-at', (c) => {
558
+ const stmt = database.prepare(`
559
+ SELECT MAX(updated_at) as max_updated_at FROM (
560
+ SELECT updated_at FROM tasks
561
+ UNION ALL
562
+ SELECT updated_at FROM task_metadata
563
+ )
564
+ `);
565
+ const row = stmt.get();
566
+ return c.json({ updatedAt: row.max_updated_at });
481
567
  });
482
568
  app.get('/api/tasks', (c) => {
483
569
  const tasks = ts.listTasks({}, 'id', 'asc');
@@ -489,10 +575,8 @@ function createBoardApp(taskService, taskTagService, metadataService) {
489
575
  return c.json({ error: 'Title is required' }, 400);
490
576
  }
491
577
  const status = body.status && STATUSES.includes(body.status) ? body.status : 'backlog';
492
- const task = ts.createTask({ title: body.title.trim(), body: body.body || undefined, status });
493
- if (body.priority && (0, models_1.isPriority)(body.priority)) {
494
- ms.setMetadata({ task_id: task.id, key: 'priority', value: body.priority });
495
- }
578
+ const priority = body.priority && (0, models_1.isPriority)(body.priority) ? body.priority : undefined;
579
+ const task = ts.createTask({ title: body.title.trim(), body: body.body || undefined, status, priority });
496
580
  return c.json(task, 201);
497
581
  });
498
582
  app.get('/api/tasks/:id', (c) => {
@@ -514,10 +598,26 @@ function createBoardApp(taskService, taskTagService, metadataService) {
514
598
  return c.json({ error: 'Invalid task id' }, 400);
515
599
  }
516
600
  const body = await c.req.json();
517
- if (!STATUSES.includes(body.status)) {
518
- return c.json({ error: 'Invalid status' }, 400);
601
+ const updateInput = {};
602
+ if (body.status !== undefined) {
603
+ if (!STATUSES.includes(body.status)) {
604
+ return c.json({ error: 'Invalid status' }, 400);
605
+ }
606
+ updateInput.status = body.status;
607
+ }
608
+ if (body.title !== undefined) {
609
+ if (typeof body.title !== 'string' || !body.title.trim()) {
610
+ return c.json({ error: 'Title cannot be empty' }, 400);
611
+ }
612
+ updateInput.title = body.title.trim();
613
+ }
614
+ if (body.body !== undefined) {
615
+ updateInput.body = body.body ?? '';
616
+ }
617
+ if (body.priority !== undefined) {
618
+ updateInput.priority = body.priority && (0, models_1.isPriority)(body.priority) ? body.priority : null;
519
619
  }
520
- const task = ts.updateTask(id, { status: body.status });
620
+ const task = ts.updateTask(id, updateInput);
521
621
  if (!task) {
522
622
  return c.json({ error: 'Task not found' }, 404);
523
623
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/board/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/board/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add-helpers.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/task/add-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,gBAAgB,EAAe,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAKvC,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQzD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAOhF;AAED,wBAAgB,qBAAqB,CACnC,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,EAAE,MAAM,EAAE,GAClB,IAAI,CAuBN;AAED,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,EAAE,MAAM,EAAE,GAClB;IAAE,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IAAC,YAAY,EAAE,IAAI,EAAE,CAAC;IAAC,YAAY,EAAE,IAAI,EAAE,CAAA;CAAE,CAKzE;AAgBD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,IAAI,GAAG,IAAI,EACvB,YAAY,EAAE,IAAI,EAAE,EACpB,YAAY,EAAE,IAAI,EAAE,GACnB,MAAM,CAQR;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,IAAI,GAAG,IAAI,EACvB,YAAY,EAAE,IAAI,EAAE,EACpB,YAAY,EAAE,IAAI,EAAE,GACnB,IAAI,CAwCN"}
1
+ {"version":3,"file":"add-helpers.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/task/add-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,gBAAgB,EAAe,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAKvC,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQzD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAOhF;AAED,wBAAgB,qBAAqB,CACnC,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,EAAE,MAAM,EAAE,GAClB,IAAI,CAuBN;AAED,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,EAAE,MAAM,EAAE,GAClB;IAAE,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IAAC,YAAY,EAAE,IAAI,EAAE,CAAC;IAAC,YAAY,EAAE,IAAI,EAAE,CAAA;CAAE,CAKzE;AAiBD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,IAAI,GAAG,IAAI,EACvB,YAAY,EAAE,IAAI,EAAE,EACpB,YAAY,EAAE,IAAI,EAAE,GACnB,MAAM,CAQR;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,IAAI,GAAG,IAAI,EACvB,YAAY,EAAE,IAAI,EAAE,EACpB,YAAY,EAAE,IAAI,EAAE,GACnB,IAAI,CAwCN"}
@@ -75,6 +75,7 @@ function taskToJson(task) {
75
75
  author: task.author,
76
76
  assignees: task.assignees,
77
77
  status: task.status,
78
+ priority: task.priority,
78
79
  parent_id: task.parent_id,
79
80
  created_at: task.created_at,
80
81
  updated_at: task.updated_at,
@@ -1 +1 @@
1
- {"version":3,"file":"add-helpers.js","sourceRoot":"","sources":["../../../../src/cli/commands/task/add-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-helpers.js","sourceRoot":"","sources":["../../../../src/cli/commands/task/add-helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/task/add.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyI1D"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/task/add.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoJ1D"}