import React, { HTMLProps, useMemo, useState } from 'react'; import { Link } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import { useGetMetaQuery, useGetSessionQuery } from '../services/session'; import { CHANGELOG_URL } from '../const'; import { createGacha } from '../../common/functions/create-gacha'; export type HeaderProps = { hasTopLink?: boolean; className?: HTMLProps['className'], style?: HTMLProps['style'], }; export const Header: React.FC = ({hasTopLink, children, className, style}) => { const {data: meta} = useGetMetaQuery(undefined); const {data: session} = useGetSessionQuery(undefined); const { t } = useTranslation(); const [generation, setGeneration] = useState(0); const gacha = useMemo(() => createGacha(), [generation]); return (

{hasTopLink ? {t('title')} : t('title')} {meta && ( v{meta?.version} )}

{gacha} {session && ( )}

{children}
); };