File tree Expand file tree Collapse file tree 3 files changed +51
-34
lines changed Expand file tree Collapse file tree 3 files changed +51
-34
lines changed Original file line number Diff line number Diff line change
1
+ import { Button , Flex } from "@chakra-ui/react"
2
+
3
+ type PaginationFooterProps = {
4
+ hasNextPage ?: boolean
5
+ hasPreviousPage ?: boolean
6
+ onChangePage : ( newPage : number ) => void
7
+ page : number
8
+ }
9
+
10
+ export function PaginationFooter ( {
11
+ hasNextPage,
12
+ hasPreviousPage,
13
+ onChangePage,
14
+ page,
15
+ } : PaginationFooterProps ) {
16
+ return (
17
+ < Flex
18
+ gap = { 4 }
19
+ alignItems = "center"
20
+ mt = { 4 }
21
+ direction = "row"
22
+ justifyContent = "flex-end"
23
+ >
24
+ < Button
25
+ onClick = { ( ) => onChangePage ( page - 1 ) }
26
+ isDisabled = { ! hasPreviousPage || page <= 1 }
27
+ >
28
+ Previous
29
+ </ Button >
30
+ < span > Page { page } </ span >
31
+ < Button isDisabled = { ! hasNextPage } onClick = { ( ) => onChangePage ( page + 1 ) } >
32
+ Next
33
+ </ Button >
34
+ </ Flex >
35
+ )
36
+ }
Original file line number Diff line number Diff line change 1
1
import {
2
2
Badge ,
3
3
Box ,
4
- Button ,
5
4
Container ,
6
5
Flex ,
7
6
Heading ,
@@ -23,6 +22,7 @@ import { type UserPublic, UsersService } from "../../client"
23
22
import AddUser from "../../components/Admin/AddUser"
24
23
import ActionsMenu from "../../components/Common/ActionsMenu"
25
24
import Navbar from "../../components/Common/Navbar"
25
+ import { PaginationFooter } from "../../components/Common/PaginationFooter.tsx"
26
26
27
27
const usersSearchSchema = z . object ( {
28
28
page : z . number ( ) . catch ( 1 ) ,
@@ -128,7 +128,7 @@ function UsersTable() {
128
128
< ActionsMenu
129
129
type = "User"
130
130
value = { user }
131
- disabled = { currentUser ?. id === user . id ? true : false }
131
+ disabled = { currentUser ?. id === user . id }
132
132
/>
133
133
</ Td >
134
134
</ Tr >
@@ -137,21 +137,12 @@ function UsersTable() {
137
137
) }
138
138
</ Table >
139
139
</ TableContainer >
140
- < Flex
141
- gap = { 4 }
142
- alignItems = "center"
143
- mt = { 4 }
144
- direction = "row"
145
- justifyContent = "flex-end"
146
- >
147
- < Button onClick = { ( ) => setPage ( page - 1 ) } isDisabled = { ! hasPreviousPage } >
148
- Previous
149
- </ Button >
150
- < span > Page { page } </ span >
151
- < Button isDisabled = { ! hasNextPage } onClick = { ( ) => setPage ( page + 1 ) } >
152
- Next
153
- </ Button >
154
- </ Flex >
140
+ < PaginationFooter
141
+ onChangePage = { setPage }
142
+ page = { page }
143
+ hasNextPage = { hasNextPage }
144
+ hasPreviousPage = { hasPreviousPage }
145
+ />
155
146
</ >
156
147
)
157
148
}
Original file line number Diff line number Diff line change 1
1
import {
2
- Button ,
3
2
Container ,
4
- Flex ,
5
3
Heading ,
6
4
SkeletonText ,
7
5
Table ,
@@ -21,6 +19,7 @@ import { ItemsService } from "../../client"
21
19
import ActionsMenu from "../../components/Common/ActionsMenu"
22
20
import Navbar from "../../components/Common/Navbar"
23
21
import AddItem from "../../components/Items/AddItem"
22
+ import { PaginationFooter } from "../../components/Common/PaginationFooter.tsx"
24
23
25
24
const itemsSearchSchema = z . object ( {
26
25
page : z . number ( ) . catch ( 1 ) ,
@@ -112,21 +111,12 @@ function ItemsTable() {
112
111
) }
113
112
</ Table >
114
113
</ TableContainer >
115
- < Flex
116
- gap = { 4 }
117
- alignItems = "center"
118
- mt = { 4 }
119
- direction = "row"
120
- justifyContent = "flex-end"
121
- >
122
- < Button onClick = { ( ) => setPage ( page - 1 ) } isDisabled = { ! hasPreviousPage } >
123
- Previous
124
- </ Button >
125
- < span > Page { page } </ span >
126
- < Button isDisabled = { ! hasNextPage } onClick = { ( ) => setPage ( page + 1 ) } >
127
- Next
128
- </ Button >
129
- </ Flex >
114
+ < PaginationFooter
115
+ page = { page }
116
+ onChangePage = { setPage }
117
+ hasNextPage = { hasNextPage }
118
+ hasPreviousPage = { hasPreviousPage }
119
+ />
130
120
</ >
131
121
)
132
122
}
You can’t perform that action at this time.
0 commit comments