import React, { useCallback, useMemo } from 'react'; import { useIntl } from 'react-intl'; import FinancialSheet from 'components/FinancialSheet'; import DataTable from 'components/DataTable'; import { useJournalSheetContext } from './JournalProvider'; import { defaultExpanderReducer } from 'utils'; import { useJournalTableColumns } from './components'; export default function JournalSheetTable({ // #ownProps onFetchData, companyName, }) { const { formatMessage } = useIntl(); // Journal sheet context. const { journalSheet: { tableRows, query }, isLoading } = useJournalSheetContext(); // Retreive the journal table columns. const columns = useJournalTableColumns(); // Default expanded rows of general journal table. const expandedRows = useMemo(() => defaultExpanderReducer([], 1), []); const rowClassNames = useCallback((row) => { const { original } = row; const rowTypes = Array.isArray(original.rowType) ? original.rowType : [original.rowType]; return { ...rowTypes.reduce((acc, rowType) => { acc[`row_type--${rowType}`] = rowType; return acc; }, {}), }; }, []); return ( ); }