import * as React from "react" import { Application } from "../../common/api" import { HttpError } from "../../common/http" import { authenticate, setAuthed } from "../api" import { FieldError } from "../components/error" export interface LoginProps { setApp(app: Application): void } /** * Login page. Will redirect on success. */ export const Login: React.FunctionComponent = (props) => { const [password, setPassword] = React.useState("") const [error, setError] = React.useState() async function handleSubmit(event: React.FormEvent): Promise { event.preventDefault() authenticate({ password }) .then((response) => { if (response.app) { props.setApp(response.app) } setAuthed(true) }) .catch(setError) } React.useEffect(() => { authenticate() .then(() => setAuthed(true)) .catch(() => undefined) }, []) return (
Welcome to code-server
Please log in below
): void => setPassword(event.target.value)} />
{error ? : undefined} ) }