@wojtekmaj/react-recaptcha-v3
Version:
Integrate Google reCAPTCHA v3 with your React app
23 lines (22 loc) • 836 B
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { useEffect } from 'react';
import useReCaptcha from './useReCaptcha.js';
export default function ReCaptcha({ action, onVerify, refreshReCaptcha }) {
const { container, executeRecaptcha } = useReCaptcha();
// biome-ignore lint/correctness/useExhaustiveDependencies(refreshReCaptcha): refreshReCaptcha provides a way to execute reCAPTCHA again
useEffect(() => {
if (!executeRecaptcha) {
return;
}
(async () => {
const token = await executeRecaptcha(action);
if (token) {
onVerify(token);
}
})();
}, [action, executeRecaptcha, refreshReCaptcha, onVerify]);
if (typeof container === 'string') {
return _jsx("div", { id: container });
}
return null;
}