import { useEffect, memo } from "react"; import { Template } from "./Template"; import type { KcProps } from "./KcProps"; import type { KcContext } from "../KcContext"; import { useKcMessage } from "../i18n/useKcMessage"; import { appendHead } from "../tools/appendHead"; import { join as pathJoin } from "path"; import { cx } from "tss-react"; export const LoginOtp = memo(({ kcContext, ...props }: { kcContext: KcContext.LoginOtp; } & KcProps) => { const { otpLogin, url } = kcContext; const { msg, msgStr } = useKcMessage(); useEffect( () => { let isCleanedUp = false; appendHead({ "type": "javascript", "src": pathJoin( kcContext.url.resourcesCommonPath, "node_modules/jquery/dist/jquery.min.js" ) }).then(() => { if (isCleanedUp) return; evaluateInlineScript(); }); return () => { isCleanedUp = true }; }, [] ); return (