gitscope
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/modules/hosts/dialogs/delete-confirmation/index.tsx · v0.6.3
Source
1 7389ad0 Mardin 2y ago import { DeleteConfirmation } from '@marzneshin/common/components'
2 03b3dbc Mardin 2y ago import { type FC, useEffect } from 'react'
3 d636f3f Dawsh 2y ago import { HostType, useHostsDeletionMutation } from '@marzneshin/modules/hosts'
4 3b7feef Mrdn 2y ago
5 3b7feef Mrdn 2y ago interface HostsDeleteConfirmationDialogProps {
6 3b7feef Mrdn 2y ago onOpenChange: (state: boolean) => void
7 03b3dbc Mardin 2y ago onClose: () => void
8 3b7feef Mrdn 2y ago open: boolean
9 03b3dbc Mardin 2y ago entity: HostType
10 3b7feef Mrdn 2y ago }
11 3b7feef Mrdn 2y ago
12 03b3dbc Mardin 2y ago export const HostsDeleteConfirmationDialog: FC<HostsDeleteConfirmationDialogProps> = ({ onOpenChange, open, entity, onClose }) => {
13 3b7feef Mrdn 2y ago const deleteMutation = useHostsDeletionMutation();
14 03b3dbc Mardin 2y ago
15 03b3dbc Mardin 2y ago useEffect(() => {
16 03b3dbc Mardin 2y ago if (!open) onClose();
17 03b3dbc Mardin 2y ago }, [open, onClose]);
18 03b3dbc Mardin 2y ago
19 03b3dbc Mardin 2y ago return (
20 03b3dbc Mardin 2y ago <DeleteConfirmation
21 03b3dbc Mardin 2y ago open={open}
22 03b3dbc Mardin 2y ago onOpenChange={onOpenChange}
23 03b3dbc Mardin 2y ago action={() => deleteMutation.mutate(entity)}
24 03b3dbc Mardin 2y ago />
25 03b3dbc Mardin 2y ago )
26 3b7feef Mrdn 2y ago }