UNPKG

adonis-recaptcha2

Version:
37 lines (36 loc) 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); class RecaptchaProvider { constructor(app) { this.app = app; } register() { this.app.container.singleton('Adonis/Addons/Recaptcha2', () => { const config = this.app.container .resolveBinding('Adonis/Core/Config') .get('recaptcha', {}); return new (require('recaptcha2'))(config); }); } async boot() { const config = this.app.container .resolveBinding('Adonis/Core/Config') .get('recaptcha', {}); if (!config.views) { return; } try { const View = this.app.container.resolveBinding('Adonis/Core/View'); View.global('recaptcha', function (type = 'script') { return this.safe((type !== 'script') ? `<div class="g-recaptcha" data-sitekey="${config.siteKey}"></div>` : '<script src="//www.google.com/recaptcha/api.js" async defer></script>'); }); } catch (e) { console.warn(e); } } } exports.default = RecaptchaProvider; RecaptchaProvider.needApplication = true;