import { useState, memo } from "react"; import { Template } from "./Template"; import type { KcProps } from "./KcProps"; import { assert } from "../tools/assert"; import { kcContext } from "../kcContext"; import { useKcMessage } from "../i18n/useKcMessage"; import { cx } from "tss-react"; import { useConstCallback } from "powerhooks"; export const Login = memo((props: KcProps) => { const { msg, msgStr } = useKcMessage(); assert( kcContext !== undefined && kcContext.pageId === "login.ftl" ); const { social, realm, url, usernameEditDisabled, login, auth, registrationDisabled } = kcContext; const [isLoginButtonDisabled, setIsLoginButtonDisabled] = useState(false); const onSubmit = useConstCallback(() => (setIsLoginButtonDisabled(true), true) ); return (