plane
plane copied to clipboard
[WIKI-855] feat: pagination, filters, and ordering for project pages
Description
This PR adds backend-driven pagination, filtering, and ordering for project pages to ensure consistent and scalable page listing.
- Moves filtering and
order_bylogic fully to the backend - Introduces cursor-based pagination for project pages
- Adds reusable page filter utilities (search, favorites, created_by, created_at)
- Updates frontend store, services, and components to support paginated fetching and infinite scroll
- Ensures stable ordering across paginated results
Type of Change
- [x] Feature (non-breaking change which adds functionality)
Screenshots and Media (if applicable)
https://github.com/user-attachments/assets/82f8c0b4-d0d9-44ba-9ad7-277b2d5bc82e
Summary by CodeRabbit
-
New Features
- Infinite-scroll pagination with cursor-based loading, per-tab pagination state, and a skeleton loader; paginated responses (default 20).
- Advanced filters: name search, creator, favorites, and flexible creation-date ranges; filter changes trigger refetches.
-
Bug Fixes / Stability
- Safer ordering with validated sort fields and defaults; more reliable multi-page fetch handling and clearer loading/error states.
✏️ Tip: You can customize this high-level summary in your review settings.