import React, { useCallback, useEffect, useRef } from 'react'; import { Button } from 'react-bootstrap'; import { useAuth } from './context/auth'; import { login } from '../../types'; import './Login.css'; /** * Formulář pro prvotní zadání přihlašovacího jména. */ export default function Login() { const auth = useAuth(); const loginRef = useRef(null); useEffect(() => { if (auth && !auth.login) { // Vyzkoušíme přihlášení "naprázdno", pokud projde, přihlásili nás trusted headers login().then(response => { const token = response.data; if (token) { auth?.setToken(token as unknown as string); // TODO vyřešit, API definice je špatně, je to skutečně string } }).catch(error => { // nezajímá nás }); } }, [auth]); const doLogin = useCallback(async () => { const length = loginRef?.current?.value.length && loginRef.current.value.replace(/\s/g, '').length if (length) { const response = await login({ body: { login: loginRef.current?.value } }); if (response.data) { auth?.setToken(response.data as unknown as string); // TODO vyřešit } } }, [auth]); if (!auth?.login) { return

Luncher

Aplikace pro profesionální management obědů

Zobrazované jméno by mělo být vaše jméno nebo přezdívka, pod kterou vás kolegové dokáží snadno identifikovat. Jméno je možné kdykoli změnit.

Zobrazované jméno: { if (event.key === 'Enter') { doLogin() } }} />
} return
Neplatný stav
}