daily-code icon indicating copy to clipboard operation
daily-code copied to clipboard

Implement Pagination for Tracks

Open javed-ak opened this issue 1 year ago • 2 comments

Description:

This PR introduces pagination functionality for the Tracks component, ensuring that the content is properly paginated and displayed in a user-friendly way. The main objective was to display a set number of tracks per page (10 in this case) and provide pagination controls to navigate through different pages of content.

PR Fixes:

  1. Pagination Logic:
  • Implemented pagination controls using the Pagination component from @repo/ui.
  • Each page displays 10 tracks (tracksPerPage = 10).
  • The PaginationPrevious, PaginationNext, and page numbers dynamically adjust based on the current page and the total number of tracks.
  1. State Management:
  • Added state to handle the current page (currentPage), filtered tracks (filteredTracks), and visible tracks (visibleTracks).
  • Pagination re-renders the visible tracks based on the selected page.

Resolves #609, #651

Before

https://github.com/user-attachments/assets/17d7ff68-e537-49f3-9495-4036d188e68e

After

https://github.com/user-attachments/assets/a9c0f92b-a89d-468f-8f72-9eca247f12e2

Checklist before requesting a review

  • [x] I have performed a self-review of my code
  • [x] I assure there is no similar/duplicate pull request regarding same issue

javed-ak avatar Sep 19 '24 16:09 javed-ak

In my view, implementing pagination on the frontend doesn’t add value or improve code efficiency. If pagination is required, it’s more efficient to handle it in the backend to optimize performance and manage resources effectively.

jals413 avatar Sep 19 '24 20:09 jals413

In my view, implementing pagination on the frontend doesn’t add value or improve code efficiency. If pagination is required, it’s more efficient to handle it in the backend to optimize performance and manage resources effectively.

I think if there were some problems then you would have been absolutely right but there are a lot of problems and they will keep getting added in the future if I am not wrong. And even now if you visit on the website you see lot of problems there, there is also a filter option so anyone can filter according to their need.

javed-ak avatar Sep 21 '24 07:09 javed-ak