import * as React from 'react'; import { GitHub } from 'react-feather'; import { useQuery } from 'react-query'; import { fetchVersion } from 'src/api/version'; import ContentHeader from 'src/components/ContentHeader'; import { connect } from 'src/components/StateProvider'; import { getClashAPIConfig } from 'src/store/app'; import { ClashAPIConfig } from 'src/types'; import s from './About.module.scss'; type Props = { apiConfig: ClashAPIConfig }; function Version({ name, link, version, }: { name: string; link: string; version: string; }) { return (

{name}

Version {version}

Source

); } function AboutImpl(props: Props) { const { data: version } = useQuery(['/version', props.apiConfig], () => fetchVersion('/version', props.apiConfig) ); return ( <> {version && version.version ? ( ) : null} ); } const mapState = (s) => ({ apiConfig: getClashAPIConfig(s), }); export const About = connect(mapState)(AboutImpl);