feat: add context menu.

This commit is contained in:
elforjani13
2021-12-20 11:12:38 +02:00
parent 7095903653
commit 0ca0a2ee0b
3 changed files with 70 additions and 2 deletions

View File

@@ -1,13 +1,28 @@
import React from 'react'; import React from 'react';
import { useHistory } from 'react-router-dom';
import { DataTable } from '../../../../../components'; import { DataTable } from '../../../../../components';
import { useItemDetailDrawerContext } from '../../ItemDetailDrawerProvider'; import { useItemDetailDrawerContext } from '../../ItemDetailDrawerProvider';
import { useItemAssociatedBillTransactions } from 'hooks/query'; import { useItemAssociatedBillTransactions } from 'hooks/query';
import { useBillTransactionsColumns, ActionsMenu } from './components'; import { useBillTransactionsColumns, ActionsMenu } from './components';
import withAlertsActions from 'containers/Alert/withAlertActions';
import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { compose } from 'utils';
/** /**
* Bill payment transactions data table. * Bill payment transactions data table.
*/ */
export default function BillPaymentTransactions() { function BillPaymentTransactions({
// #withAlertsActions
openAlert,
// #withDrawerActions
closeDrawer,
}) {
const history = useHistory();
const columns = useBillTransactionsColumns(); const columns = useBillTransactionsColumns();
const { itemId } = useItemDetailDrawerContext(); const { itemId } = useItemDetailDrawerContext();
@@ -21,6 +36,18 @@ export default function BillPaymentTransactions() {
enabled: !!itemId, enabled: !!itemId,
}); });
// Handles delete payment transactions.
const handleDeletePaymentTransactons = ({ bill_id }) => {
openAlert('bill-delete', {
billId: bill_id,
});
};
// Handles edit payment transactions.
const handleEditPaymentTransactions = ({ bill_id }) => {
history.push(`/bills/${bill_id}/edit`);
closeDrawer('item-detail-drawer');
};
return ( return (
<DataTable <DataTable
columns={columns} columns={columns}
@@ -29,6 +56,14 @@ export default function BillPaymentTransactions() {
headerLoading={isBillTransactionsLoading} headerLoading={isBillTransactionsLoading}
progressBarLoading={isBillTransactionFetching} progressBarLoading={isBillTransactionFetching}
ContextMenu={ActionsMenu} ContextMenu={ActionsMenu}
payload={{
onEdit: handleEditPaymentTransactions,
onDelete: handleDeletePaymentTransactons,
}}
/> />
); );
} }
export default compose(
withAlertsActions,
withDrawerActions,
)(BillPaymentTransactions);

View File

@@ -38,6 +38,18 @@ function InvoicePaymentTransactions({
enabled: !!itemId, enabled: !!itemId,
}); });
// Handles delete payment transactions.
const handleDeletePaymentTransactons = ({ invoice_id }) => {
openAlert('invoice-delete', {
invoiceId: invoice_id,
});
};
// Handles edit payment transactions.
const handleEditPaymentTransactions = ({ invoice_id }) => {
history.push(`/invoices/${invoice_id}/edit`);
closeDrawer('item-detail-drawer');
};
return ( return (
<DataTable <DataTable
columns={columns} columns={columns}
@@ -46,6 +58,10 @@ function InvoicePaymentTransactions({
headerLoading={isInvoiceTransactionsLoading} headerLoading={isInvoiceTransactionsLoading}
progressBarLoading={isInvoiceTransactionFetching} progressBarLoading={isInvoiceTransactionFetching}
ContextMenu={ActionsMenu} ContextMenu={ActionsMenu}
payload={{
onEdit: handleEditPaymentTransactions,
onDelete: handleDeletePaymentTransactons,
}}
/> />
); );
} }

View File

@@ -35,7 +35,20 @@ function ReceiptPaymentTransactions({
} = useItemAssociatedReceiptTransactions(itemId, { } = useItemAssociatedReceiptTransactions(itemId, {
enabled: !!itemId, enabled: !!itemId,
}); });
// Handles delete payment transactions.
const handleDeletePaymentTransactons = ({ receipt_id }) => {
openAlert('receipt-delete', {
receiptId: receipt_id,
});
};
// Handles edit payment transactions.
const handleEditPaymentTransactions = ({ receipt_id }) => {
history.push(`/receipts/${receipt_id}/edit`);
closeDrawer('item-detail-drawer');
};
return ( return (
<DataTable <DataTable
columns={columns} columns={columns}
@@ -44,6 +57,10 @@ function ReceiptPaymentTransactions({
headerLoading={isReceiptTransactionsLoading} headerLoading={isReceiptTransactionsLoading}
progressBarLoading={isReceiptTransactionFetching} progressBarLoading={isReceiptTransactionFetching}
ContextMenu={ActionsMenu} ContextMenu={ActionsMenu}
payload={{
onEdit: handleEditPaymentTransactions,
onDelete: handleDeletePaymentTransactons,
}}
/> />
); );
} }