import React, { useEffect, useState, useCallback } from 'react'; import { __ } from '@wordpress/i18n'; import { head, isEmpty, pathOr } from 'ramda'; import NumberFlow from '@number-flow/react'; // store import { useStoreValue } from '../../store'; // components import DashboardService from '../../service/dashboard-service'; import ChartDomandePerStato from '../../components/ChartDomandePerStato'; import ChartRichiesteVsApprovate from '../../components/ChartRichiesteVsApprovate'; import BeneficiarioUltimeDomandeTable from './components/BeneficiarioUltimeDomandeTable'; const StatsBeneficiary = () => { const [mainStats, setMainStats] = useState({}); const [chartStats, setChartStats] = useState({}); const chosenCompanyId = useStoreValue('chosenCompanyId'); const companies = useStoreValue('companies'); const getStats = (resp) => { if (resp.status === 'SUCCESS') { setMainStats(resp.data.applicationWidget); setChartStats(resp.data.applicationWidgetBars); } } const errGetStats = () => {} const getStatValue = useCallback((key, fallback = '') => { return pathOr(fallback, [key], mainStats); }, [mainStats]); useEffect(() => { const existingCompany = head(companies.filter(o => o.id === chosenCompanyId)); if (existingCompany) { DashboardService.getBeneficiaryStatsPage(chosenCompanyId, getStats, errGetStats); } }, [chosenCompanyId, companies]); return(