Files
goodgo-platform/e2e
Ho Ngoc Hai 4f19c97fd0 feat(web): admin flagged-listings moderation dashboard (GOO-160)
Add admin dashboard pages for reviewing and acting on user-flagged listings,
backed by the GOO-159 admin-moderation API surface (list/detail/moderate).

Pages:
- /admin/moderation/flagged — paginated, URL-synced filterable table with
  sortable columns (flag count, latest flag, created at), reason/status/date
  filters, bulk select + sticky action bar (dismiss / suspend / warn).
- /admin/moderation/flagged/[id] — listing summary, photo grid, seller card,
  full reporter list, per-listing action buttons mirroring bulk actions.

All actions go through a confirmation Dialog with optional moderator note.
Vietnamese UI throughout. Loading / empty / error / optimistic states
covered. Imports the existing admin layout via the (admin) route group.

Adds typed API surface in lib/admin-api.ts:
  getFlaggedListings, getFlaggedListingDetail, moderateFlaggedListings
plus FlagReason / FlagStatus / FlaggedAction / FlaggedSortBy and
request/response interfaces.

E2E (Playwright) at e2e/web/admin-moderation-flagged.spec.ts mocks the three
endpoints and covers: list filter + bulk dismiss happy path, detail view
with reporters + suspend action, and the empty state.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-24 12:46:54 +07:00
..