import { useState, useEffect } from 'react' import axios from 'axios' export interface LatestBeeReleaseHook { latestBeeRelease: LatestBeeRelease | null isLoadingLatestBeeRelease: boolean error: Error | null } export const useLatestBeeRelease = (): LatestBeeReleaseHook => { const [latestBeeRelease, setLatestBeeRelease] = useState(null) const [isLoadingLatestBeeRelease, setLoading] = useState(false) const [error, setError] = useState(null) useEffect(() => { axios .get(`${process.env.REACT_APP_BEE_GITHUB_REPO_URL}/releases/latest`) .then(res => { setLatestBeeRelease(res.data) }) .catch((error: Error) => { setError(error) }) .finally(() => { setLoading(false) }) }, []) return { latestBeeRelease, isLoadingLatestBeeRelease, error } }