chore: implement permission guard for edit, approve/reject, and delete button

This commit is contained in:
ValdiANS
2026-02-02 10:54:34 +07:00
parent 66c8f67245
commit 995d20bdf3
@@ -36,6 +36,7 @@ import { ColumnDef } from '@tanstack/react-table';
import { useSelect } from '@/components/input/SelectInput'; import { useSelect } from '@/components/input/SelectInput';
import { KandangApi } from '@/services/api/master-data'; import { KandangApi } from '@/services/api/master-data';
import DebouncedTextInput from '@/components/input/DebouncedTextInput'; import DebouncedTextInput from '@/components/input/DebouncedTextInput';
import RequirePermission from '@/components/helper/RequirePermission';
interface Kandang { interface Kandang {
id: string; id: string;
@@ -389,6 +390,7 @@ export function ListDailyChecklistContent() {
</Button> </Button>
{row.original.status === 'DRAFT' && ( {row.original.status === 'DRAFT' && (
<RequirePermission permissions='lti.daily_checklist.create'>
<Button <Button
size='sm' size='sm'
variant='outline' variant='outline'
@@ -398,10 +400,11 @@ export function ListDailyChecklistContent() {
<Edit className='w-4 h-4 mr-1' /> <Edit className='w-4 h-4 mr-1' />
Edit Edit
</Button> </Button>
</RequirePermission>
)} )}
{row.original.status === 'SUBMITTED' && ( {row.original.status === 'SUBMITTED' && (
<> <RequirePermission permissions='lti.daily_checklist.create'>
<Button <Button
size='sm' size='sm'
onClick={() => handleApprove(row.original)} onClick={() => handleApprove(row.original)}
@@ -419,10 +422,11 @@ export function ListDailyChecklistContent() {
<XCircle className='w-4 h-4 mr-1' /> <XCircle className='w-4 h-4 mr-1' />
Reject Reject
</Button> </Button>
</> </RequirePermission>
)} )}
{row.original.status === 'DRAFT' && ( {row.original.status === 'DRAFT' && (
<RequirePermission permissions='lti.daily_checklist.create'>
<Button <Button
size='sm' size='sm'
variant='destructive' variant='destructive'
@@ -432,6 +436,7 @@ export function ListDailyChecklistContent() {
<Trash2 className='w-4 h-4 mr-1' /> <Trash2 className='w-4 h-4 mr-1' />
Hapus Hapus
</Button> </Button>
</RequirePermission>
)} )}
</div> </div>
), ),