mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-06-01 13:21:37 +02:00
Migrate B2C js to typescript: contact form, form helpers, and algolia GitOrigin-RevId: b9ec423cdc551123a5b471e4a4c1a482b6a02e16
30 lines
800 B
TypeScript
30 lines
800 B
TypeScript
let _recaptchaId: string
|
|
let _recaptchaResolve: ((token: string) => void) | undefined
|
|
|
|
export function executeV2Captcha(disabled: boolean = false) {
|
|
return new Promise<void | string>((resolve, reject) => {
|
|
if (disabled || !window.grecaptcha) {
|
|
return resolve()
|
|
}
|
|
|
|
try {
|
|
if (!_recaptchaId && window.grecaptcha) {
|
|
_recaptchaId = window.grecaptcha.render('recaptcha', {
|
|
callback: (token: string) => {
|
|
if (_recaptchaResolve) {
|
|
_recaptchaResolve(token)
|
|
_recaptchaResolve = undefined
|
|
}
|
|
if (window.grecaptcha) {
|
|
window.grecaptcha.reset(_recaptchaId)
|
|
}
|
|
},
|
|
})
|
|
}
|
|
_recaptchaResolve = resolve
|
|
} catch (error) {
|
|
reject(error)
|
|
}
|
|
})
|
|
}
|