Skip to content

Implementation: Show total group count for users in admin users table [Frontend]

Problem to solve

In #249589 (closed) we added a GraphQL endpoint to get the groupCount.

The total group count for each user should be shown in the admin/users table.

Dependant on Convert Admin "Users" view from HAML to Vue &4683.

Parent epic: &4432 (closed)

Proposal

Show the truncated total number of authorized Groups for each user.

Users_list_with_group_and_project_count

Implementation outline

  1. Asynchronously fetch and display the user_group_counts for all users using the GraphQL API #249589 (closed).
    • Important: This should be fetched independently of other user data due to the performance concerns noted below.
    • Suggestion: Use a skeleton loader as a placeholder while the content is busy loading.

Access

  • Administrator users can access the group count of all users in the system.
  • Non-administrator users can access the group count of only self

Feature Flag

The feature is gated behind the flag: user_group_counts, and is disabled by default.

Additional notes

The additional complexity for group count is due to the performance concerns we've dicussed here and discovered in !39581 (comment 399390950), and the implementation is based on database and frontend maintainer feedback with the intent to get the page time below 100ms by asynchronously loading the groups count.

Edited by Jiaan Louw