telegram-login-button
Version:
React Telegram login button
3 lines (2 loc) • 1.59 kB
JavaScript
;function _interopDefault(t){return t&&"object"==typeof t&&"default"in t?t.default:t}var React=require("react"),React__default=_interopDefault(React),__assign=function(){return(__assign=Object.assign||function(t){for(var e,a=1,r=arguments.length;a<r;a++)for(var n in e=arguments[a])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)},TelegramLoginButton=function(t){var e=t.wrapperProps,a=t.dataAuthUrl,r=t.usePic,n=void 0!==r&&r,i=t.botName,u=t.className,s=t.buttonSize,o=void 0===s?"large":s,d=t.dataOnauth,c=t.cornerRadius,l=t.requestAccess,f=void 0===l||l,g=React.useRef(null);return React.useEffect((function(){if(null!==g.current){if(void 0===d&&void 0===a)throw new Error("One of this props should be defined: dataAuthUrl (redirect URL), dataOnauth (callback fn) should be defined.");"function"==typeof d&&(window.TelegramLoginWidget={dataOnauth:function(t){return d(t)}});var t=document.createElement("script");t.src="https://telegram.org/js/telegram-widget.js?22",t.setAttribute("data-telegram-login",i),t.setAttribute("data-size",o),void 0!==c&&t.setAttribute("data-radius",c.toString()),f&&t.setAttribute("data-request-access","write"),t.setAttribute("data-userpic",n.toString()),"string"==typeof a?t.setAttribute("data-auth-url",a):t.setAttribute("data-onauth","TelegramLoginWidget.dataOnauth(user)"),t.async=!0,g.current.appendChild(t)}}),[i,o,c,d,f,n,g,a]),React__default.createElement("div",__assign({ref:g,className:u},e))};module.exports=TelegramLoginButton;
//# sourceMappingURL=telegram-login-button.cjs.production.js.map