import { useRef } from 'react'; import { AlertDialog, AlertDialogBody, AlertDialogContent, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, Button, useDisclosure, } from '@chakra-ui/react'; import { useElectronEvent } from '../../../../common/hooks/useElectronEvent'; import { isLocalhost, isOntimeCloud } from '../../../../externals'; import * as Panel from '../../panel-utils/PanelUtils'; export default function ShutdownPanel() { const { isElectron, sendToElectron } = useElectronEvent(); const { isOpen, onOpen, onClose } = useDisclosure(); const cancelRef = useRef(null); const sendShutdown = () => { sendToElectron('shutdown', 'now'); onClose(); }; const canShutdown = isElectron || isLocalhost; return ( <> Shutdown Ontime {isOntimeCloud ? ( For security reasons, shutting down the server must be done from the Ontime Cloud dashboard. ) : ( This will shutdown the Ontime server.
The runtime state will be lost, but your project is kept for next time.
)} {!canShutdown && ( Note: Ontime can only be shutdown from the machine it is running in. )} Ontime Shutdown This will shutdown the Ontime server.
Are you sure?
); }