import React from 'react';
import { Button } from '@blueprintjs/core';
import { FormattedMessage as T, Icon, If } from 'components';
import { useBalanceSheetContext } from './BalanceSheetProvider';
import FinancialLoadingBar from '../FinancialLoadingBar';
import { FinancialComputeAlert } from '../FinancialReportPage';
import { dynamicColumns } from './dynamicColumns';
/**
* Balance sheet alerts.
*/
export function BalanceSheetAlerts() {
const { isLoading, refetchBalanceSheet, balanceSheet } =
useBalanceSheetContext();
// Handle refetch the report sheet.
const handleRecalcReport = () => {
refetchBalanceSheet();
};
// Can't display any error if the report is loading.
if (isLoading) return null;
return (
{' '}
);
}
/**
* Balance sheet loading bar.
*/
export function BalanceSheetLoadingBar() {
const { isFetching } = useBalanceSheetContext();
return (
);
}
/**
* Retrieve balance sheet columns.
*/
export const useBalanceSheetColumns = () => {
// Balance sheet context.
const {
balanceSheet: { table },
} = useBalanceSheetContext();
return React.useMemo(
() => dynamicColumns(table.columns, table.rows),
[table],
);
};