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