@vkontakte/superappkit
Advanced tools
Comparing version 1.13.0 to 1.14.0-beta.1.1
@@ -0,0 +0,0 @@ interface BridgeMessageData<H> { |
@@ -0,0 +0,0 @@ export declare const VERSION = "0.0.2"; |
@@ -0,0 +0,0 @@ export declare enum ERROR_CODES { |
@@ -0,0 +0,0 @@ export declare type FrameProperties = { |
@@ -0,0 +0,0 @@ import { FrameSettings } from '#/common/types'; |
@@ -0,0 +0,0 @@ export declare enum ConfigEvents { |
@@ -0,0 +0,0 @@ import mitt from 'mitt'; |
@@ -0,0 +0,0 @@ export declare enum DataPolicyEventsSDK { |
@@ -1,2 +0,2 @@ | ||
import { AuthButtonParams, AuthButtonType, RedirectAuthParams, UserVisibleAuthParams, VKAuthSuccessResult, VKOneTapAuthResult, VKUserVisibleAuthResult } from './types'; | ||
import { AuthButtonParams, AuthButtonType, ButtonOneTapAuthParams, RedirectAuthParams, UserVisibleAuthParams, VKAuthSuccessResult, VKOneTapAuthResult, VKOneTapAuthButtonResult, VKUserVisibleAuthResult } from './types'; | ||
declare class Connect { | ||
@@ -6,2 +6,5 @@ private readonly flags; | ||
readonly oneTapAuth: (oneTapAuthType: AuthButtonType, params: AuthButtonParams) => VKOneTapAuthResult | null; | ||
readonly floatingOneTapAuth: (params: ButtonOneTapAuthParams) => VKOneTapAuthResult | null; | ||
readonly buttonOneTapAuth: (params: ButtonOneTapAuthParams) => VKOneTapAuthButtonResult | null; | ||
private readonly handleOneTapEvents; | ||
private readonly userDataPolicy; | ||
@@ -8,0 +11,0 @@ private readonly captcha; |
@@ -49,2 +49,8 @@ import { AuthCaptchaEventsSDK, ButtonOneTapAuthEventsSDK, DataPolicyEventsSDK, FloatingOneTapAuthEventsSDK, OneTapAuthEventsSDK } from '#/connect/events'; | ||
}; | ||
export declare type VKOneTapAuthButtonResult = { | ||
destroy: () => void; | ||
getFrame: () => HTMLIFrameElement | null; | ||
authReadyPromise: Promise<OneTapAuthEventsSDK>; | ||
userDataPolicy?: VKDataPolicyResult; | ||
}; | ||
export declare type VKDataPolicyResult = { | ||
@@ -86,5 +92,7 @@ show: () => Promise<any>; | ||
} | ||
declare type ButtonOneTapAuthDisplayModes = 'default' | 'namePhone' | 'phoneName'; | ||
export declare type ButtonOneTapAuthOptions = { | ||
showAgreements?: number; | ||
showAlternativeLogin?: number; | ||
displayMode?: ButtonOneTapAuthDisplayModes; | ||
}; | ||
@@ -111,1 +119,2 @@ export declare type AuthButtonType = 'floating' | 'button'; | ||
}; | ||
export {}; |
@@ -0,0 +0,0 @@ import { AuthAction, AdaptivitySwitchObserver, VKOneTapAuthOptions, ButtonOneTapAuthOptions } from '#/connect/types'; |
@@ -1,1 +0,1 @@ | ||
"use strict";function e(n){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(n)}function n(n){return n&&"object"===e(n)&&"default"in n?n.default:n}Object.defineProperty(exports,"__esModule",{value:!0});var t=n(require("@babel/runtime/helpers/typeof"));require("@babel/runtime/helpers/toConsumableArray");var o=n(require("@babel/runtime/helpers/defineProperty"));function i(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach((function(n){r(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}require("@babel/runtime/helpers/classCallCheck"),require("@babel/runtime/helpers/createClass");var c,p="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",u=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:21,n="",t=e;t--;)n+=p[64*Math.random()|0];return n},d=["agreements","promo","vkc_behavior","vkc_auth_action","vkc_brand"];!function(e){e[e.UNKNOWN=1]="UNKNOWN",e[e.MISSING_PARAM=2]="MISSING_PARAM",e[e.CONNECTION_LOST=3]="CONNECTION_LOST",e[e.USER_DENIED=4]="USER_DENIED",e[e.INVALID_PARAMS=5]="INVALID_PARAMS",e[e.CUSTOM=6]="CUSTOM",e[e.CONNECT_WINDOW_CLOSED=7]="CONNECT_WINDOW_CLOSED",e[e.CONNECT_WINDOW_NOT_OPENED=8]="CONNECT_WINDOW_NOT_OPENED",e[e.CONNECT_DOMAIN_NOT_ALLOWED=9]="CONNECT_DOMAIN_NOT_ALLOWED",e[e.CONNECT_UNKNOWN_SDK_MESSAGE=10]="CONNECT_UNKNOWN_SDK_MESSAGE",e[e.OLD_MISSING_PARAM=100]="OLD_MISSING_PARAM"}(c||(c={}));var l=function(){return"No params passed for load app!"},h=function(){return"Connect window was closed."},f=function(){return"Connect window was not opened."},m=function(e){return'URL domain "'.concat(e,'" is not allowed.')},v=function(e){return"This SDK message is unknown: ".concat(e)},A=!("undefined"==typeof window||!window.document||!window.document.createElement),g=A&&!!window.addEventListener,_=function(){};if(g)try{var y=Object.defineProperty({},"passive",{get:function(){!0}});window.addEventListener("test",_,y),window.removeEventListener("test",_,y)}catch(e){}!function(){if(!A)return!1;var e=!1;try{document.createElement("div").scrollTo({top:0,get behavior(){return e=!0,"smooth"}})}catch(e){}}();function O(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function E(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?O(Object(t),!0).forEach((function(n){o(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):O(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var w={parse:function(e){if("string"!=typeof e)return{};if(!(e=e.trim().replace(/^[?#&]/,"")))return{};var n=/\?(.+)$/gi.exec(e);return(n?n[1]:e).split("&").reduce((function(e,n){var t=n.split("=");return t[1]&&(e[t[0]]=decodeURIComponent(t[1])),e}),{})},stringify:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"!==t(e)||null===e)return"";n=E({encode:!0},n);var o=function(e){return n.encode?encodeURIComponent(e):String(e)};return Object.keys(e).reduce((function(t,i){var r=e[i];return void 0===r?t:null===r?(n.skipNull||t.push([o(i),""].join("=")),t):Array.isArray(r)?(r.map((function(e){t.push("".concat(o(i),"[]=").concat(o(e)))})).join(),t):(t.push([o(i),o(r)].join("=")),t)}),[]).join("&")}};function S(e){return w.stringify(e)}function b(e){return Object.keys(e).filter((function(e){return d.includes(e)}))}function P(e){var n;return Boolean(null===(n=b(e))||void 0===n?void 0:n.length)}function T(e){var n=function(e){return b(e).reduce((function(n,t){return n[t]=e[t],n}),{})}(e);return btoa(JSON.stringify(n))}function D(e,n){var t,o=document.createElement("iframe");for(var i in e&&(o.src=e),o.style.cssText=null!==(t=null==n?void 0:n.cssText)&&void 0!==t?t:"",o.width="100%",o.height="100%",o.style.border="none",null==n?void 0:n.properties){var r;if(n&&n.properties.hasOwnProperty(i))o[i]=null!==(r=n.properties[i])&&void 0!==r?r:""}return o}function N(e){return e=e||Object.create(null),{on:function(n,t){(e[n]||(e[n]=[])).push(t)},off:function(n,t){e[n]&&e[n].splice(e[n].indexOf(t)>>>0,1)},emit:function(n,t){(e[n]||[]).slice().map((function(e){e(t)})),(e["*"]||[]).slice().map((function(e){e(n,t)}))}}}var C={appId:0,superAppToken:"",loginDomain:"login.vk.com",oauthDomain:"oauth.vk.com",connectDomain:"connect.vk.com",_debug:!1},k={},I={events:N(),init:function(e){if(!e.appId)throw new Error("appId required");C.appId=e.appId,C.superAppToken=e.superAppToken||"",C.loginDomain=e.loginDomain||"login.vk.com",C.oauthDomain=e.oauthDomain||"oauth.vk.com",C.connectDomain=e.connectDomain||"connect.vk.com",C.appSettings=e.appSettings,C._debug=!!e._debug},get:function(){return C},setSuperAppToken:function(e){C.superAppToken=e,I.events.emit("superAppToken",e)},onRequestSuperAppToken:function(e){k.superAppToken=e},_requestSuperAppToken:function(){var e;k.superAppToken&&(e=k.superAppToken()),e&&e.then((function(e){return I.setSuperAppToken(e)})).catch(console.error)},onAuth:function(e){k.auth=e},_requestAuth:function(){var e;k.auth&&(e=k.auth()),e&&e.then((function(e){return I.setSuperAppToken(e)})).catch(console.error)},onOpenApp:function(e){k.openApp=e},_openApp:function(e){k.openApp&&k.openApp(e.app)}},M=["extend_token"];function L(e){return e&&M.includes(e.name)?btoa(JSON.stringify(e)):""}function K(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auth",t=I.get(),o=t.appId,i=t.connectDomain,r=t.appSettings,a=s({app_id:o,response_type:"silent_token",v:"0.0.2"},e);r&&P(r)&&(a.app_settings=T(r));var c=S(a);return"https://".concat(i,"/").concat(n,"?").concat(c)}var R,x,U,H,W,V=function e(n){var t=this;i(this,e),r(this,"handler",(function(){return{}})),r(this,"config",void 0),r(this,"destroy",(function(){delete t.config,window.removeEventListener("message",t.handleMessage)})),r(this,"onMessage",(function(e){t.handler=e})),r(this,"sendMessage",(function(e){t.config.iframe.contentWindow.postMessage(s({type:"vk-sak-sdk"},e),t.config.origin)})),r(this,"handleMessage",(function(e){t.config.origin&&e.origin===t.config.origin&&e.source===t.config.iframe.contentWindow&&e.data&&"vk-sak-sdk"===e.data.type&&t.handler(e.data)})),this.config=n,window.addEventListener("message",this.handleMessage)};!function(e){e.SHOW_DATA_POLICY="VKSDKOneTapAuthConnectDataPolicy",e.HIDE_DATA_POLICY="VKSDKOneTapAuthDataPolicyClose",e.DATA_POLICY_RESULT="VKSDKOneTapAuthDataPolicyResult",e.SHOW_CAPTCHA="VKSDKOneTapAuthDataPolicyShowCaptcha"}(R||(R={})),function(e){e.CAPTCHA_SUCCESS="VKSDKAuthCaptchaSuccess",e.CAPTCHA_FAIL="VKSDKAuthCaptchaFail"}(x||(x={})),function(e){e.PHONE_VALIDATION_NEEDED="VKSDKOneTapAuthPhoneValidationNeeded",e.FULL_AUTH_NEEDED="VKSDKOneTapAuthFullAuthNeeded",e.AUTH_DATA_LOADED="VKSDKOneTapAuthDataLoaded",e.NOT_AUTHORIZED="VKSDKOneTapAuthNotAuthorized",e.LOGIN_SUCCESS="VKSDKOneTapAuthLoginSuccess",e.RESIZE_FRAME="VKSDKOneTapResizeFrame",e.SHOW_CAPTCHA="VKSDKOneTapShowCaptcha",e.VALIDATE_CAPTCHA="VKSDKOneTapValidateCaptcha"}(U||(U={})),function(e){e.CLOSE_AUTH="VKSDKOneTapAuthClose"}(H||(H={})),function(e){e.SHOW_LOGIN="VKSDKButtonOneTapAuthShowLogin",e.SHOW_LOGIN_OPTIONS="VKSDKButtonOneTapAuthShowLoginOptions"}(W||(W={}));var j,F,G,z=new function e(){var n=this;i(this,e),r(this,"flags",null),r(this,"silentAuth",(function(){var e=I.get(),n=e.loginDomain,t=e.appId,o=u(),i="https://".concat(n,"/?act=connect&app_id=").concat(t,"&response_type=").concat("silent_token","&uuid=").concat(o,"&v=").concat("0.0.2"),r=new XMLHttpRequest;return r.open("GET",i,!0),r.responseType="json",r.withCredentials=!0,new Promise((function(e,n){r.onload=function(){r.response?e({provider:"vk",payload:r.response}):n()},r.onerror=function(){n()},r.send()}))})),r(this,"oneTapAuth",(function(e,t){if(!["floating","button"].includes(e))return null;var o,i,r=function(){var e,n=window.innerWidth,t=n<=768;return{destroy:function(){return window.removeEventListener("resize",e)},isAdaptive:function(){return t},observe:function(o){e=function(){var e=window.innerWidth;n>768&&e<=768?o(t=!0):n<=768&&e>768&&o(t=!1),n=e},window.addEventListener("resize",e)}}}(),a=null;switch(e){case"floating":o=r.isAdaptive(),i=o?"314px":"334px",a={pageUrl:"floating_one_tap_auth",pageUrlParams:{adaptive:o?1:0},frameStyles:o?"\n display: none;\n position: fixed;\n bottom: 0;\n right: 0;\n max-width: 100%;\n width: 100%;\n height: ".concat(i,";\n "):"\n display: none;\n position: fixed;\n top: 0;\n right: 0;\n max-width: 400px;\n width: 100%;\n height: ".concat(i,";\n ")};break;case"button":a=function(e){var n={},t=44;if(e){var o,i;n.show_agreements=null!==(o=e.showAgreements)&&void 0!==o?o:0,n.show_alternative_login=null!==(i=e.showAlternativeLogin)&&void 0!==i?i:0;t+=n.show_alternative_login?56:0,t+=n.show_agreements?80:0}return{pageUrl:"button_one_tap_auth",pageUrlParams:n,frameStyles:"\n height: ".concat(t,"px;\n ")}}(t.options)}if(!a)throw new Error("options were not set");var c=u(),p=s({origin:location.protocol+"//"+location.host,uuid:c},a.pageUrlParams),d=a.pageUrl,l=D(K(p,d),{cssText:a.frameStyles});switch(e){case"floating":r.observe((function(e){e?(l.style.maxWidth="100%",l.style.top="auto",l.style.bottom="0"):(l.style.maxWidth="400px",l.style.top="0",l.style.bottom="auto"),l.style.display="none",p=s({},p,{adaptive:e?1:0}),l.src=K(p,d)})),document.body.appendChild(l);break;case"button":var h=t.container;h&&h.appendChild(l)}var f=new V({iframe:l,origin:"https://"+I.get().connectDomain}),m=function(){f.sendMessage({handler:U.RESIZE_FRAME,params:{uuid:c}})};window.addEventListener("resize",m);var v=function(){l&&(l.remove(),l=null),window.removeEventListener("resize",m),r&&r.destroy(),f.destroy()},A=new Promise((function(o){f.onMessage((function(i){if(i.params.uuid===c)switch(i.handler){case U.NOT_AUTHORIZED:"floating"===e&&(t.callback({type:i.handler,payload:{uuid:c,error:"not_authorized"}}),v()),o(i.handler);break;case U.AUTH_DATA_LOADED:"floating"===e&&(l.style.display="block"),f.sendMessage({handler:U.RESIZE_FRAME,params:{uuid:c}}),o(i.handler);break;case U.RESIZE_FRAME:l.style.height="".concat(i.params.height,"px");break;case U.LOGIN_SUCCESS:t.callback({type:i.handler,provider:"vk",payload:s({uuid:c},i.params)});break;case U.SHOW_CAPTCHA:var r=n.captcha(c,{captcha_sid:i.params.captcha_sid,captcha_img:i.params.captcha_img});r.show().then((function(e){f.sendMessage({handler:x.CAPTCHA_SUCCESS,params:s({uuid:c},e)})})).catch((function(){f.sendMessage({handler:x.CAPTCHA_FAIL,params:{uuid:c}}),r.destroy()}));break;case H.CLOSE_AUTH:t.callback({type:i.handler,payload:{uuid:c}}),v();break;case U.FULL_AUTH_NEEDED:case U.PHONE_VALIDATION_NEEDED:case W.SHOW_LOGIN:case W.SHOW_LOGIN_OPTIONS:t.callback({type:i.handler,payload:{uuid:c}});break;case R.SHOW_DATA_POLICY:n.userDataPolicy(c).show().then((function(){t.callback({type:R.DATA_POLICY_RESULT,payload:{uuid:c,policyAccepted:!0}})})).catch((function(){t.callback({type:R.DATA_POLICY_RESULT,payload:{uuid:c,policyAccepted:!1}})}))}}))}));return{getFrame:function(){return l},destroy:v,authReadyPromise:A}})),r(this,"userDataPolicy",(function(e){var t=K({origin:location.protocol+"//"+location.host,uuid:e},"user_data_policy"),o=window.innerHeight,i="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n "),r=D(t,{properties:{height:"".concat(o,"px")},cssText:i});document.body.appendChild(r);var a=new V({iframe:r,origin:"https://"+I.get().connectDomain}),c=function(){document.body.removeChild(r),a.destroy()},p=function(){r.style.display="none"};return{show:function(){return r.style.display="block",new Promise((function(t,o){a.onMessage((function(i){switch(i.handler){case R.HIDE_DATA_POLICY:c(),t();break;case R.SHOW_CAPTCHA:var u=n.captcha(e,{captcha_sid:i.params.captcha_sid,captcha_img:i.params.captcha_img});u.show().then((function(n){a.sendMessage({handler:x.CAPTCHA_SUCCESS,params:s({uuid:e},n)}),r.style.display="block"})).catch((function(){a.sendMessage({handler:x.CAPTCHA_FAIL,params:{uuid:e}}),u.destroy()})),p();break;default:o()}}))}))},hide:p,destroy:c}})),r(this,"captcha",(function(e,n){var t=K(s({origin:location.protocol+"//"+location.host,uuid:e},n),"auth_captcha"),o=window.innerHeight,i=D(t,{cssText:"\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n ")});document.body.appendChild(i);var r=new V({iframe:i,origin:"https://"+I.get().connectDomain}),a=function(){document.body.removeChild(i),r.destroy()};return{show:function(){return i.style.display="block",new Promise((function(e,n){r.onMessage((function(t){switch(t.handler){case x.CAPTCHA_SUCCESS:e(t.params),a();break;default:n(),a()}}))}))},destroy:a}})),r(this,"userVisibleAuth",(function(e){var t=u(),o={origin:location.protocol+"//"+location.host,uuid:t};(null==e?void 0:e.screen)&&(o.screen=e.screen);var i=L(null==e?void 0:e.action);i&&(o.action=i);var r=K(o);n.flags&&(r="".concat(r,"#").concat(S(n.flags)));var a=screen.height/2-280,s=screen.width/2-410,p=window.open(r,"_blank","top=".concat(a,",left=").concat(s,",width=").concat(820,",height=").concat(560,",location"));if(!p){var d={code:c.CONNECT_WINDOW_NOT_OPENED,reason:f()};return Promise.reject(d)}return new Promise((function(e,n){var o=setInterval((function(){if(!p||p.closed){window.removeEventListener("message",i),clearInterval(o);var e={code:c.CONNECT_WINDOW_CLOSED,reason:h()};n(e)}}),1e3);function i(r){if(r.source===p&&p)if(window.removeEventListener("message",i),clearInterval(o),".vk.com"===r.origin.slice(r.origin.length-".vk.com".length))if(r.data.action==="vk_connect_response"+t){var a=r.data.payload;p.close(),e({provider:"vk",payload:a})}else if(r.data.action==="oauth_callback"+t)e({provider:r.data.payload.name}),p.close();else{p.close();var s={code:c.CONNECT_UNKNOWN_SDK_MESSAGE,reason:v(JSON.stringify(r.data))};n(s)}else{p.close();var u={code:c.CONNECT_DOMAIN_NOT_ALLOWED,reason:m(r.origin)};n(u)}}window.addEventListener("message",i)}))})),r(this,"redirectAuth",(function(e){var n=u(),t={redirect_uri:e.url,uuid:n};(null==e?void 0:e.state)&&(t.redirect_state=e.state),(null==e?void 0:e.screen)&&(t.screen=e.screen);var o=L(null==e?void 0:e.action);o&&(t.action=o);var i=K(t);location.assign(i)}))};!function(e){e.APP_CLOSE="VKWebAppClose",e.APP_READY="VKSDKMiniAppReady",e.RESIZE="VKSDKMiniAppResize",e.APP_INIT_CONFIG="VKSDKMiniAppInitConfig",e.OPEN_APP="VKWebAppOpenApp",e.OPEN_PAY_FORM="VKWebAppOpenPayForm",e.ACTION_DONE="VKWebAppActionDone"}(j||(j={})),(F=exports.MiniAppEvents||(exports.MiniAppEvents={})).OPEN="open",F.HIDE="hide",F.CLOSE="close",F.SHOW="show",F.MESSAGE="message",F.CREATE_APP="createapp",function(e){e.SUPERAPP_TOKEN="VKSDKGeneralSuperAppToken",e.AUTH_NEEDED="VKSDKGeneralAuthNeeded",e.OPEN_APP="VKSDKGeneralOpenApp"}(G||(G={}));var q;!function(e){e.INIT="ConnectProfileInit"}(q||(q={}));var Y={OneTapAuthEventsSDK:U,FloatingOneTapAuthEventsSDK:H,ButtonOneTapAuthEventsSDK:W,DataPolicyEventsSDK:R,AuthCaptchaEventsSDK:x};exports.Config=I,exports.Connect=z,exports.ConnectEvents=Y,exports.MiniApp=function e(n){var t=this;i(this,e),r(this,"events",void 0),r(this,"iframe",void 0),r(this,"bridge",void 0),r(this,"loading",void 0),r(this,"readyPromiseResolve",null),r(this,"readyPromise",null),r(this,"bodyOverflowValue",""),r(this,"params",void 0),r(this,"child",null),r(this,"open",(function(e,n){return t.loading?(t.iframe.src=t.getMiniAppUrl(e,n),t.loading=new Promise((function(e){t.iframe.onload=function(){t.iframe.onload=null,e()}})),t.readyPromise=new Promise((function(e){return t.readyPromiseResolve=e}))):t.preload(e,n).catch(console.error),t.iframe.style.display="block",t.bodyOverflowValue=window.document.body.style.overflow,window.document.body.style.overflow="hidden",t.loading.then(t.handleResize).catch(console.error),t.events.emit(exports.MiniAppEvents.OPEN),t.readyPromise})),r(this,"hide",(function(){t.iframe.style.display="none",window.document.body.style.overflow=t.bodyOverflowValue,t.events.emit(exports.MiniAppEvents.HIDE)})),r(this,"close",(function(){window.document.body.style.overflowX="",I.events.off("superAppToken",t.onSuperAppToken),t.iframe&&t.iframe.remove(),t.bridge&&t.bridge.destroy(),delete t.iframe,delete t.bridge,window.removeEventListener("resize",t.handleResize),t.events.emit(exports.MiniAppEvents.CLOSE)})),r(this,"show",(function(){if(!t.loading)throw new Error('App is not loaded, use "open" or "preload" methods');t.iframe.style.display="block",window.document.body.style.overflow=t.bodyOverflowValue,t.events.emit(exports.MiniAppEvents.SHOW)})),r(this,"preload",(function(e,n){var o=document.createElement("iframe"),i=window.innerHeight,r=isFinite(t.params.zIndex)?t.params.zIndex:999999;return o.src=t.getMiniAppUrl(e,n),o.style.cssText="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(i,"px;\n min-height: ").concat(i,"px;\n border: none;\n z-index: ").concat(r,";\n "),t.iframe=o,document.body.appendChild(t.iframe),I.events.on("superAppToken",t.onSuperAppToken),t.bridge=new V({iframe:t.iframe,origin:"https://"+I.get().connectDomain}),t.bridge.onMessage(t.handleMessage),window.addEventListener("resize",t.handleResize),t.loading=new Promise((function(e){o.onload=function(){o.onload=null,e()}})),t.readyPromise=new Promise((function(e){return t.readyPromiseResolve=e})),t.loading})),r(this,"sendMessage",(function(e){t.bridge.sendMessage(e)})),r(this,"onSuperAppToken",(function(e){t.bridge.sendMessage({handler:G.SUPERAPP_TOKEN,params:{result:e}})})),r(this,"handleMessage",(function(e){switch(e.handler){case j.APP_CLOSE:t.hide();break;case j.APP_READY:t.resolveReadyPromise(),t.handleUpdateConfig();break;case j.OPEN_APP:t.openMiniapp(e.params);break;case j.OPEN_PAY_FORM:t.openPayForm(e.params);break;case G.SUPERAPP_TOKEN:I._requestSuperAppToken();break;case G.AUTH_NEEDED:I._requestAuth();break;default:t.events.emit(exports.MiniAppEvents.MESSAGE,e)}})),r(this,"handleResize",(function(){if(t.iframe){var e=innerWidth,n=innerHeight;t.iframe.style.height="".concat(n,"px"),t.iframe.style.minHeight="".concat(n,"px"),t.bridge.sendMessage({handler:j.RESIZE,params:{viewport_width:e,viewport_height:n}})}})),r(this,"handleUpdateConfig",(function(){t.bridge.sendMessage({handler:j.APP_INIT_CONFIG,params:{fullMode:t.params.fullMode}})})),r(this,"getMiniAppUrl",(function(e,n){var o=I.get(),i=o.connectDomain,r=o.appId,a=o.superAppToken,s=o._debug,c=S({app:t.params.app,host_app_id:r,debug:s?"1":"",localhost:s?"1":"",superapp_token:a,app_query:e?JSON.stringify(e):"",app_hash:n||""});return"https://".concat(i,"/mini_app?").concat(c)})),r(this,"resolveReadyPromise",(function(){t.readyPromise&&t.readyPromiseResolve&&(t.readyPromiseResolve(),t.readyPromise=null,t.readyPromiseResolve=null)})),r(this,"openMiniapp",(function(n){t.child=new e({app:n.app_id}),t.events.emit(exports.MiniAppEvents.CREATE_APP,{app:t.child,location:n.location})})),r(this,"openPayForm",(function(n){var o=s({},n.params);o.data&&(o.data=JSON.stringify(o.data));var i=s({},o,{app_id:n.app_id,action:n.action}),r=new e({app:6217559});r.open(i).then((function(){return t.hide()})).catch(console.error),r.events.on(exports.MiniAppEvents.MESSAGE,(function(e){t.handleVKPayFormMessage(e),r.close(),t.show()})),r.events.on(exports.MiniAppEvents.HIDE,(function(){r.close(),t.close()}))})),r(this,"handleVKPayFormMessage",(function(e){e.handler===j.ACTION_DONE&&t.sendMessage(e)})),this.params=s({},n,{app:"number"==typeof n.app?"app".concat(n.app):n.app}),this.events=N()},exports.Profile=function e(){var n=this;i(this,e),r(this,"iframe",void 0),r(this,"config",void 0),r(this,"bridge",void 0),r(this,"iframeLoadPromise",void 0),r(this,"load",(function(e){if(!e.container)throw new Error("container is null");if(!e)throw new Error(l());return n.iframe||n.preload(e),n.iframeLoadPromise})),r(this,"remove",(function(){n.iframe&&n.iframe.parentNode&&n.iframe.parentNode.removeChild(n.iframe),n.destroy()})),r(this,"preload",(function(e){n.config=e;var t=document.createElement("iframe");t.style.border="none",t.style.width="100%",t.style.height="100%",t.style.minHeight="100%",e.container.appendChild(t),n.setup(t)})),r(this,"setup",(function(e){I.events.on("superAppToken",n.onSuperAppToken),e.src=n.getProfileUrl(),n.iframe=e,n.iframeLoadPromise=new Promise((function(n){e.onload=function(){return n(e)}})),n.bridge=new V({iframe:n.iframe,origin:"https://"+I.get().connectDomain}),n.bridge.onMessage(n.handleMessage)})),r(this,"destroy",(function(){I.events.off("superAppToken",n.onSuperAppToken),n.bridge.destroy(),delete n.iframe,delete n.iframeLoadPromise,delete n.bridge})),r(this,"onSuperAppToken",(function(e){if(e&&n.iframe){var t=n.iframe;n.destroy(),n.setup(t)}})),r(this,"handleMessage",(function(e){switch(e.handler){case q.INIT:n.handleInitApp().catch(console.error);break;case G.SUPERAPP_TOKEN:I._requestSuperAppToken();break;case G.AUTH_NEEDED:I._requestAuth();break;case G.OPEN_APP:I._openApp(e.params)}})),r(this,"handleInitApp",(function(){return Promise.resolve()})),r(this,"getProfileUrl",(function(){var e=I.get(),t=e.connectDomain,o=e.appId,i=e.superAppToken,r=e._debug,a=n.config.widgets,s=S({host_app_id:o,debug:r?"1":"",localhost:r?"1":"",superapp_token:i,widgets:a?a.join(","):""});return"https://".concat(t,"/super_profile?").concat(s)}))}; | ||
"use strict";function e(n){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(n)}function n(n){return n&&"object"===e(n)&&"default"in n?n.default:n}Object.defineProperty(exports,"__esModule",{value:!0});var t=n(require("@babel/runtime/helpers/typeof"));require("@babel/runtime/helpers/toConsumableArray");var o=n(require("@babel/runtime/helpers/defineProperty"));function i(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach((function(n){r(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}require("@babel/runtime/helpers/classCallCheck"),require("@babel/runtime/helpers/createClass");var c,p="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",u=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:21,n="",t=e;t--;)n+=p[64*Math.random()|0];return n},d=["agreements","promo","vkc_behavior","vkc_auth_action","vkc_brand"];!function(e){e[e.UNKNOWN=1]="UNKNOWN",e[e.MISSING_PARAM=2]="MISSING_PARAM",e[e.CONNECTION_LOST=3]="CONNECTION_LOST",e[e.USER_DENIED=4]="USER_DENIED",e[e.INVALID_PARAMS=5]="INVALID_PARAMS",e[e.CUSTOM=6]="CUSTOM",e[e.CONNECT_WINDOW_CLOSED=7]="CONNECT_WINDOW_CLOSED",e[e.CONNECT_WINDOW_NOT_OPENED=8]="CONNECT_WINDOW_NOT_OPENED",e[e.CONNECT_DOMAIN_NOT_ALLOWED=9]="CONNECT_DOMAIN_NOT_ALLOWED",e[e.CONNECT_UNKNOWN_SDK_MESSAGE=10]="CONNECT_UNKNOWN_SDK_MESSAGE",e[e.OLD_MISSING_PARAM=100]="OLD_MISSING_PARAM"}(c||(c={}));var l=function(){return"No params passed for load app!"},h=function(){return"Connect window was closed."},f=function(){return"Connect window was not opened."},m=function(e){return'URL domain "'.concat(e,'" is not allowed.')},v=function(e){return"This SDK message is unknown: ".concat(e)},A=!("undefined"==typeof window||!window.document||!window.document.createElement),g=A&&!!window.addEventListener,y=function(){};if(g)try{var _=Object.defineProperty({},"passive",{get:function(){!0}});window.addEventListener("test",y,_),window.removeEventListener("test",y,_)}catch(e){}!function(){if(!A)return!1;var e=!1;try{document.createElement("div").scrollTo({top:0,get behavior(){return e=!0,"smooth"}})}catch(e){}}();function O(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function E(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?O(Object(t),!0).forEach((function(n){o(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):O(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var w={parse:function(e){if("string"!=typeof e)return{};if(!(e=e.trim().replace(/^[?#&]/,"")))return{};var n=/\?(.+)$/gi.exec(e);return(n?n[1]:e).split("&").reduce((function(e,n){var t=n.split("=");return t[1]&&(e[t[0]]=decodeURIComponent(t[1])),e}),{})},stringify:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"!==t(e)||null===e)return"";n=E({encode:!0},n);var o=function(e){return n.encode?encodeURIComponent(e):String(e)};return Object.keys(e).reduce((function(t,i){var r=e[i];return void 0===r?t:null===r?(n.skipNull||t.push([o(i),""].join("=")),t):Array.isArray(r)?(r.map((function(e){t.push("".concat(o(i),"[]=").concat(o(e)))})).join(),t):(t.push([o(i),o(r)].join("=")),t)}),[]).join("&")}};function b(e){return w.stringify(e)}function S(e){return Object.keys(e).filter((function(e){return d.includes(e)}))}function P(e){var n;return Boolean(null===(n=S(e))||void 0===n?void 0:n.length)}function T(e){var n=function(e){return S(e).reduce((function(n,t){return n[t]=e[t],n}),{})}(e);return btoa(JSON.stringify(n))}function D(e,n){var t,o=document.createElement("iframe");for(var i in e&&(o.src=e),o.style.cssText=null!==(t=null==n?void 0:n.cssText)&&void 0!==t?t:"",o.width="100%",o.height="100%",o.style.border="none",null==n?void 0:n.properties){var r;if(n&&n.properties.hasOwnProperty(i))o[i]=null!==(r=n.properties[i])&&void 0!==r?r:""}return o}function N(e){return e=e||Object.create(null),{on:function(n,t){(e[n]||(e[n]=[])).push(t)},off:function(n,t){e[n]&&e[n].splice(e[n].indexOf(t)>>>0,1)},emit:function(n,t){(e[n]||[]).slice().map((function(e){e(t)})),(e["*"]||[]).slice().map((function(e){e(n,t)}))}}}var C={appId:0,superAppToken:"",loginDomain:"login.vk.com",oauthDomain:"oauth.vk.com",connectDomain:"connect.vk.com",_debug:!1},k={},I={events:N(),init:function(e){if(!e.appId)throw new Error("appId required");C.appId=e.appId,C.superAppToken=e.superAppToken||"",C.loginDomain=e.loginDomain||"login.vk.com",C.oauthDomain=e.oauthDomain||"oauth.vk.com",C.connectDomain=e.connectDomain||"connect.vk.com",C.appSettings=e.appSettings,C._debug=!!e._debug},get:function(){return C},setSuperAppToken:function(e){C.superAppToken=e,I.events.emit("superAppToken",e)},onRequestSuperAppToken:function(e){k.superAppToken=e},_requestSuperAppToken:function(){var e;k.superAppToken&&(e=k.superAppToken()),e&&e.then((function(e){return I.setSuperAppToken(e)})).catch(console.error)},onAuth:function(e){k.auth=e},_requestAuth:function(){var e;k.auth&&(e=k.auth()),e&&e.then((function(e){return I.setSuperAppToken(e)})).catch(console.error)},onOpenApp:function(e){k.openApp=e},_openApp:function(e){k.openApp&&k.openApp(e.app)}},M=["extend_token"];function L(e){return e&&M.includes(e.name)?btoa(JSON.stringify(e)):""}function K(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auth",t=I.get(),o=t.appId,i=t.connectDomain,r=t.appSettings,a=s({app_id:o,response_type:"silent_token",v:"0.0.2",localhost:1,debug:1},e);r&&P(r)&&(a.app_settings=T(r));var c=b(a);return"https://".concat(i,"/").concat(n,"?").concat(c)}var R,U,x,H,W,V=function e(n){var t=this;i(this,e),r(this,"handler",(function(){return{}})),r(this,"config",void 0),r(this,"destroy",(function(){delete t.config,window.removeEventListener("message",t.handleMessage)})),r(this,"onMessage",(function(e){t.handler=e})),r(this,"sendMessage",(function(e){t.config.iframe.contentWindow.postMessage(s({type:"vk-sak-sdk"},e),t.config.origin)})),r(this,"handleMessage",(function(e){t.config.origin&&e.origin===t.config.origin&&e.source===t.config.iframe.contentWindow&&e.data&&"vk-sak-sdk"===e.data.type&&t.handler(e.data)})),this.config=n,window.addEventListener("message",this.handleMessage)};!function(e){e.SHOW_DATA_POLICY="VKSDKOneTapAuthConnectDataPolicy",e.HIDE_DATA_POLICY="VKSDKOneTapAuthDataPolicyClose",e.DATA_POLICY_RESULT="VKSDKOneTapAuthDataPolicyResult",e.SHOW_CAPTCHA="VKSDKOneTapAuthDataPolicyShowCaptcha"}(R||(R={})),function(e){e.CAPTCHA_SUCCESS="VKSDKAuthCaptchaSuccess",e.CAPTCHA_FAIL="VKSDKAuthCaptchaFail"}(U||(U={})),function(e){e.PHONE_VALIDATION_NEEDED="VKSDKOneTapAuthPhoneValidationNeeded",e.FULL_AUTH_NEEDED="VKSDKOneTapAuthFullAuthNeeded",e.AUTH_DATA_LOADED="VKSDKOneTapAuthDataLoaded",e.NOT_AUTHORIZED="VKSDKOneTapAuthNotAuthorized",e.LOGIN_SUCCESS="VKSDKOneTapAuthLoginSuccess",e.RESIZE_FRAME="VKSDKOneTapResizeFrame",e.SHOW_CAPTCHA="VKSDKOneTapShowCaptcha",e.VALIDATE_CAPTCHA="VKSDKOneTapValidateCaptcha"}(x||(x={})),function(e){e.CLOSE_AUTH="VKSDKOneTapAuthClose"}(H||(H={})),function(e){e.SHOW_LOGIN="VKSDKButtonOneTapAuthShowLogin",e.SHOW_LOGIN_OPTIONS="VKSDKButtonOneTapAuthShowLoginOptions"}(W||(W={}));var j,F,G,z=new function e(){var n=this;i(this,e),r(this,"flags",null),r(this,"silentAuth",(function(){var e=I.get(),n=e.loginDomain,t=e.appId,o=u(),i="https://".concat(n,"/?act=connect&app_id=").concat(t,"&response_type=").concat("silent_token","&uuid=").concat(o,"&v=").concat("0.0.2"),r=new XMLHttpRequest;return r.open("GET",i,!0),r.responseType="json",r.withCredentials=!0,new Promise((function(e,n){r.onload=function(){r.response?e({provider:"vk",payload:r.response}):n()},r.onerror=function(){n()},r.send()}))})),r(this,"oneTapAuth",(function(e,t){if(console.warn("Connect.oneTapAuth method is deprecated. Use Connect.floatingOneTapAuth and Connect.buttonOneTapAuth methods."),!["floating","button"].includes(e))return null;switch(e){case"button":var o=n.buttonOneTapAuth(t);return o?{getFrame:o.getFrame,destroy:o.destroy,authReadyPromise:o.authReadyPromise}:null;case"floating":return n.floatingOneTapAuth(t);default:return null}})),r(this,"floatingOneTapAuth",(function(e){var t,o,i=function(){var e,n=window.innerWidth,t=n<=768;return{destroy:function(){return window.removeEventListener("resize",e)},isAdaptive:function(){return t},observe:function(o){e=function(){var e=window.innerWidth;n>768&&e<=768?o(t=!0):n<=768&&e>768&&o(t=!1),n=e},window.addEventListener("resize",e)}}}(),r=(t=i.isAdaptive(),o=t?"314px":"334px",{pageUrl:"floating_one_tap_auth",pageUrlParams:{adaptive:t?1:0},frameStyles:t?"\n display: none;\n position: fixed;\n bottom: 0;\n right: 0;\n max-width: 100%;\n width: 100%;\n height: ".concat(o,";\n "):"\n display: none;\n position: fixed;\n top: 0;\n right: 0;\n max-width: 400px;\n width: 100%;\n height: ".concat(o,";\n ")});if(!r)throw new Error("options were not set");var a=u(),c=s({origin:location.protocol+"//"+location.host,uuid:a},r.pageUrlParams),p=r.pageUrl,d=D(K(c,p),{cssText:r.frameStyles});i.observe((function(e){e?(d.style.maxWidth="100%",d.style.top="auto",d.style.bottom="0"):(d.style.maxWidth="400px",d.style.top="0",d.style.bottom="auto"),d.style.display="none",c=s({},c,{adaptive:e?1:0}),d.src=K(c,p)})),document.body.appendChild(d);var l=new V({iframe:d,origin:"https://"+I.get().connectDomain}),h=function(){l.sendMessage({handler:x.RESIZE_FRAME,params:{uuid:a}})};window.addEventListener("resize",h);var f=function(){d&&(d.remove(),d=null),window.removeEventListener("resize",h),i&&i.destroy(),l.destroy()},m=new Promise((function(t){l.onMessage((function(o){if(o.params.uuid===a)switch(o.handler){case x.NOT_AUTHORIZED:e.callback({type:o.handler,payload:{uuid:a,error:"not_authorized"}}),f(),t(o.handler);break;case x.RESIZE_FRAME:d.style.height="".concat(o.params.height,"px");break;case H.CLOSE_AUTH:e.callback({type:o.handler,payload:{uuid:a}}),f();break;case x.AUTH_DATA_LOADED:d.style.display="block",t(o.handler);default:n.handleOneTapEvents(o,l,e)}}))}));return{getFrame:function(){return d},destroy:f,authReadyPromise:m}})),r(this,"buttonOneTapAuth",(function(e){var t,o=function(e){var n={},t=44;if(e){var o,i,r;n.display=null!==(o=e.displayMode)&&void 0!==o?o:"default",n.show_agreements=null!==(i=e.showAgreements)&&void 0!==i?i:0,n.show_alternative_login=null!==(r=e.showAlternativeLogin)&&void 0!==r?r:0;t+=n.show_alternative_login?56:0,t+=n.show_agreements?80:0}return{pageUrl:"button_one_tap_auth",pageUrlParams:n,frameStyles:"\n height: ".concat(t,"px;\n ")}}(e.options);if(!o)throw new Error("options were not set");var i=u(),r=D(K(s({origin:location.protocol+"//"+location.host,uuid:i},o.pageUrlParams),o.pageUrl),{cssText:o.frameStyles}),a=e.container;a&&a.appendChild(r);var c=new V({iframe:r,origin:"https://"+I.get().connectDomain}),p=function(){c.sendMessage({handler:x.RESIZE_FRAME,params:{uuid:i}})};window.addEventListener("resize",p);var d={getFrame:function(){return r},destroy:function(){r&&(r.remove(),r=null),window.removeEventListener("resize",p),c.destroy()},authReadyPromise:new Promise((function(t){c.onMessage((function(o){if(o.params.uuid===i)switch(o.handler){case x.RESIZE_FRAME:r.style.height="".concat(o.params.height,"px");break;case x.NOT_AUTHORIZED:t(o.handler);break;case W.SHOW_LOGIN:case W.SHOW_LOGIN_OPTIONS:e.callback({type:o.handler,payload:{uuid:i}});break;case x.AUTH_DATA_LOADED:t(o.handler);default:n.handleOneTapEvents(o,c,e)}}))}))};return(null===(t=e.options)||void 0===t?void 0:t.showAgreements)||(d.userDataPolicy=n.userDataPolicy(i)),d})),r(this,"handleOneTapEvents",(function(e,t,o){var i=e.params.uuid;switch(e.handler){case x.AUTH_DATA_LOADED:t.sendMessage({handler:x.RESIZE_FRAME,params:{uuid:i}});break;case x.LOGIN_SUCCESS:o.callback({type:e.handler,provider:"vk",payload:s({uuid:i},e.params)});break;case x.SHOW_CAPTCHA:var r=n.captcha(i,{captcha_sid:e.params.captcha_sid,captcha_img:e.params.captcha_img});r.show().then((function(e){t.sendMessage({handler:U.CAPTCHA_SUCCESS,params:s({uuid:i},e)})})).catch((function(){t.sendMessage({handler:U.CAPTCHA_FAIL,params:{uuid:i}}),r.destroy()}));break;case R.SHOW_DATA_POLICY:n.userDataPolicy(i).show().then((function(){o.callback({type:R.DATA_POLICY_RESULT,payload:{uuid:i,policyAccepted:!0}})})).catch((function(){o.callback({type:R.DATA_POLICY_RESULT,payload:{uuid:i,policyAccepted:!1}})}));break;case x.FULL_AUTH_NEEDED:case x.PHONE_VALIDATION_NEEDED:o.callback({type:e.handler,payload:{uuid:i}})}})),r(this,"userDataPolicy",(function(e){var t=K({origin:location.protocol+"//"+location.host,uuid:e},"user_data_policy"),o=window.innerHeight,i="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n "),r=D(t,{properties:{height:"".concat(o,"px")},cssText:i});document.body.appendChild(r);var a=new V({iframe:r,origin:"https://"+I.get().connectDomain}),c=function(){r.style.display="none"};return{show:function(){return r.style.display="block",new Promise((function(t,o){a.onMessage((function(i){switch(i.handler){case R.HIDE_DATA_POLICY:c(),t();break;case R.SHOW_CAPTCHA:var p=n.captcha(e,{captcha_sid:i.params.captcha_sid,captcha_img:i.params.captcha_img});p.show().then((function(n){a.sendMessage({handler:U.CAPTCHA_SUCCESS,params:s({uuid:e},n)}),r.style.display="block"})).catch((function(){a.sendMessage({handler:U.CAPTCHA_FAIL,params:{uuid:e}}),p.destroy()})),c();break;default:c(),o()}}))}))},hide:c,destroy:function(){document.body.removeChild(r),a.destroy()}}})),r(this,"captcha",(function(e,n){var t=K(s({origin:location.protocol+"//"+location.host,uuid:e},n),"auth_captcha"),o=window.innerHeight,i=D(t,{cssText:"\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n ")});document.body.appendChild(i);var r=new V({iframe:i,origin:"https://"+I.get().connectDomain}),a=function(){document.body.removeChild(i),r.destroy()};return{show:function(){return i.style.display="block",new Promise((function(e,n){r.onMessage((function(t){switch(t.handler){case U.CAPTCHA_SUCCESS:e(t.params),a();break;default:n(),a()}}))}))},destroy:a}})),r(this,"userVisibleAuth",(function(e){var t=u(),o={origin:location.protocol+"//"+location.host,uuid:t};(null==e?void 0:e.screen)&&(o.screen=e.screen);var i=L(null==e?void 0:e.action);i&&(o.action=i);var r=K(o);n.flags&&(r="".concat(r,"#").concat(b(n.flags)));var a=screen.height/2-280,s=screen.width/2-410,p=window.open(r,"_blank","top=".concat(a,",left=").concat(s,",width=").concat(820,",height=").concat(560,",location"));if(!p){var d={code:c.CONNECT_WINDOW_NOT_OPENED,reason:f()};return Promise.reject(d)}return new Promise((function(e,n){var o=setInterval((function(){if(!p||p.closed){window.removeEventListener("message",i),clearInterval(o);var e={code:c.CONNECT_WINDOW_CLOSED,reason:h()};n(e)}}),1e3);function i(r){if(r.source===p&&p)if(window.removeEventListener("message",i),clearInterval(o),".vk.com"===r.origin.slice(r.origin.length-".vk.com".length))if(r.data.action==="vk_connect_response"+t){var a=r.data.payload;p.close(),e({provider:"vk",payload:a})}else if(r.data.action==="oauth_callback"+t)e({provider:r.data.payload.name}),p.close();else{p.close();var s={code:c.CONNECT_UNKNOWN_SDK_MESSAGE,reason:v(JSON.stringify(r.data))};n(s)}else{p.close();var u={code:c.CONNECT_DOMAIN_NOT_ALLOWED,reason:m(r.origin)};n(u)}}window.addEventListener("message",i)}))})),r(this,"redirectAuth",(function(e){var n=u(),t={redirect_uri:e.url,uuid:n};(null==e?void 0:e.state)&&(t.redirect_state=e.state),(null==e?void 0:e.screen)&&(t.screen=e.screen);var o=L(null==e?void 0:e.action);o&&(t.action=o);var i=K(t);location.assign(i)}))};!function(e){e.APP_CLOSE="VKWebAppClose",e.APP_READY="VKSDKMiniAppReady",e.RESIZE="VKSDKMiniAppResize",e.APP_INIT_CONFIG="VKSDKMiniAppInitConfig",e.OPEN_APP="VKWebAppOpenApp",e.OPEN_PAY_FORM="VKWebAppOpenPayForm",e.ACTION_DONE="VKWebAppActionDone"}(j||(j={})),(F=exports.MiniAppEvents||(exports.MiniAppEvents={})).OPEN="open",F.HIDE="hide",F.CLOSE="close",F.SHOW="show",F.MESSAGE="message",F.CREATE_APP="createapp",function(e){e.SUPERAPP_TOKEN="VKSDKGeneralSuperAppToken",e.AUTH_NEEDED="VKSDKGeneralAuthNeeded",e.OPEN_APP="VKSDKGeneralOpenApp"}(G||(G={}));var q;!function(e){e.INIT="ConnectProfileInit"}(q||(q={}));var Y={OneTapAuthEventsSDK:x,FloatingOneTapAuthEventsSDK:H,ButtonOneTapAuthEventsSDK:W,DataPolicyEventsSDK:R,AuthCaptchaEventsSDK:U};exports.Config=I,exports.Connect=z,exports.ConnectEvents=Y,exports.MiniApp=function e(n){var t=this;i(this,e),r(this,"events",void 0),r(this,"iframe",void 0),r(this,"bridge",void 0),r(this,"loading",void 0),r(this,"readyPromiseResolve",null),r(this,"readyPromise",null),r(this,"bodyOverflowValue",""),r(this,"params",void 0),r(this,"child",null),r(this,"open",(function(e,n){return t.loading?(t.iframe.src=t.getMiniAppUrl(e,n),t.loading=new Promise((function(e){t.iframe.onload=function(){t.iframe.onload=null,e()}})),t.readyPromise=new Promise((function(e){return t.readyPromiseResolve=e}))):t.preload(e,n).catch(console.error),t.iframe.style.display="block",t.bodyOverflowValue=window.document.body.style.overflow,window.document.body.style.overflow="hidden",t.loading.then(t.handleResize).catch(console.error),t.events.emit(exports.MiniAppEvents.OPEN),t.readyPromise})),r(this,"hide",(function(){t.iframe.style.display="none",window.document.body.style.overflow=t.bodyOverflowValue,t.events.emit(exports.MiniAppEvents.HIDE)})),r(this,"close",(function(){window.document.body.style.overflowX="",I.events.off("superAppToken",t.onSuperAppToken),t.iframe&&t.iframe.remove(),t.bridge&&t.bridge.destroy(),delete t.iframe,delete t.bridge,window.removeEventListener("resize",t.handleResize),t.events.emit(exports.MiniAppEvents.CLOSE)})),r(this,"show",(function(){if(!t.loading)throw new Error('App is not loaded, use "open" or "preload" methods');t.iframe.style.display="block",window.document.body.style.overflow=t.bodyOverflowValue,t.events.emit(exports.MiniAppEvents.SHOW)})),r(this,"preload",(function(e,n){var o=document.createElement("iframe"),i=window.innerHeight,r=isFinite(t.params.zIndex)?t.params.zIndex:999999;return o.src=t.getMiniAppUrl(e,n),o.style.cssText="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(i,"px;\n min-height: ").concat(i,"px;\n border: none;\n z-index: ").concat(r,";\n "),t.iframe=o,document.body.appendChild(t.iframe),I.events.on("superAppToken",t.onSuperAppToken),t.bridge=new V({iframe:t.iframe,origin:"https://"+I.get().connectDomain}),t.bridge.onMessage(t.handleMessage),window.addEventListener("resize",t.handleResize),t.loading=new Promise((function(e){o.onload=function(){o.onload=null,e()}})),t.readyPromise=new Promise((function(e){return t.readyPromiseResolve=e})),t.loading})),r(this,"sendMessage",(function(e){t.bridge.sendMessage(e)})),r(this,"onSuperAppToken",(function(e){t.bridge.sendMessage({handler:G.SUPERAPP_TOKEN,params:{result:e}})})),r(this,"handleMessage",(function(e){switch(e.handler){case j.APP_CLOSE:t.hide();break;case j.APP_READY:t.resolveReadyPromise(),t.handleUpdateConfig();break;case j.OPEN_APP:t.openMiniapp(e.params);break;case j.OPEN_PAY_FORM:t.openPayForm(e.params);break;case G.SUPERAPP_TOKEN:I._requestSuperAppToken();break;case G.AUTH_NEEDED:I._requestAuth();break;default:t.events.emit(exports.MiniAppEvents.MESSAGE,e)}})),r(this,"handleResize",(function(){if(t.iframe){var e=innerWidth,n=innerHeight;t.iframe.style.height="".concat(n,"px"),t.iframe.style.minHeight="".concat(n,"px"),t.bridge.sendMessage({handler:j.RESIZE,params:{viewport_width:e,viewport_height:n}})}})),r(this,"handleUpdateConfig",(function(){t.bridge.sendMessage({handler:j.APP_INIT_CONFIG,params:{fullMode:t.params.fullMode}})})),r(this,"getMiniAppUrl",(function(e,n){var o=I.get(),i=o.connectDomain,r=o.appId,a=o.superAppToken,s=o._debug,c=b({app:t.params.app,host_app_id:r,debug:s?"1":"",localhost:s?"1":"",superapp_token:a,app_query:e?JSON.stringify(e):"",app_hash:n||""});return"https://".concat(i,"/mini_app?").concat(c)})),r(this,"resolveReadyPromise",(function(){t.readyPromise&&t.readyPromiseResolve&&(t.readyPromiseResolve(),t.readyPromise=null,t.readyPromiseResolve=null)})),r(this,"openMiniapp",(function(n){t.child=new e({app:n.app_id}),t.events.emit(exports.MiniAppEvents.CREATE_APP,{app:t.child,location:n.location})})),r(this,"openPayForm",(function(n){var o=s({},n.params);o.data&&(o.data=JSON.stringify(o.data));var i=s({},o,{app_id:n.app_id,action:n.action}),r=new e({app:6217559});r.open(i).then((function(){return t.hide()})).catch(console.error),r.events.on(exports.MiniAppEvents.MESSAGE,(function(e){t.handleVKPayFormMessage(e),r.close(),t.show()})),r.events.on(exports.MiniAppEvents.HIDE,(function(){r.close(),t.close()}))})),r(this,"handleVKPayFormMessage",(function(e){e.handler===j.ACTION_DONE&&t.sendMessage(e)})),this.params=s({},n,{app:"number"==typeof n.app?"app".concat(n.app):n.app}),this.events=N()},exports.Profile=function e(){var n=this;i(this,e),r(this,"iframe",void 0),r(this,"config",void 0),r(this,"bridge",void 0),r(this,"iframeLoadPromise",void 0),r(this,"load",(function(e){if(!e.container)throw new Error("container is null");if(!e)throw new Error(l());return n.iframe||n.preload(e),n.iframeLoadPromise})),r(this,"remove",(function(){n.iframe&&n.iframe.parentNode&&n.iframe.parentNode.removeChild(n.iframe),n.destroy()})),r(this,"preload",(function(e){n.config=e;var t=document.createElement("iframe");t.style.border="none",t.style.width="100%",t.style.height="100%",t.style.minHeight="100%",e.container.appendChild(t),n.setup(t)})),r(this,"setup",(function(e){I.events.on("superAppToken",n.onSuperAppToken),e.src=n.getProfileUrl(),n.iframe=e,n.iframeLoadPromise=new Promise((function(n){e.onload=function(){return n(e)}})),n.bridge=new V({iframe:n.iframe,origin:"https://"+I.get().connectDomain}),n.bridge.onMessage(n.handleMessage)})),r(this,"destroy",(function(){I.events.off("superAppToken",n.onSuperAppToken),n.bridge.destroy(),delete n.iframe,delete n.iframeLoadPromise,delete n.bridge})),r(this,"onSuperAppToken",(function(e){if(e&&n.iframe){var t=n.iframe;n.destroy(),n.setup(t)}})),r(this,"handleMessage",(function(e){switch(e.handler){case q.INIT:n.handleInitApp().catch(console.error);break;case G.SUPERAPP_TOKEN:I._requestSuperAppToken();break;case G.AUTH_NEEDED:I._requestAuth();break;case G.OPEN_APP:I._openApp(e.params)}})),r(this,"handleInitApp",(function(){return Promise.resolve()})),r(this,"getProfileUrl",(function(){var e=I.get(),t=e.connectDomain,o=e.appId,i=e.superAppToken,r=e._debug,a=n.config.widgets,s=b({host_app_id:o,debug:r?"1":"",localhost:r?"1":"",superapp_token:i,widgets:a?a.join(","):""});return"https://".concat(t,"/super_profile?").concat(s)}))}; |
@@ -0,0 +0,0 @@ import Connect from './connect'; |
@@ -1,1 +0,1 @@ | ||
import e from"@babel/runtime/helpers/typeof";import"@babel/runtime/helpers/toConsumableArray";import n from"@babel/runtime/helpers/defineProperty";import"@babel/runtime/helpers/classCallCheck";import"@babel/runtime/helpers/createClass";function t(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function o(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function r(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?i(Object(t),!0).forEach((function(n){o(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):i(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var a,s="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",c=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:21,n="",t=e;t--;)n+=s[64*Math.random()|0];return n},p=["agreements","promo","vkc_behavior","vkc_auth_action","vkc_brand"];!function(e){e[e.UNKNOWN=1]="UNKNOWN",e[e.MISSING_PARAM=2]="MISSING_PARAM",e[e.CONNECTION_LOST=3]="CONNECTION_LOST",e[e.USER_DENIED=4]="USER_DENIED",e[e.INVALID_PARAMS=5]="INVALID_PARAMS",e[e.CUSTOM=6]="CUSTOM",e[e.CONNECT_WINDOW_CLOSED=7]="CONNECT_WINDOW_CLOSED",e[e.CONNECT_WINDOW_NOT_OPENED=8]="CONNECT_WINDOW_NOT_OPENED",e[e.CONNECT_DOMAIN_NOT_ALLOWED=9]="CONNECT_DOMAIN_NOT_ALLOWED",e[e.CONNECT_UNKNOWN_SDK_MESSAGE=10]="CONNECT_UNKNOWN_SDK_MESSAGE",e[e.OLD_MISSING_PARAM=100]="OLD_MISSING_PARAM"}(a||(a={}));var d=function(){return"No params passed for load app!"},u=function(){return"Connect window was closed."},l=function(){return"Connect window was not opened."},h=function(e){return'URL domain "'.concat(e,'" is not allowed.')},f=function(e){return"This SDK message is unknown: ".concat(e)},m=!("undefined"==typeof window||!window.document||!window.document.createElement),g=m&&!!window.addEventListener,v=function(){};if(g)try{var A=Object.defineProperty({},"passive",{get:function(){!0}});window.addEventListener("test",v,A),window.removeEventListener("test",v,A)}catch(e){}!function(){if(!m)return!1;var e=!1;try{document.createElement("div").scrollTo({top:0,get behavior(){return e=!0,"smooth"}})}catch(e){}}();function _(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function O(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?_(Object(o),!0).forEach((function(t){n(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):_(Object(o)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))}))}return e}var y={parse:function(e){if("string"!=typeof e)return{};if(!(e=e.trim().replace(/^[?#&]/,"")))return{};var n=/\?(.+)$/gi.exec(e);return(n?n[1]:e).split("&").reduce((function(e,n){var t=n.split("=");return t[1]&&(e[t[0]]=decodeURIComponent(t[1])),e}),{})},stringify:function(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"!==e(n)||null===n)return"";t=O({encode:!0},t);var o=function(e){return t.encode?encodeURIComponent(e):String(e)};return Object.keys(n).reduce((function(e,i){var r=n[i];return void 0===r?e:null===r?(t.skipNull||e.push([o(i),""].join("=")),e):Array.isArray(r)?(r.map((function(n){e.push("".concat(o(i),"[]=").concat(o(n)))})).join(),e):(e.push([o(i),o(r)].join("=")),e)}),[]).join("&")}};function E(e){return y.stringify(e)}function w(e){return Object.keys(e).filter((function(e){return p.includes(e)}))}function S(e){var n;return Boolean(null===(n=w(e))||void 0===n?void 0:n.length)}function P(e){var n=function(e){return w(e).reduce((function(n,t){return n[t]=e[t],n}),{})}(e);return btoa(JSON.stringify(n))}function b(e,n){var t,o=document.createElement("iframe");for(var i in e&&(o.src=e),o.style.cssText=null!==(t=null==n?void 0:n.cssText)&&void 0!==t?t:"",o.width="100%",o.height="100%",o.style.border="none",null==n?void 0:n.properties){var r;if(n&&n.properties.hasOwnProperty(i))o[i]=null!==(r=n.properties[i])&&void 0!==r?r:""}return o}function T(e){return e=e||Object.create(null),{on:function(n,t){(e[n]||(e[n]=[])).push(t)},off:function(n,t){e[n]&&e[n].splice(e[n].indexOf(t)>>>0,1)},emit:function(n,t){(e[n]||[]).slice().map((function(e){e(t)})),(e["*"]||[]).slice().map((function(e){e(n,t)}))}}}var D={appId:0,superAppToken:"",loginDomain:"login.vk.com",oauthDomain:"oauth.vk.com",connectDomain:"connect.vk.com",_debug:!1},N={},C={events:T(),init:function(e){if(!e.appId)throw new Error("appId required");D.appId=e.appId,D.superAppToken=e.superAppToken||"",D.loginDomain=e.loginDomain||"login.vk.com",D.oauthDomain=e.oauthDomain||"oauth.vk.com",D.connectDomain=e.connectDomain||"connect.vk.com",D.appSettings=e.appSettings,D._debug=!!e._debug},get:function(){return D},setSuperAppToken:function(e){D.superAppToken=e,C.events.emit("superAppToken",e)},onRequestSuperAppToken:function(e){N.superAppToken=e},_requestSuperAppToken:function(){var e;N.superAppToken&&(e=N.superAppToken()),e&&e.then((function(e){return C.setSuperAppToken(e)})).catch(console.error)},onAuth:function(e){N.auth=e},_requestAuth:function(){var e;N.auth&&(e=N.auth()),e&&e.then((function(e){return C.setSuperAppToken(e)})).catch(console.error)},onOpenApp:function(e){N.openApp=e},_openApp:function(e){N.openApp&&N.openApp(e.app)}},k=["extend_token"];function I(e){return e&&k.includes(e.name)?btoa(JSON.stringify(e)):""}function L(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auth",t=C.get(),o=t.appId,i=t.connectDomain,a=t.appSettings,s=r({app_id:o,response_type:"silent_token",v:"0.0.2"},e);a&&S(a)&&(s.app_settings=P(a));var c=E(s);return"https://".concat(i,"/").concat(n,"?").concat(c)}var K,M,R,U,H,W=function e(n){var i=this;t(this,e),o(this,"handler",(function(){return{}})),o(this,"config",void 0),o(this,"destroy",(function(){delete i.config,window.removeEventListener("message",i.handleMessage)})),o(this,"onMessage",(function(e){i.handler=e})),o(this,"sendMessage",(function(e){i.config.iframe.contentWindow.postMessage(r({type:"vk-sak-sdk"},e),i.config.origin)})),o(this,"handleMessage",(function(e){i.config.origin&&e.origin===i.config.origin&&e.source===i.config.iframe.contentWindow&&e.data&&"vk-sak-sdk"===e.data.type&&i.handler(e.data)})),this.config=n,window.addEventListener("message",this.handleMessage)};!function(e){e.SHOW_DATA_POLICY="VKSDKOneTapAuthConnectDataPolicy",e.HIDE_DATA_POLICY="VKSDKOneTapAuthDataPolicyClose",e.DATA_POLICY_RESULT="VKSDKOneTapAuthDataPolicyResult",e.SHOW_CAPTCHA="VKSDKOneTapAuthDataPolicyShowCaptcha"}(K||(K={})),function(e){e.CAPTCHA_SUCCESS="VKSDKAuthCaptchaSuccess",e.CAPTCHA_FAIL="VKSDKAuthCaptchaFail"}(M||(M={})),function(e){e.PHONE_VALIDATION_NEEDED="VKSDKOneTapAuthPhoneValidationNeeded",e.FULL_AUTH_NEEDED="VKSDKOneTapAuthFullAuthNeeded",e.AUTH_DATA_LOADED="VKSDKOneTapAuthDataLoaded",e.NOT_AUTHORIZED="VKSDKOneTapAuthNotAuthorized",e.LOGIN_SUCCESS="VKSDKOneTapAuthLoginSuccess",e.RESIZE_FRAME="VKSDKOneTapResizeFrame",e.SHOW_CAPTCHA="VKSDKOneTapShowCaptcha",e.VALIDATE_CAPTCHA="VKSDKOneTapValidateCaptcha"}(R||(R={})),function(e){e.CLOSE_AUTH="VKSDKOneTapAuthClose"}(U||(U={})),function(e){e.SHOW_LOGIN="VKSDKButtonOneTapAuthShowLogin",e.SHOW_LOGIN_OPTIONS="VKSDKButtonOneTapAuthShowLoginOptions"}(H||(H={}));var V,x,j,F=new function e(){var n=this;t(this,e),o(this,"flags",null),o(this,"silentAuth",(function(){var e=C.get(),n=e.loginDomain,t=e.appId,o=c(),i="https://".concat(n,"/?act=connect&app_id=").concat(t,"&response_type=").concat("silent_token","&uuid=").concat(o,"&v=").concat("0.0.2"),r=new XMLHttpRequest;return r.open("GET",i,!0),r.responseType="json",r.withCredentials=!0,new Promise((function(e,n){r.onload=function(){r.response?e({provider:"vk",payload:r.response}):n()},r.onerror=function(){n()},r.send()}))})),o(this,"oneTapAuth",(function(e,t){if(!["floating","button"].includes(e))return null;var o,i,a=function(){var e,n=window.innerWidth,t=n<=768;return{destroy:function(){return window.removeEventListener("resize",e)},isAdaptive:function(){return t},observe:function(o){e=function(){var e=window.innerWidth;n>768&&e<=768?o(t=!0):n<=768&&e>768&&o(t=!1),n=e},window.addEventListener("resize",e)}}}(),s=null;switch(e){case"floating":o=a.isAdaptive(),i=o?"314px":"334px",s={pageUrl:"floating_one_tap_auth",pageUrlParams:{adaptive:o?1:0},frameStyles:o?"\n display: none;\n position: fixed;\n bottom: 0;\n right: 0;\n max-width: 100%;\n width: 100%;\n height: ".concat(i,";\n "):"\n display: none;\n position: fixed;\n top: 0;\n right: 0;\n max-width: 400px;\n width: 100%;\n height: ".concat(i,";\n ")};break;case"button":s=function(e){var n={},t=44;if(e){var o,i;n.show_agreements=null!==(o=e.showAgreements)&&void 0!==o?o:0,n.show_alternative_login=null!==(i=e.showAlternativeLogin)&&void 0!==i?i:0;t+=n.show_alternative_login?56:0,t+=n.show_agreements?80:0}return{pageUrl:"button_one_tap_auth",pageUrlParams:n,frameStyles:"\n height: ".concat(t,"px;\n ")}}(t.options)}if(!s)throw new Error("options were not set");var p=c(),d=r({origin:location.protocol+"//"+location.host,uuid:p},s.pageUrlParams),u=s.pageUrl,l=b(L(d,u),{cssText:s.frameStyles});switch(e){case"floating":a.observe((function(e){e?(l.style.maxWidth="100%",l.style.top="auto",l.style.bottom="0"):(l.style.maxWidth="400px",l.style.top="0",l.style.bottom="auto"),l.style.display="none",d=r({},d,{adaptive:e?1:0}),l.src=L(d,u)})),document.body.appendChild(l);break;case"button":var h=t.container;h&&h.appendChild(l)}var f=new W({iframe:l,origin:"https://"+C.get().connectDomain}),m=function(){f.sendMessage({handler:R.RESIZE_FRAME,params:{uuid:p}})};window.addEventListener("resize",m);var g=function(){l&&(l.remove(),l=null),window.removeEventListener("resize",m),a&&a.destroy(),f.destroy()},v=new Promise((function(o){f.onMessage((function(i){if(i.params.uuid===p)switch(i.handler){case R.NOT_AUTHORIZED:"floating"===e&&(t.callback({type:i.handler,payload:{uuid:p,error:"not_authorized"}}),g()),o(i.handler);break;case R.AUTH_DATA_LOADED:"floating"===e&&(l.style.display="block"),f.sendMessage({handler:R.RESIZE_FRAME,params:{uuid:p}}),o(i.handler);break;case R.RESIZE_FRAME:l.style.height="".concat(i.params.height,"px");break;case R.LOGIN_SUCCESS:t.callback({type:i.handler,provider:"vk",payload:r({uuid:p},i.params)});break;case R.SHOW_CAPTCHA:var a=n.captcha(p,{captcha_sid:i.params.captcha_sid,captcha_img:i.params.captcha_img});a.show().then((function(e){f.sendMessage({handler:M.CAPTCHA_SUCCESS,params:r({uuid:p},e)})})).catch((function(){f.sendMessage({handler:M.CAPTCHA_FAIL,params:{uuid:p}}),a.destroy()}));break;case U.CLOSE_AUTH:t.callback({type:i.handler,payload:{uuid:p}}),g();break;case R.FULL_AUTH_NEEDED:case R.PHONE_VALIDATION_NEEDED:case H.SHOW_LOGIN:case H.SHOW_LOGIN_OPTIONS:t.callback({type:i.handler,payload:{uuid:p}});break;case K.SHOW_DATA_POLICY:n.userDataPolicy(p).show().then((function(){t.callback({type:K.DATA_POLICY_RESULT,payload:{uuid:p,policyAccepted:!0}})})).catch((function(){t.callback({type:K.DATA_POLICY_RESULT,payload:{uuid:p,policyAccepted:!1}})}))}}))}));return{getFrame:function(){return l},destroy:g,authReadyPromise:v}})),o(this,"userDataPolicy",(function(e){var t=L({origin:location.protocol+"//"+location.host,uuid:e},"user_data_policy"),o=window.innerHeight,i="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n "),a=b(t,{properties:{height:"".concat(o,"px")},cssText:i});document.body.appendChild(a);var s=new W({iframe:a,origin:"https://"+C.get().connectDomain}),c=function(){document.body.removeChild(a),s.destroy()},p=function(){a.style.display="none"};return{show:function(){return a.style.display="block",new Promise((function(t,o){s.onMessage((function(i){switch(i.handler){case K.HIDE_DATA_POLICY:c(),t();break;case K.SHOW_CAPTCHA:var d=n.captcha(e,{captcha_sid:i.params.captcha_sid,captcha_img:i.params.captcha_img});d.show().then((function(n){s.sendMessage({handler:M.CAPTCHA_SUCCESS,params:r({uuid:e},n)}),a.style.display="block"})).catch((function(){s.sendMessage({handler:M.CAPTCHA_FAIL,params:{uuid:e}}),d.destroy()})),p();break;default:o()}}))}))},hide:p,destroy:c}})),o(this,"captcha",(function(e,n){var t=L(r({origin:location.protocol+"//"+location.host,uuid:e},n),"auth_captcha"),o=window.innerHeight,i=b(t,{cssText:"\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n ")});document.body.appendChild(i);var a=new W({iframe:i,origin:"https://"+C.get().connectDomain}),s=function(){document.body.removeChild(i),a.destroy()};return{show:function(){return i.style.display="block",new Promise((function(e,n){a.onMessage((function(t){switch(t.handler){case M.CAPTCHA_SUCCESS:e(t.params),s();break;default:n(),s()}}))}))},destroy:s}})),o(this,"userVisibleAuth",(function(e){var t=c(),o={origin:location.protocol+"//"+location.host,uuid:t};(null==e?void 0:e.screen)&&(o.screen=e.screen);var i=I(null==e?void 0:e.action);i&&(o.action=i);var r=L(o);n.flags&&(r="".concat(r,"#").concat(E(n.flags)));var s=screen.height/2-280,p=screen.width/2-410,d=window.open(r,"_blank","top=".concat(s,",left=").concat(p,",width=").concat(820,",height=").concat(560,",location"));if(!d){var m={code:a.CONNECT_WINDOW_NOT_OPENED,reason:l()};return Promise.reject(m)}return new Promise((function(e,n){var o=setInterval((function(){if(!d||d.closed){window.removeEventListener("message",i),clearInterval(o);var e={code:a.CONNECT_WINDOW_CLOSED,reason:u()};n(e)}}),1e3);function i(r){if(r.source===d&&d)if(window.removeEventListener("message",i),clearInterval(o),".vk.com"===r.origin.slice(r.origin.length-".vk.com".length))if(r.data.action==="vk_connect_response"+t){var s=r.data.payload;d.close(),e({provider:"vk",payload:s})}else if(r.data.action==="oauth_callback"+t)e({provider:r.data.payload.name}),d.close();else{d.close();var c={code:a.CONNECT_UNKNOWN_SDK_MESSAGE,reason:f(JSON.stringify(r.data))};n(c)}else{d.close();var p={code:a.CONNECT_DOMAIN_NOT_ALLOWED,reason:h(r.origin)};n(p)}}window.addEventListener("message",i)}))})),o(this,"redirectAuth",(function(e){var n=c(),t={redirect_uri:e.url,uuid:n};(null==e?void 0:e.state)&&(t.redirect_state=e.state),(null==e?void 0:e.screen)&&(t.screen=e.screen);var o=I(null==e?void 0:e.action);o&&(t.action=o);var i=L(t);location.assign(i)}))};!function(e){e.APP_CLOSE="VKWebAppClose",e.APP_READY="VKSDKMiniAppReady",e.RESIZE="VKSDKMiniAppResize",e.APP_INIT_CONFIG="VKSDKMiniAppInitConfig",e.OPEN_APP="VKWebAppOpenApp",e.OPEN_PAY_FORM="VKWebAppOpenPayForm",e.ACTION_DONE="VKWebAppActionDone"}(V||(V={})),function(e){e.OPEN="open",e.HIDE="hide",e.CLOSE="close",e.SHOW="show",e.MESSAGE="message",e.CREATE_APP="createapp"}(x||(x={})),function(e){e.SUPERAPP_TOKEN="VKSDKGeneralSuperAppToken",e.AUTH_NEEDED="VKSDKGeneralAuthNeeded",e.OPEN_APP="VKSDKGeneralOpenApp"}(j||(j={}));var G,z=function e(n){var i=this;t(this,e),o(this,"events",void 0),o(this,"iframe",void 0),o(this,"bridge",void 0),o(this,"loading",void 0),o(this,"readyPromiseResolve",null),o(this,"readyPromise",null),o(this,"bodyOverflowValue",""),o(this,"params",void 0),o(this,"child",null),o(this,"open",(function(e,n){return i.loading?(i.iframe.src=i.getMiniAppUrl(e,n),i.loading=new Promise((function(e){i.iframe.onload=function(){i.iframe.onload=null,e()}})),i.readyPromise=new Promise((function(e){return i.readyPromiseResolve=e}))):i.preload(e,n).catch(console.error),i.iframe.style.display="block",i.bodyOverflowValue=window.document.body.style.overflow,window.document.body.style.overflow="hidden",i.loading.then(i.handleResize).catch(console.error),i.events.emit(x.OPEN),i.readyPromise})),o(this,"hide",(function(){i.iframe.style.display="none",window.document.body.style.overflow=i.bodyOverflowValue,i.events.emit(x.HIDE)})),o(this,"close",(function(){window.document.body.style.overflowX="",C.events.off("superAppToken",i.onSuperAppToken),i.iframe&&i.iframe.remove(),i.bridge&&i.bridge.destroy(),delete i.iframe,delete i.bridge,window.removeEventListener("resize",i.handleResize),i.events.emit(x.CLOSE)})),o(this,"show",(function(){if(!i.loading)throw new Error('App is not loaded, use "open" or "preload" methods');i.iframe.style.display="block",window.document.body.style.overflow=i.bodyOverflowValue,i.events.emit(x.SHOW)})),o(this,"preload",(function(e,n){var t=document.createElement("iframe"),o=window.innerHeight,r=isFinite(i.params.zIndex)?i.params.zIndex:999999;return t.src=i.getMiniAppUrl(e,n),t.style.cssText="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: ").concat(r,";\n "),i.iframe=t,document.body.appendChild(i.iframe),C.events.on("superAppToken",i.onSuperAppToken),i.bridge=new W({iframe:i.iframe,origin:"https://"+C.get().connectDomain}),i.bridge.onMessage(i.handleMessage),window.addEventListener("resize",i.handleResize),i.loading=new Promise((function(e){t.onload=function(){t.onload=null,e()}})),i.readyPromise=new Promise((function(e){return i.readyPromiseResolve=e})),i.loading})),o(this,"sendMessage",(function(e){i.bridge.sendMessage(e)})),o(this,"onSuperAppToken",(function(e){i.bridge.sendMessage({handler:j.SUPERAPP_TOKEN,params:{result:e}})})),o(this,"handleMessage",(function(e){switch(e.handler){case V.APP_CLOSE:i.hide();break;case V.APP_READY:i.resolveReadyPromise(),i.handleUpdateConfig();break;case V.OPEN_APP:i.openMiniapp(e.params);break;case V.OPEN_PAY_FORM:i.openPayForm(e.params);break;case j.SUPERAPP_TOKEN:C._requestSuperAppToken();break;case j.AUTH_NEEDED:C._requestAuth();break;default:i.events.emit(x.MESSAGE,e)}})),o(this,"handleResize",(function(){if(i.iframe){var e=innerWidth,n=innerHeight;i.iframe.style.height="".concat(n,"px"),i.iframe.style.minHeight="".concat(n,"px"),i.bridge.sendMessage({handler:V.RESIZE,params:{viewport_width:e,viewport_height:n}})}})),o(this,"handleUpdateConfig",(function(){i.bridge.sendMessage({handler:V.APP_INIT_CONFIG,params:{fullMode:i.params.fullMode}})})),o(this,"getMiniAppUrl",(function(e,n){var t=C.get(),o=t.connectDomain,r=t.appId,a=t.superAppToken,s=t._debug,c=E({app:i.params.app,host_app_id:r,debug:s?"1":"",localhost:s?"1":"",superapp_token:a,app_query:e?JSON.stringify(e):"",app_hash:n||""});return"https://".concat(o,"/mini_app?").concat(c)})),o(this,"resolveReadyPromise",(function(){i.readyPromise&&i.readyPromiseResolve&&(i.readyPromiseResolve(),i.readyPromise=null,i.readyPromiseResolve=null)})),o(this,"openMiniapp",(function(n){i.child=new e({app:n.app_id}),i.events.emit(x.CREATE_APP,{app:i.child,location:n.location})})),o(this,"openPayForm",(function(n){var t=r({},n.params);t.data&&(t.data=JSON.stringify(t.data));var o=r({},t,{app_id:n.app_id,action:n.action}),a=new e({app:6217559});a.open(o).then((function(){return i.hide()})).catch(console.error),a.events.on(x.MESSAGE,(function(e){i.handleVKPayFormMessage(e),a.close(),i.show()})),a.events.on(x.HIDE,(function(){a.close(),i.close()}))})),o(this,"handleVKPayFormMessage",(function(e){e.handler===V.ACTION_DONE&&i.sendMessage(e)})),this.params=r({},n,{app:"number"==typeof n.app?"app".concat(n.app):n.app}),this.events=T()};!function(e){e.INIT="ConnectProfileInit"}(G||(G={}));var Y=function e(){var n=this;t(this,e),o(this,"iframe",void 0),o(this,"config",void 0),o(this,"bridge",void 0),o(this,"iframeLoadPromise",void 0),o(this,"load",(function(e){if(!e.container)throw new Error("container is null");if(!e)throw new Error(d());return n.iframe||n.preload(e),n.iframeLoadPromise})),o(this,"remove",(function(){n.iframe&&n.iframe.parentNode&&n.iframe.parentNode.removeChild(n.iframe),n.destroy()})),o(this,"preload",(function(e){n.config=e;var t=document.createElement("iframe");t.style.border="none",t.style.width="100%",t.style.height="100%",t.style.minHeight="100%",e.container.appendChild(t),n.setup(t)})),o(this,"setup",(function(e){C.events.on("superAppToken",n.onSuperAppToken),e.src=n.getProfileUrl(),n.iframe=e,n.iframeLoadPromise=new Promise((function(n){e.onload=function(){return n(e)}})),n.bridge=new W({iframe:n.iframe,origin:"https://"+C.get().connectDomain}),n.bridge.onMessage(n.handleMessage)})),o(this,"destroy",(function(){C.events.off("superAppToken",n.onSuperAppToken),n.bridge.destroy(),delete n.iframe,delete n.iframeLoadPromise,delete n.bridge})),o(this,"onSuperAppToken",(function(e){if(e&&n.iframe){var t=n.iframe;n.destroy(),n.setup(t)}})),o(this,"handleMessage",(function(e){switch(e.handler){case G.INIT:n.handleInitApp().catch(console.error);break;case j.SUPERAPP_TOKEN:C._requestSuperAppToken();break;case j.AUTH_NEEDED:C._requestAuth();break;case j.OPEN_APP:C._openApp(e.params)}})),o(this,"handleInitApp",(function(){return Promise.resolve()})),o(this,"getProfileUrl",(function(){var e=C.get(),t=e.connectDomain,o=e.appId,i=e.superAppToken,r=e._debug,a=n.config.widgets,s=E({host_app_id:o,debug:r?"1":"",localhost:r?"1":"",superapp_token:i,widgets:a?a.join(","):""});return"https://".concat(t,"/super_profile?").concat(s)}))},q={OneTapAuthEventsSDK:R,FloatingOneTapAuthEventsSDK:U,ButtonOneTapAuthEventsSDK:H,DataPolicyEventsSDK:K,AuthCaptchaEventsSDK:M};export{C as Config,F as Connect,q as ConnectEvents,z as MiniApp,x as MiniAppEvents,Y as Profile}; | ||
import e from"@babel/runtime/helpers/typeof";import"@babel/runtime/helpers/toConsumableArray";import n from"@babel/runtime/helpers/defineProperty";import"@babel/runtime/helpers/classCallCheck";import"@babel/runtime/helpers/createClass";function t(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function o(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function a(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?i(Object(t),!0).forEach((function(n){o(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):i(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var r,s="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",c=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:21,n="",t=e;t--;)n+=s[64*Math.random()|0];return n},p=["agreements","promo","vkc_behavior","vkc_auth_action","vkc_brand"];!function(e){e[e.UNKNOWN=1]="UNKNOWN",e[e.MISSING_PARAM=2]="MISSING_PARAM",e[e.CONNECTION_LOST=3]="CONNECTION_LOST",e[e.USER_DENIED=4]="USER_DENIED",e[e.INVALID_PARAMS=5]="INVALID_PARAMS",e[e.CUSTOM=6]="CUSTOM",e[e.CONNECT_WINDOW_CLOSED=7]="CONNECT_WINDOW_CLOSED",e[e.CONNECT_WINDOW_NOT_OPENED=8]="CONNECT_WINDOW_NOT_OPENED",e[e.CONNECT_DOMAIN_NOT_ALLOWED=9]="CONNECT_DOMAIN_NOT_ALLOWED",e[e.CONNECT_UNKNOWN_SDK_MESSAGE=10]="CONNECT_UNKNOWN_SDK_MESSAGE",e[e.OLD_MISSING_PARAM=100]="OLD_MISSING_PARAM"}(r||(r={}));var d=function(){return"No params passed for load app!"},u=function(){return"Connect window was closed."},l=function(){return"Connect window was not opened."},h=function(e){return'URL domain "'.concat(e,'" is not allowed.')},f=function(e){return"This SDK message is unknown: ".concat(e)},m=!("undefined"==typeof window||!window.document||!window.document.createElement),g=m&&!!window.addEventListener,A=function(){};if(g)try{var v=Object.defineProperty({},"passive",{get:function(){!0}});window.addEventListener("test",A,v),window.removeEventListener("test",A,v)}catch(e){}!function(){if(!m)return!1;var e=!1;try{document.createElement("div").scrollTo({top:0,get behavior(){return e=!0,"smooth"}})}catch(e){}}();function _(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function O(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?_(Object(o),!0).forEach((function(t){n(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):_(Object(o)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))}))}return e}var y={parse:function(e){if("string"!=typeof e)return{};if(!(e=e.trim().replace(/^[?#&]/,"")))return{};var n=/\?(.+)$/gi.exec(e);return(n?n[1]:e).split("&").reduce((function(e,n){var t=n.split("=");return t[1]&&(e[t[0]]=decodeURIComponent(t[1])),e}),{})},stringify:function(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"!==e(n)||null===n)return"";t=O({encode:!0},t);var o=function(e){return t.encode?encodeURIComponent(e):String(e)};return Object.keys(n).reduce((function(e,i){var a=n[i];return void 0===a?e:null===a?(t.skipNull||e.push([o(i),""].join("=")),e):Array.isArray(a)?(a.map((function(n){e.push("".concat(o(i),"[]=").concat(o(n)))})).join(),e):(e.push([o(i),o(a)].join("=")),e)}),[]).join("&")}};function E(e){return y.stringify(e)}function w(e){return Object.keys(e).filter((function(e){return p.includes(e)}))}function P(e){var n;return Boolean(null===(n=w(e))||void 0===n?void 0:n.length)}function S(e){var n=function(e){return w(e).reduce((function(n,t){return n[t]=e[t],n}),{})}(e);return btoa(JSON.stringify(n))}function T(e,n){var t,o=document.createElement("iframe");for(var i in e&&(o.src=e),o.style.cssText=null!==(t=null==n?void 0:n.cssText)&&void 0!==t?t:"",o.width="100%",o.height="100%",o.style.border="none",null==n?void 0:n.properties){var a;if(n&&n.properties.hasOwnProperty(i))o[i]=null!==(a=n.properties[i])&&void 0!==a?a:""}return o}function b(e){return e=e||Object.create(null),{on:function(n,t){(e[n]||(e[n]=[])).push(t)},off:function(n,t){e[n]&&e[n].splice(e[n].indexOf(t)>>>0,1)},emit:function(n,t){(e[n]||[]).slice().map((function(e){e(t)})),(e["*"]||[]).slice().map((function(e){e(n,t)}))}}}var D={appId:0,superAppToken:"",loginDomain:"login.vk.com",oauthDomain:"oauth.vk.com",connectDomain:"connect.vk.com",_debug:!1},N={},C={events:b(),init:function(e){if(!e.appId)throw new Error("appId required");D.appId=e.appId,D.superAppToken=e.superAppToken||"",D.loginDomain=e.loginDomain||"login.vk.com",D.oauthDomain=e.oauthDomain||"oauth.vk.com",D.connectDomain=e.connectDomain||"connect.vk.com",D.appSettings=e.appSettings,D._debug=!!e._debug},get:function(){return D},setSuperAppToken:function(e){D.superAppToken=e,C.events.emit("superAppToken",e)},onRequestSuperAppToken:function(e){N.superAppToken=e},_requestSuperAppToken:function(){var e;N.superAppToken&&(e=N.superAppToken()),e&&e.then((function(e){return C.setSuperAppToken(e)})).catch(console.error)},onAuth:function(e){N.auth=e},_requestAuth:function(){var e;N.auth&&(e=N.auth()),e&&e.then((function(e){return C.setSuperAppToken(e)})).catch(console.error)},onOpenApp:function(e){N.openApp=e},_openApp:function(e){N.openApp&&N.openApp(e.app)}},k=["extend_token"];function I(e){return e&&k.includes(e.name)?btoa(JSON.stringify(e)):""}function L(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auth",t=C.get(),o=t.appId,i=t.connectDomain,r=t.appSettings,s=a({app_id:o,response_type:"silent_token",v:"0.0.2",localhost:1,debug:1},e);r&&P(r)&&(s.app_settings=S(r));var c=E(s);return"https://".concat(i,"/").concat(n,"?").concat(c)}var M,K,R,U,H,W=function e(n){var i=this;t(this,e),o(this,"handler",(function(){return{}})),o(this,"config",void 0),o(this,"destroy",(function(){delete i.config,window.removeEventListener("message",i.handleMessage)})),o(this,"onMessage",(function(e){i.handler=e})),o(this,"sendMessage",(function(e){i.config.iframe.contentWindow.postMessage(a({type:"vk-sak-sdk"},e),i.config.origin)})),o(this,"handleMessage",(function(e){i.config.origin&&e.origin===i.config.origin&&e.source===i.config.iframe.contentWindow&&e.data&&"vk-sak-sdk"===e.data.type&&i.handler(e.data)})),this.config=n,window.addEventListener("message",this.handleMessage)};!function(e){e.SHOW_DATA_POLICY="VKSDKOneTapAuthConnectDataPolicy",e.HIDE_DATA_POLICY="VKSDKOneTapAuthDataPolicyClose",e.DATA_POLICY_RESULT="VKSDKOneTapAuthDataPolicyResult",e.SHOW_CAPTCHA="VKSDKOneTapAuthDataPolicyShowCaptcha"}(M||(M={})),function(e){e.CAPTCHA_SUCCESS="VKSDKAuthCaptchaSuccess",e.CAPTCHA_FAIL="VKSDKAuthCaptchaFail"}(K||(K={})),function(e){e.PHONE_VALIDATION_NEEDED="VKSDKOneTapAuthPhoneValidationNeeded",e.FULL_AUTH_NEEDED="VKSDKOneTapAuthFullAuthNeeded",e.AUTH_DATA_LOADED="VKSDKOneTapAuthDataLoaded",e.NOT_AUTHORIZED="VKSDKOneTapAuthNotAuthorized",e.LOGIN_SUCCESS="VKSDKOneTapAuthLoginSuccess",e.RESIZE_FRAME="VKSDKOneTapResizeFrame",e.SHOW_CAPTCHA="VKSDKOneTapShowCaptcha",e.VALIDATE_CAPTCHA="VKSDKOneTapValidateCaptcha"}(R||(R={})),function(e){e.CLOSE_AUTH="VKSDKOneTapAuthClose"}(U||(U={})),function(e){e.SHOW_LOGIN="VKSDKButtonOneTapAuthShowLogin",e.SHOW_LOGIN_OPTIONS="VKSDKButtonOneTapAuthShowLoginOptions"}(H||(H={}));var x,V,j,F=new function e(){var n=this;t(this,e),o(this,"flags",null),o(this,"silentAuth",(function(){var e=C.get(),n=e.loginDomain,t=e.appId,o=c(),i="https://".concat(n,"/?act=connect&app_id=").concat(t,"&response_type=").concat("silent_token","&uuid=").concat(o,"&v=").concat("0.0.2"),a=new XMLHttpRequest;return a.open("GET",i,!0),a.responseType="json",a.withCredentials=!0,new Promise((function(e,n){a.onload=function(){a.response?e({provider:"vk",payload:a.response}):n()},a.onerror=function(){n()},a.send()}))})),o(this,"oneTapAuth",(function(e,t){if(console.warn("Connect.oneTapAuth method is deprecated. Use Connect.floatingOneTapAuth and Connect.buttonOneTapAuth methods."),!["floating","button"].includes(e))return null;switch(e){case"button":var o=n.buttonOneTapAuth(t);return o?{getFrame:o.getFrame,destroy:o.destroy,authReadyPromise:o.authReadyPromise}:null;case"floating":return n.floatingOneTapAuth(t);default:return null}})),o(this,"floatingOneTapAuth",(function(e){var t,o,i=function(){var e,n=window.innerWidth,t=n<=768;return{destroy:function(){return window.removeEventListener("resize",e)},isAdaptive:function(){return t},observe:function(o){e=function(){var e=window.innerWidth;n>768&&e<=768?o(t=!0):n<=768&&e>768&&o(t=!1),n=e},window.addEventListener("resize",e)}}}(),r=(t=i.isAdaptive(),o=t?"314px":"334px",{pageUrl:"floating_one_tap_auth",pageUrlParams:{adaptive:t?1:0},frameStyles:t?"\n display: none;\n position: fixed;\n bottom: 0;\n right: 0;\n max-width: 100%;\n width: 100%;\n height: ".concat(o,";\n "):"\n display: none;\n position: fixed;\n top: 0;\n right: 0;\n max-width: 400px;\n width: 100%;\n height: ".concat(o,";\n ")});if(!r)throw new Error("options were not set");var s=c(),p=a({origin:location.protocol+"//"+location.host,uuid:s},r.pageUrlParams),d=r.pageUrl,u=T(L(p,d),{cssText:r.frameStyles});i.observe((function(e){e?(u.style.maxWidth="100%",u.style.top="auto",u.style.bottom="0"):(u.style.maxWidth="400px",u.style.top="0",u.style.bottom="auto"),u.style.display="none",p=a({},p,{adaptive:e?1:0}),u.src=L(p,d)})),document.body.appendChild(u);var l=new W({iframe:u,origin:"https://"+C.get().connectDomain}),h=function(){l.sendMessage({handler:R.RESIZE_FRAME,params:{uuid:s}})};window.addEventListener("resize",h);var f=function(){u&&(u.remove(),u=null),window.removeEventListener("resize",h),i&&i.destroy(),l.destroy()},m=new Promise((function(t){l.onMessage((function(o){if(o.params.uuid===s)switch(o.handler){case R.NOT_AUTHORIZED:e.callback({type:o.handler,payload:{uuid:s,error:"not_authorized"}}),f(),t(o.handler);break;case R.RESIZE_FRAME:u.style.height="".concat(o.params.height,"px");break;case U.CLOSE_AUTH:e.callback({type:o.handler,payload:{uuid:s}}),f();break;case R.AUTH_DATA_LOADED:u.style.display="block",t(o.handler);default:n.handleOneTapEvents(o,l,e)}}))}));return{getFrame:function(){return u},destroy:f,authReadyPromise:m}})),o(this,"buttonOneTapAuth",(function(e){var t,o=function(e){var n={},t=44;if(e){var o,i,a;n.display=null!==(o=e.displayMode)&&void 0!==o?o:"default",n.show_agreements=null!==(i=e.showAgreements)&&void 0!==i?i:0,n.show_alternative_login=null!==(a=e.showAlternativeLogin)&&void 0!==a?a:0;t+=n.show_alternative_login?56:0,t+=n.show_agreements?80:0}return{pageUrl:"button_one_tap_auth",pageUrlParams:n,frameStyles:"\n height: ".concat(t,"px;\n ")}}(e.options);if(!o)throw new Error("options were not set");var i=c(),r=T(L(a({origin:location.protocol+"//"+location.host,uuid:i},o.pageUrlParams),o.pageUrl),{cssText:o.frameStyles}),s=e.container;s&&s.appendChild(r);var p=new W({iframe:r,origin:"https://"+C.get().connectDomain}),d=function(){p.sendMessage({handler:R.RESIZE_FRAME,params:{uuid:i}})};window.addEventListener("resize",d);var u={getFrame:function(){return r},destroy:function(){r&&(r.remove(),r=null),window.removeEventListener("resize",d),p.destroy()},authReadyPromise:new Promise((function(t){p.onMessage((function(o){if(o.params.uuid===i)switch(o.handler){case R.RESIZE_FRAME:r.style.height="".concat(o.params.height,"px");break;case R.NOT_AUTHORIZED:t(o.handler);break;case H.SHOW_LOGIN:case H.SHOW_LOGIN_OPTIONS:e.callback({type:o.handler,payload:{uuid:i}});break;case R.AUTH_DATA_LOADED:t(o.handler);default:n.handleOneTapEvents(o,p,e)}}))}))};return(null===(t=e.options)||void 0===t?void 0:t.showAgreements)||(u.userDataPolicy=n.userDataPolicy(i)),u})),o(this,"handleOneTapEvents",(function(e,t,o){var i=e.params.uuid;switch(e.handler){case R.AUTH_DATA_LOADED:t.sendMessage({handler:R.RESIZE_FRAME,params:{uuid:i}});break;case R.LOGIN_SUCCESS:o.callback({type:e.handler,provider:"vk",payload:a({uuid:i},e.params)});break;case R.SHOW_CAPTCHA:var r=n.captcha(i,{captcha_sid:e.params.captcha_sid,captcha_img:e.params.captcha_img});r.show().then((function(e){t.sendMessage({handler:K.CAPTCHA_SUCCESS,params:a({uuid:i},e)})})).catch((function(){t.sendMessage({handler:K.CAPTCHA_FAIL,params:{uuid:i}}),r.destroy()}));break;case M.SHOW_DATA_POLICY:n.userDataPolicy(i).show().then((function(){o.callback({type:M.DATA_POLICY_RESULT,payload:{uuid:i,policyAccepted:!0}})})).catch((function(){o.callback({type:M.DATA_POLICY_RESULT,payload:{uuid:i,policyAccepted:!1}})}));break;case R.FULL_AUTH_NEEDED:case R.PHONE_VALIDATION_NEEDED:o.callback({type:e.handler,payload:{uuid:i}})}})),o(this,"userDataPolicy",(function(e){var t=L({origin:location.protocol+"//"+location.host,uuid:e},"user_data_policy"),o=window.innerHeight,i="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n "),r=T(t,{properties:{height:"".concat(o,"px")},cssText:i});document.body.appendChild(r);var s=new W({iframe:r,origin:"https://"+C.get().connectDomain}),c=function(){r.style.display="none"};return{show:function(){return r.style.display="block",new Promise((function(t,o){s.onMessage((function(i){switch(i.handler){case M.HIDE_DATA_POLICY:c(),t();break;case M.SHOW_CAPTCHA:var p=n.captcha(e,{captcha_sid:i.params.captcha_sid,captcha_img:i.params.captcha_img});p.show().then((function(n){s.sendMessage({handler:K.CAPTCHA_SUCCESS,params:a({uuid:e},n)}),r.style.display="block"})).catch((function(){s.sendMessage({handler:K.CAPTCHA_FAIL,params:{uuid:e}}),p.destroy()})),c();break;default:c(),o()}}))}))},hide:c,destroy:function(){document.body.removeChild(r),s.destroy()}}})),o(this,"captcha",(function(e,n){var t=L(a({origin:location.protocol+"//"+location.host,uuid:e},n),"auth_captcha"),o=window.innerHeight,i=T(t,{cssText:"\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: 99999;\n ")});document.body.appendChild(i);var r=new W({iframe:i,origin:"https://"+C.get().connectDomain}),s=function(){document.body.removeChild(i),r.destroy()};return{show:function(){return i.style.display="block",new Promise((function(e,n){r.onMessage((function(t){switch(t.handler){case K.CAPTCHA_SUCCESS:e(t.params),s();break;default:n(),s()}}))}))},destroy:s}})),o(this,"userVisibleAuth",(function(e){var t=c(),o={origin:location.protocol+"//"+location.host,uuid:t};(null==e?void 0:e.screen)&&(o.screen=e.screen);var i=I(null==e?void 0:e.action);i&&(o.action=i);var a=L(o);n.flags&&(a="".concat(a,"#").concat(E(n.flags)));var s=screen.height/2-280,p=screen.width/2-410,d=window.open(a,"_blank","top=".concat(s,",left=").concat(p,",width=").concat(820,",height=").concat(560,",location"));if(!d){var m={code:r.CONNECT_WINDOW_NOT_OPENED,reason:l()};return Promise.reject(m)}return new Promise((function(e,n){var o=setInterval((function(){if(!d||d.closed){window.removeEventListener("message",i),clearInterval(o);var e={code:r.CONNECT_WINDOW_CLOSED,reason:u()};n(e)}}),1e3);function i(a){if(a.source===d&&d)if(window.removeEventListener("message",i),clearInterval(o),".vk.com"===a.origin.slice(a.origin.length-".vk.com".length))if(a.data.action==="vk_connect_response"+t){var s=a.data.payload;d.close(),e({provider:"vk",payload:s})}else if(a.data.action==="oauth_callback"+t)e({provider:a.data.payload.name}),d.close();else{d.close();var c={code:r.CONNECT_UNKNOWN_SDK_MESSAGE,reason:f(JSON.stringify(a.data))};n(c)}else{d.close();var p={code:r.CONNECT_DOMAIN_NOT_ALLOWED,reason:h(a.origin)};n(p)}}window.addEventListener("message",i)}))})),o(this,"redirectAuth",(function(e){var n=c(),t={redirect_uri:e.url,uuid:n};(null==e?void 0:e.state)&&(t.redirect_state=e.state),(null==e?void 0:e.screen)&&(t.screen=e.screen);var o=I(null==e?void 0:e.action);o&&(t.action=o);var i=L(t);location.assign(i)}))};!function(e){e.APP_CLOSE="VKWebAppClose",e.APP_READY="VKSDKMiniAppReady",e.RESIZE="VKSDKMiniAppResize",e.APP_INIT_CONFIG="VKSDKMiniAppInitConfig",e.OPEN_APP="VKWebAppOpenApp",e.OPEN_PAY_FORM="VKWebAppOpenPayForm",e.ACTION_DONE="VKWebAppActionDone"}(x||(x={})),function(e){e.OPEN="open",e.HIDE="hide",e.CLOSE="close",e.SHOW="show",e.MESSAGE="message",e.CREATE_APP="createapp"}(V||(V={})),function(e){e.SUPERAPP_TOKEN="VKSDKGeneralSuperAppToken",e.AUTH_NEEDED="VKSDKGeneralAuthNeeded",e.OPEN_APP="VKSDKGeneralOpenApp"}(j||(j={}));var G,z=function e(n){var i=this;t(this,e),o(this,"events",void 0),o(this,"iframe",void 0),o(this,"bridge",void 0),o(this,"loading",void 0),o(this,"readyPromiseResolve",null),o(this,"readyPromise",null),o(this,"bodyOverflowValue",""),o(this,"params",void 0),o(this,"child",null),o(this,"open",(function(e,n){return i.loading?(i.iframe.src=i.getMiniAppUrl(e,n),i.loading=new Promise((function(e){i.iframe.onload=function(){i.iframe.onload=null,e()}})),i.readyPromise=new Promise((function(e){return i.readyPromiseResolve=e}))):i.preload(e,n).catch(console.error),i.iframe.style.display="block",i.bodyOverflowValue=window.document.body.style.overflow,window.document.body.style.overflow="hidden",i.loading.then(i.handleResize).catch(console.error),i.events.emit(V.OPEN),i.readyPromise})),o(this,"hide",(function(){i.iframe.style.display="none",window.document.body.style.overflow=i.bodyOverflowValue,i.events.emit(V.HIDE)})),o(this,"close",(function(){window.document.body.style.overflowX="",C.events.off("superAppToken",i.onSuperAppToken),i.iframe&&i.iframe.remove(),i.bridge&&i.bridge.destroy(),delete i.iframe,delete i.bridge,window.removeEventListener("resize",i.handleResize),i.events.emit(V.CLOSE)})),o(this,"show",(function(){if(!i.loading)throw new Error('App is not loaded, use "open" or "preload" methods');i.iframe.style.display="block",window.document.body.style.overflow=i.bodyOverflowValue,i.events.emit(V.SHOW)})),o(this,"preload",(function(e,n){var t=document.createElement("iframe"),o=window.innerHeight,a=isFinite(i.params.zIndex)?i.params.zIndex:999999;return t.src=i.getMiniAppUrl(e,n),t.style.cssText="\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: ".concat(o,"px;\n min-height: ").concat(o,"px;\n border: none;\n z-index: ").concat(a,";\n "),i.iframe=t,document.body.appendChild(i.iframe),C.events.on("superAppToken",i.onSuperAppToken),i.bridge=new W({iframe:i.iframe,origin:"https://"+C.get().connectDomain}),i.bridge.onMessage(i.handleMessage),window.addEventListener("resize",i.handleResize),i.loading=new Promise((function(e){t.onload=function(){t.onload=null,e()}})),i.readyPromise=new Promise((function(e){return i.readyPromiseResolve=e})),i.loading})),o(this,"sendMessage",(function(e){i.bridge.sendMessage(e)})),o(this,"onSuperAppToken",(function(e){i.bridge.sendMessage({handler:j.SUPERAPP_TOKEN,params:{result:e}})})),o(this,"handleMessage",(function(e){switch(e.handler){case x.APP_CLOSE:i.hide();break;case x.APP_READY:i.resolveReadyPromise(),i.handleUpdateConfig();break;case x.OPEN_APP:i.openMiniapp(e.params);break;case x.OPEN_PAY_FORM:i.openPayForm(e.params);break;case j.SUPERAPP_TOKEN:C._requestSuperAppToken();break;case j.AUTH_NEEDED:C._requestAuth();break;default:i.events.emit(V.MESSAGE,e)}})),o(this,"handleResize",(function(){if(i.iframe){var e=innerWidth,n=innerHeight;i.iframe.style.height="".concat(n,"px"),i.iframe.style.minHeight="".concat(n,"px"),i.bridge.sendMessage({handler:x.RESIZE,params:{viewport_width:e,viewport_height:n}})}})),o(this,"handleUpdateConfig",(function(){i.bridge.sendMessage({handler:x.APP_INIT_CONFIG,params:{fullMode:i.params.fullMode}})})),o(this,"getMiniAppUrl",(function(e,n){var t=C.get(),o=t.connectDomain,a=t.appId,r=t.superAppToken,s=t._debug,c=E({app:i.params.app,host_app_id:a,debug:s?"1":"",localhost:s?"1":"",superapp_token:r,app_query:e?JSON.stringify(e):"",app_hash:n||""});return"https://".concat(o,"/mini_app?").concat(c)})),o(this,"resolveReadyPromise",(function(){i.readyPromise&&i.readyPromiseResolve&&(i.readyPromiseResolve(),i.readyPromise=null,i.readyPromiseResolve=null)})),o(this,"openMiniapp",(function(n){i.child=new e({app:n.app_id}),i.events.emit(V.CREATE_APP,{app:i.child,location:n.location})})),o(this,"openPayForm",(function(n){var t=a({},n.params);t.data&&(t.data=JSON.stringify(t.data));var o=a({},t,{app_id:n.app_id,action:n.action}),r=new e({app:6217559});r.open(o).then((function(){return i.hide()})).catch(console.error),r.events.on(V.MESSAGE,(function(e){i.handleVKPayFormMessage(e),r.close(),i.show()})),r.events.on(V.HIDE,(function(){r.close(),i.close()}))})),o(this,"handleVKPayFormMessage",(function(e){e.handler===x.ACTION_DONE&&i.sendMessage(e)})),this.params=a({},n,{app:"number"==typeof n.app?"app".concat(n.app):n.app}),this.events=b()};!function(e){e.INIT="ConnectProfileInit"}(G||(G={}));var Y=function e(){var n=this;t(this,e),o(this,"iframe",void 0),o(this,"config",void 0),o(this,"bridge",void 0),o(this,"iframeLoadPromise",void 0),o(this,"load",(function(e){if(!e.container)throw new Error("container is null");if(!e)throw new Error(d());return n.iframe||n.preload(e),n.iframeLoadPromise})),o(this,"remove",(function(){n.iframe&&n.iframe.parentNode&&n.iframe.parentNode.removeChild(n.iframe),n.destroy()})),o(this,"preload",(function(e){n.config=e;var t=document.createElement("iframe");t.style.border="none",t.style.width="100%",t.style.height="100%",t.style.minHeight="100%",e.container.appendChild(t),n.setup(t)})),o(this,"setup",(function(e){C.events.on("superAppToken",n.onSuperAppToken),e.src=n.getProfileUrl(),n.iframe=e,n.iframeLoadPromise=new Promise((function(n){e.onload=function(){return n(e)}})),n.bridge=new W({iframe:n.iframe,origin:"https://"+C.get().connectDomain}),n.bridge.onMessage(n.handleMessage)})),o(this,"destroy",(function(){C.events.off("superAppToken",n.onSuperAppToken),n.bridge.destroy(),delete n.iframe,delete n.iframeLoadPromise,delete n.bridge})),o(this,"onSuperAppToken",(function(e){if(e&&n.iframe){var t=n.iframe;n.destroy(),n.setup(t)}})),o(this,"handleMessage",(function(e){switch(e.handler){case G.INIT:n.handleInitApp().catch(console.error);break;case j.SUPERAPP_TOKEN:C._requestSuperAppToken();break;case j.AUTH_NEEDED:C._requestAuth();break;case j.OPEN_APP:C._openApp(e.params)}})),o(this,"handleInitApp",(function(){return Promise.resolve()})),o(this,"getProfileUrl",(function(){var e=C.get(),t=e.connectDomain,o=e.appId,i=e.superAppToken,a=e._debug,r=n.config.widgets,s=E({host_app_id:o,debug:a?"1":"",localhost:a?"1":"",superapp_token:i,widgets:r?r.join(","):""});return"https://".concat(t,"/super_profile?").concat(s)}))},Z={OneTapAuthEventsSDK:R,FloatingOneTapAuthEventsSDK:U,ButtonOneTapAuthEventsSDK:H,DataPolicyEventsSDK:M,AuthCaptchaEventsSDK:K};export{C as Config,F as Connect,Z as ConnectEvents,z as MiniApp,V as MiniAppEvents,Y as Profile}; |
@@ -0,0 +0,0 @@ export declare enum MiniAppHostEvents { |
@@ -0,0 +0,0 @@ import { Emitter } from 'mitt'; |
@@ -0,0 +0,0 @@ import { MiniAppHostEvents } from '#/miniapp/events'; |
export declare enum ProfileEvents { | ||
INIT = "ConnectProfileInit" | ||
} |
@@ -0,0 +0,0 @@ export declare type ProfileLoadParams = { |
{ | ||
"name": "@vkontakte/superappkit", | ||
"version": "1.13.0", | ||
"version": "1.14.0-beta.1.1", | ||
"description": "VK SuperAppKit", | ||
@@ -5,0 +5,0 @@ "main": "dist/index-cjs.js", |
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
64414
566
3