import { useEffect, useState } from 'react'; import styled from 'styled-components'; import { Card } from 'components/Form/Card'; import Row from 'components/Form/Row'; import colors from 'styles/colors'; const LearnMoreInfo = styled.p` font-size: 0.8rem; margin-top: 0.5rem; opacity: 0.75; a { color: ${colors.primary}; } `; const CarbonCard = (props: { data: any, title: string, actionButtons: any }): JSX.Element => { const carbons = props.data.statistics; const initialUrl = props.data.scanUrl; const [carbonData, setCarbonData] = useState<{c?: number, p?: number}>({}); useEffect(() => { const fetchCarbonData = async () => { try { const response = await fetch(`https://api.websitecarbon.com/b?url=${encodeURIComponent(initialUrl)}`); const data = await response.json(); setCarbonData(data); } catch (error) { console.error('Error fetching carbon data:', error); } }; fetchCarbonData(); }, [initialUrl]); return ( { (!carbons?.adjustedBytes && !carbonData.c) &&

Unable to calculate carbon footprint for host

} { carbons?.adjustedBytes > 0 && <> } {carbonData.c && } {carbonData.p && }
Learn more at websitecarbon.com
); } export default CarbonCard;