vue-recaptcha
Version:
ReCAPTCHA vue component
37 lines (36 loc) • 956 B
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createRecaptchaProxy = createRecaptchaProxy;
var _utils = require("../utils.cjs");
var _common = require("../script-manager/common.cjs");
function createRecaptchaProxy(isReady, getRecaptcha) {
function assertLoaded() {
(0, _utils.invariant)(isReady.value, "ReCAPTCHA is not loaded");
}
async function wait() {
await _common.recaptchaLoaded.promise;
isReady.value = true;
}
return {
async render(ele, options) {
await wait();
return getRecaptcha().render(ele, options);
},
reset(widgetId) {
if (typeof widgetId === "undefined") {
return;
}
assertLoaded();
getRecaptcha().reset(widgetId);
},
async execute(widgetId, options) {
if (typeof widgetId === "undefined") {
return;
}
await wait();
return getRecaptcha().execute(widgetId, options);
}
};
}
;