import { useEffect } from "react"; import { headInsert } from "keycloakify/tools/headInsert"; import { pathJoin } from "keycloakify/bin/tools/pathJoin"; import { clsx } from "keycloakify/tools/clsx"; import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps"; import { useGetClassName } from "keycloakify/login/lib/useGetClassName"; import type { KcContext } from "../kcContext"; import type { I18n } from "../i18n"; export default function LoginOtp(props: PageProps, I18n>) { const { kcContext, i18n, doUseDefaultCss, Template, classes } = props; const { getClassName } = useGetClassName({ "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses, classes }); const { otpLogin, url } = kcContext; const { msg, msgStr } = i18n; useEffect(() => { let isCleanedUp = false; headInsert({ "type": "javascript", "src": pathJoin(kcContext.url.resourcesCommonPath, "node_modules/jquery/dist/jquery.min.js") }).then(() => { if (isCleanedUp) return; evaluateInlineScript(); }); return () => { isCleanedUp = true; }; }, []); return (