multica/apps/web/features/issues
LinYushen ec934f3a8b
fix(web): add load-more pagination for Done column on issue board (#492)
* fix(web): add load-more pagination for Done column on issue board

The Done column was capped at 50 issues with no way to load more.
Track doneTotal in the TQ cache and add a useLoadMoreDoneIssues hook
that fetches the next page and merges it into the unified issue cache.
The Done column now shows a "Load more" button when there are
additional items.

- shared/types/api.ts: add doneTotal to ListIssuesResponse
- core/issues/queries.ts: store doneTotal from the done-status response
- core/issues/mutations.ts: add useLoadMoreDoneIssues hook, update
  create/delete mutations to maintain doneTotal
- core/issues/ws-updaters.ts: maintain doneTotal on WS events
- features/issues/components/board-column.tsx: accept optional footer
- features/issues/components/board-view.tsx: render Load more button
  in Done column

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(web): address review issues in done-column load-more

1. Fix total over-counting: loadMore no longer inflates total since
   the initial query already includes all done issues in total count.
2. Fix onIssueUpdated: maintain doneTotal when issue status changes
   to/from done via WS events.
3. Make doneTotal optional in ListIssuesResponse since it's a
   frontend-only field not returned by the backend API. All reads
   now use ?? 0 fallback.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 14:58:51 +08:00
..
components fix(web): add load-more pagination for Done column on issue board (#492) 2026-04-08 14:58:51 +08:00
config feat(web): add kanban board + list view + filtering to My Issues page 2026-04-01 16:56:22 +08:00
hooks fix(web): replace actor_id self-event filtering with idempotent cache updates 2026-04-08 13:57:24 +08:00
stores feat(web): add scope tabs to Issues and My Issues pages 2026-04-01 18:30:40 +08:00
utils feat(issues): add assignee and creator filters with two-level dropdown 2026-03-31 11:04:21 +08:00
index.ts feat(web): add kanban board + list view + filtering to My Issues page 2026-04-01 16:56:22 +08:00
store.ts refactor(issues): migrate all consumers to TanStack Query (Phase 1, Commits 5-10) 2026-04-07 15:46:08 +08:00