[PR #84] [MERGED] feat: add collection_type filter, pagination, and alphabetical sort to community collections #87

Closed
opened 2026-08-13 19:11:27 +02:00 by zaph0d · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/niels-emmer/myace/pull/84
Author: @niels-emmer
Created: 8/12/2026
Status: Merged
Merged: 8/12/2026
Merged by: @niels-emmer

Base: mainHead: feat/community-pagination


📝 Commits (1)

  • 1417922 feat: add collection_type filter, pagination, and alphabetical sort to community collections

📊 Changes

5 files changed (+161 additions, -68 deletions)

View changed files

📝 backend/app/api/collections.py (+32 -9)
📝 backend/tests/test_community_collections.py (+11 -8)
📝 frontend/src/lib/api.ts (+5 -3)
📝 frontend/src/pages/CommunityCollections.tsx (+108 -48)
📝 frontend/src/types/index.ts (+5 -0)

📄 Description

Summary

Adds a collection_type filter (All / Base / Additional), pagination (10 per page), and alphabetical sort to the Community Collections page.

Changes

File Change
backend/app/api/collections.py GET /community returns {items, total} paginated response; accepts type, offset, limit query params; sorts by name ascending
backend/tests/test_community_collections.py Updated 4 tests for new {items, total} response shape
frontend/src/types/index.ts Added CommunityCollectionsResponse interface
frontend/src/lib/api.ts listCommunity accepts type, offset, limit params
frontend/src/pages/CommunityCollections.tsx Replaced category filter with All/Base/Additional; added pagination controls; resets to page 1 on filter change

Testing

  • Backend: 200/200 tests pass
  • Frontend: TypeScript compiles with zero errors
  • Frontend: lint passes (0 errors)

Checklist

  • Self-review completed
  • No new warnings
  • Tests pass
  • Documentation updated (N/A — UI change, self-documenting)
  • Breaking changes: none (API response shape changed but only this frontend consumes it)

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/niels-emmer/myace/pull/84 **Author:** [@niels-emmer](https://github.com/niels-emmer) **Created:** 8/12/2026 **Status:** ✅ Merged **Merged:** 8/12/2026 **Merged by:** [@niels-emmer](https://github.com/niels-emmer) **Base:** `main` ← **Head:** `feat/community-pagination` --- ### 📝 Commits (1) - [`1417922`](https://github.com/niels-emmer/myace/commit/14179225672620de1f068081f671c9bd53779a38) feat: add collection_type filter, pagination, and alphabetical sort to community collections ### 📊 Changes **5 files changed** (+161 additions, -68 deletions) <details> <summary>View changed files</summary> 📝 `backend/app/api/collections.py` (+32 -9) 📝 `backend/tests/test_community_collections.py` (+11 -8) 📝 `frontend/src/lib/api.ts` (+5 -3) 📝 `frontend/src/pages/CommunityCollections.tsx` (+108 -48) 📝 `frontend/src/types/index.ts` (+5 -0) </details> ### 📄 Description ## Summary Adds a collection_type filter (All / Base / Additional), pagination (10 per page), and alphabetical sort to the Community Collections page. ## Changes | File | Change | |------|--------| | `backend/app/api/collections.py` | `GET /community` returns `{items, total}` paginated response; accepts `type`, `offset`, `limit` query params; sorts by name ascending | | `backend/tests/test_community_collections.py` | Updated 4 tests for new `{items, total}` response shape | | `frontend/src/types/index.ts` | Added `CommunityCollectionsResponse` interface | | `frontend/src/lib/api.ts` | `listCommunity` accepts `type`, `offset`, `limit` params | | `frontend/src/pages/CommunityCollections.tsx` | Replaced category filter with All/Base/Additional; added pagination controls; resets to page 1 on filter change | ## Testing - Backend: 200/200 tests pass - Frontend: TypeScript compiles with zero errors - Frontend: lint passes (0 errors) ## Checklist - [x] Self-review completed - [x] No new warnings - [x] Tests pass - [x] Documentation updated (N/A — UI change, self-documenting) - [x] Breaking changes: none (API response shape changed but only this frontend consumes it) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
zaph0d 2026-08-13 19:11:27 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
github-mirrors/myace#87
No description provided.