Added Pagination with Search and sort functionality (Users and Projects Page)
Created by: karthiek390
Description
1.) Server-side pagination to "users page" and "projects page" with options for how many items to display per page (25, 50, 100), along with the range of items on a page, and the total count of items.
2.) The search functionality dynamically filters the list of users/projects based on a search query.
3.) The sort functionality enables users to order the list of users by specific attributes (name, username, email, created_on, status, last_login, auth) on users page and (name, datasets, Created_at, Updated_at) on projects page in either ascending or descending order.
4.) The 'useQueryPersistence' is used to persist and synchronize the state of the params object with the URL query parameters, ensuring that the state is saved and can be restored from the URL, with optional history management in both users and projects page.
5.) A 'Reset' button was added to reset the default(initial) values when sorting is applied to the columns. If the page is in default sort, then the button will not appear.
Closes #[263]
Changes Made
-
Feature added -
Bug fixed -
Code refactored -
Documentation updated -
Other changes: [describe]
Screenshots
User Page:
Projects Page:
Checklist
-
Your code passes linting and coding style checks. -
Documentation has been updated to reflect the changes. -
You have reviewed your own code and resolved any merge conflicts. -
You have requested a review from at least one team member. -
Any relevant issue(s) have been linked to this PR.