// @ts-nocheck import React from 'react'; import { useHistory } from 'react-router-dom'; import { Button, NavbarGroup, Classes, NavbarDivider, Intent, } from '@blueprintjs/core'; import { useEstimateDetailDrawerContext } from './EstimateDetailDrawerProvider'; import withDialogActions from '@/containers/Dialog/withDialogActions'; import withAlertsActions from '@/containers/Alert/withAlertActions'; import withDrawerActions from '@/containers/Drawer/withDrawerActions'; import { SaleEstimateAction, AbilitySubject } from '@/constants/abilityOption'; import { EstimateMoreMenuItems } from './components'; import { DrawerActionsBar, Icon, FormattedMessage as T, Can, } from '@/components'; import { compose } from '@/utils'; import { DRAWERS } from '@/constants/drawers'; import { DialogsName } from '@/constants/dialogs'; /** * Estimate read-only details actions bar of the drawer. */ function EstimateDetailActionsBar({ // #withDialogActions openDialog, // #withAlertsActions openAlert, // #withDrawerActions closeDrawer, }) { // Estimate details drawer context. const { estimateId } = useEstimateDetailDrawerContext(); // History. const history = useHistory(); // Handle edit sale estimate. const handleEditEstimate = () => { history.push(`/estimates/${estimateId}/edit`); closeDrawer(DRAWERS.ESTIMATE_DETAILS); }; // Handle delete sale estimate. const handleDeleteEstimate = () => { openAlert('estimate-delete', { estimateId }); }; // Handle print estimate. const handlePrintEstimate = () => { openDialog('estimate-pdf-preview', { estimateId }); }; // Handle notify via SMS. const handleNotifyViaSMS = () => { openDialog('notify-estimate-via-sms', { estimateId }); }; // Handles the estimate mail dialog. const handleMailEstimate = () => { openDialog(DialogsName.EstimateMail, { estimateId }); }; return (