Skip to content

Add search and filter controls to the admin member list - #366

Merged
Lakes41 merged 1 commit into
Adamantine-guild:mainfrom
NkechiOgbuji:feat/admin-member-search-filters
Jul 28, 2026
Merged

Add search and filter controls to the admin member list#366
Lakes41 merged 1 commit into
Adamantine-guild:mainfrom
NkechiOgbuji:feat/admin-member-search-filters

Conversation

@NkechiOgbuji

Copy link
Copy Markdown
Contributor

Close #323

Description

This PR adds client-side search and filtering capabilities to the admin member list, making it easier to manage communities with a large number of members without changing the existing /v1/members API.

The implementation introduces a searchable and filterable member list that operates entirely on the data already fetched from the backend. Administrators can now quickly locate members by wallet address or display name, and narrow results using role and tier filters. All filters work together and update the displayed results immediately after the search debounce period.

Linked Issue

Closes #329

Type of Change

  • Bug fix (UI or API integration)
  • New feature / component
  • UI/UX improvement
  • Documentation update
  • Chore / refactor / dependency update
  • Tests

Changes Made

  • Added a debounced search input for the admin member list.
  • Implemented case-insensitive partial matching for both wallet addresses and member names.
  • Added role and tier filter dropdowns.
  • Combined search, role, and tier filters using client-side filtering.
  • Added a clear empty state when no members match the selected filters.
  • Extracted reusable filtering logic to keep the page component focused and maintainable.
  • Added a reusable debounce hook for search input handling.
  • Updated mock member data with a wider variety of roles and membership tiers to better exercise filtering in mock mode.
  • Updated supporting API types and mappers where necessary.
  • Added focused unit and end-to-end tests covering:
    • wallet search
    • member name search
    • role filtering
    • tier filtering
    • combined filters
    • empty-state behavior
    • mock data variety

Validation

  • Focused unit tests passed.
  • End-to-end tests passed.
  • Search correctly matches partial wallet addresses and member names.
  • Role and tier filters combine correctly with search.
  • Empty state is displayed when no members match the current filters.
  • Functionality verified in mock mode.
  • Typecheck completed successfully.
  • Repository test suite passed.
  • Any remaining lint warnings are pre-existing and unrelated to this change.

Notes

This implementation is entirely client-side and does not modify the existing /v1/members endpoint or introduce server-side filtering. Existing authorization and membership behavior remain unchanged.

@Lakes41
Lakes41 merged commit 58f3f9f into Adamantine-guild:main Jul 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add logging/telemetry when the safe-fallback 404 mechanism triggers Add search and filter controls to the admin member list

2 participants