// @ts-nocheck import React from 'react'; import styled from 'styled-components'; import moment from 'moment'; import { Tabs, Tab, Button, Intent } from '@blueprintjs/core'; import { Formik, Form } from 'formik'; import { FormattedMessage as T } from '@/components'; import { useFeatureCan } from '@/hooks/state'; import { Features } from '@/constants'; import withBalanceSheet from './withBalanceSheet'; import withBalanceSheetActions from './withBalanceSheetActions'; import BalanceSheetHeaderGeneralPanal from './BalanceSheetHeaderGeneralPanal'; import BalanceSheetHeaderComparisonPanal from './BalanceSheetHeaderComparisonPanal'; import BalanceSheetHeaderDimensionsPanel from './BalanceSheetHeaderDimensionsPanel'; import FinancialStatementHeader from '../../FinancialStatements/FinancialStatementHeader'; import { compose, transformToForm } from '@/utils'; import { getBalanceSheetHeaderValidationSchema, getDefaultBalanceSheetQuery, } from './utils'; /** * Balance sheet header. */ function BalanceSheetHeader({ // #ownProps onSubmitFilter, pageFilter, // #withBalanceSheet balanceSheetDrawerFilter, // #withBalanceSheetActions toggleBalanceSheetFilterDrawer: toggleFilterDrawer, }) { const defaultValues = getDefaultBalanceSheetQuery(); // Filter form initial values. const initialValues = transformToForm( { ...defaultValues, ...pageFilter, fromDate: moment(pageFilter.fromDate).toDate(), toDate: moment(pageFilter.toDate).toDate(), }, defaultValues, ); // Validation schema. const validationSchema = getBalanceSheetHeaderValidationSchema(); // Handle form submit. const handleSubmit = (values, actions) => { onSubmitFilter(values); toggleFilterDrawer(false); actions.setSubmitting(false); }; // Handle cancel button click. const handleCancelClick = () => { toggleFilterDrawer(false); }; // Handle drawer close action. const handleDrawerClose = () => { toggleFilterDrawer(false); }; // Detarmines the given feature whether is enabled. const { featureCan } = useFeatureCan(); const isBranchesFeatureCan = featureCan(Features.Branches); return (
} panel={} /> } panel={} /> {isBranchesFeatureCan && ( } panel={} /> )}
); } export default compose( withBalanceSheet(({ balanceSheetDrawerFilter }) => ({ balanceSheetDrawerFilter, })), withBalanceSheetActions, )(BalanceSheetHeader); const BalanceSheetFinancialHeader = styled(FinancialStatementHeader)` .bp3-drawer { max-height: 520px; } `;