| @@ -1,3 +1,5 @@ | |||
| 'use client' | |||
| import React, { useEffect, useState } from 'react' | |||
| import { Github } from '@/app/components/base/icons/src/public/common' | |||
| import type { GithubRepo } from '@/models/common' | |||
| @@ -10,18 +12,26 @@ const getStar = async () => { | |||
| return res.json() | |||
| } | |||
| const GithubStar = async () => { | |||
| let githubRepo: GithubRepo = { stargazers_count: 0 } | |||
| if (process.env.NODE_ENV === 'development') | |||
| return null | |||
| try { | |||
| githubRepo = await getStar() | |||
| } | |||
| catch (e) { | |||
| const GithubStar = () => { | |||
| const [githubRepo, setGithubRepo] = useState<GithubRepo>({ stargazers_count: 6000 }) | |||
| const [isFetched, setIsFetched] = useState(false) | |||
| useEffect(() => { | |||
| (async () => { | |||
| try { | |||
| if (process.env.NODE_ENV === 'development') | |||
| return | |||
| await setGithubRepo(await getStar()) | |||
| setIsFetched(true) | |||
| } | |||
| catch (e) { | |||
| } | |||
| })() | |||
| }, []) | |||
| if (!isFetched) | |||
| return null | |||
| } | |||
| return ( | |||
| <a | |||