import React from 'react'; import { useHistory } from 'react-router-dom'; import { Button, NavbarGroup, Classes, NavbarDivider, Intent, } from '@blueprintjs/core'; import { useCreditNoteDetailDrawerContext } from './CreditNoteDetailDrawerProvider'; import withDialogActions from 'containers/Dialog/withDialogActions'; import withAlertsActions from 'containers/Alert/withAlertActions'; import withDrawerActions from 'containers/Drawer/withDrawerActions'; import { DrawerActionsBar, Can, Icon, FormattedMessage as T, If, } from 'components'; import { CreditNoteAction, AbilitySubject, } from '../../../common/abilityOption'; import { compose } from 'utils'; import { CreditNoteMenuItem } from './utils'; /** * Credit note detail actions bar. */ function CreditNoteDetailActionsBar({ // #withDialogActions openDialog, // #withAlertsActions openAlert, // #withDrawerActions closeDrawer, }) { const { creditNoteId, creditNote } = useCreditNoteDetailDrawerContext(); const history = useHistory(); // Handle edit credit note. const handleEditCreditNote = () => { history.push(`/credit-notes/${creditNoteId}/edit`); closeDrawer('credit-note-detail-drawer'); }; const handleRefundCreditNote = () => { openDialog('refund-credit-note', { creditNoteId }); }; // Handle delete credit note. const handleDeleteCreditNote = () => { openAlert('credit-note-delete', { creditNoteId }); }; const handleReconcileCreditNote = () => { openDialog('reconcile-credit-note', { creditNoteId }); }; // Handle print credit note. const handlePrintCreditNote = () => { openDialog('credit-note-pdf-preview', { creditNoteId }); }; return (