import { Button, Popconfirm } from 'antd'

import { postApiV1AdminRbacPrivilegeDeleteId } from 'apiClient/services/account'
import { FormsRbacPrivilege } from 'apiClient/services/account/interface'

interface DeletionPopProps {
  record: FormsRbacPrivilege
  onComplete?: () => void
}

const DeletionPop: React.FC<React.PropsWithChildren<DeletionPopProps>> = ({
  record,
  onComplete
}) => {
  const handleDelete = async (id: string) => {
    await postApiV1AdminRbacPrivilegeDeleteId(id as any)
    onComplete?.()
  }

  return (
    <Popconfirm
      title="Sure to delete this privilege?"
      okText="Confirm"
      placement="topRight"
      onConfirm={() => handleDelete(record.id!)}
    >
      <Button type="link" danger style={{ padding: 0 }}>
        Delete
      </Button>
    </Popconfirm>
  )
}

export default DeletionPop
