48 lines
1.3 KiB
TypeScript
48 lines
1.3 KiB
TypeScript
|
|
import React from 'react'
|
|
import DashBody from '../../Layout/Dashboard/DashBody'
|
|
import DashHeader from '../../Layout/Dashboard/DashHeader'
|
|
import LyTable from '../../Layout/Dashboard/LyTable'
|
|
import useTableColumns from './useTableColumns'
|
|
import { QueryStatusEnum } from '../../config/QueryStatus'
|
|
import { useNavigate } from 'react-router-dom'
|
|
import AddButton from '../../Layout/Dashboard/AddButton/AddButton'
|
|
import { useGetCoupon } from '../../api/Coupon'
|
|
import SearchField from '../../Layout/Dashboard/SearchField'
|
|
|
|
function Page() {
|
|
|
|
const column =useTableColumns()
|
|
const {data ,status } = useGetCoupon()
|
|
const navigate = useNavigate()
|
|
const totalRows = data?.meta?.total;
|
|
|
|
return (
|
|
// Pass Status to Layout
|
|
<DashBody status={status as QueryStatusEnum} >
|
|
|
|
<DashHeader showAddButton={false} title={'coupon'}>
|
|
<div className='RightSide d-flex gap-2 align-center '>
|
|
<SearchField searchBy={"name"} />
|
|
|
|
<AddButton onClick={()=>navigate('/coupon/add')}></AddButton>
|
|
</div>
|
|
</DashHeader>
|
|
|
|
|
|
<LyTable
|
|
data={data?.coupons}
|
|
isLoading={false}
|
|
columns={column}
|
|
total={totalRows }
|
|
is_pagination={true}
|
|
/>
|
|
|
|
|
|
</DashBody>
|
|
)
|
|
}
|
|
|
|
export default Page
|
|
|