// @ts-nocheck
import React, { useCallback } from 'react';
import classNames from 'classnames';
import { CloudLoadingIndicator } from '@/components';
import { useFormikContext } from 'formik';
import { FormattedMessage as T } from '@/components';
import { CLASSES } from '@/constants/classes';
import { usePaymentReceiveInnerContext } from './PaymentReceiveInnerProvider';
import { DataTableEditable } from '@/components';
import { usePaymentReceiveEntriesColumns } from './components';
import { compose, updateTableCell } from '@/utils';
/**
* Payment receive items table.
*/
export default function PaymentReceiveItemsTable({
entries,
onUpdateData,
currencyCode,
}) {
// Payment receive form context.
const { isDueInvoicesFetching } = usePaymentReceiveInnerContext();
// Payment receive entries form context.
const columns = usePaymentReceiveEntriesColumns();
// Formik context.
const {
values: { customer_id },
errors,
} = useFormikContext();
// No results message.
const noResultsMessage = customer_id ? (
) : (
);
// Handle update data.
const handleUpdateData = useCallback(
(rowIndex, columnId, value) => {
const newRows = compose(updateTableCell(rowIndex, columnId, value))(
entries,
);
onUpdateData(newRows);
},
[entries, onUpdateData],
);
return (
);
}