import {browserHistory} from 'react-router'; import {deleteMonitor, updateMonitor} from 'sentry/actionCreators/monitors'; import {Button} from 'sentry/components/button'; import ButtonBar from 'sentry/components/buttonBar'; import Confirm from 'sentry/components/confirm'; import {IconDelete, IconEdit, IconPause, IconPlay} from 'sentry/icons'; import {t} from 'sentry/locale'; import useApi from 'sentry/utils/useApi'; import {normalizeUrl} from 'sentry/utils/withDomainRequired'; import CronsFeedbackButton from './cronsFeedbackButton'; import {Monitor, MonitorStatus} from './types'; type Props = { monitor: Monitor; onUpdate: (data: Monitor) => void; orgId: string; }; const MonitorHeaderActions = ({monitor, orgId, onUpdate}: Props) => { const api = useApi(); const handleDelete = async () => { await deleteMonitor(api, orgId, monitor.id); browserHistory.push(normalizeUrl(`/organizations/${orgId}/crons/`)); }; const handleUpdate = async (data: Partial) => { const resp = await updateMonitor(api, orgId, monitor.id, data); onUpdate?.(resp); }; const toggleStatus = () => handleUpdate({ status: monitor.status === MonitorStatus.DISABLED ? MonitorStatus.ACTIVE : MonitorStatus.DISABLED, }); return ( ); }; export default MonitorHeaderActions;