Skip to content

Commit c0c7a03

Browse files
committed
Add pagination to teams table
1 parent e2c68aa commit c0c7a03

File tree

1 file changed

+24
-2
lines changed

1 file changed

+24
-2
lines changed

frontend/src/app/admin/teams/page.tsx

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ import {
1111
TableHead,
1212
TableHeader,
1313
TableRow,
14+
TablePagination,
15+
useTablePagination,
1416
} from '@/components/ui/table';
1517
import {
1618
Dialog,
@@ -269,6 +271,17 @@ export default function TeamsPage() {
269271
return filtered;
270272
}, [teams, nameFilter, adminEmailFilter, statusFilter, sortField, sortDirection]);
271273

274+
// Pagination
275+
const {
276+
currentPage,
277+
pageSize,
278+
totalPages,
279+
totalItems,
280+
paginatedData,
281+
goToPage,
282+
changePageSize,
283+
} = useTablePagination(filteredAndSortedTeams, 10);
284+
272285
const hasActiveFilters = Boolean(nameFilter.trim() || adminEmailFilter.trim() || statusFilter !== 'all');
273286

274287
// Filter fields configuration
@@ -1003,14 +1016,14 @@ export default function TeamsPage() {
10031016
</TableRow>
10041017
</TableHeader>
10051018
<TableBody>
1006-
{filteredAndSortedTeams.length === 0 ? (
1019+
{paginatedData.length === 0 ? (
10071020
<TableRow>
10081021
<TableCell colSpan={7} className="text-center py-6">
10091022
No teams found. Create a new team to get started.
10101023
</TableCell>
10111024
</TableRow>
10121025
) : (
1013-
filteredAndSortedTeams.map((team) => (
1026+
paginatedData.map((team) => (
10141027
<React.Fragment key={team.id}>
10151028
<TableRow
10161029
className="cursor-pointer hover:bg-muted/50"
@@ -1381,6 +1394,15 @@ export default function TeamsPage() {
13811394
</div>
13821395
)}
13831396

1397+
<TablePagination
1398+
currentPage={currentPage}
1399+
totalPages={totalPages}
1400+
pageSize={pageSize}
1401+
totalItems={totalItems}
1402+
onPageChange={goToPage}
1403+
onPageSizeChange={changePageSize}
1404+
/>
1405+
13841406
{/* Dialog for adding existing users to a team */}
13851407
<Dialog open={isAddingUserToTeam} onOpenChange={setIsAddingUserToTeam}>
13861408
<DialogContent>

0 commit comments

Comments
 (0)