11import { Plus } from "lucide-react" ;
22
3- import {
4- Button ,
5- Card ,
6- CardContent ,
7- CardHeader ,
8- CardTitle ,
9- Select ,
10- SelectContent ,
11- SelectItem ,
12- SelectTrigger ,
13- SelectValue ,
14- } from "@shared/ui" ;
3+ import { Button , Card , CardContent , CardHeader , CardTitle } from "@shared/ui" ;
154
165import { PostDetailDialog , usePosts } from "@entities/post" ;
176
@@ -20,6 +9,7 @@ import { PostAddDialogContainer, PostEditDialogContainer, useNewPostForm } from
209import { usePostFilter } from "@/features/post-filter" ;
2110import { PostFilterContainer } from "@/features/post-filter/ui/post-filter-container" ;
2211import { PostsTableContainer } from "@/features/post-load" ;
12+ import { PostPagination } from "@/features/post-pagination/ui/post-pagination" ;
2313import { UserDetailDialogContainer } from "@/features/user-load" ;
2414
2515const PostsManager = ( ) => {
@@ -53,30 +43,14 @@ const PostsManager = () => {
5343 { isLoading ? < div className = "flex justify-center p-4" > 로딩 중...</ div > : < PostsTableContainer /> }
5444
5545 { /* 페이지네이션 */ }
56- < div className = "flex justify-between items-center" >
57- < div className = "flex items-center gap-2" >
58- < span > 표시</ span >
59- < Select value = { limit . toString ( ) } onValueChange = { ( value ) => setLimit ( Number ( value ) ) } >
60- < SelectTrigger className = "w-[180px]" >
61- < SelectValue placeholder = "10" />
62- </ SelectTrigger >
63- < SelectContent >
64- < SelectItem value = "10" > 10</ SelectItem >
65- < SelectItem value = "20" > 20</ SelectItem >
66- < SelectItem value = "30" > 30</ SelectItem >
67- </ SelectContent >
68- </ Select >
69- < span > 항목</ span >
70- </ div >
71- < div className = "flex gap-2" >
72- < Button disabled = { skip === 0 } onClick = { ( ) => setSkip ( Math . max ( 0 , skip - limit ) ) } >
73- 이전
74- </ Button >
75- < Button disabled = { skip + limit >= total } onClick = { ( ) => setSkip ( skip + limit ) } >
76- 다음
77- </ Button >
78- </ div >
79- </ div >
46+ < PostPagination
47+ total = { total }
48+ skip = { skip }
49+ limit = { limit }
50+ onChangeLimit = { ( value ) => setLimit ( Number ( value ) ) }
51+ onPrev = { ( ) => setSkip ( Math . max ( 0 , skip - limit ) ) }
52+ onNext = { ( ) => setSkip ( skip + limit ) }
53+ />
8054 </ div >
8155 </ CardContent >
8256
0 commit comments