@datarangers/sdk-javascript 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/index-base.min.js +1 -1
- package/es/index.min.js +1 -1
- package/lib/index-base.min.js +1 -1
- package/lib/index.min.js +1 -1
- package/package.json +1 -1
package/lib/index-base.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var n=i.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}Object.defineProperty(exports,"__esModule",{value:!0});var t,i=function(){function t(){e(this,"_hooks",void 0),e(this,"_cache",void 0),e(this,"_hooksCache",void 0),this._hooks={},this._cache=[],this._hooksCache={}}var i=t.prototype;return i.on=function(e,t){e&&t&&"function"==typeof t&&(this._hooks[e]||(this._hooks[e]=[]),this._hooks[e].push(t))},i.once=function(e,t){var i=this;if(e&&t&&"function"==typeof t){var n=function(o){t(o),i.off(e,n)};this.on(e,n)}},i.off=function(e,t){if(e&&this._hooks[e]&&this._hooks[e].length)if(t){var i=this._hooks[e].indexOf(t);-1!==i&&this._hooks[e].splice(i,1)}else this._hooks[e]=[]},i.emit=function(e,t,i){if(i){if(!e)return;-1!==this._cache.indexOf(i)?this._emit(e,t):(this._hooksCache.hasOwnProperty(i)||(this._hooksCache[i]={}),this._hooksCache[i].hasOwnProperty(e)||(this._hooksCache[i][e]=[]),this._hooksCache[i][e].push(t))}else this._emit(e,t)},i._emit=function(e,t){e&&this._hooks[e]&&this._hooks[e].length&&[].concat(this._hooks[e]).forEach(function(e){try{e(t)}catch(e){}})},i.set=function(e){e&&-1===this._cache.indexOf(e)&&this._cache.push(e)},t}(),n=function(e){return null!=e&&"[object Object]"==Object.prototype.toString.call(e)},o=(t=+Date.now()+Number((""+Math.random()).slice(2,8)),function(){return t+=1}),r=function(e){return function(e,t,i){if("string"==typeof e&&"number"==typeof t&&"number"==typeof i){var n,o=[];i=i<=25?i:i%25;var r=String.fromCharCode(i+97);n=e.split(r);for(var s=0;s<n.length;s++){var a=parseInt(n[s],i);a=1*a^t;var c=String.fromCharCode(a);o.push(c)}return o.join("")}}(e,64,25)},s=function(e){!!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)?window.addEventListener("pagehide",e,!1):window.addEventListener("beforeunload",e,!1)},a=function(e){var t=document.createElement("a");return t.href=e,t},c=function(e){var t={};try{var i=a(e).search;(i=i.slice(1)).split("&").forEach(function(e){var i,n,o=e.split("=");o.length&&(i=o[0],n=o[1]);try{t[i]=decodeURIComponent(void 0===n?"":n)}catch(e){t[i]=n}})}catch(e){}return t},h=function(e){for(var t=0,i=0,n=(e+="").length,o=0;o<n;o++)((t=31*t+e.charCodeAt(i++))>0x7fffffffffff||t<-0x800000000000)&&(t&=0xffffffffffff);return t<0&&(t+=0x7ffffffffffff),t};var u=function(e){var t,i,n=[],o=e.length;o%2!=0&&(i=o+1,e=(t=e).length>=i?t:new Array(i-t.length+1).join("0")+t),o=e.length;for(var r=0;r<o;r+=2)n.push(parseInt(e.substr(r,2),16));return n},l=function(){var e=window.navigator.appName,t=window.navigator.userAgent;return-1!==e.indexOf("Microsoft Internet Explorer")&&(-1!==t.indexOf("MSIE 8.0")||-1!==t.indexOf("MSIE 7.0")||-1!==t.indexOf("MSIE 9.0"))},f="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function d(e,t){return e(t={exports:{}},t.exports),t.exports}var p=d(function(e,t){var i;i=function(){function e(){for(var e=0,t={};e<arguments.length;e++){var i=arguments[e];for(var n in i)t[n]=i[n]}return t}function t(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function i(n){function o(){}function r(t,i,r){if("undefined"!=typeof document){"number"==typeof(r=e({path:"/"},o.defaults,r)).expires&&(r.expires=new Date(1*new Date+864e5*r.expires)),r.expires=r.expires?r.expires.toUTCString():"";try{var s=JSON.stringify(i);/^[\{\[]/.test(s)&&(i=s)}catch(e){}i=n.write?n.write(i,t):encodeURIComponent(String(i)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),t=encodeURIComponent(String(t)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var a="";for(var c in r)r[c]&&(a+="; "+c,!0!==r[c]&&(a+="="+r[c].split(";")[0]));return document.cookie=t+"="+i+a}}function s(e,i){if("undefined"!=typeof document){for(var o={},r=document.cookie?document.cookie.split("; "):[],s=0;s<r.length;s++){var a=r[s].split("="),c=a.slice(1).join("=");i||'"'!==c.charAt(0)||(c=c.slice(1,-1));try{var h=t(a[0]);if(c=(n.read||n)(c,h)||t(c),i)try{c=JSON.parse(c)}catch(e){}if(o[h]=c,e===h)break}catch(e){}}return e?o[e]:o}}return o.set=r,o.get=function(e){return s(e,!1)},o.getJSON=function(e){return s(e,!0)},o.remove=function(t,i){r(t,"",e(i,{expires:-1}))},o.defaults={},o.withConverter=i,o}(function(){})},e.exports=i()}),g=function(){function t(){e(this,"cache",void 0),this.cache={}}var i=t.prototype;return i.setItem=function(e,t){this.cache[e]=t},i.getItem=function(e){return this.cache[e]},i.removeItem=function(e){this.cache[e]=void 0},t}(),m=function(){function t(){e(this,"support",void 0),this.support=this.isSupportLS()}var i=t.prototype;return i.isSupportLS=function(){try{return localStorage.setItem("_applogtest-test-key","hi"),localStorage.getItem("_applogtest-test-key"),localStorage.removeItem("_applogtest-test-key"),!0}catch(e){return!1}},i.getItem=function(e){try{var t=localStorage.getItem(e),i=t;try{t&&"string"==typeof t&&(i=JSON.parse(t))}catch(e){}return i||{}}catch(e){}return{}},i.setItem=function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);localStorage.setItem(e,i)}catch(e){}},i.removeItem=function(e){try{localStorage.removeItem(e)}catch(e){}},t}(),v=function(){function t(){e(this,"support",void 0),this.support=this.isSupportSession()}var i=t.prototype;return i.isSupportSession=function(){try{return sessionStorage.setItem("_applogtest-test-key","hi"),sessionStorage.getItem("_applogtest-test-key"),sessionStorage.removeItem("_applogtest-test-key"),!0}catch(e){return!1}},i.getItem=function(e){try{var t=sessionStorage.getItem(e),i=t;try{t&&"string"==typeof t&&(i=JSON.parse(t))}catch(e){}return i||{}}catch(e){}return{}},i.setItem=function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);sessionStorage.setItem(e,i)}catch(e){}},i.removeItem=function(e){try{sessionStorage.removeItem(e)}catch(e){}},t}(),y=function(){function t(){e(this,"local",void 0),e(this,"session",void 0),e(this,"cache",void 0),e(this,"defaultExpireTime",void 0),this.defaultExpireTime=6048e5,this.local=new m,this.session=new v,this.cache=new g}var i=t.prototype;return i.getLocalItem=function(e){return this.local.getItem(e)},i.setLocalItem=function(e,t){this.local.setItem(e,t)},i.removeLocalItem=function(e){this.local.removeItem(e)},i.getSessionItem=function(e){return this.session.getItem(e)},i.setSessionItem=function(e,t){this.session.setItem(e,t)},i.removeSessionItem=function(e){this.session.removeItem(e)},i.getCacheItem=function(e){return this.cache.getItem(e)},i.setCacheItem=function(e,t){this.cache.setItem(e,t)},i.removeCacheItem=function(e){this.cache.removeItem(e)},i.getCookie=function(e,t){try{return p.get(e)}catch(e){return""}},i.setCookie=function(e,t,i,n){void 0===i&&(i=this.defaultExpireTime);try{var o=n||document.domain,r=+new Date+i;p.set(e,t,{expires:new Date(r),path:"/",domain:o})}catch(e){}},i.removeCookie=function(e,t){try{p.remove(e,{path:"/",domain:t||""})}catch(e){}},t}(),_=function(){function t(t,i,n){e(this,"appid",void 0),e(this,"domain",void 0),e(this,"userAgent",void 0),e(this,"appVersion",void 0),e(this,"utm",void 0),e(this,"cookie_expire",void 0),this.appid=t,this.domain=i,this.userAgent=window.navigator.userAgent,this.appVersion=window.navigator.appVersion,this.cookie_expire=n}var i=t.prototype;return i.init=function(){var e=window.navigator.userAgent,t=window.navigator.language,i=document.referrer,n=i?a(i).hostname:"",o=c(window.location.href),r=/Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion)?"wap":"web";this.utm=function(e,t,i,n){var o=new y,r=e?"_tea_utm_cache_"+e:"_tea_utm_cache",s=e?"_$utm_from_url_"+e:"_$utm_from_url",a={},c=["tr_shareuser","tr_admaster","tr_param1","tr_param2","tr_param3","tr_param4","$utm_from_url"],h={ad_id:Number(t.ad_id)||void 0,campaign_id:Number(t.campaign_id)||void 0,creative_id:Number(t.creative_id)||void 0,utm_source:t.utm_source,utm_medium:t.utm_medium,utm_campaign:t.utm_campaign,utm_term:t.utm_term,utm_content:t.utm_content,tr_shareuser:t.tr_shareuser,tr_admaster:t.tr_admaster,tr_param1:t.tr_param1,tr_param2:t.tr_param2,tr_param3:t.tr_param3,tr_param4:t.tr_param4};try{var u=!1;for(var l in h)h[l]&&(-1!==c.indexOf(l)?(a.hasOwnProperty("tracer_data")||(a.tracer_data={}),a.tracer_data[l]=h[l]):a[l]=h[l],u=!0);if(u)o.setSessionItem(s,"1"),o.setCookie(r,JSON.stringify(a),n,i);else{var f=o.getCookie(r,i);f&&(a=JSON.parse(f))}o.getSessionItem(s)&&(a.hasOwnProperty("tracer_data")||(a.tracer_data={}),a.tracer_data.$utm_from_url=1)}catch(e){return h}return a}(this.appid,o,this.domain,this.cookie_expire);var s=this.browser(),h=this.os();return{browser:s.browser,browser_version:s.browser_version,platform:r,os_name:h.os_name,os_version:h.os_version,userAgent:e,screen_width:window.screen&&window.screen.width,screen_height:window.screen&&window.screen.height,device_model:this.getDeviceModel(h.os_name),language:t,referrer:i,referrer_host:n,utm:this.utm,latest_data:this.last(i,n)}},i.last=function(e,t){var i="",n="",o="",r=location.hostname,s=!1;if(e&&t&&r!==t){i=e,n=t,s=!0;var a=c(e);a.keyword&&(o=a.keyword)}return{$latest_referrer:i,$latest_referrer_host:n,$latest_search_keyword:o,isLast:s}},i.browser=function(){var e,t,i="",n=""+parseFloat(this.appVersion),o=this.userAgent;return-1!==o.indexOf("Edge")||-1!==o.indexOf("Edg")?(i="Microsoft Edge",-1!==o.indexOf("Edge")?(e=o.indexOf("Edge"),n=o.substring(e+5)):(e=o.indexOf("Edg"),n=o.substring(e+4))):-1!==(e=o.indexOf("MSIE"))?(i="Microsoft Internet Explorer",n=o.substring(e+5)):-1!==(e=o.indexOf("Lark"))?(i="Lark",n=o.substring(e+5,e+11)):-1!==(e=o.indexOf("MetaSr"))?(i="sougoubrowser",n=o.substring(e+7,e+10)):-1!==o.indexOf("MQQBrowser")||-1!==o.indexOf("QQBrowser")?(i="qqbrowser",-1!==o.indexOf("MQQBrowser")?(e=o.indexOf("MQQBrowser"),n=o.substring(e+11,e+15)):-1!==o.indexOf("QQBrowser")&&(e=o.indexOf("QQBrowser"),n=o.substring(e+10,e+17))):-1!==o.indexOf("Chrome")?-1!==(e=o.indexOf("MicroMessenger"))?(i="weixin",n=o.substring(e+15,e+20)):-1!==(e=o.indexOf("360"))?(i="360browser",n=o.substring(o.indexOf("Chrome")+7)):-1!==o.indexOf("baidubrowser")||-1!==o.indexOf("BIDUBrowser")?(-1!==o.indexOf("baidubrowser")?(e=o.indexOf("baidubrowser"),n=o.substring(e+13,e+16)):-1!==o.indexOf("BIDUBrowser")&&(e=o.indexOf("BIDUBrowser"),n=o.substring(e+12,e+15)),i="baidubrowser"):-1!==(e=o.indexOf("xiaomi"))?-1!==o.indexOf("openlanguagexiaomi")?(i="openlanguage xiaomi",n=o.substring(e+7,e+13)):(i="xiaomi",n=o.substring(e-7,e-1)):-1!==(e=o.indexOf("TTWebView"))?(i="TTWebView",n=o.substring(e+10,e+23)):(-1!==(e=o.indexOf("Chrome"))||-1!==(e=o.indexOf("Chrome")))&&(i="Chrome",n=o.substring(e+7)):-1!==o.indexOf("Safari")?-1!==(e=o.indexOf("QQ"))?(i="qqbrowser",n=o.substring(e+10,e+16)):-1!==(e=o.indexOf("Safari"))&&(i="Safari",n=o.substring(e+7),-1!==(e=o.indexOf("Version"))&&(n=o.substring(e+8))):-1!==(e=o.indexOf("Firefox"))?(i="Firefox",n=o.substring(e+8)):-1!==(e=o.indexOf("MicroMessenger"))?(i="weixin",n=o.substring(e+15,e+20)):-1!==(e=o.indexOf("QQ"))?(i="qqbrowser",n=o.substring(e+3,e+8)):-1!==(e=o.indexOf("Opera"))&&(i="Opera",n=o.substring(e+6),-1!==(e=o.indexOf("Version"))&&(n=o.substring(e+8))),-1!==(t=n.indexOf(";"))&&(n=n.substring(0,t)),-1!==(t=n.indexOf(" "))&&(n=n.substring(0,t)),-1!==(t=n.indexOf(")"))&&(n=n.substring(0,t)),{browser:i,browser_version:n}},i.os=function(){for(var e="",t="",i=[{s:"Windows 10",r:/(Windows 10.0|Windows NT 10.0|Windows NT 10.1)/},{s:"Windows 8.1",r:/(Windows 8.1|Windows NT 6.3)/},{s:"Windows 8",r:/(Windows 8|Windows NT 6.2)/},{s:"Windows 7",r:/(Windows 7|Windows NT 6.1)/},{s:"Android",r:/Android/},{s:"Sun OS",r:/SunOS/},{s:"Linux",r:/(Linux|X11)/},{s:"iOS",r:/(iPhone|iPad|iPod)/},{s:"Mac OS X",r:/Mac OS X/},{s:"Mac OS",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/}],n=0;n<i.length;n++){var o=i[n];if(o.r.test(this.userAgent)){"Mac OS X"===(e=o.s)&&this.isNewIpad()&&(e="iOS");break}}var r=function(e,t){var i=e.exec(t);return i&&i[1]?i[1]:""},s=function(e,t){var i=RegExp("(?:^|[^A-Z0-9-_]|[^A-Z0-9-]_|sprd-)(?:"+e+")","i").exec(t);return i?i.slice(1)[0]:""};/Windows/.test(e)&&(t=r(/Windows (.*)/,e),e="windows");var a,c;switch(e){case"Mac OS X":t=s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?",this.userAgent),e="mac";break;case"Android":a=this.userAgent,(c=r(/Android ([\.\_\d]+)/,a))||(c=r(/Android\/([\.\_\d]+)/,a)),t=c,e="android";break;case"iOS":t=this.isNewIpad()?s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?",this.userAgent):(t=/OS (\d+)_(\d+)_?(\d+)?/.exec(this.appVersion))?t[1]+"."+t[2]+"."+(0|t[3]):"",e="ios"}return{os_name:e,os_version:t}},i.getDeviceModel=function(e){var t="";try{if("android"===e)navigator.userAgent.split(";").forEach(function(e){e.indexOf("Build/")>-1&&(t=e.slice(0,e.indexOf("Build/")))});else if("ios"===e||"mac"===e||"windows"===e)if(this.isNewIpad())t="iPad";else{var i=navigator.userAgent.replace("Mozilla/5.0 (",""),n=i.indexOf(";");t=i.slice(0,n)}}catch(e){return t.trim()}return t.trim()},i.isNewIpad=function(){return void 0!==this.userAgent&&"MacIntel"===navigator.platform&&"number"==typeof navigator.maxTouchPoints&&navigator.maxTouchPoints>1},t}(),b={cn:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az24z1mz1jz1az1cz18z1nz1nz1jz1mz1ez4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},E="0.1.5",S={cn:"1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},w=function(){function t(t,i){e(this,"regStr",void 0),e(this,"eventNameWhiteList",void 0),e(this,"paramsNameWhiteList",void 0),e(this,"collector",void 0),e(this,"config",void 0),this.collector=t,this.config=i,this.eventNameWhiteList=["__bav_page","__bav_beat","__bav_page_statistics","__bav_click","__bav_page_exposure","_be_active","$bav2b_slide"],this.paramsNameWhiteList=["$inactive","$inline","$target_uuid_list","$source_uuid","$is_spider","$source_id","$is_first_time","$user_unique_id_type","_staging_flag","$exposure_type","$direction","$offsetY","$offsetX"],this.regStr=new RegExp("^[a-zA-Z0-9][a-z0-9A-Z_.-]{1,255}$")}var i=t.prototype;return i.checkVerify=function(e){var t=this;if(!e||!e.length)return!1;var i=e[0];if(!i)return!1;var n=i.events,o=i.header;if(!n||!n.length)return!1;var r=!0;return n.forEach(function(e){t.checkEventName(e.event)||(r=!1,e.checkEvent="事件名不能以 $ or __开头"),t.checkEventParams(e.params)||(r=!1,e.checkParams="属性名不能以 $ or __开头")}),this.checkEventParams(o)||(r=!1),r},i.checkEventName=function(e){return!!e&&this.calculate(e,"event")},i.checkEventParams=function(e){var t=e;"string"==typeof e&&(t=JSON.parse(t));var i=!0;if(!Object.keys(t).length)return i;for(var n in t){if(!this.calculate(n,"params")){i=!1;break}if("string"==typeof t[n]&&t[n].length>1024){console.warn("params: "+n+" can not over 1024 byte, please check;"),i=!1;break}}return i},i.calculate=function(e,t){return-1!==("event"===t?this.eventNameWhiteList:"params"===t?this.paramsNameWhiteList:[]).indexOf(e)||(!new RegExp("^\\$").test(e)&&!new RegExp("^__").test(e)||(console.warn(t+" name: "+e+" can not start with $ or __, pleace check;"),!1))},t}(),T=function(e){return e.Init="init",e.Config="config",e.Start="start",e.Ready="ready",e.TokenComplete="token-complete",e.TokenStorage="token-storage",e.TokenFetch="token-fetch",e.TokenError="token-error",e.ConfigUuid="config-uuid",e.ConfigWebId="config-webid",e.ConfigDomain="config-domain",e.CustomWebId="custom-webid",e.AnonymousId="anonymous-id",e.TokenChange="token-change",e.TokenReset="token-reset",e.ConfigTransform="config-transform",e.EnvTransform="env-transform",e.SessionReset="session-reset",e.SessionResetTime="session-reset-time",e.Event="event",e.Events="events",e.EventNow="event-now",e.CleanEvents="clean-events",e.BeconEvent="becon-event",e.SubmitBefore="submit-before",e.SubmitScuess="submit-scuess",e.SubmitSuccess="submit-success",e.SubmitAfter="submit-after",e.SubmitError="submit-error",e.SubmitVerifyH="submit-verify-h5",e.Stay="stay",e.ResetStay="reset-stay",e.StayReady="stay-ready",e.SetStay="set-stay",e.RouteChange="route-change",e.RouteReady="route-ready",e.Ab="ab",e.AbVar="ab-var",e.AbAllVars="ab-all-vars",e.AbConfig="ab-config",e.AbExternalVersion="ab-external-version",e.AbVersionChangeOn="ab-version-change-on",e.AbVersionChangeOff="ab-version-change-off",e.AbOpenLayer="ab-open-layer",e.AbCloseLayer="ab-close-layer",e.AbReady="ab-ready",e.AbComplete="ab-complete",e.AbTimeout="ab-timeout",e.Profile="profile",e.ProfileSet="profile-set",e.ProfileSetOnce="profile-set-once",e.ProfileUnset="profile-unset",e.ProfileIncrement="profile-increment",e.ProfileAppend="profile-append",e.ProfileClear="profile-clear",e.TrackDuration="track-duration",e.TrackDurationStart="track-duration-start",e.TrackDurationEnd="track-duration-end",e.TrackDurationPause="track-duration-pause",e.TrackDurationResume="tracl-duration-resume",e.Autotrack="autotrack",e.AutotrackReady="autotrack-ready",e.CustomHeader="custom-request-header",e.TracerReady="tracer-ready",e}(T||{}),D=function(e){return e.DEBUGGER_MESSAGE="debugger-message",e.DEBUGGER_MESSAGE_SDK="debugger-message-sdk",e.DEBUGGER_MESSAGE_FETCH="debugger-message-fetch",e.DEBUGGER_MESSAGE_FETCH_RESULT="debugger-message-fetch-result",e.DEBUGGER_MESSAGE_EVENT="debugger-message-event",e.DEVTOOL_WEB_READY="devtool-web-ready",e}({}),k=void 0,A=(new Date).getTimezoneOffset(),I=parseInt(""+-A/60,10),B=60*A,M=function(){function t(t,i){e(this,"collect",void 0),e(this,"envInfo",void 0),e(this,"evtParams",void 0),e(this,"filter",void 0),e(this,"reportErrorCallback",void 0),e(this,"initConfig",void 0),e(this,"sessionStorage",void 0),e(this,"localStorage",void 0),e(this,"storage",void 0),e(this,"configKey",void 0),e(this,"domain",void 0),e(this,"ab_version",void 0),e(this,"ab_cache",void 0),e(this,"is_first_time",!0),e(this,"isLast",void 0),e(this,"configPersist",!1),e(this,"eventCheck",void 0),e(this,"enableClientTransport",!1),this.initConfig=i,this.collect=t;var n=new _(i.app_id,i.cookie_domain||"",i.cookie_expire||7776e6).init();this.eventCheck=new w(t,i);var o="__tea_cache_first_"+i.app_id;this.configKey="__tea_cache_config_"+i.app_id,this.storage=new y,i.configPersist&&(this.configPersist=!0,this.storage=1===i.configPersist?this.sessionStorage:this.localStorage);var r=this.storage.getLocalItem(o);r&&1==r?this.is_first_time=!1:(this.is_first_time=!0,this.storage.setLocalItem(o,"1")),this.envInfo={user:{user_unique_id:k,user_type:k,user_id:k,user_is_auth:k,user_is_login:k,device_id:k,web_id:k,ip_addr_id:k,user_unique_id_type:k,anonymous_id:k},header:{app_id:k,app_name:k,app_install_id:k,install_id:k,app_package:k,app_channel:k,app_version:k,ab_version:k,os_name:n.os_name,os_version:n.os_version,device_model:n.device_model,ab_client:k,traffic_type:k,client_ip:k,device_brand:k,os_api:k,access:k,language:n.language,region:k,app_language:k,app_region:k,creative_id:n.utm.creative_id,ad_id:n.utm.ad_id,campaign_id:n.utm.campaign_id,log_type:k,rnd:k,platform:n.platform,sdk_version:E,sdk_lib:"js",province:k,city:k,timezone:I,tz_offset:B,tz_name:k,sim_region:k,carrier:k,resolution:n.screen_width+"x"+n.screen_height,browser:n.browser,browser_version:n.browser_version,referrer:n.referrer,referrer_host:n.referrer_host,width:n.screen_width,height:n.screen_height,screen_width:n.screen_width,screen_height:n.screen_height,utm_term:n.utm.utm_term,utm_content:n.utm.utm_content,utm_source:n.utm.utm_source,utm_medium:n.utm.utm_medium,utm_campaign:n.utm.utm_campaign,tracer_data:JSON.stringify(n.utm.tracer_data),custom:{},wechat_unionid:k,wechat_openid:k}},this.ab_version="",this.evtParams={},this.reportErrorCallback=function(){},this.isLast=!1,this.setCustom(n),this.initDomain(),this.initABData(),this.setEnableClientTransport(!!this.initConfig.transport)}var i=t.prototype;return i.initDomain=function(){var e=this.initConfig.channel_domain;if(e)this.domain=e;else{var t=this.initConfig.channel;this.domain=r(b[t])}},i.setDomain=function(e){this.domain=e},i.getDomain=function(){return this.domain},i.initABData=function(){var e="__tea_sdk_ab_version_"+this.initConfig.app_id,t=null;if(this.initConfig.ab_cross){var i=this.storage.getCookie(e,this.initConfig.ab_cookie_domain);t=i?JSON.parse(i):null}else t=this.storage.getLocalItem(e);this.setAbCache(t)},i.setAbCache=function(e){this.ab_cache=e},i.getAbCache=function(){return this.ab_cache},i.clearAbCache=function(){this.ab_cache={},this.ab_version=""},i.setAbVersion=function(e){this.ab_version=e},i.getAbVersion=function(){return this.ab_version},i.setEnableClientTransport=function(e){this.enableClientTransport=e},i.getEnableClientTransport=function(){return this.enableClientTransport},i.getUrl=function(e){var t="";switch(e){case"event":t="/list";break;case"webid":t="/webid";break;case"tobid":t="/tobid";break;case"profile":t="/profile/list"}var i="";return this.initConfig.caller&&(i="?sdk_version=0.1.5&sdk_name=web&app_id="+this.initConfig.app_id+"&caller="+this.initConfig.caller),this.initConfig.enable_encryption&&"event"===e&&"sm"!==this.initConfig.encryption_type&&(i=this.initConfig.caller?i+"&encryption=1":i+"?encryption=1"),this.initConfig.report_url?""+this.initConfig.report_url+i:""+this.getDomain()+t+i},i.setCustom=function(e){if(e&&e.latest_data&&e.latest_data.isLast)for(var t in delete e.latest_data.isLast,this.isLast=!0,e.latest_data)this.envInfo.header.custom[t]=e.latest_data[t]},i.set=function(e){var t=this;Object.keys(e).forEach(function(i){void 0!==e[i]&&null!==e[i]||t.delete(i);try{t.eventCheck.calculate(i,"config")}catch(e){}if("traffic_type"===i&&t.isLast&&(t.envInfo.header.custom.$latest_traffic_source_type=e[i]),"evtParams"===i)t.evtParams=Object.assign({},t.evtParams||{},e.evtParams||{});else if("_staging_flag"===i)t.evtParams=Object.assign({},t.evtParams||{},{_staging_flag:e._staging_flag});else if("reportErrorCallback"===i&&"function"==typeof e[i])t.reportErrorCallback=e[i];else{var n="",o="";if(i.indexOf(".")>-1){var r=i.split(".");n=r[0],o=r[1]}n?"user"===n||"header"===n?t.envInfo[n][o]=e[i]:t.envInfo.header.custom[o]=e[i]:Object.hasOwnProperty.call(t.envInfo.user,i)?["user_type","ip_addr_id"].indexOf(i)>-1?t.envInfo.user[i]=e[i]?Number(e[i]):e[i]:["user_id","web_id","user_unique_id","user_unique_id_type","anonymous_id"].indexOf(i)>-1?t.envInfo.user[i]=e[i]?String(e[i]):e[i]:["user_is_auth","user_is_login"].indexOf(i)>-1?t.envInfo.user[i]=Boolean(e[i]):"device_id"===i&&(t.envInfo.user[i]=e[i]):Object.hasOwnProperty.call(t.envInfo.header,i)?t.envInfo.header[i]=e[i]:t.envInfo.header.custom[i]=e[i]}})},i.get=function(e){try{return e?"evtParams"===e?this.evtParams:"reportErrorCallback"===e?this[e]:Object.hasOwnProperty.call(this.envInfo.user,e)?this.envInfo.user[e]:Object.hasOwnProperty.call(this.envInfo.header,e)?this.envInfo.header[e]:JSON.parse(JSON.stringify(this.envInfo[e])):JSON.parse(JSON.stringify(this.envInfo))}catch(e){console.log("get config stringify error "),this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.getItem=function(e){return this.initConfig&&1===this.initConfig.configPersist?this.storage.getSessionItem(e):this.storage.getLocalItem(e)},i.setItem=function(e,t){this.initConfig&&1===this.initConfig.configPersist?this.storage.setSessionItem(e,t):this.storage.setLocalItem(e,t)},i.setStore=function(e){try{if(!this.configPersist)return;var t=this.getItem(this.configKey)||{};if(t&&Object.keys(e).length){var i=Object.assign(e,t);this.setItem(this.configKey,i)}}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.getStore=function(){try{if(!this.configPersist)return null;var e=this.getItem(this.configKey)||{};return e&&Object.keys(e).length?e:null}catch(e){return this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message}),null}},i.delete=function(e){try{if(!this.configPersist)return;var t=this.getItem(this.configKey)||{};t&&Object.hasOwnProperty.call(t,e)&&(delete t[e],this.setItem(this.configKey,t))}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},t}(),C=function(){function t(t,i){e(this,"isLog",void 0),e(this,"name",void 0),this.isLog=i||!1,this.name=t||""}var i=t.prototype;return i.info=function(e){this.isLog&&console.log("%c %s","color: yellow; background-color: black;","[instance: "+this.name+"] "+e)},i.warn=function(e){this.isLog&&console.warn("%c %s","color: yellow; background-color: black;","[instance: "+this.name+"] "+e)},i.error=function(e){this.isLog&&console.error("[instance: "+this.name+"] "+e)},i.throw=function(e){throw this.error(this.name),new Error(e)},t}(),x=function(){function e(e,t){this.native=e.enable_native||e["evitaN".split("").reverse().join("")],this.os=t.get("os_name")}var t=e.prototype;return t.bridgeInject=function(){try{return!!this.native&&(AppLogBridge?(console.log("AppLogBridge is injected"),!0):(console.log("AppLogBridge is not inject"),!1))}catch(e){return console.log("AppLogBridge is not inject"),!1}},t.bridgeReady=function(){var e=this;return new Promise(function(t,i){try{e.bridgeInject()?AppLogBridge.hasStarted(function(e){console.log("AppLogBridge is started? : "+e),e?t(!0):i(!1)}):i(!1)}catch(e){console.log("AppLogBridge, error:"+JSON.stringify(e.stack)),i(!1)}})},t.setNativeAppId=function(e){try{AppLogBridge.setNativeAppId(JSON.stringify(e)),console.log("change bridge appid, event report with appid: "+e)}catch(e){console.error("setNativeAppId error")}},t.setConfig=function(e){var t=this;try{Object.keys(e).forEach(function(i){"user_unique_id"===i?t.setUserUniqueId(e[i]):e[i]?t.addHeaderInfo(i,e[i]):t.removeHeaderInfo(i)})}catch(e){console.error("setConfig error")}},t.setUserUniqueId=function(e){try{AppLogBridge.setUserUniqueId(e)}catch(e){console.error("setUserUniqueId error")}},t.addHeaderInfo=function(e,t){try{AppLogBridge.addHeaderInfo(e,t)}catch(e){console.error("addHeaderInfo error")}},t.setHeaderInfo=function(e){try{AppLogBridge.setHeaderInfo(JSON.stringify(e))}catch(e){console.error("setHeaderInfo error")}},t.removeHeaderInfo=function(e){try{AppLogBridge.removeHeaderInfo(e)}catch(e){console.error("removeHeaderInfo error")}},t.reportPv=function(e){this.onEventV3("predefine_pageview",e)},t.onEventV3=function(e,t){try{AppLogBridge.onEventV3(e,t)}catch(e){console.error("onEventV3 error")}},t.profileSet=function(e){try{AppLogBridge.profileSet(e)}catch(e){console.error("profileSet error")}},t.profileSetOnce=function(e){try{AppLogBridge.profileSetOnce(e)}catch(e){console.error("profileSetOnce error")}},t.profileIncrement=function(e){try{AppLogBridge.profileIncrement(e)}catch(e){console.error("profileIncrement error")}},t.profileUnset=function(e){try{AppLogBridge.profileUnset(e)}catch(e){console.error("profileUnset error")}},t.profileAppend=function(e){try{AppLogBridge.profileAppend(e)}catch(e){console.error("profileAppend error")}},t.setExternalAbVersion=function(e){try{AppLogBridge.setExternalAbVersion(e)}catch(e){console.error("setExternalAbVersion error")}},t.getVar=function(e,t,i){try{"android"===this.os?i(AppLogBridge.getABTestConfigValueForKey(e,t)):AppLogBridge.getABTestConfigValueForKey(e,t,function(e){i(e)})}catch(e){console.error("getVar error"),i(t)}},t.getAllVars=function(e){try{"android"===this.os?e(AppLogBridge.getAllAbTestConfigs()):AppLogBridge.getAllAbTestConfigs(function(t){e(t)})}catch(t){console.error("getAllVars error"),e(null)}},t.getAbSdkVersion=function(e){try{"android"===this.os?e(AppLogBridge.getAbSdkVersion()):AppLogBridge.getAbSdkVersion(function(t){e(t)})}catch(t){console.error("getAbSdkVersion error"),e("")}},e}(),R=function(){function t(){e(this,"collect",void 0),e(this,"config",void 0),e(this,"configManager",void 0),e(this,"eventKey",void 0),e(this,"beconKey",void 0),e(this,"abKey",void 0),e(this,"storgae",void 0),e(this,"reportTimeout",void 0),e(this,"maxReport",void 0),e(this,"reportTime",void 0),e(this,"timeout",void 0),e(this,"eventLimit",50),e(this,"reportUrl",void 0),e(this,"eventCache",[]),e(this,"beconEventCache",[]),e(this,"eventCheck",void 0),e(this,"refer_key",void 0),e(this,"enable_ttwebid",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=e.configManager,this.storgae=new y,this.eventCheck=new w(e,t),this.maxReport=t.max_report||20,this.reportTime=t.reportTime||30,this.timeout=t.timeout||1e5,this.enable_ttwebid=t.enable_ttwebid,this.reportUrl=this.configManager.getUrl("event"),this.eventKey="__tea_cache_events_"+this.configManager.get("app_id"),this.beconKey="__tea_cache_events_becon_"+this.configManager.get("app_id"),this.abKey="__tea_sdk_ab_version_"+this.configManager.get("app_id"),this.refer_key="__tea_cache_refer_"+this.configManager.get("app_id"),this.collect.on(T.Ready,function(){i.reportAll(!1)}),this.collect.on(T.ConfigDomain,function(){i.reportUrl=i.configManager.getUrl("event")}),this.collect.on(T.Event,function(e){i.event(e)}),this.collect.on(T.BeconEvent,function(e){i.beconEvent(e)}),this.collect.on(T.CleanEvents,function(){i.reportAll(!1)}),this.linster()},i.linster=function(){var e=this;window.addEventListener("unload",function(){e.reportAll(!0)},!1),s(function(){e.reportAll(!0)}),document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&&e.reportAll(!0)},!1)},i.reportAll=function(e){this.report(e),this.reportBecon()},i.event=function(e){var t=this;try{var i=this.storgae.getCacheItem(this.eventKey)||[],n=[].concat(e,i);if(this.storgae.setCacheItem(this.eventKey,n),this.reportTimeout&&clearTimeout(this.reportTimeout),n.length>=this.maxReport)this.report(!1);else{var o=this.reportTime;this.reportTimeout=setTimeout(function(){t.report(!1),t.reportTimeout=null},o)}}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.beconEvent=function(e){var t=this.storgae.getCacheItem(this.beconKey)||[],i=[].concat(e,t);this.storgae.setCacheItem(this.beconKey,i),this.collect.destroy||this.collect.tokenManager.getReady()&&this.collect.sdkReady&&(this.storgae.removeCacheItem(this.beconKey),this.send(this.split(this.merge(i)),!0))},i.reportBecon=function(){var e=this.storgae.getCacheItem(this.beconKey)||[];e&&e.length&&(this.storgae.removeCacheItem(this.beconKey),this.send(this.split(this.merge(e)),!0))},i.report=function(e){if(!this.collect.destroy&&this.collect.tokenManager.getReady()&&this.collect.sdkReady){var t=this.storgae.getCacheItem(this.eventKey)||[];t.length&&(this.storgae.removeCacheItem(this.eventKey),this.sliceEvent(t,e))}},i.sliceEvent=function(e,t){if(e.length>this.eventLimit)for(var i=0;i<e.length;i+=this.eventLimit){var n;n=e.slice(i,i+this.eventLimit);var o=this.split(this.merge(n));this.send(o,t)}else{var r=this.split(this.merge(e));this.send(r,t)}},i.handleRefer=function(){var e="";try{if(this.config.spa||this.config.autotrack){var t=this.storgae.getLocalItem(this.refer_key)||{};e=t.routeChange?t.refer_key:this.configManager.get("referrer")}else e=this.configManager.get("referrer")}catch(t){e=document.referrer}return e},i.merge=function(e,t){var i=this,n=this.configManager.get(),o=n.header,r=n.user;o.referrer=this.handleRefer(),o.custom=JSON.stringify(o.custom);var s=this.configManager.get("evtParams"),a=this.configManager.get("user_unique_id_type"),c=e.map(function(e){try{if(Object.keys(s).length&&!t&&(e.params=Object.assign({},e.params,s)),i.collect.dynamicParamsFilter){var n=i.collect.dynamicParamsFilter();Object.keys(n).length&&(e.params=Object.assign({},e.params,n))}a&&(e.params.$user_unique_id_type=a);var o=i.configManager.getAbCache(),c=i.configManager.getAbVersion();return c&&o&&(i.config.disable_ab_reset||o.uuid===r.user_unique_id)&&(e.ab_sdk_version=c),e.session_id=i.collect.sessionManager.getSessionId(),e.params=JSON.stringify(e.params),e}catch(t){return i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:t.message}),e}}),h=[];if(!Object.keys(r).length)return console.warn("user info error,cant report"),h;this.config.enable_anonymousid&&delete r.web_id;var u=JSON.parse(JSON.stringify({events:c,user:r,header:o}));return u.local_time=Math.floor(Date.now()/1e3),u.verbose=1,u.user_unique_type=this.config.enable_ttwebid?this.config.user_unique_type:void 0,h.push(u),h},i.split=function(e){return e=e.map(function(e){var t=[];return t.push(e),t})},i.send=function(e,t){var i=this;e.length&&e.forEach(function(e){try{var n=JSON.parse(JSON.stringify(e));i.config.filter&&((n=i.config.filter(n))||console.warn("filter must return data !!")),i.collect.eventFilter&&n&&((n=i.collect.eventFilter(n))||console.warn("filterEvent api must return data !!"));var o=n||e,r=JSON.parse(JSON.stringify(o));if(i.eventCheck.checkVerify(r),!o.length)return;i.collect.emit(T.SubmitBefore,o);var s=i.collect.cryptoData(o);i.collect.requestManager.useRequest({url:i.reportUrl,data:s,success:function(e,t,n,o,s){e&&0!==e.e?(i.collect.emit(T.SubmitError,{type:"f_data",eventData:t,errorCode:e.e,response:e,startTime:o,endTime:Date.now(),status:s}),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报失败",time:Date.now(),data:r,code:e.e,failType:"数据异常失败",status:"fail"})):(i.collect.emit(T.SubmitSuccess,{eventData:t,res:e,response:e,startTime:o,endTime:Date.now(),status:s}),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报成功",time:Date.now(),data:r,code:200,status:"success"}))},fail:function(e,t,n,o){i.configManager.get("reportErrorCallback")(e,t),i.collect.emit(T.SubmitError,{type:"f_net",eventData:e,errorCode:t,startTime:n,errorMessage:o,endTime:Date.now()}),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报网络异常",time:Date.now(),data:r,code:t,failType:"网络异常失败",status:"fail"})},timeout:i.timeout,useBeacon:t,encryption:i.config.enable_encryption,encryption_header:i.config.encryption_header,withCredentials:i.enable_ttwebid}),i.collect.emit(T.SubmitVerifyH,o),i.collect.emit(T.SubmitAfter,o)}catch(e){console.warn("something error, "+JSON.stringify(e.stack)),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}})},t}(),O=function(e){return e?(e^16*Math.random()>>e/4).toString(10):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,O)},G=function(){return O().replace(/-/g,"").slice(0,19)},F=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})},P=function(){function t(){e(this,"sessionKey",void 0),e(this,"storage",void 0),e(this,"sessionExp",void 0),e(this,"expireTime",void 0),e(this,"disableSession",void 0),e(this,"collect",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.storage=new y,this.sessionKey="__tea_session_id_"+t.app_id,this.expireTime=t.expireTime||18e5,this.disableSession=t.disable_session,this.disableSession||(this.setSessionId(),this.collect.on(T.SessionReset,function(){i.resetSessionId()}),this.collect.on(T.SessionResetTime,function(){i.updateSessionIdTime()}))},i.updateSessionIdTime=function(){var e=this.storage.getSessionItem(this.sessionKey);if(e&&e.sessionId){var t=e.timestamp;Date.now()-t>this.expireTime?e={sessionId:F(),timestamp:Date.now()}:e.timestamp=Date.now(),this.storage.setSessionItem(this.sessionKey,e),this.resetExpTime()}},i.setSessionId=function(){var e=this,t=this.storage.getSessionItem(this.sessionKey);t&&t.sessionId?t.timestamp=Date.now():t={sessionId:F(),timestamp:Date.now()},this.storage.setSessionItem(this.sessionKey,t),this.sessionExp=setInterval(function(){e.checkEXp()},this.expireTime)},i.getSessionId=function(){var e=this.storage.getSessionItem(this.sessionKey);return this.disableSession?"":e&&e.sessionId?e.sessionId:""},i.resetExpTime=function(){var e=this;this.sessionExp&&(clearInterval(this.sessionExp),this.sessionExp=setInterval(function(){e.checkEXp()},this.expireTime))},i.resetSessionId=function(){var e={sessionId:F(),timestamp:Date.now()};this.storage.setItem(this.sessionKey,e)},i.checkEXp=function(){var e=this.storage.getSessionItem(this.sessionKey);e&&e.sessionId&&(Date.now()-e.timestamp+30>=this.expireTime&&(e={sessionId:F(),timestamp:Date.now()},this.storage.setSessionItem(this.sessionKey,e)))},t}(),z=function(){function t(){e(this,"collect",void 0),e(this,"config",void 0),e(this,"storage",void 0),e(this,"configManager",void 0),e(this,"cacheToken",{}),e(this,"tokenKey",void 0),e(this,"tokenReady",void 0),e(this,"tokenType",void 0),e(this,"enableCookie",!1),e(this,"expiresTime",void 0),e(this,"cookieDomain",void 0),e(this,"enableTTwebid",!1),e(this,"enableCustomWebid",!1),e(this,"enableAnonymousid",!1),e(this,"timeout",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=this.collect.configManager,this.storage=new y,this.tokenKey="__tea_cache_tokens_"+t.app_id,this.enableAnonymousid=t.enable_anonymousid,this.enableTTwebid=t.enable_ttwebid,this.enableCustomWebid=t.enable_custom_webid,this.collect.on(T.AnonymousId,function(e){i.setAnonymousId(e)}),this.collect.on(T.ConfigUuid,function(e){i.setUuid(e)}),this.collect.on(T.ConfigWebId,function(e){i.setWebId(e)}),this.timeout=t.timeout||3e5,this.enableCookie=t.cross_subdomain,this.expiresTime=t.cookie_expire||6048e5,this.cookieDomain=t.cookie_domain||"",this.checkStorage()},i.checkStorage=function(){var e=this;if(this.enableCookie){var t=this.storage.getCookie(this.tokenKey,this.cookieDomain);this.cacheToken=t&&"string"==typeof t?JSON.parse(t):{}}else this.cacheToken=this.storage.getLocalItem(this.tokenKey)||{};this.tokenType=this.cacheToken&&this.cacheToken._type_?this.cacheToken._type_:"default","custom"!==this.tokenType||this.enableCustomWebid||this.enableAnonymousid?this.enableAnonymousid?this.completeAnonymous(this.cacheToken):this.enableCustomWebid?this.collect.on(T.CustomWebId,function(){e.tokenReady=!0,e.collect.emit(T.TokenComplete)}):this.checkEnv()||(this.enableTTwebid?this.completeTtWid(this.cacheToken):this.check()):this.remoteWebid()},i.check=function(){this.cacheToken&&this.cacheToken.web_id?this.complete(this.cacheToken):this.config.disable_webid?this.complete({web_id:G(),user_unique_id:this.configManager.get("user_unique_id")||G()}):this.remoteWebid()},i.checkEnv=function(){var e=window.navigator.userAgent;if(-1!==e.indexOf("miniProgram")||-1!==e.indexOf("MiniProgram")){var t=c(window.location.href);return!(!t||!t.Web_ID)&&(this.complete({web_id:""+t.Web_ID,user_unique_id:this.configManager.get("user_unique_id")||""+t.Web_ID}),!0)}return!1},i.remoteWebid=function(){var e=this,t=this.configManager.getUrl("webid"),i={app_key:this.config.app_key,app_id:this.config.app_id,url:location.href,user_agent:window.navigator.userAgent,referer:document.referrer,user_unique_id:""};this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 发起WEBID请求",logType:"fetch",level:"info",time:Date.now(),data:i});var n=this.collect.cryptoData(i);this.collect.requestManager.useRequest({url:t,data:n,success:function(t){var i;if(t&&0===t.e)i=t.web_id,e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"WEBID请求成功",logType:"fetch",level:"info",time:Date.now(),data:t});else{var n=e.getLocalId();i=n,e.collect.configManager.set({localWebId:n}),e.collect.emit(T.TokenError),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"WEBID请求返回值异常",logType:"fetch",level:"warn",time:Date.now(),data:t}),e.collect.logger.warn("appid: "+e.config.app_id+" get webid error, use local webid~")}e.complete({web_id:e.configManager.get("web_id")||i,user_unique_id:e.configManager.get("user_unique_id")||i})},fail:function(){var t=e.getLocalId();e.complete({web_id:e.configManager.get("web_id")||t,user_unique_id:e.configManager.get("user_unique_id")||t}),e.collect.configManager.set({localWebId:t}),e.collect.emit(T.TokenError),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"WEBID请求网络异常",logType:"fetch",level:"error",time:Date.now(),data:null}),e.collect.logger.warn("appid: "+e.config.app_id+", get webid error, use local webid~")},timeout:this.timeout,encryption:this.config.enable_encryption,encryption_header:this.config.encryption_header})},i.getLocalId=function(){for(var e=G(),t=0;0===e.indexOf("0")||0===e.indexOf("9");){if(t>=10){e=e.replace(/^(0|9)/,"");break}e=G(),t++}return e},i.complete=function(e){var t=e.web_id,i=e.user_unique_id;if(!t&&!i)return this.collect.emit(T.TokenError),void console.warn("token error");e.timestamp=Date.now(),this.collect.configManager.set({web_id:t,user_unique_id:i}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(T.TokenComplete)},i.completeAnonymous=function(e){var t=e.anonymous_id||F(),i=e.user_unique_id||this.configManager.get("user_unique_id");this.collect.configManager.set({anonymous_id:t,user_unique_id:i||t}),e.anonymous_id=t,e.user_unique_id=i||t,this.setStorage(e),this.tokenReady=!0,this.collect.emit(T.TokenComplete)},i.completeTtWid=function(e){var t=e.user_unique_id||"",i=this.configManager.get("user_unique_id");this.configManager.set({user_unique_id:i||t}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(T.TokenComplete)},i.setUuid=function(e){if(e&&-1===["null","undefined","Null","None"].indexOf(e)){var t=String(e),i=this.configManager.get("user_unique_id"),n=this.cacheToken&&this.cacheToken.user_unique_id;if(t===i&&t===n)return;this.configManager.set({user_unique_id:t}),this.cacheToken||(this.cacheToken={}),this.cacheToken.user_unique_id=t,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken),this.collect.emit(T.TokenChange,{type:"uuid",id:e}),this.collect.emit(T.SessionReset)}else this.clearUuid()},i.clearUuid=function(){if(!this.config.enable_ttwebid){var e=this.enableAnonymousid?this.configManager.get("anonymous_id"):this.configManager.get("web_id");this.configManager.get("user_unique_id")!==e&&(this.configManager.set({user_unique_id:e}),this.cacheToken.user_unique_id=e,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken),this.collect.emit(T.TokenReset))}},i.setAnonymousId=function(e){if(e&&this.enableAnonymousid){var t=this.configManager.get("anonymous_id"),i=this.configManager.get("user_unique_id");t!==e&&(t!==i&&i||(this.configManager.set({user_unique_id:e}),this.cacheToken.user_unique_id=e,this.collect.emit(T.TokenChange,{type:"uuid",id:e})),this.configManager.set({anonymous_id:e}),this.cacheToken.anonymous_id=e,this.collect.emit(T.TokenChange,{type:"anonymous_id",id:e}),this.setStorage(this.cacheToken))}},i.setWebId=function(e){if(e&&!this.config.enable_ttwebid&&!this.enableAnonymousid){var t=this.configManager.get("web_id"),i=this.configManager.get("user_unique_id");i&&i!==t||(this.configManager.set({user_unique_id:e}),this.cacheToken.user_unique_id=e,this.collect.emit(T.TokenChange,{type:"uuid",id:e})),t!==e&&(this.configManager.set({web_id:e}),this.cacheToken.web_id=e,this.collect.emit(T.TokenChange,{type:"webid",id:e})),this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken)}},i.setStorage=function(e){e._type_=this.enableCustomWebid?"custom":"default",delete e["diss".split("").reverse().join("")],this.enableCookie||this.enableTTwebid?this.storage.setCookie(this.tokenKey,e,this.expiresTime,this.cookieDomain):this.storage.setLocalItem(this.tokenKey,e),this.cacheToken=e},i.getReady=function(){return this.tokenReady},i.getTobId=function(){var e=this;this.configManager.getUrl("tobid");var t={app_id:this.config.app_id,user_unique_id:this.configManager.get("user_unique_id"),user_unique_id_type:this.configManager.get("user_unique_id_type")};this.enableAnonymousid?t.anonymous_id=this.configManager.get("anonymous_id"):t.web_id=this.configManager.get("web_id");var i=this.collect.cryptoData(t);return new Promise(function(t){e.collect.requestManager.useRequest({url:e.configManager.getUrl("tobid"),data:i,success:function(i){i&&0===i.e?(t(i.tobid),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"GetToken请求成功",logType:"fetch",level:"info",time:Date.now(),data:i,infoType:"sdk"})):(t(""),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"GetToken请求失败",logType:"fetch",level:"error",time:Date.now(),data:i,infoType:"sdk"}))},fail:function(){t(""),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"GetToken请求失败",logType:"fetch",level:"error",time:Date.now(),infoType:"sdk"})},timeout:e.timeout,encryption:e.config.enable_encryption,encryption_header:e.config.encryption_header,withCredentials:e.enableTTwebid})})},t}(),q=function(){function t(t,i){var n=this;e(this,"collector",void 0),e(this,"config",void 0),e(this,"errorCode",void 0),e(this,"errorMessage",void 0),e(this,"requestType",void 0),e(this,"supportBeacon",void 0),e(this,"customHeader",void 0),this.collector=t,this.config=i,this.requestType=i.request_type||"xhr",this.supportBeacon=!(!window.navigator||!window.navigator.sendBeacon),this.errorCode={NO_URL:4001,IMG_ON:4e3,IMG_CATCH:4002,BEACON_FALSE:4003,XHR_ERROR:5002,TIMEOUT:5005,FETCH_ERROR:5006},this.errorMessage={BEACON_FALSE:"xhr sendbeacon error",XHR_ERROR:"xhr request error",BEACON:"xhr sendbeacon error",TIMEOUT:"xhr request timeout",FETCH_ERROR:"fetch network error",FETCH_RESPONSE_ERROR:"fetch response error"},this.customHeader=i.custom_request_header||{},this.collector.on(T.CustomHeader,function(e){n.setRequestHeader(e)})}var i=t.prototype;return i.setRequestHeader=function(e){this.customHeader=Object.assign(this.customHeader,e)},i.useFetch=function(e){var t=this,i=e.url,n=e.data,o=e.method,r=e.success,s=e.fail,a=e.status,c=e.timeout,h=e.useBeacon,u=e.encryption,l=e.encryption_header;if(e.withCredentials,window.fetch&&"undefined"!=typeof Request){var f={method:o||"POST"};if(h){if(!("keepalive"in Request.prototype))return void this.useSendBeacon(e);var d=this.collector.configManager.get("browser"),p=this.collector.configManager.get("browser_version");if(p=p.split("."),"Chrome"===d&&p.length&&p[0]&&Number(p[0])<82)return void this.useSendBeacon(e);f.keepalive=!0}var g=JSON.stringify(n),m={"Content-Type":"application/json; charset=utf-8"};u&&l&&(m["Content-Type"]="application/octet-stream;tt-data="+l),f.body=g,f.headers=m;var v=null;v="undefined"!=typeof AbortController?new AbortController:{signal:null,abort:function(){}};var y=setTimeout(function(){v.abort()},c);if(Object.keys(this.customHeader).length)for(var _ in this.customHeader)m[_]=this.customHeader[_];f.signal=v.signal;var b=Date.now();try{fetch(i,f).then(function(e){return e.ok||s&&s(n,e.status,b,e.statusText||t.errorMessage.FETCH_RESPONSE_ERROR),e.json()}).then(function(e){clearTimeout(y),r&&r(e,n,a,b,200)}).catch(function(e){clearTimeout(y),s&&s(n,t.errorCode.FETCH_ERROR,b,e.message||t.errorMessage.FETCH_ERROR)})}catch(t){this.useXhr(e),this.collector.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK useFetch 发送请求发生了一些问题",level:"error",time:Date.now(),data:t.message||"SDK useFetch has some errors",infoType:"sdk"})}}else h?this.useSendBeacon(e):this.useXhr(e),console.log("your browser not support fetch, use normal request")},i.useSendBeacon=function(e){if(this.supportBeacon){var t=e.url,i=e.data,n=e.status,o=e.success,r=e.fail,s=e.encryption,a=e.encryption_header,c=Date.now(),h=JSON.stringify(i);if(s&&a&&!l()){if("undefined"==typeof Blob)return void this.useXhr(e);h=new Blob([i],{type:"application/octet-stream;tt-data="+a})}window.navigator.sendBeacon(t,h)?o&&o({e:0},i,n,c,200):r&&r(i,this.errorCode.BEACON_FALSE,c,this.errorMessage.BEACON_FALSE)}else this.useXhr(e)},i.useXhr=function(e){var t=this,i=e.url,n=e.data,o=e.method,r=e.success,s=e.fail,a=e.timeout;e.withCredentials;var c=e.encryption,h=e.encryption_header,u=e.status;try{var f=new XMLHttpRequest;f.open(o||"POST",i,!0);var d=Date.now();if(f.setRequestHeader("Content-Type","application/json; charset=utf-8"),c&&h?f.setRequestHeader("Content-Type","application/octet-stream;tt-data="+h):f.setRequestHeader("Content-Type","application/json; charset=utf-8"),Object.keys(this.customHeader).length)for(var p in this.customHeader)f.setRequestHeader(p,this.customHeader[p]);a&&(f.timeout=a,f.ontimeout=function(){s&&s(n,t.errorCode.TIMEOUT,d,t.errorMessage.TIMEOUT)}),f.onload=function(){if(r){var e=null;if(f.responseText){try{e=JSON.parse(f.responseText)}catch(t){e={}}r(e,n,u,d,f.status)}else s&&s(n,t.errorCode.XHR_ERROR,d,t.errorMessage.XHR_ERROR)}},f.onerror=function(){s&&s(n,t.errorCode.XHR_ERROR,d,t.errorMessage.XHR_ERROR),f.abort()},c&&!l()?f.send(n):f.send(JSON.stringify(n))}catch(e){this.collector.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK useXhr 发送请求发生了一些问题",level:"error",time:Date.now(),data:e.message,infoType:"sdk"})}},i.useRequest=function(e){var t=e.useBeacon;this.config.transport&&this.collector.configManager.getEnableClientTransport()?this.useCustomRequest(e):"fetch"!==this.requestType?t?this.useSendBeacon(e):this.useXhr(e):this.useFetch(e)},i.useCustomRequest=function(e){var t=this.config.transport,i=e.url,n=e.data,o=e.success,r=e.fail;if(t)try{t.post({url:i,data:JSON.stringify(n),success:function(e){o&&o(e,n)},fail:function(e){r&&r(e,n)}})}catch(t){this.collector.configManager.setEnableClientTransport(!1),this.useRequest(e)}},t}(),U=function(){function t(t){var i=this;e(this,"element",void 0),e(this,"isDragging",void 0),e(this,"animationFrameId",void 0),e(this,"lastX",void 0),e(this,"lastY",void 0),e(this,"offsetX",void 0),e(this,"offsetY",void 0),e(this,"initialX",void 0),e(this,"initialY",void 0),e(this,"clickAllowed",void 0),e(this,"dragThreshold",void 0),e(this,"enableClick",void 0),e(this,"onMove",function(e){if(i.isDragging){var t=e.clientX||e.touches[0].clientX,n=e.clientY||e.touches[0].clientY;if(i.clickAllowed){var o=Math.abs(t-i.initialX),r=Math.abs(n-i.initialY);(o>i.dragThreshold||r>i.dragThreshold)&&(i.clickAllowed=!1)}i.animationFrameId&&cancelAnimationFrame(i.animationFrameId),i.animationFrameId=requestAnimationFrame(function(){var t=e.touches?e.touches[0].clientX:e.clientX,n=e.touches?e.touches[0].clientY:e.clientY,o=t-i.offsetX,r=n-i.offsetY,s=window.innerWidth-i.element.offsetWidth,a=window.innerHeight-i.element.offsetHeight;o=Math.max(0,Math.min(o,s)),r=Math.max(0,Math.min(r,a)),i.element.style.transform="translate(\n "+(o-i.initialX)+"px, \n "+(r-i.initialY)+"px\n )"})}}),e(this,"onEnd",function(){if(i.isDragging){i.isDragging=!1;var e=new DOMMatrix(getComputedStyle(i.element).transform),t=i.initialX+e.m41,n=i.initialY+e.m42;i.element.style.left=t+"px",i.element.style.top=n+"px",i.element.style.transform="none",i.initialX=t,i.initialY=n,document.removeEventListener("mousemove",i.onMove),document.removeEventListener("mouseup",i.onEnd),document.removeEventListener("touchmove",i.onMove),document.removeEventListener("touchend",i.onEnd),setTimeout(function(){i.clickAllowed=!0},50)}}),this.element=t,this.isDragging=!1,this.enableClick=!1,this.animationFrameId=null,this.lastX=0,this.lastY=0,this.initialX=0,this.initialY=0,this.offsetX=0,this.offsetY=0,this.clickAllowed=!0,this.dragThreshold=1,this.initPosition(),this.bindEvents(),this.bindClickHandler()}var i=t.prototype;return i.initPosition=function(){var e=this.element.getBoundingClientRect();this.element.style.position="fixed",this.element.style.left=e.left+"px",this.element.style.top=e.top+"px",this.element.style.transform="translate(0, 0)"},i.bindEvents=function(){this.element.addEventListener("mousedown",this.onStart.bind(this)),this.element.addEventListener("touchstart",this.onStart.bind(this))},i.onStart=function(e){e.preventDefault(),this.initialX=e.clientX||e.touches[0].clientX,this.initialY=e.clientY||e.touches[0].clientY;var t=e.touches?e.touches[0].clientX:e.clientX,i=e.touches?e.touches[0].clientY:e.clientY,n=this.element.getBoundingClientRect();this.initialX=n.left,this.initialY=n.top,this.offsetX=t-this.initialX,this.offsetY=i-this.initialY,this.clickAllowed=!0,this.isDragging=!0,document.addEventListener("mousemove",this.onMove),document.addEventListener("mouseup",this.onEnd),document.addEventListener("touchmove",this.onMove),document.addEventListener("touchend",this.onEnd)},i.bindClickHandler=function(){var e=this;this.element.addEventListener("click",function(t){if(e.enableClick)return e.clickAllowed?void(window&&window.postMessage({type:"devtool:web:open-draw"},location.origin)):(t.stopImmediatePropagation(),void t.preventDefault())})},i.enable=function(){this.enableClick=!0,this.element.style.cursor="pointer",this.element.style.opacity="1"},t}(),N=function(){function t(t,i){e(this,"collect",void 0),e(this,"config",void 0),e(this,"devToolReady",!1),e(this,"devToolOrigin","*"),e(this,"sendAlready",!1),e(this,"app_id",void 0),e(this,"info",void 0),e(this,"log",void 0),e(this,"event",void 0),e(this,"filterEvent",void 0),e(this,"cacheStorgae",void 0),e(this,"loadUrl",void 0),e(this,"trackEnabled",!0),e(this,"currentAppKey",void 0),e(this,"debugButton",void 0),i.disable_debug||"Microsoft Internet Explorer"!==t.configManager.get("browser")&&(this.collect=t,this.config=i,this.app_id=i.app_id,this.trackEnabled=!!i.track_enabled,this.cacheStorgae=new y,this.currentAppKey="__applog_load_devtool_web_"+this.app_id,this.loadUrl=i.devtool_url||"https://lf-static.applogcdn.com/obj/applog-sdk-static/log-sdk/collect/devtool/debug-web.v2.0.1.js",this.filterEvent=new Set(["__bav_page","__bav_beat","__bav_page_statistics","__bav_click","__bav_page_exposure","bav2b_page","bav2b_beat","bav2b_page_statistics","bav2b_click","bav2b_page_exposure","_be_active","predefine_pageview","__profile_set","__profile_set_once","__profile_increment","__profile_unset","__profile_append","predefine_page_alive","predefine_page_close","abtest_exposure"]),this.load())}var i=t.prototype;return i.loadScript=function(e){var t=this;try{var i=document.createElement("script");i.src=e,i.onerror=function(){console.log("load DevTool render fail")},i.onload=function(){t.enableDebugButton(),console.log("load DevTool render success")},document.getElementsByTagName("body")[0].appendChild(i)}catch(e){console.log("devTool load fail, "+e.message)}},i.parseUrl=function(){var e={};try{var t=window.location.href.split("?")[1].split("&");t.length&&t.forEach(function(t){var i=t.split("=");e[decodeURIComponent(i[0])]=decodeURIComponent(i[1])})}catch(e){}return e},i.load=function(){try{var e=this.parseUrl();if(0==e.open_devtool_web)return void this.cacheStorgae.removeLocalItem("__applog_open_devtool_web");if(e.open_devtool_web&&e.app_id){if(parseInt(e.app_id)!==this.app_id)return}else if(!this.getStorage())return;this.loadBaseInfo(),this.loadHook(),this.setStorage(),this.addLintener(),this.loadDevTool()}catch(e){console.log("debug fail, "+e.message)}},i.getStorage=function(){var e=this.cacheStorgae.getLocalItem("__applog_open_devtool_web");return e&&parseInt(e)===this.app_id},i.setStorage=function(){this.cacheStorgae.setLocalItem("__applog_open_devtool_web",this.app_id),this.cacheStorgae.setLocalItem("__applog_devtool_web_track_enable",this.trackEnabled)},i.loadDevTool=function(){1==this.cacheStorgae.getLocalItem(this.currentAppKey)?console.warn("your appid: "+this.app_id+" has load web devtools already, maybe your page has more than two applogsdk and use one appid"):(this.loadDebuggerModule(),this.loadScript(this.loadUrl))},i.loadBaseInfo=function(){if(this.log=[],this.event=[],this.info=[{title:"基本信息",key:"base",type:1,content:[{name:"app_id",desc:"APP_ID",value:this.config.app_id},{name:"channel",desc:"CHANNEL",value:this.config.channel},{name:"domain",desc:"上报域名",value:this.collect.configManager.getDomain()},{name:"sdk_version",desc:"SDK版本",value:E},{name:"sdk_type",desc:"SDK引入方式",value:"npm"}]},{title:"用户信息",key:"user",type:2,content:[{name:"uuid",desc:"UUID",value:this.collect.configManager.get("user").user_unique_id||""},{name:"web_id",desc:"WEB_ID",value:this.collect.configManager.get("user").web_id||""}]},{title:"公共参数信息",type:2,key:"common",content:[{name:"browser",desc:"浏览器",value:this.collect.configManager.get("browser")},{name:"browser_version",desc:"浏览器版本",value:this.collect.configManager.get("browser_version")},{name:"platform",desc:"平台",value:this.collect.configManager.get("platform")},{name:"device_model",desc:"设备型号",value:this.collect.configManager.get("device_model")},{name:"os_name",desc:"操作系统",value:this.collect.configManager.get("os_name")},{name:"os_version",desc:"操作系统版本",value:this.collect.configManager.get("os_version")},{name:"resolution",desc:"屏幕分辨率",value:this.collect.configManager.get("resolution")},{name:"referrer",desc:"来源",value:this.collect.configManager.get("referrer")},{name:"custom",desc:"自定义信息",value:JSON.stringify(this.collect.configManager.get("custom"))}]},{title:"配置信息",key:"config",type:3,content:[{name:"autotrack",desc:"全埋点",value:!!this.config.autotrack},{name:"stay",desc:"停留时长",value:!!this.config.enable_stay_duration}]},{title:"A/B配置信息",key:"ab",type:4,content:[{name:"ab",desc:"A/B实验",value:!!this.config.enable_ab_test}]}],this.config.enable_ab_test){var e=this.getInfo("ab"),t=[{name:"ab",desc:"A/B实验",value:!!this.config.enable_ab_test},{name:"vid",desc:"已曝光VID",value:this.collect.configManager.getAbVersion()},{name:"ab_domain",desc:"A/B域名",value:this.config.ab_channel_domain||r(S[this.config.channel])},{name:"all_values",desc:"全部配置",value:this.collect.configManager.getAbCache()}];e.content=t,this.setInfo("ab",e)}if(this.config.enable_native||this.config.Native){var i={title:"客户端信息",type:3,content:[{name:"native",desc:"是否打通",value:!!this.collect.bridgeReport}]};this.setInfo("native",i)}if(E.includes("tob")){var n=this.getInfo("user");n.content.push({name:"sid",desc:"DISS".split("").reverse().join(""),value:"点击获取"}),this.setInfo("user",n)}},i.getInfo=function(e){var t=null;return this.info.forEach(function(i){i.key===e&&(t=i)}),t},i.setInfo=function(e,t){var i=!1;this.info.forEach(function(n){n.key===e&&(i=!0,n=t)}),i||this.info.push(t)},i.getSecondInfo=function(e,t){var i=this.getInfo(e),n=null;return i.content.forEach(function(e){e.name===t&&(n=e)}),n},i.setSecondInfo=function(e,t,i){var n=this.getInfo(e),o=!1;if(n.content.forEach(function(e){e.name===t&&(e.value=i,o=!0)}),!o){var r={name:t,value:i,desc:t.toLocaleUpperCase()};n.content.push(r)}this.setInfo(e,n)},i.loadHook=function(){var e=this;this.collect.on(D.DEBUGGER_MESSAGE,function(t){switch(t.type){case D.DEBUGGER_MESSAGE_SDK:var i={time:t.time,type:t.logType||"sdk",infoType:t.infoType||"sdk",level:t.level,name:t.info,show:!0,levelShow:!0,needDesc:!!t.data};if(t.data&&(i.desc={content:JSON.stringify(t.data)}),e.updateLog(i),t.secType&&"AB"===t.secType)e.setSecondInfo("ab","vid",e.collect.configManager.getAbVersion()),e.setSecondInfo("ab","all_values",e.collect.configManager.getAbCache());else if("USER"===t.secType)e.setSecondInfo("user","user_unique_id"===t.common?"uuid":t.common,e.collect.configManager.get(t.common));else if("HEADER"===t.secType){var n=e.collect.configManager.get(t.common);e.setSecondInfo("common",t.common,"custom"===t.common?JSON.stringify(n):n)}return void e.updateInfo();case D.DEBUGGER_MESSAGE_EVENT:if(t.data&&t.data.length){var o=t.data[0],r=o.events;if(!r.length)return;r.forEach(function(i){i.checkShow=!0,i.searchShow=!0,i.focusShow=!0,i.status=t.status,i.type=e.filterEvent.has(i.event)?"sdk":"cus",i.verifyType=t.verifyType?"verify":"no",i.info="","fail"===t.status&&(i.info={message:"code: "+t.code+", msg: "+(t.msg||t.failType)})}),e.updateEvent(o)}return}})},i.addLintener=function(){var e=this;window.addEventListener("message",function(t){if(t&&t.data&&"devtool:web:ready"===t.data.type){if(e.devToolOrigin=t.origin,e.devToolReady=!0,e.sendAlready)return;e.sendData("devtool:web:init",{info:e.info,log:e.log,event:e.event,sdk_type:E.includes("tob")?"tob":"inner",appId:e.app_id}),e.sendAlready=!0}t&&t.data&&"devtool:web:ssid"===t.data.type&&e.collect.getToken(function(t){e.setSecondInfo("user","sid",t.tobid),e.updateInfo()})})},i.sendData=function(e,t){try{var i={type:e,payload:t};window&&window.postMessage(i,this.devToolOrigin)}catch(e){}},i.updateInfo=function(){this.devToolReady&&this.sendData("devtool:web:info",this.info)},i.updateLog=function(e){this.devToolReady?this.sendData("devtool:web:log",e):this.log.push(e)},i.updateEvent=function(e){this.devToolReady?this.sendData("devtool:web:event",e):this.event.push(e)},i.loadDebuggerModule=function(){var e=document.head||document.getElementsByTagName("head")[0],t=document.createElement("style");t.appendChild(document.createTextNode("#debugger-applog-web {\n position: fixed;\n width: 90px;\n height: 30px;\n background: #23c243;\n border-radius: 6px;\n color: #fff;\n font-size: 12px;\n bottom: 5%;\n right: 10%;\n text-align: center;\n line-height: 30px;\n cursor: not-allowed;\n z-index:1000;\n font-weight:bold;\n opacity: 0.6;\n }")),e.appendChild(t);var i=document.createElement("div");i.innerHTML='<div id="debugger-applog-web" class="debugger-applog-web">AppLog调试</div>';var n=document.createElement("div");n.innerHTML='<div id="debugger-container" class="debugger-container"></div>',document.getElementsByTagName("body")[0].appendChild(i),document.getElementsByTagName("body")[0].appendChild(n);var o=document.getElementById("debugger-applog-web");this.debugButton=new U(o)},i.enableDebugButton=function(){this.debugButton&&this.debugButton.enable()},t}(),L=d(function(e,t){(function(){var t;function i(e,t,i){null!=e&&("number"==typeof e?this.fromNumber(e,t,i):null==t&&"string"!=typeof e?this.fromString(e,256):this.fromString(e,t))}function n(){return new i(null)}var o="undefined"!=typeof navigator;o&&"Microsoft Internet Explorer"==navigator.appName?(i.prototype.am=function(e,t,i,n,o,r){for(var s=32767&t,a=t>>15;--r>=0;){var c=32767&this[e],h=this[e++]>>15,u=a*c+h*s;o=((c=s*c+((32767&u)<<15)+i[n]+(1073741823&o))>>>30)+(u>>>15)+a*h+(o>>>30),i[n++]=1073741823&c}return o},t=30):o&&"Netscape"!=navigator.appName?(i.prototype.am=function(e,t,i,n,o,r){for(;--r>=0;){var s=t*this[e++]+i[n]+o;o=Math.floor(s/67108864),i[n++]=67108863&s}return o},t=26):(i.prototype.am=function(e,t,i,n,o,r){for(var s=16383&t,a=t>>14;--r>=0;){var c=16383&this[e],h=this[e++]>>14,u=a*c+h*s;o=((c=s*c+((16383&u)<<14)+i[n]+o)>>28)+(u>>14)+a*h,i[n++]=268435455&c}return o},t=28),i.prototype.DB=t,i.prototype.DM=(1<<t)-1,i.prototype.DV=1<<t;i.prototype.FV=Math.pow(2,52),i.prototype.F1=52-t,i.prototype.F2=2*t-52;var r,s,a=new Array;for(r="0".charCodeAt(0),s=0;s<=9;++s)a[r++]=s;for(r="a".charCodeAt(0),s=10;s<36;++s)a[r++]=s;for(r="A".charCodeAt(0),s=10;s<36;++s)a[r++]=s;function c(e){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(e)}function h(e,t){var i=a[e.charCodeAt(t)];return null==i?-1:i}function u(e){var t=n();return t.fromInt(e),t}function l(e){var t,i=1;return 0!=(t=e>>>16)&&(e=t,i+=16),0!=(t=e>>8)&&(e=t,i+=8),0!=(t=e>>4)&&(e=t,i+=4),0!=(t=e>>2)&&(e=t,i+=2),0!=(t=e>>1)&&(e=t,i+=1),i}function f(e){this.m=e}function d(e){this.m=e,this.mp=e.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function p(e,t){return e&t}function g(e,t){return e|t}function m(e,t){return e^t}function v(e,t){return e&~t}function y(e){if(0==e)return-1;var t=0;return 65535&e||(e>>=16,t+=16),255&e||(e>>=8,t+=8),15&e||(e>>=4,t+=4),3&e||(e>>=2,t+=2),1&e||++t,t}function _(e){for(var t=0;0!=e;)e&=e-1,++t;return t}function b(){}function E(e){return e}function S(e){this.r2=n(),this.q3=n(),i.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}f.prototype.convert=function(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e},f.prototype.revert=function(e){return e},f.prototype.reduce=function(e){e.divRemTo(this.m,null,e)},f.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i),this.reduce(i)},f.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},d.prototype.convert=function(e){var t=n();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(i.ZERO)>0&&this.m.subTo(t,t),t},d.prototype.revert=function(e){var t=n();return e.copyTo(t),this.reduce(t),t},d.prototype.reduce=function(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t<this.m.t;++t){var i=32767&e[t],n=i*this.mpl+((i*this.mph+(e[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(e[i=t+this.m.t]+=this.m.am(0,n,e,t,0,this.m.t);e[i]>=e.DV;)e[i]-=e.DV,e[++i]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)},d.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i),this.reduce(i)},d.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},i.prototype.copyTo=function(e){for(var t=this.t-1;t>=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s},i.prototype.fromInt=function(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+this.DV:this.t=0},i.prototype.fromString=function(e,t){var n;if(16==t)n=4;else if(8==t)n=3;else if(256==t)n=8;else if(2==t)n=1;else if(32==t)n=5;else{if(4!=t)return void this.fromRadix(e,t);n=2}this.t=0,this.s=0;for(var o=e.length,r=!1,s=0;--o>=0;){var a=8==n?255&e[o]:h(e,o);a<0?"-"==e.charAt(o)&&(r=!0):(r=!1,0==s?this[this.t++]=a:s+n>this.DB?(this[this.t-1]|=(a&(1<<this.DB-s)-1)<<s,this[this.t++]=a>>this.DB-s):this[this.t-1]|=a<<s,(s+=n)>=this.DB&&(s-=this.DB))}8==n&&128&e[0]&&(this.s=-1,s>0&&(this[this.t-1]|=(1<<this.DB-s)-1<<s)),this.clamp(),r&&i.ZERO.subTo(this,this)},i.prototype.clamp=function(){for(var e=this.s&this.DM;this.t>0&&this[this.t-1]==e;)--this.t},i.prototype.dlShiftTo=function(e,t){var i;for(i=this.t-1;i>=0;--i)t[i+e]=this[i];for(i=e-1;i>=0;--i)t[i]=0;t.t=this.t+e,t.s=this.s},i.prototype.drShiftTo=function(e,t){for(var i=e;i<this.t;++i)t[i-e]=this[i];t.t=Math.max(this.t-e,0),t.s=this.s},i.prototype.lShiftTo=function(e,t){var i,n=e%this.DB,o=this.DB-n,r=(1<<o)-1,s=Math.floor(e/this.DB),a=this.s<<n&this.DM;for(i=this.t-1;i>=0;--i)t[i+s+1]=this[i]>>o|a,a=(this[i]&r)<<n;for(i=s-1;i>=0;--i)t[i]=0;t[s]=a,t.t=this.t+s+1,t.s=this.s,t.clamp()},i.prototype.rShiftTo=function(e,t){t.s=this.s;var i=Math.floor(e/this.DB);if(i>=this.t)t.t=0;else{var n=e%this.DB,o=this.DB-n,r=(1<<n)-1;t[0]=this[i]>>n;for(var s=i+1;s<this.t;++s)t[s-i-1]|=(this[s]&r)<<o,t[s-i]=this[s]>>n;n>0&&(t[this.t-i-1]|=(this.s&r)<<o),t.t=this.t-i,t.clamp()}},i.prototype.subTo=function(e,t){for(var i=0,n=0,o=Math.min(e.t,this.t);i<o;)n+=this[i]-e[i],t[i++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;i<this.t;)n+=this[i],t[i++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;i<e.t;)n-=e[i],t[i++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[i++]=this.DV+n:n>0&&(t[i++]=n),t.t=i,t.clamp()},i.prototype.multiplyTo=function(e,t){var n=this.abs(),o=e.abs(),r=n.t;for(t.t=r+o.t;--r>=0;)t[r]=0;for(r=0;r<o.t;++r)t[r+n.t]=n.am(0,o[r],t,r,0,n.t);t.s=0,t.clamp(),this.s!=e.s&&i.ZERO.subTo(t,t)},i.prototype.squareTo=function(e){for(var t=this.abs(),i=e.t=2*t.t;--i>=0;)e[i]=0;for(i=0;i<t.t-1;++i){var n=t.am(i,t[i],e,2*i,0,1);(e[i+t.t]+=t.am(i+1,2*t[i],e,2*i+1,n,t.t-i-1))>=t.DV&&(e[i+t.t]-=t.DV,e[i+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(i,t[i],e,2*i,0,1)),e.s=0,e.clamp()},i.prototype.divRemTo=function(e,t,o){var r=e.abs();if(!(r.t<=0)){var s=this.abs();if(s.t<r.t)return null!=t&&t.fromInt(0),void(null!=o&&this.copyTo(o));null==o&&(o=n());var a=n(),c=this.s,h=e.s,u=this.DB-l(r[r.t-1]);u>0?(r.lShiftTo(u,a),s.lShiftTo(u,o)):(r.copyTo(a),s.copyTo(o));var f=a.t,d=a[f-1];if(0!=d){var p=d*(1<<this.F1)+(f>1?a[f-2]>>this.F2:0),g=this.FV/p,m=(1<<this.F1)/p,v=1<<this.F2,y=o.t,_=y-f,b=null==t?n():t;for(a.dlShiftTo(_,b),o.compareTo(b)>=0&&(o[o.t++]=1,o.subTo(b,o)),i.ONE.dlShiftTo(f,b),b.subTo(a,a);a.t<f;)a[a.t++]=0;for(;--_>=0;){var E=o[--y]==d?this.DM:Math.floor(o[y]*g+(o[y-1]+v)*m);if((o[y]+=a.am(0,E,o,_,0,f))<E)for(a.dlShiftTo(_,b),o.subTo(b,o);o[y]<--E;)o.subTo(b,o)}null!=t&&(o.drShiftTo(f,t),c!=h&&i.ZERO.subTo(t,t)),o.t=f,o.clamp(),u>0&&o.rShiftTo(u,o),c<0&&i.ZERO.subTo(o,o)}}},i.prototype.invDigit=function(){if(this.t<1)return 0;var e=this[0];if(!(1&e))return 0;var t=3&e;return(t=(t=(t=(t=t*(2-(15&e)*t)&15)*(2-(255&e)*t)&255)*(2-((65535&e)*t&65535))&65535)*(2-e*t%this.DV)%this.DV)>0?this.DV-t:-t},i.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},i.prototype.exp=function(e,t){if(e>4294967295||e<1)return i.ONE;var o=n(),r=n(),s=t.convert(this),a=l(e)-1;for(s.copyTo(o);--a>=0;)if(t.sqrTo(o,r),(e&1<<a)>0)t.mulTo(r,s,o);else{var c=o;o=r,r=c}return t.revert(o)},i.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)return this.toRadix(e);t=2}var i,n=(1<<t)-1,o=!1,r="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(i=this[s]>>a)>0&&(o=!0,r=c(i));s>=0;)a<t?(i=(this[s]&(1<<a)-1)<<t-a,i|=this[--s]>>(a+=this.DB-t)):(i=this[s]>>(a-=t)&n,a<=0&&(a+=this.DB,--s)),i>0&&(o=!0),o&&(r+=c(i));return o?r:"0"},i.prototype.negate=function(){var e=n();return i.ZERO.subTo(this,e),e},i.prototype.abs=function(){return this.s<0?this.negate():this},i.prototype.compareTo=function(e){var t=this.s-e.s;if(0!=t)return t;var i=this.t;if(0!=(t=i-e.t))return this.s<0?-t:t;for(;--i>=0;)if(0!=(t=this[i]-e[i]))return t;return 0},i.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+l(this[this.t-1]^this.s&this.DM)},i.prototype.mod=function(e){var t=n();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(i.ZERO)>0&&e.subTo(t,t),t},i.prototype.modPowInt=function(e,t){var i;return i=e<256||t.isEven()?new f(t):new d(t),this.exp(e,i)},i.ZERO=u(0),i.ONE=u(1),b.prototype.convert=E,b.prototype.revert=E,b.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i)},b.prototype.sqrTo=function(e,t){e.squareTo(t)},S.prototype.convert=function(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=n();return e.copyTo(t),this.reduce(t),t},S.prototype.revert=function(e){return e},S.prototype.reduce=function(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)},S.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i),this.reduce(i)},S.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)};var w,T,D,k=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],A=(1<<26)/k[k.length-1];function I(){var e;e=(new Date).getTime(),T[D++]^=255&e,T[D++]^=e>>8&255,T[D++]^=e>>16&255,T[D++]^=e>>24&255,D>=G&&(D-=G)}if(i.prototype.chunkSize=function(e){return Math.floor(Math.LN2*this.DB/Math.log(e))},i.prototype.toRadix=function(e){if(null==e&&(e=10),0==this.signum()||e<2||e>36)return"0";var t=this.chunkSize(e),i=Math.pow(e,t),o=u(i),r=n(),s=n(),a="";for(this.divRemTo(o,r,s);r.signum()>0;)a=(i+s.intValue()).toString(e).substr(1)+a,r.divRemTo(o,r,s);return s.intValue().toString(e)+a},i.prototype.fromRadix=function(e,t){this.fromInt(0),null==t&&(t=10);for(var n=this.chunkSize(t),o=Math.pow(t,n),r=!1,s=0,a=0,c=0;c<e.length;++c){var u=h(e,c);u<0?"-"==e.charAt(c)&&0==this.signum()&&(r=!0):(a=t*a+u,++s>=n&&(this.dMultiply(o),this.dAddOffset(a,0),s=0,a=0))}s>0&&(this.dMultiply(Math.pow(t,s)),this.dAddOffset(a,0)),r&&i.ZERO.subTo(this,this)},i.prototype.fromNumber=function(e,t,n){if("number"==typeof t)if(e<2)this.fromInt(1);else for(this.fromNumber(e,n),this.testBit(e-1)||this.bitwiseTo(i.ONE.shiftLeft(e-1),g,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(i.ONE.shiftLeft(e-1),this);else{var o=new Array,r=7&e;o.length=1+(e>>3),t.nextBytes(o),r>0?o[0]&=(1<<r)-1:o[0]=0,this.fromString(o,256)}},i.prototype.bitwiseTo=function(e,t,i){var n,o,r=Math.min(e.t,this.t);for(n=0;n<r;++n)i[n]=t(this[n],e[n]);if(e.t<this.t){for(o=e.s&this.DM,n=r;n<this.t;++n)i[n]=t(this[n],o);i.t=this.t}else{for(o=this.s&this.DM,n=r;n<e.t;++n)i[n]=t(o,e[n]);i.t=e.t}i.s=t(this.s,e.s),i.clamp()},i.prototype.changeBit=function(e,t){var n=i.ONE.shiftLeft(e);return this.bitwiseTo(n,t,n),n},i.prototype.addTo=function(e,t){for(var i=0,n=0,o=Math.min(e.t,this.t);i<o;)n+=this[i]+e[i],t[i++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;i<this.t;)n+=this[i],t[i++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;i<e.t;)n+=e[i],t[i++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[i++]=n:n<-1&&(t[i++]=this.DV+n),t.t=i,t.clamp()},i.prototype.dMultiply=function(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()},i.prototype.dAddOffset=function(e,t){if(0!=e){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}},i.prototype.multiplyLowerTo=function(e,t,i){var n,o=Math.min(this.t+e.t,t);for(i.s=0,i.t=o;o>0;)i[--o]=0;for(n=i.t-this.t;o<n;++o)i[o+this.t]=this.am(0,e[o],i,o,0,this.t);for(n=Math.min(e.t,t);o<n;++o)this.am(0,e[o],i,o,0,t-o);i.clamp()},i.prototype.multiplyUpperTo=function(e,t,i){--t;var n=i.t=this.t+e.t-t;for(i.s=0;--n>=0;)i[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)i[this.t+n-t]=this.am(t-n,e[n],i,0,0,this.t+n-t);i.clamp(),i.drShiftTo(1,i)},i.prototype.modInt=function(e){if(e<=0)return 0;var t=this.DV%e,i=this.s<0?e-1:0;if(this.t>0)if(0==t)i=this[0]%e;else for(var n=this.t-1;n>=0;--n)i=(t*i+this[n])%e;return i},i.prototype.millerRabin=function(e){var t=this.subtract(i.ONE),o=t.getLowestSetBit();if(o<=0)return!1;var r=t.shiftRight(o);(e=e+1>>1)>k.length&&(e=k.length);for(var s=n(),a=0;a<e;++a){s.fromInt(k[Math.floor(Math.random()*k.length)]);var c=s.modPow(r,this);if(0!=c.compareTo(i.ONE)&&0!=c.compareTo(t)){for(var h=1;h++<o&&0!=c.compareTo(t);)if(0==(c=c.modPowInt(2,this)).compareTo(i.ONE))return!1;if(0!=c.compareTo(t))return!1}}return!0},i.prototype.clone=function(){var e=n();return this.copyTo(e),e},i.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this[0];if(0==this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]},i.prototype.byteValue=function(){return 0==this.t?this.s:this[0]<<24>>24},i.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},i.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},i.prototype.toByteArray=function(){var e=this.t,t=new Array;t[0]=this.s;var i,n=this.DB-e*this.DB%8,o=0;if(e-- >0)for(n<this.DB&&(i=this[e]>>n)!=(this.s&this.DM)>>n&&(t[o++]=i|this.s<<this.DB-n);e>=0;)n<8?(i=(this[e]&(1<<n)-1)<<8-n,i|=this[--e]>>(n+=this.DB-8)):(i=this[e]>>(n-=8)&255,n<=0&&(n+=this.DB,--e)),128&i&&(i|=-256),0==o&&(128&this.s)!=(128&i)&&++o,(o>0||i!=this.s)&&(t[o++]=i);return t},i.prototype.equals=function(e){return 0==this.compareTo(e)},i.prototype.min=function(e){return this.compareTo(e)<0?this:e},i.prototype.max=function(e){return this.compareTo(e)>0?this:e},i.prototype.and=function(e){var t=n();return this.bitwiseTo(e,p,t),t},i.prototype.or=function(e){var t=n();return this.bitwiseTo(e,g,t),t},i.prototype.xor=function(e){var t=n();return this.bitwiseTo(e,m,t),t},i.prototype.andNot=function(e){var t=n();return this.bitwiseTo(e,v,t),t},i.prototype.not=function(){for(var e=n(),t=0;t<this.t;++t)e[t]=this.DM&~this[t];return e.t=this.t,e.s=~this.s,e},i.prototype.shiftLeft=function(e){var t=n();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t},i.prototype.shiftRight=function(e){var t=n();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t},i.prototype.getLowestSetBit=function(){for(var e=0;e<this.t;++e)if(0!=this[e])return e*this.DB+y(this[e]);return this.s<0?this.t*this.DB:-1},i.prototype.bitCount=function(){for(var e=0,t=this.s&this.DM,i=0;i<this.t;++i)e+=_(this[i]^t);return e},i.prototype.testBit=function(e){var t=Math.floor(e/this.DB);return t>=this.t?0!=this.s:!!(this[t]&1<<e%this.DB)},i.prototype.setBit=function(e){return this.changeBit(e,g)},i.prototype.clearBit=function(e){return this.changeBit(e,v)},i.prototype.flipBit=function(e){return this.changeBit(e,m)},i.prototype.add=function(e){var t=n();return this.addTo(e,t),t},i.prototype.subtract=function(e){var t=n();return this.subTo(e,t),t},i.prototype.multiply=function(e){var t=n();return this.multiplyTo(e,t),t},i.prototype.divide=function(e){var t=n();return this.divRemTo(e,t,null),t},i.prototype.remainder=function(e){var t=n();return this.divRemTo(e,null,t),t},i.prototype.divideAndRemainder=function(e){var t=n(),i=n();return this.divRemTo(e,t,i),new Array(t,i)},i.prototype.modPow=function(e,t){var i,o,r=e.bitLength(),s=u(1);if(r<=0)return s;i=r<18?1:r<48?3:r<144?4:r<768?5:6,o=r<8?new f(t):t.isEven()?new S(t):new d(t);var a=new Array,c=3,h=i-1,p=(1<<i)-1;if(a[1]=o.convert(this),i>1){var g=n();for(o.sqrTo(a[1],g);c<=p;)a[c]=n(),o.mulTo(g,a[c-2],a[c]),c+=2}var m,v,y=e.t-1,_=!0,b=n();for(r=l(e[y])-1;y>=0;){for(r>=h?m=e[y]>>r-h&p:(m=(e[y]&(1<<r+1)-1)<<h-r,y>0&&(m|=e[y-1]>>this.DB+r-h)),c=i;!(1&m);)m>>=1,--c;if((r-=c)<0&&(r+=this.DB,--y),_)a[m].copyTo(s),_=!1;else{for(;c>1;)o.sqrTo(s,b),o.sqrTo(b,s),c-=2;c>0?o.sqrTo(s,b):(v=s,s=b,b=v),o.mulTo(b,a[m],s)}for(;y>=0&&!(e[y]&1<<r);)o.sqrTo(s,b),v=s,s=b,b=v,--r<0&&(r=this.DB-1,--y)}return o.revert(s)},i.prototype.modInverse=function(e){var t=e.isEven();if(this.isEven()&&t||0==e.signum())return i.ZERO;for(var n=e.clone(),o=this.clone(),r=u(1),s=u(0),a=u(0),c=u(1);0!=n.signum();){for(;n.isEven();)n.rShiftTo(1,n),t?(r.isEven()&&s.isEven()||(r.addTo(this,r),s.subTo(e,s)),r.rShiftTo(1,r)):s.isEven()||s.subTo(e,s),s.rShiftTo(1,s);for(;o.isEven();)o.rShiftTo(1,o),t?(a.isEven()&&c.isEven()||(a.addTo(this,a),c.subTo(e,c)),a.rShiftTo(1,a)):c.isEven()||c.subTo(e,c),c.rShiftTo(1,c);n.compareTo(o)>=0?(n.subTo(o,n),t&&r.subTo(a,r),s.subTo(c,s)):(o.subTo(n,o),t&&a.subTo(r,a),c.subTo(s,c))}return 0!=o.compareTo(i.ONE)?i.ZERO:c.compareTo(e)>=0?c.subtract(e):c.signum()<0?(c.addTo(e,c),c.signum()<0?c.add(e):c):c},i.prototype.pow=function(e){return this.exp(e,new b)},i.prototype.gcd=function(e){var t=this.s<0?this.negate():this.clone(),i=e.s<0?e.negate():e.clone();if(t.compareTo(i)<0){var n=t;t=i,i=n}var o=t.getLowestSetBit(),r=i.getLowestSetBit();if(r<0)return t;for(o<r&&(r=o),r>0&&(t.rShiftTo(r,t),i.rShiftTo(r,i));t.signum()>0;)(o=t.getLowestSetBit())>0&&t.rShiftTo(o,t),(o=i.getLowestSetBit())>0&&i.rShiftTo(o,i),t.compareTo(i)>=0?(t.subTo(i,t),t.rShiftTo(1,t)):(i.subTo(t,i),i.rShiftTo(1,i));return r>0&&i.lShiftTo(r,i),i},i.prototype.isProbablePrime=function(e){var t,i=this.abs();if(1==i.t&&i[0]<=k[k.length-1]){for(t=0;t<k.length;++t)if(i[0]==k[t])return!0;return!1}if(i.isEven())return!1;for(t=1;t<k.length;){for(var n=k[t],o=t+1;o<k.length&&n<A;)n*=k[o++];for(n=i.modInt(n);t<o;)if(n%k[t++]==0)return!1}return i.millerRabin(e)},i.prototype.square=function(){var e=n();return this.squareTo(e),e},i.prototype.Barrett=S,null==T){var B;if(T=new Array,D=0,"undefined"!=typeof window&&window.crypto)if(window.crypto.getRandomValues){var M=new Uint8Array(32);for(window.crypto.getRandomValues(M),B=0;B<32;++B)T[D++]=M[B]}else if("Netscape"==navigator.appName&&navigator.appVersion<"5"){var C=window.crypto.random(32);for(B=0;B<C.length;++B)T[D++]=255&C.charCodeAt(B)}for(;D<G;)B=Math.floor(65536*Math.random()),T[D++]=B>>>8,T[D++]=255&B;D=0,I()}function x(){if(null==w){for(I(),(w=new O).init(T),D=0;D<T.length;++D)T[D]=0;D=0}return w.next()}function R(){}function O(){this.i=0,this.j=0,this.S=new Array}R.prototype.nextBytes=function(e){var t;for(t=0;t<e.length;++t)e[t]=x()},O.prototype.init=function(e){var t,i,n;for(t=0;t<256;++t)this.S[t]=t;for(i=0,t=0;t<256;++t)i=i+this.S[t]+e[t%e.length]&255,n=this.S[t],this.S[t]=this.S[i],this.S[i]=n;this.i=0,this.j=0},O.prototype.next=function(){var e;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,e=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=e,this.S[e+this.S[this.i]&255]};var G=256;e.exports={default:i,BigInteger:i,SecureRandom:R}}).call(f)});L.BigInteger,L.SecureRandom;const{BigInteger:K}=L;class V{constructor(){this.tlv=null,this.t="00",this.l="00",this.v=""}getEncodedHex(){return this.tlv||(this.v=this.getValue(),this.l=this.getLength(),this.tlv=this.t+this.l+this.v),this.tlv}getLength(){const e=this.v.length/2;let t=e.toString(16);if(t.length%2==1&&(t="0"+t),e<128)return t;return(128+t.length/2).toString(16)+t}getValue(){return""}}class H extends V{constructor(e){super(),this.t="02",e&&(this.v=function(e){let t=e.toString(16);if("-"!==t[0])t.length%2==1?t="0"+t:t.match(/^[0-7]/)||(t="00"+t);else{t=t.substr(1);let i=t.length;i%2==1?i+=1:t.match(/^[0-7]/)||(i+=2);let n="";for(let e=0;e<i;e++)n+="f";n=new K(n,16),t=n.xor(e).add(K.ONE),t=t.toString(16).replace(/^-/,"")}return t}(e))}getValue(){return this.v}}class j extends V{constructor(e){super(),this.t="30",this.asn1Array=e}getValue(){return this.v=this.asn1Array.map(e=>e.getEncodedHex()).join(""),this.v}}function X(e,t){return+e[t+2]<8?1:128&+e.substr(t+2,2)}function W(e,t){const i=X(e,t),n=e.substr(t+2,2*i);if(!n)return-1;return(+n[0]<8?new K(n,16):new K(n.substr(2),16)).intValue()}function J(e,t){return t+2*(X(e,t)+1)}var Y={encodeDer(e,t){const i=new H(e),n=new H(t);return new j([i,n]).getEncodedHex()},decodeDer(e){const t=J(e,0),i=J(e,t),n=W(e,t),o=e.substr(i,2*n),r=i+o.length,s=J(e,r),a=W(e,r),c=e.substr(s,2*a);return{r:new K(o,16),s:new K(c,16)}}};const{BigInteger:$}=L,Z=new $("2"),Q=new $("3");class ee{constructor(e,t){this.x=t,this.q=e}equals(e){return e===this||this.q.equals(e.q)&&this.x.equals(e.x)}toBigInteger(){return this.x}negate(){return new ee(this.q,this.x.negate().mod(this.q))}add(e){return new ee(this.q,this.x.add(e.toBigInteger()).mod(this.q))}subtract(e){return new ee(this.q,this.x.subtract(e.toBigInteger()).mod(this.q))}multiply(e){return new ee(this.q,this.x.multiply(e.toBigInteger()).mod(this.q))}divide(e){return new ee(this.q,this.x.multiply(e.toBigInteger().modInverse(this.q)).mod(this.q))}square(){return new ee(this.q,this.x.square().mod(this.q))}}class te{constructor(e,t,i,n){this.curve=e,this.x=t,this.y=i,this.z=null==n?$.ONE:n,this.zinv=null}getX(){return null===this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.x.toBigInteger().multiply(this.zinv).mod(this.curve.q))}getY(){return null===this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.y.toBigInteger().multiply(this.zinv).mod(this.curve.q))}equals(e){if(e===this)return!0;if(this.isInfinity())return e.isInfinity();if(e.isInfinity())return this.isInfinity();if(!e.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(e.z)).mod(this.curve.q).equals($.ZERO))return!1;return e.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(e.z)).mod(this.curve.q).equals($.ZERO)}isInfinity(){return null===this.x&&null===this.y||this.z.equals($.ZERO)&&!this.y.toBigInteger().equals($.ZERO)}negate(){return new te(this.curve,this.x,this.y.negate(),this.z)}add(e){if(this.isInfinity())return e;if(e.isInfinity())return this;const t=this.x.toBigInteger(),i=this.y.toBigInteger(),n=this.z,o=e.x.toBigInteger(),r=e.y.toBigInteger(),s=e.z,a=this.curve.q,c=t.multiply(s).mod(a),h=o.multiply(n).mod(a),u=c.subtract(h),l=i.multiply(s).mod(a),f=r.multiply(n).mod(a),d=l.subtract(f);if($.ZERO.equals(u))return $.ZERO.equals(d)?this.twice():this.curve.infinity;const p=c.add(h),g=n.multiply(s).mod(a),m=u.square().mod(a),v=u.multiply(m).mod(a),y=g.multiply(d.square()).subtract(p.multiply(m)).mod(a),_=u.multiply(y).mod(a),b=d.multiply(m.multiply(c).subtract(y)).subtract(l.multiply(v)).mod(a),E=v.multiply(g).mod(a);return new te(this.curve,this.curve.fromBigInteger(_),this.curve.fromBigInteger(b),E)}twice(){if(this.isInfinity())return this;if(!this.y.toBigInteger().signum())return this.curve.infinity;const e=this.x.toBigInteger(),t=this.y.toBigInteger(),i=this.z,n=this.curve.q,o=this.curve.a.toBigInteger(),r=e.square().multiply(Q).add(o.multiply(i.square())).mod(n),s=t.shiftLeft(1).multiply(i).mod(n),a=t.square().mod(n),c=a.multiply(e).multiply(i).mod(n),h=s.square().mod(n),u=r.square().subtract(c.shiftLeft(3)).mod(n),l=s.multiply(u).mod(n),f=r.multiply(c.shiftLeft(2).subtract(u)).subtract(h.shiftLeft(1).multiply(a)).mod(n),d=s.multiply(h).mod(n);return new te(this.curve,this.curve.fromBigInteger(l),this.curve.fromBigInteger(f),d)}multiply(e){if(this.isInfinity())return this;if(!e.signum())return this.curve.infinity;const t=e.multiply(Q),i=this.negate();let n=this;for(let o=t.bitLength()-2;o>0;o--){n=n.twice();const r=t.testBit(o);r!==e.testBit(o)&&(n=n.add(r?this:i))}return n}}var ie={ECPointFp:te,ECCurveFp:class{constructor(e,t,i){this.q=e,this.a=this.fromBigInteger(t),this.b=this.fromBigInteger(i),this.infinity=new te(this,null,null)}equals(e){return e===this||this.q.equals(e.q)&&this.a.equals(e.a)&&this.b.equals(e.b)}fromBigInteger(e){return new ee(this.q,e)}decodePointHex(e){switch(parseInt(e.substr(0,2),16)){case 0:return this.infinity;case 2:case 3:const t=this.fromBigInteger(new $(e.substr(2),16));let i=this.fromBigInteger(t.multiply(t.square()).add(t.multiply(this.a)).add(this.b).toBigInteger().modPow(this.q.divide(new $("4")).add($.ONE),this.q));return i.toBigInteger().mod(Z).equals(new $(e.substr(0,2),16).subtract(Z))||(i=i.negate()),new te(this,t,i);case 4:case 6:case 7:const n=(e.length-2)/2,o=e.substr(2,n),r=e.substr(n+2,n);return new te(this,this.fromBigInteger(new $(o,16)),this.fromBigInteger(new $(r,16)));default:return null}}}};const{BigInteger:ne,SecureRandom:oe}=L,{ECCurveFp:re}=ie,se=new oe,{curve:ae,G:ce,n:he}=ue();function ue(){const e=new ne("FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF",16),t=new ne("FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFC",16),i=new ne("28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93",16),n=new re(e,t,i),o=n.decodePointHex("0432C4AE2C1F1981195F9904466A39C9948FE30BBFF2660BE1715A4589334C74C7BC3736A2F4F6779C59BDCEE36B692153D0A9877CC62A474002DF32E52139F0A0");return{curve:n,G:o,n:new ne("FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C6052B53BBF40939D54123",16)}}function le(e,t){return e.length>=t?e:new Array(t-e.length+1).join("0")+e}var fe={getGlobalCurve:function(){return ae},generateEcparam:ue,generateKeyPairHex:function(e,t,i){const n=(e?new ne(e,t,i):new ne(he.bitLength(),se)).mod(he.subtract(ne.ONE)).add(ne.ONE),o=le(n.toString(16),64),r=ce.multiply(n);return{privateKey:o,publicKey:"04"+le(r.getX().toBigInteger().toString(16),64)+le(r.getY().toBigInteger().toString(16),64)}},compressPublicKeyHex:function(e){if(130!==e.length)throw new Error("Invalid public key to compress");const t=(e.length-2)/2,i=e.substr(2,t);let n="03";return new ne(e.substr(t+2,t),16).mod(new ne("2")).equals(ne.ZERO)&&(n="02"),n+i},utf8ToHex:function(e){const t=(e=unescape(encodeURIComponent(e))).length,i=[];for(let n=0;n<t;n++)i[n>>>2]|=(255&e.charCodeAt(n))<<24-n%4*8;const n=[];for(let e=0;e<t;e++){const t=i[e>>>2]>>>24-e%4*8&255;n.push((t>>>4).toString(16)),n.push((15&t).toString(16))}return n.join("")},leftPad:le,arrayToHex:function(e){return e.map(e=>1===(e=e.toString(16)).length?"0"+e:e).join("")},arrayToUtf8:function(e){const t=[];let i=0;for(let n=0;n<2*e.length;n+=2)t[n>>>3]|=parseInt(e[i],10)<<24-n%8*4,i++;try{const i=[];for(let n=0;n<e.length;n++){const e=t[n>>>2]>>>24-n%4*8&255;i.push(String.fromCharCode(e))}return decodeURIComponent(escape(i.join("")))}catch(e){throw new Error("Malformed UTF-8 data")}},hexToArray:function(e){const t=[];let i=e.length;i%2!=0&&(e=le(e,i+1)),i=e.length;for(let n=0;n<i;n+=2)t.push(parseInt(e.substr(n,2),16));return t},verifyPublicKey:function(e){const t=ae.decodePointHex(e);if(!t)return!1;const i=t.getX();return t.getY().square().equals(i.multiply(i.square()).add(i.multiply(ae.a)).add(ae.b))},comparePublicKeyHex:function(e,t){const i=ae.decodePointHex(e);if(!i)return!1;const n=ae.decodePointHex(t);return!!n&&i.equals(n)}};const de=new Uint32Array(68),pe=new Uint32Array(64);function ge(e,t){const i=31&t;return e<<i|e>>>32-i}function me(e,t){const i=[];for(let n=e.length-1;n>=0;n--)i[n]=255&(e[n]^t[n]);return i}function ve(e){return e^ge(e,9)^ge(e,17)}function ye(e){return e^ge(e,15)^ge(e,23)}function _e(e){let t=8*e.length,i=t%512;i=i>=448?512-i%448-1:448-i-1;const n=new Array((i-7)/8),o=new Array(8);for(let e=0,t=n.length;e<t;e++)n[e]=0;for(let e=0,t=o.length;e<t;e++)o[e]=0;t=t.toString(2);for(let e=7;e>=0;e--)if(t.length>8){const i=t.length-8;o[e]=parseInt(t.substr(i),2),t=t.substr(0,i)}else t.length>0&&(o[e]=parseInt(t,2),t="");const r=new Uint8Array([...e,128,...n,...o]),s=new DataView(r.buffer,0),a=r.length/64,c=new Uint32Array([1937774191,1226093241,388252375,3666478592,2842636476,372324522,3817729613,2969243214]);for(let e=0;e<a;e++){de.fill(0),pe.fill(0);const t=16*e;for(let e=0;e<16;e++)de[e]=s.getUint32(4*(t+e),!1);for(let e=16;e<68;e++)de[e]=ye(de[e-16]^de[e-9]^ge(de[e-3],15))^ge(de[e-13],7)^de[e-6];for(let e=0;e<64;e++)pe[e]=de[e]^de[e+4];const i=2043430169,n=2055708042;let o,r,a,h,u,l=c[0],f=c[1],d=c[2],p=c[3],g=c[4],m=c[5],v=c[6],y=c[7];for(let e=0;e<64;e++)u=e>=0&&e<=15?i:n,o=ge(ge(l,12)+g+ge(u,e),7),r=o^ge(l,12),a=(e>=0&&e<=15?l^f^d:l&f|l&d|f&d)+p+r+pe[e],h=(e>=0&&e<=15?g^m^v:g&m|~g&v)+y+o+de[e],p=d,d=ge(f,9),f=l,l=a,y=v,v=ge(m,19),m=g,g=ve(h);c[0]^=l,c[1]^=f,c[2]^=d,c[3]^=p,c[4]^=g,c[5]^=m,c[6]^=v,c[7]^=y}const h=[];for(let e=0,t=c.length;e<t;e++){const t=c[e];h.push((4278190080&t)>>>24,(16711680&t)>>>16,(65280&t)>>>8,255&t)}return h}const be=new Uint8Array(64),Ee=new Uint8Array(64);for(let e=0;e<64;e++)be[e]=54,Ee[e]=92;var Se={sm3:_e,hmac:function(e,t){for(t.length>64&&(t=_e(t));t.length<64;)t.push(0);const i=me(t,be),n=me(t,Ee),o=_e([...i,...e]);return _e([...n,...o])}};const{BigInteger:we}=L,{encodeDer:Te,decodeDer:De}=Y,ke=Se.sm3,{G:Ae,curve:Ie,n:Be}=fe.generateEcparam();function Me(e,t,i="1234567812345678"){i=fe.utf8ToHex(i);const n=fe.leftPad(Ae.curve.a.toBigInteger().toRadix(16),64),o=fe.leftPad(Ae.curve.b.toBigInteger().toRadix(16),64),r=fe.leftPad(Ae.getX().toBigInteger().toRadix(16),64),s=fe.leftPad(Ae.getY().toBigInteger().toRadix(16),64);let a,c;if(128===t.length)a=t.substr(0,64),c=t.substr(64,64);else{const e=Ae.curve.decodePointHex(t);a=fe.leftPad(e.getX().toBigInteger().toRadix(16),64),c=fe.leftPad(e.getY().toBigInteger().toRadix(16),64)}const h=fe.hexToArray(i+n+o+r+s+a+c),u=4*i.length;h.unshift(255&u),h.unshift(u>>8&255);const l=ke(h);return fe.arrayToHex(ke(l.concat(fe.hexToArray(e))))}function Ce(e){const t=Ae.multiply(new we(e,16));return"04"+fe.leftPad(t.getX().toBigInteger().toString(16),64)+fe.leftPad(t.getY().toBigInteger().toString(16),64)}function xe(){const e=fe.generateKeyPairHex(),t=Ie.decodePointHex(e.publicKey);return e.k=new we(e.privateKey,16),e.x1=t.getX().toBigInteger(),e}var Re={generateKeyPairHex:fe.generateKeyPairHex,compressPublicKeyHex:fe.compressPublicKeyHex,comparePublicKeyHex:fe.comparePublicKeyHex,doEncrypt:function(e,t,i=1){e="string"==typeof e?fe.hexToArray(fe.utf8ToHex(e)):Array.prototype.slice.call(e),t=fe.getGlobalCurve().decodePointHex(t);const n=fe.generateKeyPairHex(),o=new we(n.privateKey,16);let r=n.publicKey;r.length>128&&(r=r.substr(r.length-128));const s=t.multiply(o),a=fe.hexToArray(fe.leftPad(s.getX().toBigInteger().toRadix(16),64)),c=fe.hexToArray(fe.leftPad(s.getY().toBigInteger().toRadix(16),64)),h=fe.arrayToHex(ke([].concat(a,e,c)));let u=1,l=0,f=[];const d=[].concat(a,c),p=()=>{f=ke([...d,u>>24&255,u>>16&255,u>>8&255,255&u]),u++,l=0};p();for(let t=0,i=e.length;t<i;t++)l===f.length&&p(),e[t]^=255&f[l++];const g=fe.arrayToHex(e);return 0===i?r+g+h:r+h+g},doDecrypt:function(e,t,i=1,{output:n="string"}={}){t=new we(t,16);let o=e.substr(128,64),r=e.substr(192);0===i&&(o=e.substr(e.length-64),r=e.substr(128,e.length-128-64));const s=fe.hexToArray(r),a=fe.getGlobalCurve().decodePointHex("04"+e.substr(0,128));if(!a||!fe.verifyPublicKey("04"+e.substr(0,128)))return"array"===n?[]:"";const c=a.multiply(t),h=fe.hexToArray(fe.leftPad(c.getX().toBigInteger().toRadix(16),64)),u=fe.hexToArray(fe.leftPad(c.getY().toBigInteger().toRadix(16),64));let l=1,f=0,d=[];const p=[].concat(h,u),g=()=>{d=ke([...p,l>>24&255,l>>16&255,l>>8&255,255&l]),l++,f=0};g();for(let e=0,t=s.length;e<t;e++)f===d.length&&g(),s[e]^=255&d[f++];return fe.arrayToHex(ke([].concat(h,s,u)))===o.toLowerCase()?"array"===n?s:fe.arrayToUtf8(s):"array"===n?[]:""},doSignature:function(e,t,{pointPool:i,der:n,hash:o,publicKey:r,userId:s}={}){let a="string"==typeof e?fe.utf8ToHex(e):fe.arrayToHex(e);o&&(a=Me(a,r=r||Ce(t),s));const c=new we(t,16),h=new we(a,16);let u=null,l=null,f=null;do{do{let e;e=i&&i.length?i.pop():xe(),u=e.k,l=h.add(e.x1).mod(Be)}while(l.equals(we.ZERO)||l.add(u).equals(Be));f=c.add(we.ONE).modInverse(Be).multiply(u.subtract(l.multiply(c))).mod(Be)}while(f.equals(we.ZERO));return n?Te(l,f):fe.leftPad(l.toString(16),64)+fe.leftPad(f.toString(16),64)},doVerifySignature:function(e,t,i,{der:n,hash:o,userId:r}={}){let s,a,c="string"==typeof e?fe.utf8ToHex(e):fe.arrayToHex(e);if(o&&(c=Me(c,i,r)),n){const e=De(t);s=e.r,a=e.s}else s=new we(t.substring(0,64),16),a=new we(t.substring(64),16);const h=Be.subtract(we.ONE);if(s.compareTo(we.ONE)<0||s.compareTo(h)>0)return!1;if(a.compareTo(we.ONE)<0||a.compareTo(h)>0)return!1;const u=Ie.decodePointHex(i);if(!u||!fe.verifyPublicKey(i))return!1;const l=new we(c,16),f=s.add(a).mod(Be);if(f.equals(we.ZERO))return!1;const d=Ae.multiply(a).add(u.multiply(f)),p=l.add(d.getX().toBigInteger()).mod(Be);return s.equals(p)},getPublicKeyFromPrivateKey:Ce,getPoint:xe,verifyPublicKey:fe.verifyPublicKey};const{sm3:Oe,hmac:Ge}=Se;function Fe(e){return e.map(e=>1===(e=e.toString(16)).length?"0"+e:e).join("")}function Pe(e){const t=[];let i=e.length;var n,o;i%2!=0&&(o=i+1,e=(n=e).length>=o?n:new Array(o-n.length+1).join("0")+n),i=e.length;for(let n=0;n<i;n+=2)t.push(parseInt(e.substr(n,2),16));return t}const ze=16,qe=[214,144,233,254,204,225,61,183,22,182,20,194,40,251,44,5,43,103,154,118,42,190,4,195,170,68,19,38,73,134,6,153,156,66,80,244,145,239,152,122,51,84,11,67,237,207,172,98,228,179,28,169,201,8,232,149,128,223,148,250,117,143,63,166,71,7,167,252,243,115,23,186,131,89,60,25,230,133,79,168,104,107,129,178,113,100,218,139,248,235,15,75,112,86,157,53,30,36,14,94,99,88,209,162,37,34,124,59,1,33,120,135,212,0,70,87,159,211,39,82,76,54,2,231,160,196,200,158,234,191,138,210,64,199,56,181,163,247,242,206,249,97,21,161,224,174,93,164,155,52,26,85,173,147,50,48,245,140,177,227,29,246,226,46,130,102,202,96,192,41,35,171,13,83,78,111,213,219,55,69,222,253,142,47,3,255,106,114,109,108,91,81,141,27,175,146,187,221,188,127,17,217,92,65,31,16,90,216,10,193,49,136,165,205,123,189,45,116,208,18,184,229,180,176,137,105,151,74,12,150,119,126,101,185,241,9,197,110,198,132,24,240,125,236,58,220,77,32,121,238,95,62,215,203,57,72],Ue=[462357,472066609,943670861,1415275113,1886879365,2358483617,2830087869,3301692121,3773296373,4228057617,404694573,876298825,1347903077,1819507329,2291111581,2762715833,3234320085,3705924337,4177462797,337322537,808926789,1280531041,1752135293,2223739545,2695343797,3166948049,3638552301,4110090761,269950501,741554753,1213159005,1684763257];function Ne(e){const t=[];for(let i=0,n=e.length;i<n;i+=2)t.push(parseInt(e.substr(i,2),16));return t}function Le(e,t){const i=31&t;return e<<i|e>>>32-i}function Ke(e){return(255&qe[e>>>24&255])<<24|(255&qe[e>>>16&255])<<16|(255&qe[e>>>8&255])<<8|255&qe[255&e]}function Ve(e){return e^Le(e,2)^Le(e,10)^Le(e,18)^Le(e,24)}function He(e){return e^Le(e,13)^Le(e,23)}function je(e,t,i){const n=new Array(4),o=new Array(4);for(let t=0;t<4;t++)o[0]=255&e[4*t],o[1]=255&e[4*t+1],o[2]=255&e[4*t+2],o[3]=255&e[4*t+3],n[t]=o[0]<<24|o[1]<<16|o[2]<<8|o[3];for(let e,t=0;t<32;t+=4)e=n[1]^n[2]^n[3]^i[t+0],n[0]^=Ve(Ke(e)),e=n[2]^n[3]^n[0]^i[t+1],n[1]^=Ve(Ke(e)),e=n[3]^n[0]^n[1]^i[t+2],n[2]^=Ve(Ke(e)),e=n[0]^n[1]^n[2]^i[t+3],n[3]^=Ve(Ke(e));for(let e=0;e<16;e+=4)t[e]=n[3-e/4]>>>24&255,t[e+1]=n[3-e/4]>>>16&255,t[e+2]=n[3-e/4]>>>8&255,t[e+3]=255&n[3-e/4]}function Xe(e,t,i,{padding:n="pkcs#7",mode:o,iv:r=[],output:s="string"}={}){if("cbc"===o&&("string"==typeof r&&(r=Ne(r)),16!==r.length))throw new Error("iv is invalid");if("string"==typeof t&&(t=Ne(t)),16!==t.length)throw new Error("key is invalid");if(e="string"==typeof e?0!==i?function(e){const t=[];for(let i=0,n=e.length;i<n;i++){const n=e.codePointAt(i);if(n<=127)t.push(n);else if(n<=2047)t.push(192|n>>>6),t.push(128|63&n);else if(n<=55295||n>=57344&&n<=65535)t.push(224|n>>>12),t.push(128|n>>>6&63),t.push(128|63&n);else{if(!(n>=65536&&n<=1114111))throw t.push(n),new Error("input is not supported");i++,t.push(240|n>>>18&28),t.push(128|n>>>12&63),t.push(128|n>>>6&63),t.push(128|63&n)}}return t}(e):Ne(e):[...e],("pkcs#5"===n||"pkcs#7"===n)&&0!==i){const t=ze-e.length%ze;for(let i=0;i<t;i++)e.push(t)}const a=new Array(32);!function(e,t,i){const n=new Array(4),o=new Array(4);for(let t=0;t<4;t++)o[0]=255&e[0+4*t],o[1]=255&e[1+4*t],o[2]=255&e[2+4*t],o[3]=255&e[3+4*t],n[t]=o[0]<<24|o[1]<<16|o[2]<<8|o[3];n[0]^=2746333894,n[1]^=1453994832,n[2]^=1736282519,n[3]^=2993693404;for(let e,i=0;i<32;i+=4)e=n[1]^n[2]^n[3]^Ue[i+0],t[i+0]=n[0]^=He(Ke(e)),e=n[2]^n[3]^n[0]^Ue[i+1],t[i+1]=n[1]^=He(Ke(e)),e=n[3]^n[0]^n[1]^Ue[i+2],t[i+2]=n[2]^=He(Ke(e)),e=n[0]^n[1]^n[2]^Ue[i+3],t[i+3]=n[3]^=He(Ke(e));if(0===i)for(let e,i=0;i<16;i++)e=t[i],t[i]=t[31-i],t[31-i]=e}(t,a,i);const c=[];let h=r,u=e.length,l=0;for(;u>=ze;){const t=e.slice(l,l+16),n=new Array(16);if("cbc"===o)for(let e=0;e<ze;e++)0!==i&&(t[e]^=h[e]);je(t,n,a);for(let e=0;e<ze;e++)"cbc"===o&&0===i&&(n[e]^=h[e]),c[l+e]=n[e];"cbc"===o&&(h=0!==i?n:t),u-=ze,l+=ze}if(("pkcs#5"===n||"pkcs#7"===n)&&0===i){const e=c.length,t=c[e-1];for(let i=1;i<=t;i++)if(c[e-i]!==t)throw new Error("padding is invalid");c.splice(e-t,t)}return"array"!==s?0!==i?c.map(e=>1===(e=e.toString(16)).length?"0"+e:e).join(""):function(e){const t=[];for(let i=0,n=e.length;i<n;i++)e[i]>=240&&e[i]<=247?(t.push(String.fromCodePoint(((7&e[i])<<18)+((63&e[i+1])<<12)+((63&e[i+2])<<6)+(63&e[i+3]))),i+=3):e[i]>=224&&e[i]<=239?(t.push(String.fromCodePoint(((15&e[i])<<12)+((63&e[i+1])<<6)+(63&e[i+2]))),i+=2):e[i]>=192&&e[i]<=223?(t.push(String.fromCodePoint(((31&e[i])<<6)+(63&e[i+1]))),i++):t.push(String.fromCodePoint(e[i]));return t.join("")}(c):c}var We={sm2:Re,sm3:function(e,t){if(e="string"==typeof e?function(e){const t=[];for(let i=0,n=e.length;i<n;i++){const n=e.codePointAt(i);if(n<=127)t.push(n);else if(n<=2047)t.push(192|n>>>6),t.push(128|63&n);else if(n<=55295||n>=57344&&n<=65535)t.push(224|n>>>12),t.push(128|n>>>6&63),t.push(128|63&n);else{if(!(n>=65536&&n<=1114111))throw t.push(n),new Error("input is not supported");i++,t.push(240|n>>>18&28),t.push(128|n>>>12&63),t.push(128|n>>>6&63),t.push(128|63&n)}}return t}(e):Array.prototype.slice.call(e),t){if("hmac"!==(t.mode||"hmac"))throw new Error("invalid mode");let i=t.key;if(!i)throw new Error("invalid key");return i="string"==typeof i?Pe(i):Array.prototype.slice.call(i),Fe(Ge(e,i))}return Fe(Oe(e))},sm4:{encrypt:(e,t,i)=>Xe(e,t,1,i),decrypt:(e,t,i)=>Xe(e,t,0,i)}}.sm2;var Je=["web_id","user_unique_id"],Ye=function(){function t(t){e(this,"name",void 0),e(this,"hook",void 0),e(this,"inited",void 0),e(this,"logger",void 0),e(this,"Types",void 0),e(this,"configManager",void 0),e(this,"appBridge",void 0),e(this,"eventManager",void 0),e(this,"tokenManager",void 0),e(this,"sessionManager",void 0),e(this,"disableAutoPageView",!1),e(this,"bridgeReport",!1),e(this,"staging",!1),e(this,"initConfig",void 0),e(this,"pluginInstances",[]),e(this,"sended",!1),e(this,"started",!1),e(this,"remotePlugin",void 0),e(this,"eventFilter",void 0),e(this,"destroy",!1),e(this,"adapters",{}),e(this,"sdkReady",!1),e(this,"debugger",void 0),e(this,"eventEncrypt",void 0),e(this,"env",void 0),e(this,"dynamicParamsFilter",void 0),e(this,"publicKey",void 0),e(this,"requestManager",void 0),this.name=t,this.hook=new i,this.logger=new C(t),this.remotePlugin=new Map,this.Types=T}t.usePlugin=function(e,i,n){if(i){for(var o=!1,r=0,s=t.plugins.length;r<s;r++){if(t.plugins[r].name===i){t.plugins[r].plugin=e,t.plugins[r].options=n||{},o=!0;break}}o||t.plugins.push({name:i,plugin:e,options:n})}else t.plugins.push({plugin:e})};var r=t.prototype;return r.init=function(e){var i,o=this;this.inited?console.log("init can be call only one time"):e&&n(e)?e.app_id&&("number"==typeof(i=e.app_id)&&!isNaN(i))?!e.app_key||function(e){return"string"==typeof e}(e.app_key)?(e.channel_domain||-1!==["cn","sg","va"].indexOf(e.channel)||(console.warn("channel must be `cn`, `sg`,`va` !!!"),e.channel="cn"),this.logger=new C(this.name,e.log),this.configManager=new M(this,e),this.appBridge=new x(e,this.configManager),this.bridgeReport=this.appBridge.bridgeInject(),this.debugger=new N(this,e),this.requestManager=new q(this,e),this.initConfig=e,this.env=e.channel_domain?"self":"public",this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行INIT",data:e,level:"info",time:Date.now()}),e.disable_auto_pv&&(this.disableAutoPageView=!0),this.bridgeReport?(this.inited=!0,this.emit(T.Init)):(e.enable_encryption&&"sm"===e.encryption_type&&this.initCrypto(),this.configManager.set({app_id:e.app_id}),this.eventManager=new R,this.tokenManager=new z,this.sessionManager=new P,Promise.all([new Promise(function(e){o.once(T.TokenComplete,function(){e(!0)})}),new Promise(function(e){o.once(T.Start,function(){e(!0)})})]).then(function(){try{t.plugins.reduce(function(e,t){var i=t.plugin,n=t.options,r=Object.assign(o.initConfig,n),s=new i;return s.apply(o,r),e.push(s),e},o.pluginInstances)}catch(e){console.log("load plugin error, "+e.message),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}o.sdkReady=!0,o.emit(T.Ready),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 初始化完成",time:Date.now(),level:"info",data:o.configManager.get("user")}),o.logger.info("appid: "+e.app_id+", userInfo:"+JSON.stringify(o.configManager.get("user"))),o.logger.info("appid: "+e.app_id+", sdk is ready, version is "+E+", you can report now !!!");try{(window.opener||window.parent).postMessage("[tea-sdk]ready","*")}catch(e){o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}o.pageView(),o.on(T.TokenChange,function(t){"webid"!==t.type&&"anonymous_id"!==t.type||o.pageView(),o.logger.info("appid: "+e.app_id+" token change, new userInfo:"+JSON.stringify(o.configManager.get("user"))),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 设置了用户信息",time:Date.now(),secType:"USER",level:"info",data:o.configManager.get("user")})}),o.on(T.TokenReset,function(){o.logger.info("appid: "+e.app_id+" token reset, new userInfo:"+JSON.stringify(o.configManager.get("user"))),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 重置了用户信息",time:Date.now(),secType:"USER",level:"info",data:o.configManager.get("user")})}),o.on(T.RouteChange,function(t){t.init||e.disable_route_report||o.pageView()})}),this.tokenManager.apply(this,e),this.eventManager.apply(this,e),this.sessionManager.apply(this,e),this.inited=!0,this.emit(T.Init))):console.warn("app_key param is error, must be string, please check!"):console.warn("app_id param is error, must be number, please check!"):console.warn("init params error,please check")},r.config=function(e){if(this.inited)if(e&&n(e))if(this.bridgeReport)this.appBridge.setConfig(e);else{e._staging_flag&&1===e._staging_flag&&(this.staging=!0),e.disable_auto_pv&&(this.disableAutoPageView=!0,delete e.disable_auto_pv);var t=Object.assign({},e);if(this.initConfig&&this.initConfig.configPersist){var i=this.configManager.getStore();i&&(t=Object.assign(i,e)),this.configManager.setStore(e)}var o=t;o.web_id,o.user_unique_id;var r=function(e,t){if(null==e)return{};var i={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;i[n]=e[n]}return i}(o,Je);t.hasOwnProperty("web_id")&&this.emit(T.ConfigWebId,t.web_id),t.hasOwnProperty("user_unique_id")&&this.emit(T.ConfigUuid,t.user_unique_id),this.configManager.set(r),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行CONFIG",level:"info",time:Date.now(),data:t})}else this.logger.warn("config params is error, please check");else this.logger.warn("config must be use after function init")},r.setDomain=function(e){this.configManager&&this.configManager.setDomain(e),this.emit(T.ConfigDomain)},r.getConfig=function(e){return this.configManager.get(e)},r.send=function(){this.start()},r.start=function(){this.inited&&!this.sended&&(this.sended=!0,this.emit(T.Start),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行START",level:"info",time:Date.now()}),this.bridgeReport&&(this.pageView(),this.emit(T.Ready)))},r.event=function(e,t){var i=this;try{if(this.initConfig&&this.initConfig.disable_track_event)return;var n=[];if(Array.isArray(e))e.forEach(function(e){var t=i.processEvent(e[0],e[1]||{});t&&n.push(t)});else{var o=this.processEvent(e,t);if(!o)return;n.push(o)}this.bridgeReport?n.forEach(function(e){var t=e.event,n=e.params;i.appBridge.onEventV3(t,JSON.stringify(n))}):n.length&&(this.emit(T.Event,n),this.emit(T.SessionResetTime))}catch(e){this.logger.warn("something error, please check"),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},r.beconEvent=function(e,t){if(!this.initConfig||!this.initConfig.disable_track_event)if(Array.isArray(e))console.warn("beconEvent not support batch report, please check");else{var i=[],n=this.processEvent(e,t||{});n&&(i.push(n),i.length&&(this.emit(T.BeconEvent,i),this.emit(T.SessionResetTime)))}},r.processEvent=function(e,t){void 0===t&&(t={});try{if(!e)return this.logger.warn("eventName is null, please check"),null;var i=e;/^event\./.test(e)&&(i=e.slice(6));var n,r=t;return"object"!=typeof r&&(r={}),r.profile?delete r.profile:r.event_index=o(),r.local_ms?(n=r.local_ms,delete r.local_ms):n=+new Date,{event:i,params:r,local_time_ms:n,is_bav:this.initConfig&&this.initConfig.autotrack?1:0}}catch(i){return this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:i.message}),{event:e,params:t}}},r.dynamicParams=function(e){this.dynamicParamsFilter=e},r.filterEvent=function(e){this.eventFilter=e},r.on=function(e,t){this.hook.on(e,t)},r.once=function(e,t){this.hook.once(e,t)},r.off=function(e,t){this.hook.off(e,t)},r.emit=function(e,t,i){this.hook.emit(e,t,i)},r.set=function(e){this.hook.set(e)},r.pageView=function(){this.disableAutoPageView||this.predefinePageView()},r.predefinePageView=function(e){if(void 0===e&&(e={}),this.inited){var t={title:document.title||location.pathname,url:location.href,url_path:location.pathname,time:Date.now(),referrer:window.document.referrer,$is_first_time:""+(this.configManager&&this.configManager.is_first_time||!1)},i=Object.assign({},t,e);this.event("predefine_pageview",i)}else console.warn("predefinePageView should call after init")},r.clearEventCache=function(){this.emit(T.CleanEvents)},r.setWebIDviaUnionID=function(e){if(e){var t=h(e);this.config({web_id:""+t,wechat_unionid:e}),this.emit(T.CustomWebId)}},r.setWebIDviaOpenID=function(e){if(e){var t=h(e);this.config({web_id:""+t,wechat_openid:e}),this.emit(T.CustomWebId)}},r.setAnonymousId=function(e){this.emit(T.AnonymousId,e)},r.setNativeAppId=function(e){this.bridgeReport&&this.appBridge.setNativeAppId(e)},r.enableTransPort=function(){this.configManager.setEnableClientTransport(!0)},r.disableTransPort=function(){this.configManager.setEnableClientTransport(!1)},r.resetStayDuration=function(e,t,i){void 0===e&&(e=""),void 0===t&&(t=""),void 0===i&&(i=""),this.emit(T.ResetStay,{url_path:e,title:t,url:i},T.Stay)},r.resetStayParams=function(e,t,i){void 0===e&&(e=""),void 0===t&&(t=""),void 0===i&&(i=""),this.emit(T.SetStay,{url_path:e,title:t,url:i},T.Stay)},r.getToken=function(e,t){var i=this;if(this.inited){var n=!1,o=function(t){if(!n){n=!0;var o=i.configManager.get().user;return t&&(o.tobid=t,o["diss".split("").reverse().join("")]=t),e(Object.assign({},o))}},r=function(){i.tokenManager.getTobId().then(function(e){o(e)})};this.sdkReady?r():(t&&setTimeout(function(){o()},t),this.on(T.Ready,function(){r()}))}else this.logger.warn("getToken must be use after function init")},r.startTrackEvent=function(e){e&&this.emit(T.TrackDurationStart,e,T.TrackDuration)},r.endTrackEvent=function(e,t){void 0===t&&(t={}),e&&this.emit(T.TrackDurationEnd,{eventName:e,params:t},T.TrackDuration)},r.pauseTrackEvent=function(e){e&&this.emit(T.TrackDurationPause,e,T.TrackDuration)},r.resumeTrackEvent=function(e){e&&this.emit(T.TrackDurationResume,e,T.TrackDuration)},r.profileSet=function(e){this.bridgeReport?this.appBridge.profileSet(JSON.stringify(e)):this.emit(T.ProfileSet,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileSet",level:"info",time:Date.now(),data:e})},r.profileSetOnce=function(e){this.bridgeReport?this.appBridge.profileSetOnce(JSON.stringify(e)):this.emit(T.ProfileSetOnce,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileSetOnce",level:"info",time:Date.now(),data:e})},r.profileIncrement=function(e){this.bridgeReport?this.appBridge.profileIncrement(JSON.stringify(e)):this.emit(T.ProfileIncrement,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileIncrement",level:"info",time:Date.now(),data:e})},r.profileUnset=function(e){this.bridgeReport?this.appBridge.profileUnset(e):this.emit(T.ProfileUnset,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileUnset",level:"info",time:Date.now(),data:e})},r.profileAppend=function(e){this.bridgeReport?this.appBridge.profileAppend(JSON.stringify(e)):this.emit(T.ProfileAppend,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileAppend",level:"info",time:Date.now(),data:e})},r.setExternalAbVersion=function(e){this.bridgeReport?this.appBridge.setExternalAbVersion(e):this.emit(T.AbExternalVersion,"string"==typeof e&&e?(""+e).trim():null,T.Ab)},r.getVar=function(e,t,i){this.bridgeReport?this.appBridge.getVar(e,t,i):this.emit(T.AbVar,{name:e,defaultValue:t,callback:i},T.Ab)},r.getAllVars=function(e){this.bridgeReport?this.appBridge.getAllVars(e):this.emit(T.AbAllVars,e,T.Ab)},r.getABconfig=function(e,t){this.emit(T.AbConfig,{params:e,callback:t},T.Ab)},r.getAbSdkVersion=function(e){if(!this.bridgeReport||!e)return this.configManager.getAbVersion()||"";this.appBridge.getAbSdkVersion(e)},r.onAbSdkVersionChange=function(e){var t=this;return this.emit(T.AbVersionChangeOn,e,T.Ab),function(){t.emit(T.AbVersionChangeOff,e,T.Ab)}},r.offAbSdkVersionChange=function(e){this.emit(T.AbVersionChangeOff,e,T.Ab)},r.openOverlayer=function(){this.emit(T.AbOpenLayer,"",T.Ab)},r.closeOverlayer=function(){this.emit(T.AbCloseLayer,"",T.Ab)},r.initCrypto=function(){this.publicKey=this.initConfig.crypto_publicKey||"04BA9E229380DC0E41E10839B0C52A4763D3EDFE8903F3B8E81395523381E03AA995D295BD4A4088792E4785B224F7837EB4D2C7C05973C7AE8687A35ACAE470A0",this.initConfig.encryption_header=this.initConfig.encryption_header||"gm_sm2"},r.cryptoData=function(e){try{if(!this.initConfig.enable_encryption)return e;var t;if("sm"===this.initConfig.encryption_type){var i=(r=JSON.stringify(e),s=this.publicKey,void 0===(a=1)&&(a=1),"04"+We.doEncrypt(r,s,a)),n=u(i);t=new Uint8Array(n)}else t="data="+(o=JSON.stringify(e),window.btoa?window.btoa(encodeURIComponent(o)):encodeURIComponent(o));return t}catch(t){return e}var o,r,s,a},r.destoryInstance=function(){this.destroyInstance()},r.destoryInstace=function(){this.destroyInstance()},r.destroyInstance=function(){this.destroy||(this.destroy=!0,this.off(T.TokenComplete))},t}();e(Ye,"plugins",[]);var $e=function(){function t(){e(this,"collect",void 0),e(this,"config",void 0),e(this,"cache",void 0),e(this,"duration",void 0),e(this,"reportUrl",void 0),e(this,"eventCheck",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.duration=6e4,this.reportUrl=e.configManager.getDomain()+"/profile/list",this.eventCheck=new w(e,t),this.cache={},this.collect.on(T.ProfileSet,function(e){i.setProfile(e)}),this.collect.on(T.ProfileSetOnce,function(e){i.setOnceProfile(e)}),this.collect.on(T.ProfileUnset,function(e){i.unsetProfile(e)}),this.collect.on(T.ProfileIncrement,function(e){i.incrementProfile(e)}),this.collect.on(T.ProfileAppend,function(e){i.appendProfile(e)}),this.collect.on(T.ProfileClear,function(){i.cache={}}),this.ready(T.Profile)},i.ready=function(e){var t=this;if(this.collect.set(e),this.collect.hook._hooksCache.hasOwnProperty(e)){var i=this.collect.hook._hooksCache[e];if(!Object.keys(i).length)return;var n=function(e){i[e].length&&i[e].forEach(function(i){t.collect.hook.emit(e,i)})};for(var o in i)n(o)}},i.report=function(e,t){var i=this;void 0===t&&(t={});try{if(this.config.disable_track_event)return;var n=[];n.push(this.collect.processEvent(e,t));var o=this.collect.eventManager.merge(n,!0),r=this.collect.cryptoData(o);this.collect.configManager.getUrl("profile");this.collect.requestManager.useRequest({url:this.reportUrl,data:r,timeout:1e5,encryption:this.config.enable_encryption,encryption_header:this.config.encryption_header,zip:!0,success:function(e,t,n,o,r){e&&0!==e.e?i.collect.emit(T.SubmitError,{type:"f_data",eventData:t,errorCode:e.e,response:e,startTime:o,endTime:Date.now(),status:r}):i.collect.emit(T.SubmitSuccess,{eventData:t,res:e,response:e,startTime:o,endTime:Date.now(),status:r})},fail:function(e,t,n){i.collect.emit(T.SubmitError,{type:"f_net",eventData:e,errorCode:t,startTime:n,endTime:Date.now()})}}),this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报成功",time:Date.now(),data:o,code:200,status:"success"})}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.setProfile=function(e){var t=this.formatParams(e);t&&Object.keys(t).length&&(this.pushCache(t),this.report("__profile_set",Object.assign({},t,{profile:!0})))},i.setOnceProfile=function(e){var t=this.formatParams(e,!0);t&&Object.keys(t).length&&(this.pushCache(t),this.report("__profile_set_once",Object.assign({},t,{profile:!0})))},i.incrementProfile=function(e){e?this.report("__profile_increment",Object.assign({},e,{profile:!0})):console.warn("please check the params, must be object!!!")},i.unsetProfile=function(e){if(e){var t={};t[e]="1",this.report("__profile_unset",Object.assign({},t,{profile:!0}))}else console.warn("please check the key, must be string!!!")},i.appendProfile=function(e){if(e){var t={};for(var i in e)"string"==typeof e[i]||"Array"===Object.prototype.toString.call(e[i]).slice(8,-1)?t[i]=e[i]:console.warn("please check the value of param: "+i+", must be string or array !!!");Object.keys(t).length&&this.report("__profile_append",Object.assign({},t,{profile:!0}))}else console.warn("please check the params, must be object!!!")},i.pushCache=function(e){var t=this;Object.keys(e).forEach(function(i){t.cache[i]={val:t.clone(e[i]),timestamp:Date.now()}})},i.formatParams=function(e,t){var i=this;void 0===t&&(t=!1);try{if(!e||"[object Object]"!==Object.prototype.toString.call(e))return void console.warn("please check the params type, must be object !!!");var n={};for(var o in e)"string"==typeof e[o]||"number"==typeof e[o]||"Array"===Object.prototype.toString.call(e[o]).slice(8,-1)?n[o]=e[o]:console.warn("please check the value of params:"+o+", must be string,number,Array !!!");var r=Object.keys(n);if(!r.length)return;var s=Date.now();return r.filter(function(n){var o=i.cache[n];return t?!o:!(o&&i.compare(o.val,e[n])&&s-o.timestamp<i.duration)}).reduce(function(e,t){return e[t]=n[t],e},{})}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message}),console.log("error")}},i.compare=function(e,t){try{return JSON.stringify(e)===JSON.stringify(t)}catch(e){return this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message}),!1}},i.clone=function(e){try{return JSON.parse(JSON.stringify(e))}catch(t){return this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:t.message}),e}},i.unReady=function(){console.warn("sdk is not ready, please use this api after start")},t}(),Ze=function(){function t(){var t=this;e(this,"sessionInterval",void 0),e(this,"isSessionhasEvent",void 0),e(this,"startTime",void 0),e(this,"lastTime",void 0),e(this,"collect",void 0),e(this,"clearIntervalFunc",void 0),e(this,"setInterval",function(){t.clearIntervalFunc=function(e,t){void 0===e&&(e=function(){}),void 0===t&&(t=1e3);var i,n=Date.now()+t;return i=window.setTimeout(function o(){var r=Date.now()-n;e(),n+=t,i=window.setTimeout(o,Math.max(0,t-r))},t),function(){window.clearTimeout(i)}}(function(){t.isSessionhasEvent&&t.endCurrentSession()},t.sessionInterval)}),e(this,"clearInterval",function(){t.clearIntervalFunc&&t.clearIntervalFunc()})}var i=t.prototype;return i.apply=function(e,t){var i=this;if(this.collect=e,!t.disable_heartbeat){this.sessionInterval=6e4,this.startTime=0,this.lastTime=0,this.setInterval();var n=this.collect.Types;this.collect.on(n.SessionReset,function(){i.process()})}},i.endCurrentSession=function(){this.collect.event("_be_active",{start_time:this.startTime,end_time:this.lastTime,url:window.location.href,referrer:window.document.referrer,title:document.title||location.pathname}),this.isSessionhasEvent=!1,this.startTime=0},i.process=function(){this.isSessionhasEvent||(this.isSessionhasEvent=!0,this.startTime=+new Date);var e=this.lastTime||+new Date;this.lastTime=+new Date,this.lastTime-e>this.sessionInterval&&(this.clearInterval(),this.endCurrentSession(),this.setInterval())},t}(),Qe=500,et=5005;var tt=function(){function t(){e(this,"collector",void 0),e(this,"config",void 0),e(this,"eventStorage",void 0),e(this,"domain",void 0),e(this,"verifyReady",!1),e(this,"cleanStatus",!1),e(this,"key",void 0),e(this,"heart",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collector=e,this.config=t,this.eventStorage=[],this.collector.on("submit-verify-h5",function(e){e&&e.length&&i.eventStore(e[0])}),this.checkUrl(),this.heartbeat()},i.checkUrl=function(){var e=window.location.href,t=c(e);t._r_d_&&t._r_c_k_?(this.verifyReady=!0,this.domain=t._r_d_,this.key=t._r_c_k_,this.checkCache()):this.collector.off("submit-verify-h5")},i.checkCache=function(){this.eventStorage.length&&this.postVerify(this.eventStorage)},i.heartbeat=function(){var e=this;this.heart=setInterval(function(){var t={event:"simulator_test__",local_time_ms:Date.now()},i=e.collector.configManager.get(),n=i.header,o={events:[t],user:i.user,header:n};e.eventStore(o)},6e4)},i.eventStore=function(e){this.cleanStatus||(this.verifyReady?this.postVerify(e):this.eventStorage.push(e))},i.cleanVerify=function(){this.cleanStatus=!0,this.eventStorage=[],clearInterval(this.heart)},i.postVerify=function(e){var t,i=this;try{var n=JSON.parse(JSON.stringify(e));t=e,Array.isArray(t)?n.forEach(function(e){i.fetchLog(e)}):this.fetchLog(n)}catch(e){console.log("web verify post error ~")}},i.fetchLog=function(e){!function(e,t,i,n,o,r,s,a,c,h){try{var u=new XMLHttpRequest,l=a||"POST";u.open(l,""+e,!0),c&&h?u.setRequestHeader("Content-Type","application/octet-stream;tt-data="+h):u.setRequestHeader("Content-Type","application/json; charset=utf-8"),s&&u.setRequestHeader("X-MCS-AppKey",""+s),n&&(u.withCredentials=!0),i&&(u.timeout=i,u.ontimeout=function(){r&&r(t,et)}),u.onload=function(){if(o){var e=null;if(u.responseText){try{e=JSON.parse(u.responseText)}catch(t){e={}}o(e,t)}}},u.onerror=function(){u.abort(),r&&r(t,Qe)},c?u.send(t):u.send(JSON.stringify(t))}catch(e){}}(this.domain+"/simulator/h5/log?connection_key="+this.key,e,2e4,!1)},i.leave=function(){var e=this;document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&&e.cleanVerify()}),s(function(){e.cleanVerify()})},t}();Ye.usePlugin(tt,"verifyH"),Ye.usePlugin($e,"profile"),Ye.usePlugin(Ze,"heartbeat");var it=new Ye("default"),nt=Ye;exports.Collector=nt,exports.default=it;
|
|
1
|
+
"use strict";function e(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var n=i.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}Object.defineProperty(exports,"__esModule",{value:!0});var t,i=function(){function t(){e(this,"_hooks",void 0),e(this,"_cache",void 0),e(this,"_hooksCache",void 0),this._hooks={},this._cache=[],this._hooksCache={}}var i=t.prototype;return i.on=function(e,t){e&&t&&"function"==typeof t&&(this._hooks[e]||(this._hooks[e]=[]),this._hooks[e].push(t))},i.once=function(e,t){var i=this;if(e&&t&&"function"==typeof t){var n=function(o){t(o),i.off(e,n)};this.on(e,n)}},i.off=function(e,t){if(e&&this._hooks[e]&&this._hooks[e].length)if(t){var i=this._hooks[e].indexOf(t);-1!==i&&this._hooks[e].splice(i,1)}else this._hooks[e]=[]},i.emit=function(e,t,i){if(i){if(!e)return;-1!==this._cache.indexOf(i)?this._emit(e,t):(this._hooksCache.hasOwnProperty(i)||(this._hooksCache[i]={}),this._hooksCache[i].hasOwnProperty(e)||(this._hooksCache[i][e]=[]),this._hooksCache[i][e].push(t))}else this._emit(e,t)},i._emit=function(e,t){e&&this._hooks[e]&&this._hooks[e].length&&[].concat(this._hooks[e]).forEach(function(e){try{e(t)}catch(e){}})},i.set=function(e){e&&-1===this._cache.indexOf(e)&&this._cache.push(e)},t}(),n=function(e){return null!=e&&"[object Object]"==Object.prototype.toString.call(e)},o=(t=+Date.now()+Number((""+Math.random()).slice(2,8)),function(){return t+=1}),r=function(e){return function(e,t,i){if("string"==typeof e&&"number"==typeof t&&"number"==typeof i){var n,o=[];i=i<=25?i:i%25;var r=String.fromCharCode(i+97);n=e.split(r);for(var s=0;s<n.length;s++){var a=parseInt(n[s],i);a=1*a^t;var c=String.fromCharCode(a);o.push(c)}return o.join("")}}(e,64,25)},s=function(e){!!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)?window.addEventListener("pagehide",e,!1):window.addEventListener("beforeunload",e,!1)},a=function(e){var t=document.createElement("a");return t.href=e,t},c=function(e){var t={};try{var i=a(e).search;(i=i.slice(1)).split("&").forEach(function(e){var i,n,o=e.split("=");o.length&&(i=o[0],n=o[1]);try{t[i]=decodeURIComponent(void 0===n?"":n)}catch(e){t[i]=n}})}catch(e){}return t},h=function(e){for(var t=0,i=0,n=(e+="").length,o=0;o<n;o++)((t=31*t+e.charCodeAt(i++))>0x7fffffffffff||t<-0x800000000000)&&(t&=0xffffffffffff);return t<0&&(t+=0x7ffffffffffff),t};var u=function(e){var t,i,n=[],o=e.length;o%2!=0&&(i=o+1,e=(t=e).length>=i?t:new Array(i-t.length+1).join("0")+t),o=e.length;for(var r=0;r<o;r+=2)n.push(parseInt(e.substr(r,2),16));return n},l=function(){var e=window.navigator.appName,t=window.navigator.userAgent;return-1!==e.indexOf("Microsoft Internet Explorer")&&(-1!==t.indexOf("MSIE 8.0")||-1!==t.indexOf("MSIE 7.0")||-1!==t.indexOf("MSIE 9.0"))},f="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function d(e,t){return e(t={exports:{}},t.exports),t.exports}var p=d(function(e,t){var i;i=function(){function e(){for(var e=0,t={};e<arguments.length;e++){var i=arguments[e];for(var n in i)t[n]=i[n]}return t}function t(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function i(n){function o(){}function r(t,i,r){if("undefined"!=typeof document){"number"==typeof(r=e({path:"/"},o.defaults,r)).expires&&(r.expires=new Date(1*new Date+864e5*r.expires)),r.expires=r.expires?r.expires.toUTCString():"";try{var s=JSON.stringify(i);/^[\{\[]/.test(s)&&(i=s)}catch(e){}i=n.write?n.write(i,t):encodeURIComponent(String(i)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),t=encodeURIComponent(String(t)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var a="";for(var c in r)r[c]&&(a+="; "+c,!0!==r[c]&&(a+="="+r[c].split(";")[0]));return document.cookie=t+"="+i+a}}function s(e,i){if("undefined"!=typeof document){for(var o={},r=document.cookie?document.cookie.split("; "):[],s=0;s<r.length;s++){var a=r[s].split("="),c=a.slice(1).join("=");i||'"'!==c.charAt(0)||(c=c.slice(1,-1));try{var h=t(a[0]);if(c=(n.read||n)(c,h)||t(c),i)try{c=JSON.parse(c)}catch(e){}if(o[h]=c,e===h)break}catch(e){}}return e?o[e]:o}}return o.set=r,o.get=function(e){return s(e,!1)},o.getJSON=function(e){return s(e,!0)},o.remove=function(t,i){r(t,"",e(i,{expires:-1}))},o.defaults={},o.withConverter=i,o}(function(){})},e.exports=i()}),g=function(){function t(){e(this,"cache",void 0),this.cache={}}var i=t.prototype;return i.setItem=function(e,t){this.cache[e]=t},i.getItem=function(e){return this.cache[e]},i.removeItem=function(e){this.cache[e]=void 0},t}(),m=function(){function t(){e(this,"support",void 0),this.support=this.isSupportLS()}var i=t.prototype;return i.isSupportLS=function(){try{return localStorage.setItem("_applogtest-test-key","hi"),localStorage.getItem("_applogtest-test-key"),localStorage.removeItem("_applogtest-test-key"),!0}catch(e){return!1}},i.getItem=function(e){try{var t=localStorage.getItem(e),i=t;try{t&&"string"==typeof t&&(i=JSON.parse(t))}catch(e){}return i||{}}catch(e){}return{}},i.setItem=function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);localStorage.setItem(e,i)}catch(e){}},i.removeItem=function(e){try{localStorage.removeItem(e)}catch(e){}},t}(),v=function(){function t(){e(this,"support",void 0),this.support=this.isSupportSession()}var i=t.prototype;return i.isSupportSession=function(){try{return sessionStorage.setItem("_applogtest-test-key","hi"),sessionStorage.getItem("_applogtest-test-key"),sessionStorage.removeItem("_applogtest-test-key"),!0}catch(e){return!1}},i.getItem=function(e){try{var t=sessionStorage.getItem(e),i=t;try{t&&"string"==typeof t&&(i=JSON.parse(t))}catch(e){}return i||{}}catch(e){}return{}},i.setItem=function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);sessionStorage.setItem(e,i)}catch(e){}},i.removeItem=function(e){try{sessionStorage.removeItem(e)}catch(e){}},t}(),y=function(){function t(){e(this,"local",void 0),e(this,"session",void 0),e(this,"cache",void 0),e(this,"defaultExpireTime",void 0),this.defaultExpireTime=6048e5,this.local=new m,this.session=new v,this.cache=new g}var i=t.prototype;return i.getLocalItem=function(e){return this.local.getItem(e)},i.setLocalItem=function(e,t){this.local.setItem(e,t)},i.removeLocalItem=function(e){this.local.removeItem(e)},i.getSessionItem=function(e){return this.session.getItem(e)},i.setSessionItem=function(e,t){this.session.setItem(e,t)},i.removeSessionItem=function(e){this.session.removeItem(e)},i.getCacheItem=function(e){return this.cache.getItem(e)},i.setCacheItem=function(e,t){this.cache.setItem(e,t)},i.removeCacheItem=function(e){this.cache.removeItem(e)},i.getCookie=function(e,t){try{return p.get(e)}catch(e){return""}},i.setCookie=function(e,t,i,n){void 0===i&&(i=this.defaultExpireTime);try{var o=n||document.domain,r=+new Date+i;p.set(e,t,{expires:new Date(r),path:"/",domain:o})}catch(e){}},i.removeCookie=function(e,t){try{p.remove(e,{path:"/",domain:t||""})}catch(e){}},t}(),_=function(){function t(t,i,n){e(this,"appid",void 0),e(this,"domain",void 0),e(this,"userAgent",void 0),e(this,"appVersion",void 0),e(this,"utm",void 0),e(this,"cookie_expire",void 0),this.appid=t,this.domain=i,this.userAgent=window.navigator.userAgent,this.appVersion=window.navigator.appVersion,this.cookie_expire=n}var i=t.prototype;return i.init=function(){var e=window.navigator.userAgent,t=window.navigator.language,i=document.referrer,n=i?a(i).hostname:"",o=c(window.location.href),r=/Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion)?"wap":"web";this.utm=function(e,t,i,n){var o=new y,r=e?"_tea_utm_cache_"+e:"_tea_utm_cache",s=e?"_$utm_from_url_"+e:"_$utm_from_url",a={},c=["tr_shareuser","tr_admaster","tr_param1","tr_param2","tr_param3","tr_param4","$utm_from_url"],h={ad_id:Number(t.ad_id)||void 0,campaign_id:Number(t.campaign_id)||void 0,creative_id:Number(t.creative_id)||void 0,utm_source:t.utm_source,utm_medium:t.utm_medium,utm_campaign:t.utm_campaign,utm_term:t.utm_term,utm_content:t.utm_content,tr_shareuser:t.tr_shareuser,tr_admaster:t.tr_admaster,tr_param1:t.tr_param1,tr_param2:t.tr_param2,tr_param3:t.tr_param3,tr_param4:t.tr_param4};try{var u=!1;for(var l in h)h[l]&&(-1!==c.indexOf(l)?(a.hasOwnProperty("tracer_data")||(a.tracer_data={}),a.tracer_data[l]=h[l]):a[l]=h[l],u=!0);if(u)o.setSessionItem(s,"1"),o.setCookie(r,JSON.stringify(a),n,i);else{var f=o.getCookie(r,i);f&&(a=JSON.parse(f))}o.getSessionItem(s)&&(a.hasOwnProperty("tracer_data")||(a.tracer_data={}),a.tracer_data.$utm_from_url=1)}catch(e){return h}return a}(this.appid,o,this.domain,this.cookie_expire);var s=this.browser(),h=this.os();return{browser:s.browser,browser_version:s.browser_version,platform:r,os_name:h.os_name,os_version:h.os_version,userAgent:e,screen_width:window.screen&&window.screen.width,screen_height:window.screen&&window.screen.height,device_model:this.getDeviceModel(h.os_name),language:t,referrer:i,referrer_host:n,utm:this.utm,latest_data:this.last(i,n)}},i.last=function(e,t){var i="",n="",o="",r=location.hostname,s=!1;if(e&&t&&r!==t){i=e,n=t,s=!0;var a=c(e);a.keyword&&(o=a.keyword)}return{$latest_referrer:i,$latest_referrer_host:n,$latest_search_keyword:o,isLast:s}},i.browser=function(){var e,t,i="",n=""+parseFloat(this.appVersion),o=this.userAgent;return-1!==o.indexOf("Edge")||-1!==o.indexOf("Edg")?(i="Microsoft Edge",-1!==o.indexOf("Edge")?(e=o.indexOf("Edge"),n=o.substring(e+5)):(e=o.indexOf("Edg"),n=o.substring(e+4))):-1!==(e=o.indexOf("MSIE"))?(i="Microsoft Internet Explorer",n=o.substring(e+5)):-1!==(e=o.indexOf("Lark"))?(i="Lark",n=o.substring(e+5,e+11)):-1!==(e=o.indexOf("MetaSr"))?(i="sougoubrowser",n=o.substring(e+7,e+10)):-1!==o.indexOf("MQQBrowser")||-1!==o.indexOf("QQBrowser")?(i="qqbrowser",-1!==o.indexOf("MQQBrowser")?(e=o.indexOf("MQQBrowser"),n=o.substring(e+11,e+15)):-1!==o.indexOf("QQBrowser")&&(e=o.indexOf("QQBrowser"),n=o.substring(e+10,e+17))):-1!==o.indexOf("Chrome")?-1!==(e=o.indexOf("MicroMessenger"))?(i="weixin",n=o.substring(e+15,e+20)):-1!==(e=o.indexOf("360"))?(i="360browser",n=o.substring(o.indexOf("Chrome")+7)):-1!==o.indexOf("baidubrowser")||-1!==o.indexOf("BIDUBrowser")?(-1!==o.indexOf("baidubrowser")?(e=o.indexOf("baidubrowser"),n=o.substring(e+13,e+16)):-1!==o.indexOf("BIDUBrowser")&&(e=o.indexOf("BIDUBrowser"),n=o.substring(e+12,e+15)),i="baidubrowser"):-1!==(e=o.indexOf("xiaomi"))?-1!==o.indexOf("openlanguagexiaomi")?(i="openlanguage xiaomi",n=o.substring(e+7,e+13)):(i="xiaomi",n=o.substring(e-7,e-1)):-1!==(e=o.indexOf("TTWebView"))?(i="TTWebView",n=o.substring(e+10,e+23)):(-1!==(e=o.indexOf("Chrome"))||-1!==(e=o.indexOf("Chrome")))&&(i="Chrome",n=o.substring(e+7)):-1!==o.indexOf("Safari")?-1!==(e=o.indexOf("QQ"))?(i="qqbrowser",n=o.substring(e+10,e+16)):-1!==(e=o.indexOf("Safari"))&&(i="Safari",n=o.substring(e+7),-1!==(e=o.indexOf("Version"))&&(n=o.substring(e+8))):-1!==(e=o.indexOf("Firefox"))?(i="Firefox",n=o.substring(e+8)):-1!==(e=o.indexOf("MicroMessenger"))?(i="weixin",n=o.substring(e+15,e+20)):-1!==(e=o.indexOf("QQ"))?(i="qqbrowser",n=o.substring(e+3,e+8)):-1!==(e=o.indexOf("Opera"))&&(i="Opera",n=o.substring(e+6),-1!==(e=o.indexOf("Version"))&&(n=o.substring(e+8))),-1!==(t=n.indexOf(";"))&&(n=n.substring(0,t)),-1!==(t=n.indexOf(" "))&&(n=n.substring(0,t)),-1!==(t=n.indexOf(")"))&&(n=n.substring(0,t)),{browser:i,browser_version:n}},i.os=function(){for(var e="",t="",i=[{s:"Windows 10",r:/(Windows 10.0|Windows NT 10.0|Windows NT 10.1)/},{s:"Windows 8.1",r:/(Windows 8.1|Windows NT 6.3)/},{s:"Windows 8",r:/(Windows 8|Windows NT 6.2)/},{s:"Windows 7",r:/(Windows 7|Windows NT 6.1)/},{s:"Android",r:/Android/},{s:"Sun OS",r:/SunOS/},{s:"Linux",r:/(Linux|X11)/},{s:"iOS",r:/(iPhone|iPad|iPod)/},{s:"Mac OS X",r:/Mac OS X/},{s:"Mac OS",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/}],n=0;n<i.length;n++){var o=i[n];if(o.r.test(this.userAgent)){"Mac OS X"===(e=o.s)&&this.isNewIpad()&&(e="iOS");break}}var r=function(e,t){var i=e.exec(t);return i&&i[1]?i[1]:""},s=function(e,t){var i=RegExp("(?:^|[^A-Z0-9-_]|[^A-Z0-9-]_|sprd-)(?:"+e+")","i").exec(t);return i?i.slice(1)[0]:""};/Windows/.test(e)&&(t=r(/Windows (.*)/,e),e="windows");var a,c;switch(e){case"Mac OS X":t=s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?",this.userAgent),e="mac";break;case"Android":a=this.userAgent,(c=r(/Android ([\.\_\d]+)/,a))||(c=r(/Android\/([\.\_\d]+)/,a)),t=c,e="android";break;case"iOS":t=this.isNewIpad()?s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?",this.userAgent):(t=/OS (\d+)_(\d+)_?(\d+)?/.exec(this.appVersion))?t[1]+"."+t[2]+"."+(0|t[3]):"",e="ios"}return{os_name:e,os_version:t}},i.getDeviceModel=function(e){var t="";try{if("android"===e)navigator.userAgent.split(";").forEach(function(e){e.indexOf("Build/")>-1&&(t=e.slice(0,e.indexOf("Build/")))});else if("ios"===e||"mac"===e||"windows"===e)if(this.isNewIpad())t="iPad";else{var i=navigator.userAgent.replace("Mozilla/5.0 (",""),n=i.indexOf(";");t=i.slice(0,n)}}catch(e){return t.trim()}return t.trim()},i.isNewIpad=function(){return void 0!==this.userAgent&&"MacIntel"===navigator.platform&&"number"==typeof navigator.maxTouchPoints&&navigator.maxTouchPoints>1},t}(),b={cn:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az24z1mz1jz1az1cz18z1nz1nz1jz1mz1ez4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},E="0.1.6",S={cn:"1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},w=function(){function t(t,i){e(this,"regStr",void 0),e(this,"eventNameWhiteList",void 0),e(this,"paramsNameWhiteList",void 0),e(this,"collector",void 0),e(this,"config",void 0),this.collector=t,this.config=i,this.eventNameWhiteList=["__bav_page","__bav_beat","__bav_page_statistics","__bav_click","__bav_page_exposure","_be_active","$bav2b_slide"],this.paramsNameWhiteList=["$inactive","$inline","$target_uuid_list","$source_uuid","$is_spider","$source_id","$is_first_time","$user_unique_id_type","_staging_flag","$exposure_type","$direction","$offsetY","$offsetX"],this.regStr=new RegExp("^[a-zA-Z0-9][a-z0-9A-Z_.-]{1,255}$")}var i=t.prototype;return i.checkVerify=function(e){var t=this;if(!e||!e.length)return!1;var i=e[0];if(!i)return!1;var n=i.events,o=i.header;if(!n||!n.length)return!1;var r=!0;return n.forEach(function(e){t.checkEventName(e.event)||(r=!1,e.checkEvent="事件名不能以 $ or __开头"),t.checkEventParams(e.params)||(r=!1,e.checkParams="属性名不能以 $ or __开头")}),this.checkEventParams(o)||(r=!1),r},i.checkEventName=function(e){return!!e&&this.calculate(e,"event")},i.checkEventParams=function(e){var t=e;"string"==typeof e&&(t=JSON.parse(t));var i=!0;if(!Object.keys(t).length)return i;for(var n in t){if(!this.calculate(n,"params")){i=!1;break}if("string"==typeof t[n]&&t[n].length>1024){console.warn("params: "+n+" can not over 1024 byte, please check;"),i=!1;break}}return i},i.calculate=function(e,t){return-1!==("event"===t?this.eventNameWhiteList:"params"===t?this.paramsNameWhiteList:[]).indexOf(e)||(!new RegExp("^\\$").test(e)&&!new RegExp("^__").test(e)||(console.warn(t+" name: "+e+" can not start with $ or __, pleace check;"),!1))},t}(),T=function(e){return e.Init="init",e.Config="config",e.Start="start",e.Ready="ready",e.TokenComplete="token-complete",e.TokenStorage="token-storage",e.TokenFetch="token-fetch",e.TokenError="token-error",e.ConfigUuid="config-uuid",e.ConfigWebId="config-webid",e.ConfigDomain="config-domain",e.CustomWebId="custom-webid",e.AnonymousId="anonymous-id",e.TokenChange="token-change",e.TokenReset="token-reset",e.ConfigTransform="config-transform",e.EnvTransform="env-transform",e.SessionReset="session-reset",e.SessionResetTime="session-reset-time",e.Event="event",e.Events="events",e.EventNow="event-now",e.CleanEvents="clean-events",e.BeconEvent="becon-event",e.SubmitBefore="submit-before",e.SubmitScuess="submit-scuess",e.SubmitSuccess="submit-success",e.SubmitAfter="submit-after",e.SubmitError="submit-error",e.SubmitVerifyH="submit-verify-h5",e.Stay="stay",e.ResetStay="reset-stay",e.StayReady="stay-ready",e.SetStay="set-stay",e.RouteChange="route-change",e.RouteReady="route-ready",e.Ab="ab",e.AbVar="ab-var",e.AbAllVars="ab-all-vars",e.AbConfig="ab-config",e.AbExternalVersion="ab-external-version",e.AbVersionChangeOn="ab-version-change-on",e.AbVersionChangeOff="ab-version-change-off",e.AbOpenLayer="ab-open-layer",e.AbCloseLayer="ab-close-layer",e.AbReady="ab-ready",e.AbComplete="ab-complete",e.AbTimeout="ab-timeout",e.Profile="profile",e.ProfileSet="profile-set",e.ProfileSetOnce="profile-set-once",e.ProfileUnset="profile-unset",e.ProfileIncrement="profile-increment",e.ProfileAppend="profile-append",e.ProfileClear="profile-clear",e.TrackDuration="track-duration",e.TrackDurationStart="track-duration-start",e.TrackDurationEnd="track-duration-end",e.TrackDurationPause="track-duration-pause",e.TrackDurationResume="tracl-duration-resume",e.Autotrack="autotrack",e.AutotrackReady="autotrack-ready",e.CustomHeader="custom-request-header",e.TracerReady="tracer-ready",e}(T||{}),D=function(e){return e.DEBUGGER_MESSAGE="debugger-message",e.DEBUGGER_MESSAGE_SDK="debugger-message-sdk",e.DEBUGGER_MESSAGE_FETCH="debugger-message-fetch",e.DEBUGGER_MESSAGE_FETCH_RESULT="debugger-message-fetch-result",e.DEBUGGER_MESSAGE_EVENT="debugger-message-event",e.DEVTOOL_WEB_READY="devtool-web-ready",e}({}),k=void 0,A=(new Date).getTimezoneOffset(),I=parseInt(""+-A/60,10),B=60*A,M=function(){function t(t,i){e(this,"collect",void 0),e(this,"envInfo",void 0),e(this,"evtParams",void 0),e(this,"filter",void 0),e(this,"reportErrorCallback",void 0),e(this,"initConfig",void 0),e(this,"sessionStorage",void 0),e(this,"localStorage",void 0),e(this,"storage",void 0),e(this,"configKey",void 0),e(this,"domain",void 0),e(this,"ab_version",void 0),e(this,"ab_cache",void 0),e(this,"is_first_time",!0),e(this,"isLast",void 0),e(this,"configPersist",!1),e(this,"eventCheck",void 0),e(this,"enableClientTransport",!1),this.initConfig=i,this.collect=t;var n=new _(i.app_id,i.cookie_domain||"",i.cookie_expire||7776e6).init();this.eventCheck=new w(t,i);var o="__tea_cache_first_"+i.app_id;this.configKey="__tea_cache_config_"+i.app_id,this.storage=new y,i.configPersist&&(this.configPersist=!0,this.storage=1===i.configPersist?this.sessionStorage:this.localStorage);var r=this.storage.getLocalItem(o);r&&1==r?this.is_first_time=!1:(this.is_first_time=!0,this.storage.setLocalItem(o,"1")),this.envInfo={user:{user_unique_id:k,user_type:k,user_id:k,user_is_auth:k,user_is_login:k,device_id:k,web_id:k,ip_addr_id:k,user_unique_id_type:k,anonymous_id:k},header:{app_id:k,app_name:k,app_install_id:k,install_id:k,app_package:k,app_channel:k,app_version:k,ab_version:k,os_name:n.os_name,os_version:n.os_version,device_model:n.device_model,ab_client:k,traffic_type:k,client_ip:k,device_brand:k,os_api:k,access:k,language:n.language,region:k,app_language:k,app_region:k,creative_id:n.utm.creative_id,ad_id:n.utm.ad_id,campaign_id:n.utm.campaign_id,log_type:k,rnd:k,platform:n.platform,sdk_version:E,sdk_lib:"js",province:k,city:k,timezone:I,tz_offset:B,tz_name:k,sim_region:k,carrier:k,resolution:n.screen_width+"x"+n.screen_height,browser:n.browser,browser_version:n.browser_version,referrer:n.referrer,referrer_host:n.referrer_host,width:n.screen_width,height:n.screen_height,screen_width:n.screen_width,screen_height:n.screen_height,utm_term:n.utm.utm_term,utm_content:n.utm.utm_content,utm_source:n.utm.utm_source,utm_medium:n.utm.utm_medium,utm_campaign:n.utm.utm_campaign,tracer_data:JSON.stringify(n.utm.tracer_data),custom:{},wechat_unionid:k,wechat_openid:k}},this.ab_version="",this.evtParams={},this.reportErrorCallback=function(){},this.isLast=!1,this.setCustom(n),this.initDomain(),this.initABData(),this.setEnableClientTransport(!!this.initConfig.transport)}var i=t.prototype;return i.initDomain=function(){var e=this.initConfig.channel_domain;if(e)this.domain=e;else{var t=this.initConfig.channel;this.domain=r(b[t])}},i.setDomain=function(e){this.domain=e},i.getDomain=function(){return this.domain},i.initABData=function(){var e="__tea_sdk_ab_version_"+this.initConfig.app_id,t=null;if(this.initConfig.ab_cross){var i=this.storage.getCookie(e,this.initConfig.ab_cookie_domain);t=i?JSON.parse(i):null}else t=this.storage.getLocalItem(e);this.setAbCache(t)},i.setAbCache=function(e){this.ab_cache=e},i.getAbCache=function(){return this.ab_cache},i.clearAbCache=function(){this.ab_cache={},this.ab_version=""},i.setAbVersion=function(e){this.ab_version=e},i.getAbVersion=function(){return this.ab_version},i.setEnableClientTransport=function(e){this.enableClientTransport=e},i.getEnableClientTransport=function(){return this.enableClientTransport},i.getUrl=function(e){var t="";switch(e){case"event":t="/list";break;case"webid":t="/webid";break;case"tobid":t="/tobid";break;case"profile":t="/profile/list"}var i="";return this.initConfig.caller&&(i="?sdk_version=0.1.6&sdk_name=web&app_id="+this.initConfig.app_id+"&caller="+this.initConfig.caller),this.initConfig.enable_encryption&&"event"===e&&"sm"!==this.initConfig.encryption_type&&(i=this.initConfig.caller?i+"&encryption=1":i+"?encryption=1"),this.initConfig.report_url?""+this.initConfig.report_url+i:""+this.getDomain()+t+i},i.setCustom=function(e){if(e&&e.latest_data&&e.latest_data.isLast)for(var t in delete e.latest_data.isLast,this.isLast=!0,e.latest_data)this.envInfo.header.custom[t]=e.latest_data[t]},i.set=function(e){var t=this;Object.keys(e).forEach(function(i){void 0!==e[i]&&null!==e[i]||t.delete(i);try{t.eventCheck.calculate(i,"config")}catch(e){}if("traffic_type"===i&&t.isLast&&(t.envInfo.header.custom.$latest_traffic_source_type=e[i]),"evtParams"===i)t.evtParams=Object.assign({},t.evtParams||{},e.evtParams||{});else if("_staging_flag"===i)t.evtParams=Object.assign({},t.evtParams||{},{_staging_flag:e._staging_flag});else if("reportErrorCallback"===i&&"function"==typeof e[i])t.reportErrorCallback=e[i];else{var n="",o="";if(i.indexOf(".")>-1){var r=i.split(".");n=r[0],o=r[1]}n?"user"===n||"header"===n?t.envInfo[n][o]=e[i]:t.envInfo.header.custom[o]=e[i]:Object.hasOwnProperty.call(t.envInfo.user,i)?["user_type","ip_addr_id"].indexOf(i)>-1?t.envInfo.user[i]=e[i]?Number(e[i]):e[i]:["user_id","web_id","user_unique_id","user_unique_id_type","anonymous_id"].indexOf(i)>-1?t.envInfo.user[i]=e[i]?String(e[i]):e[i]:["user_is_auth","user_is_login"].indexOf(i)>-1?t.envInfo.user[i]=Boolean(e[i]):"device_id"===i&&(t.envInfo.user[i]=e[i]):Object.hasOwnProperty.call(t.envInfo.header,i)?t.envInfo.header[i]=e[i]:t.envInfo.header.custom[i]=e[i]}})},i.get=function(e){try{return e?"evtParams"===e?this.evtParams:"reportErrorCallback"===e?this[e]:Object.hasOwnProperty.call(this.envInfo.user,e)?this.envInfo.user[e]:Object.hasOwnProperty.call(this.envInfo.header,e)?this.envInfo.header[e]:JSON.parse(JSON.stringify(this.envInfo[e])):JSON.parse(JSON.stringify(this.envInfo))}catch(e){console.log("get config stringify error "),this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.getItem=function(e){return this.initConfig&&1===this.initConfig.configPersist?this.storage.getSessionItem(e):this.storage.getLocalItem(e)},i.setItem=function(e,t){this.initConfig&&1===this.initConfig.configPersist?this.storage.setSessionItem(e,t):this.storage.setLocalItem(e,t)},i.setStore=function(e){try{if(!this.configPersist)return;var t=this.getItem(this.configKey)||{};if(t&&Object.keys(e).length){var i=Object.assign(e,t);this.setItem(this.configKey,i)}}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.getStore=function(){try{if(!this.configPersist)return null;var e=this.getItem(this.configKey)||{};return e&&Object.keys(e).length?e:null}catch(e){return this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message}),null}},i.delete=function(e){try{if(!this.configPersist)return;var t=this.getItem(this.configKey)||{};t&&Object.hasOwnProperty.call(t,e)&&(delete t[e],this.setItem(this.configKey,t))}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},t}(),C=function(){function t(t,i){e(this,"isLog",void 0),e(this,"name",void 0),this.isLog=i||!1,this.name=t||""}var i=t.prototype;return i.info=function(e){this.isLog&&console.log("%c %s","color: yellow; background-color: black;","[instance: "+this.name+"] "+e)},i.warn=function(e){this.isLog&&console.warn("%c %s","color: yellow; background-color: black;","[instance: "+this.name+"] "+e)},i.error=function(e){this.isLog&&console.error("[instance: "+this.name+"] "+e)},i.throw=function(e){throw this.error(this.name),new Error(e)},t}(),x=function(){function e(e,t){this.native=e.enable_native||e["evitaN".split("").reverse().join("")],this.os=t.get("os_name")}var t=e.prototype;return t.bridgeInject=function(){try{return!!this.native&&(AppLogBridge?(console.log("AppLogBridge is injected"),!0):(console.log("AppLogBridge is not inject"),!1))}catch(e){return console.log("AppLogBridge is not inject"),!1}},t.bridgeReady=function(){var e=this;return new Promise(function(t,i){try{e.bridgeInject()?AppLogBridge.hasStarted(function(e){console.log("AppLogBridge is started? : "+e),e?t(!0):i(!1)}):i(!1)}catch(e){console.log("AppLogBridge, error:"+JSON.stringify(e.stack)),i(!1)}})},t.setNativeAppId=function(e){try{AppLogBridge.setNativeAppId(JSON.stringify(e)),console.log("change bridge appid, event report with appid: "+e)}catch(e){console.error("setNativeAppId error")}},t.setConfig=function(e){var t=this;try{Object.keys(e).forEach(function(i){"user_unique_id"===i?t.setUserUniqueId(e[i]):e[i]?t.addHeaderInfo(i,e[i]):t.removeHeaderInfo(i)})}catch(e){console.error("setConfig error")}},t.setUserUniqueId=function(e){try{AppLogBridge.setUserUniqueId(e)}catch(e){console.error("setUserUniqueId error")}},t.addHeaderInfo=function(e,t){try{AppLogBridge.addHeaderInfo(e,t)}catch(e){console.error("addHeaderInfo error")}},t.setHeaderInfo=function(e){try{AppLogBridge.setHeaderInfo(JSON.stringify(e))}catch(e){console.error("setHeaderInfo error")}},t.removeHeaderInfo=function(e){try{AppLogBridge.removeHeaderInfo(e)}catch(e){console.error("removeHeaderInfo error")}},t.reportPv=function(e){this.onEventV3("predefine_pageview",e)},t.onEventV3=function(e,t){try{AppLogBridge.onEventV3(e,t)}catch(e){console.error("onEventV3 error")}},t.profileSet=function(e){try{AppLogBridge.profileSet(e)}catch(e){console.error("profileSet error")}},t.profileSetOnce=function(e){try{AppLogBridge.profileSetOnce(e)}catch(e){console.error("profileSetOnce error")}},t.profileIncrement=function(e){try{AppLogBridge.profileIncrement(e)}catch(e){console.error("profileIncrement error")}},t.profileUnset=function(e){try{AppLogBridge.profileUnset(e)}catch(e){console.error("profileUnset error")}},t.profileAppend=function(e){try{AppLogBridge.profileAppend(e)}catch(e){console.error("profileAppend error")}},t.setExternalAbVersion=function(e){try{AppLogBridge.setExternalAbVersion(e)}catch(e){console.error("setExternalAbVersion error")}},t.getVar=function(e,t,i){try{"android"===this.os?i(AppLogBridge.getABTestConfigValueForKey(e,t)):AppLogBridge.getABTestConfigValueForKey(e,t,function(e){i(e)})}catch(e){console.error("getVar error"),i(t)}},t.getAllVars=function(e){try{"android"===this.os?e(AppLogBridge.getAllAbTestConfigs()):AppLogBridge.getAllAbTestConfigs(function(t){e(t)})}catch(t){console.error("getAllVars error"),e(null)}},t.getAbSdkVersion=function(e){try{"android"===this.os?e(AppLogBridge.getAbSdkVersion()):AppLogBridge.getAbSdkVersion(function(t){e(t)})}catch(t){console.error("getAbSdkVersion error"),e("")}},e}(),R=function(){function t(){e(this,"collect",void 0),e(this,"config",void 0),e(this,"configManager",void 0),e(this,"eventKey",void 0),e(this,"beconKey",void 0),e(this,"abKey",void 0),e(this,"storgae",void 0),e(this,"reportTimeout",void 0),e(this,"maxReport",void 0),e(this,"reportTime",void 0),e(this,"timeout",void 0),e(this,"eventLimit",50),e(this,"reportUrl",void 0),e(this,"eventCache",[]),e(this,"beconEventCache",[]),e(this,"eventCheck",void 0),e(this,"refer_key",void 0),e(this,"enable_ttwebid",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=e.configManager,this.storgae=new y,this.eventCheck=new w(e,t),this.maxReport=t.max_report||20,this.reportTime=t.reportTime||30,this.timeout=t.timeout||1e5,this.enable_ttwebid=t.enable_ttwebid,this.reportUrl=this.configManager.getUrl("event"),this.eventKey="__tea_cache_events_"+this.configManager.get("app_id"),this.beconKey="__tea_cache_events_becon_"+this.configManager.get("app_id"),this.abKey="__tea_sdk_ab_version_"+this.configManager.get("app_id"),this.refer_key="__tea_cache_refer_"+this.configManager.get("app_id"),this.collect.on(T.Ready,function(){i.reportAll(!1)}),this.collect.on(T.ConfigDomain,function(){i.reportUrl=i.configManager.getUrl("event")}),this.collect.on(T.Event,function(e){i.event(e)}),this.collect.on(T.BeconEvent,function(e){i.beconEvent(e)}),this.collect.on(T.CleanEvents,function(){i.reportAll(!1)}),this.linster()},i.linster=function(){var e=this;window.addEventListener("unload",function(){e.reportAll(!0)},!1),s(function(){e.reportAll(!0)}),document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&&e.reportAll(!0)},!1)},i.reportAll=function(e){this.report(e),this.reportBecon()},i.event=function(e){var t=this;try{var i=this.storgae.getCacheItem(this.eventKey)||[],n=[].concat(e,i);if(this.storgae.setCacheItem(this.eventKey,n),this.reportTimeout&&clearTimeout(this.reportTimeout),n.length>=this.maxReport)this.report(!1);else{var o=this.reportTime;this.reportTimeout=setTimeout(function(){t.report(!1),t.reportTimeout=null},o)}}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.beconEvent=function(e){var t=this.storgae.getCacheItem(this.beconKey)||[],i=[].concat(e,t);this.storgae.setCacheItem(this.beconKey,i),this.collect.destroy||this.collect.tokenManager.getReady()&&this.collect.sdkReady&&(this.storgae.removeCacheItem(this.beconKey),this.send(this.split(this.merge(i)),!0))},i.reportBecon=function(){var e=this.storgae.getCacheItem(this.beconKey)||[];e&&e.length&&(this.storgae.removeCacheItem(this.beconKey),this.send(this.split(this.merge(e)),!0))},i.report=function(e){if(!this.collect.destroy&&this.collect.tokenManager.getReady()&&this.collect.sdkReady){var t=this.storgae.getCacheItem(this.eventKey)||[];t.length&&(this.storgae.removeCacheItem(this.eventKey),this.sliceEvent(t,e))}},i.sliceEvent=function(e,t){if(e.length>this.eventLimit)for(var i=0;i<e.length;i+=this.eventLimit){var n;n=e.slice(i,i+this.eventLimit);var o=this.split(this.merge(n));this.send(o,t)}else{var r=this.split(this.merge(e));this.send(r,t)}},i.handleRefer=function(){var e="";try{if(this.config.spa||this.config.autotrack){var t=this.storgae.getLocalItem(this.refer_key)||{};e=t.routeChange?t.refer_key:this.configManager.get("referrer")}else e=this.configManager.get("referrer")}catch(t){e=document.referrer}return e},i.merge=function(e,t){var i=this,n=this.configManager.get(),o=n.header,r=n.user;o.referrer=this.handleRefer(),o.custom=JSON.stringify(o.custom);var s=this.configManager.get("evtParams"),a=this.configManager.get("user_unique_id_type"),c=e.map(function(e){try{if(Object.keys(s).length&&!t&&(e.params=Object.assign({},e.params,s)),i.collect.dynamicParamsFilter){var n=i.collect.dynamicParamsFilter();Object.keys(n).length&&(e.params=Object.assign({},e.params,n))}a&&(e.params.$user_unique_id_type=a);var o=i.configManager.getAbCache(),c=i.configManager.getAbVersion();return c&&o&&(i.config.disable_ab_reset||o.uuid===r.user_unique_id)&&(e.ab_sdk_version=c),e.session_id=i.collect.sessionManager.getSessionId(),e.params=JSON.stringify(e.params),e}catch(t){return i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:t.message}),e}}),h=[];if(!Object.keys(r).length)return console.warn("user info error,cant report"),h;this.config.enable_anonymousid&&delete r.web_id;var u=JSON.parse(JSON.stringify({events:c,user:r,header:o}));return u.local_time=Math.floor(Date.now()/1e3),u.verbose=1,u.user_unique_type=this.config.enable_ttwebid?this.config.user_unique_type:void 0,h.push(u),h},i.split=function(e){return e=e.map(function(e){var t=[];return t.push(e),t})},i.send=function(e,t){var i=this;e.length&&e.forEach(function(e){try{var n=JSON.parse(JSON.stringify(e));i.config.filter&&((n=i.config.filter(n))||console.warn("filter must return data !!")),i.collect.eventFilter&&n&&((n=i.collect.eventFilter(n))||console.warn("filterEvent api must return data !!"));var o=n||e,r=JSON.parse(JSON.stringify(o));if(i.eventCheck.checkVerify(r),!o.length)return;i.collect.emit(T.SubmitBefore,o);var s=i.collect.cryptoData(o);i.collect.requestManager.useRequest({url:i.reportUrl,data:s,success:function(e,t,n,o,s){e&&0!==e.e?(i.collect.emit(T.SubmitError,{type:"f_data",eventData:t,errorCode:e.e,response:e,startTime:o,endTime:Date.now(),status:s}),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报失败",time:Date.now(),data:r,code:e.e,failType:"数据异常失败",status:"fail"})):(i.collect.emit(T.SubmitSuccess,{eventData:t,res:e,response:e,startTime:o,endTime:Date.now(),status:s}),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报成功",time:Date.now(),data:r,code:200,status:"success"}))},fail:function(e,t,n,o){i.configManager.get("reportErrorCallback")(e,t),i.collect.emit(T.SubmitError,{type:"f_net",eventData:e,errorCode:t,startTime:n,errorMessage:o,endTime:Date.now()}),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报网络异常",time:Date.now(),data:r,code:t,failType:"网络异常失败",status:"fail"})},timeout:i.timeout,useBeacon:t,encryption:i.config.enable_encryption,encryption_header:i.config.encryption_header,withCredentials:i.enable_ttwebid}),i.collect.emit(T.SubmitVerifyH,o),i.collect.emit(T.SubmitAfter,o)}catch(e){console.warn("something error, "+JSON.stringify(e.stack)),i.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}})},t}(),O=function(e){return e?(e^16*Math.random()>>e/4).toString(10):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,O)},G=function(){return O().replace(/-/g,"").slice(0,19)},F=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})},P=function(){function t(){e(this,"sessionKey",void 0),e(this,"storage",void 0),e(this,"sessionExp",void 0),e(this,"expireTime",void 0),e(this,"disableSession",void 0),e(this,"collect",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.storage=new y,this.sessionKey="__tea_session_id_"+t.app_id,this.expireTime=t.expireTime||18e5,this.disableSession=t.disable_session,this.disableSession||(this.setSessionId(),this.collect.on(T.SessionReset,function(){i.resetSessionId()}),this.collect.on(T.SessionResetTime,function(){i.updateSessionIdTime()}))},i.updateSessionIdTime=function(){var e=this.storage.getSessionItem(this.sessionKey);if(e&&e.sessionId){var t=e.timestamp;Date.now()-t>this.expireTime?e={sessionId:F(),timestamp:Date.now()}:e.timestamp=Date.now(),this.storage.setSessionItem(this.sessionKey,e),this.resetExpTime()}},i.setSessionId=function(){var e=this,t=this.storage.getSessionItem(this.sessionKey);t&&t.sessionId?t.timestamp=Date.now():t={sessionId:F(),timestamp:Date.now()},this.storage.setSessionItem(this.sessionKey,t),this.sessionExp=setInterval(function(){e.checkEXp()},this.expireTime)},i.getSessionId=function(){var e=this.storage.getSessionItem(this.sessionKey);return this.disableSession?"":e&&e.sessionId?e.sessionId:""},i.resetExpTime=function(){var e=this;this.sessionExp&&(clearInterval(this.sessionExp),this.sessionExp=setInterval(function(){e.checkEXp()},this.expireTime))},i.resetSessionId=function(){var e={sessionId:F(),timestamp:Date.now()};this.storage.setItem(this.sessionKey,e)},i.checkEXp=function(){var e=this.storage.getSessionItem(this.sessionKey);e&&e.sessionId&&(Date.now()-e.timestamp+30>=this.expireTime&&(e={sessionId:F(),timestamp:Date.now()},this.storage.setSessionItem(this.sessionKey,e)))},t}(),z=function(){function t(){e(this,"collect",void 0),e(this,"config",void 0),e(this,"storage",void 0),e(this,"configManager",void 0),e(this,"cacheToken",{}),e(this,"tokenKey",void 0),e(this,"tokenReady",void 0),e(this,"tokenType",void 0),e(this,"enableCookie",!1),e(this,"expiresTime",void 0),e(this,"cookieDomain",void 0),e(this,"enableTTwebid",!1),e(this,"enableCustomWebid",!1),e(this,"enableAnonymousid",!1),e(this,"timeout",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=this.collect.configManager,this.storage=new y,this.tokenKey="__tea_cache_tokens_"+t.app_id,this.enableAnonymousid=t.enable_anonymousid,this.enableTTwebid=t.enable_ttwebid,this.enableCustomWebid=t.enable_custom_webid,this.collect.on(T.AnonymousId,function(e){i.setAnonymousId(e)}),this.collect.on(T.ConfigUuid,function(e){i.setUuid(e)}),this.collect.on(T.ConfigWebId,function(e){i.setWebId(e)}),this.timeout=t.timeout||3e5,this.enableCookie=t.cross_subdomain,this.expiresTime=t.cookie_expire||6048e5,this.cookieDomain=t.cookie_domain||"",this.checkStorage()},i.checkStorage=function(){var e=this;if(this.enableCookie){var t=this.storage.getCookie(this.tokenKey,this.cookieDomain);this.cacheToken=t&&"string"==typeof t?JSON.parse(t):{}}else this.cacheToken=this.storage.getLocalItem(this.tokenKey)||{};this.tokenType=this.cacheToken&&this.cacheToken._type_?this.cacheToken._type_:"default","custom"!==this.tokenType||this.enableCustomWebid||this.enableAnonymousid?this.enableAnonymousid?this.completeAnonymous(this.cacheToken):this.enableCustomWebid?this.collect.on(T.CustomWebId,function(){e.tokenReady=!0,e.collect.emit(T.TokenComplete)}):this.checkEnv()||(this.enableTTwebid?this.completeTtWid(this.cacheToken):this.check()):this.remoteWebid()},i.check=function(){this.cacheToken&&this.cacheToken.web_id?this.complete(this.cacheToken):this.config.disable_webid?this.complete({web_id:G(),user_unique_id:this.configManager.get("user_unique_id")||G()}):this.remoteWebid()},i.checkEnv=function(){var e=window.navigator.userAgent;if(-1!==e.indexOf("miniProgram")||-1!==e.indexOf("MiniProgram")){var t=c(window.location.href);return!(!t||!t.Web_ID)&&(this.complete({web_id:""+t.Web_ID,user_unique_id:this.configManager.get("user_unique_id")||""+t.Web_ID}),!0)}return!1},i.remoteWebid=function(){var e=this,t=this.configManager.getUrl("webid"),i={app_key:this.config.app_key,app_id:this.config.app_id,url:location.href,user_agent:window.navigator.userAgent,referer:document.referrer,user_unique_id:""};this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 发起WEBID请求",logType:"fetch",level:"info",time:Date.now(),data:i});var n=this.collect.cryptoData(i);this.collect.requestManager.useRequest({url:t,data:n,success:function(t){var i;if(t&&0===t.e)i=t.web_id,e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"WEBID请求成功",logType:"fetch",level:"info",time:Date.now(),data:t});else{var n=e.getLocalId();i=n,e.collect.configManager.set({localWebId:n}),e.collect.emit(T.TokenError),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"WEBID请求返回值异常",logType:"fetch",level:"warn",time:Date.now(),data:t}),e.collect.logger.warn("appid: "+e.config.app_id+" get webid error, use local webid~")}e.complete({web_id:e.configManager.get("web_id")||i,user_unique_id:e.configManager.get("user_unique_id")||i})},fail:function(){var t=e.getLocalId();e.complete({web_id:e.configManager.get("web_id")||t,user_unique_id:e.configManager.get("user_unique_id")||t}),e.collect.configManager.set({localWebId:t}),e.collect.emit(T.TokenError),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"WEBID请求网络异常",logType:"fetch",level:"error",time:Date.now(),data:null}),e.collect.logger.warn("appid: "+e.config.app_id+", get webid error, use local webid~")},timeout:this.timeout,encryption:this.config.enable_encryption,encryption_header:this.config.encryption_header})},i.getLocalId=function(){for(var e=G(),t=0;0===e.indexOf("0")||0===e.indexOf("9");){if(t>=10){e=e.replace(/^(0|9)/,"");break}e=G(),t++}return e},i.complete=function(e){var t=e.web_id,i=e.user_unique_id;if(!t&&!i)return this.collect.emit(T.TokenError),void console.warn("token error");e.timestamp=Date.now(),this.collect.configManager.set({web_id:t,user_unique_id:i}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(T.TokenComplete)},i.completeAnonymous=function(e){var t=e.anonymous_id||F(),i=e.user_unique_id||this.configManager.get("user_unique_id");this.collect.configManager.set({anonymous_id:t,user_unique_id:i||t}),e.anonymous_id=t,e.user_unique_id=i||t,this.setStorage(e),this.tokenReady=!0,this.collect.emit(T.TokenComplete)},i.completeTtWid=function(e){var t=e.user_unique_id||"",i=this.configManager.get("user_unique_id");this.configManager.set({user_unique_id:i||t}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(T.TokenComplete)},i.setUuid=function(e){if(e&&-1===["null","undefined","Null","None"].indexOf(e)){var t=String(e),i=this.configManager.get("user_unique_id"),n=this.cacheToken&&this.cacheToken.user_unique_id;if(t===i&&t===n)return;this.configManager.set({user_unique_id:t}),this.cacheToken||(this.cacheToken={}),this.cacheToken.user_unique_id=t,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken),this.collect.emit(T.TokenChange,{type:"uuid",id:e}),this.collect.emit(T.SessionReset)}else this.clearUuid()},i.clearUuid=function(){if(!this.config.enable_ttwebid){var e=this.enableAnonymousid?this.configManager.get("anonymous_id"):this.configManager.get("web_id");this.configManager.get("user_unique_id")!==e&&(this.configManager.set({user_unique_id:e}),this.cacheToken.user_unique_id=e,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken),this.collect.emit(T.TokenReset))}},i.setAnonymousId=function(e){if(e&&this.enableAnonymousid){var t=this.configManager.get("anonymous_id"),i=this.configManager.get("user_unique_id");t!==e&&(t!==i&&i||(this.configManager.set({user_unique_id:e}),this.cacheToken.user_unique_id=e,this.collect.emit(T.TokenChange,{type:"uuid",id:e})),this.configManager.set({anonymous_id:e}),this.cacheToken.anonymous_id=e,this.collect.emit(T.TokenChange,{type:"anonymous_id",id:e}),this.setStorage(this.cacheToken))}},i.setWebId=function(e){if(e&&!this.config.enable_ttwebid&&!this.enableAnonymousid){var t=this.configManager.get("web_id"),i=this.configManager.get("user_unique_id");i&&i!==t||(this.configManager.set({user_unique_id:e}),this.cacheToken.user_unique_id=e,this.collect.emit(T.TokenChange,{type:"uuid",id:e})),t!==e&&(this.configManager.set({web_id:e}),this.cacheToken.web_id=e,this.collect.emit(T.TokenChange,{type:"webid",id:e})),this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken)}},i.setStorage=function(e){e._type_=this.enableCustomWebid?"custom":"default",delete e["diss".split("").reverse().join("")],this.enableCookie||this.enableTTwebid?this.storage.setCookie(this.tokenKey,e,this.expiresTime,this.cookieDomain):this.storage.setLocalItem(this.tokenKey,e),this.cacheToken=e},i.getReady=function(){return this.tokenReady},i.getTobId=function(){var e=this;this.configManager.getUrl("tobid");var t={app_id:this.config.app_id,user_unique_id:this.configManager.get("user_unique_id"),user_unique_id_type:this.configManager.get("user_unique_id_type")};this.enableAnonymousid?t.anonymous_id=this.configManager.get("anonymous_id"):t.web_id=this.configManager.get("web_id");var i=this.collect.cryptoData(t);return new Promise(function(t){e.collect.requestManager.useRequest({url:e.configManager.getUrl("tobid"),data:i,success:function(i){i&&0===i.e?(t(i.tobid),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"GetToken请求成功",logType:"fetch",level:"info",time:Date.now(),data:i,infoType:"sdk"})):(t(""),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"GetToken请求失败",logType:"fetch",level:"error",time:Date.now(),data:i,infoType:"sdk"}))},fail:function(){t(""),e.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"GetToken请求失败",logType:"fetch",level:"error",time:Date.now(),infoType:"sdk"})},timeout:e.timeout,encryption:e.config.enable_encryption,encryption_header:e.config.encryption_header,withCredentials:e.enableTTwebid})})},t}(),q=function(){function t(t,i){var n=this;e(this,"collector",void 0),e(this,"config",void 0),e(this,"errorCode",void 0),e(this,"errorMessage",void 0),e(this,"requestType",void 0),e(this,"supportBeacon",void 0),e(this,"customHeader",void 0),this.collector=t,this.config=i,this.requestType=i.request_type||"xhr",this.supportBeacon=!(!window.navigator||!window.navigator.sendBeacon),this.errorCode={NO_URL:4001,IMG_ON:4e3,IMG_CATCH:4002,BEACON_FALSE:4003,XHR_ERROR:5002,TIMEOUT:5005,FETCH_ERROR:5006},this.errorMessage={BEACON_FALSE:"xhr sendbeacon error",XHR_ERROR:"xhr request error",BEACON:"xhr sendbeacon error",TIMEOUT:"xhr request timeout",FETCH_ERROR:"fetch network error",FETCH_RESPONSE_ERROR:"fetch response error"},this.customHeader=i.custom_request_header||{},this.collector.on(T.CustomHeader,function(e){n.setRequestHeader(e)})}var i=t.prototype;return i.setRequestHeader=function(e){this.customHeader=Object.assign(this.customHeader,e)},i.useFetch=function(e){var t=this,i=e.url,n=e.data,o=e.method,r=e.success,s=e.fail,a=e.status,c=e.timeout,h=e.useBeacon,u=e.encryption,f=e.encryption_header;if(e.withCredentials,window.fetch&&"undefined"!=typeof Request){var d={method:o||"POST"};if(h){if(!("keepalive"in Request.prototype))return void this.useSendBeacon(e);var p=this.collector.configManager.get("browser"),g=this.collector.configManager.get("browser_version");if(g=g.split("."),"Chrome"===p&&g.length&&g[0]&&Number(g[0])<82)return void this.useSendBeacon(e);d.keepalive=!0}var m=u&&!l()?n:JSON.stringify(n),v={"Content-Type":"application/json; charset=utf-8"};u&&f&&(v["Content-Type"]="application/octet-stream;tt-data="+f),d.body=m,d.headers=v;var y=null;y="undefined"!=typeof AbortController?new AbortController:{signal:null,abort:function(){}};var _=setTimeout(function(){y.abort()},c);if(Object.keys(this.customHeader).length)for(var b in this.customHeader)v[b]=this.customHeader[b];d.signal=y.signal;var E=Date.now();try{fetch(i,d).then(function(e){return e.ok||s&&s(n,e.status,E,e.statusText||t.errorMessage.FETCH_RESPONSE_ERROR),e.json()}).then(function(e){clearTimeout(_),r&&r(e,n,a,E,200)}).catch(function(e){clearTimeout(_),s&&s(n,t.errorCode.FETCH_ERROR,E,e.message||t.errorMessage.FETCH_ERROR)})}catch(t){this.useXhr(e),this.collector.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK useFetch 发送请求发生了一些问题",level:"error",time:Date.now(),data:t.message||"SDK useFetch has some errors",infoType:"sdk"})}}else h?this.useSendBeacon(e):this.useXhr(e),console.log("your browser not support fetch, use normal request")},i.useSendBeacon=function(e){if(this.supportBeacon){var t=e.url,i=e.data,n=e.status,o=e.success,r=e.fail,s=e.encryption,a=e.encryption_header,c=Date.now(),h=JSON.stringify(i);if(s&&a&&!l()){if("undefined"==typeof Blob)return void this.useXhr(e);h=new Blob([i],{type:"application/octet-stream;tt-data="+a})}window.navigator.sendBeacon(t,h)?o&&o({e:0},i,n,c,200):r&&r(i,this.errorCode.BEACON_FALSE,c,this.errorMessage.BEACON_FALSE)}else this.useXhr(e)},i.useXhr=function(e){var t=this,i=e.url,n=e.data,o=e.method,r=e.success,s=e.fail,a=e.timeout;e.withCredentials;var c=e.encryption,h=e.encryption_header,u=e.status;try{var f=new XMLHttpRequest;f.open(o||"POST",i,!0);var d=Date.now();if(c&&h?f.setRequestHeader("Content-Type","application/octet-stream;tt-data="+h):f.setRequestHeader("Content-Type","application/json; charset=utf-8"),Object.keys(this.customHeader).length)for(var p in this.customHeader)f.setRequestHeader(p,this.customHeader[p]);a&&(f.timeout=a,f.ontimeout=function(){s&&s(n,t.errorCode.TIMEOUT,d,t.errorMessage.TIMEOUT)}),f.onload=function(){if(r){var e=null;if(f.responseText){try{e=JSON.parse(f.responseText)}catch(t){e={}}r(e,n,u,d,f.status)}else s&&s(n,t.errorCode.XHR_ERROR,d,t.errorMessage.XHR_ERROR)}},f.onerror=function(){s&&s(n,t.errorCode.XHR_ERROR,d,t.errorMessage.XHR_ERROR),f.abort()},c&&!l()?f.send(n):f.send(JSON.stringify(n))}catch(e){this.collector.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK useXhr 发送请求发生了一些问题",level:"error",time:Date.now(),data:e.message,infoType:"sdk"})}},i.useRequest=function(e){var t=e.useBeacon;this.config.transport&&this.collector.configManager.getEnableClientTransport()?this.useCustomRequest(e):"fetch"!==this.requestType?t?this.useSendBeacon(e):this.useXhr(e):this.useFetch(e)},i.useCustomRequest=function(e){var t=this.config.transport,i=e.url,n=e.data,o=e.success,r=e.fail;if(t)try{t.post({url:i,data:JSON.stringify(n),success:function(e){o&&o(e,n)},fail:function(e){r&&r(e,n)}})}catch(t){this.collector.configManager.setEnableClientTransport(!1),this.useRequest(e)}},t}(),U=function(){function t(t){var i=this;e(this,"element",void 0),e(this,"isDragging",void 0),e(this,"animationFrameId",void 0),e(this,"lastX",void 0),e(this,"lastY",void 0),e(this,"offsetX",void 0),e(this,"offsetY",void 0),e(this,"initialX",void 0),e(this,"initialY",void 0),e(this,"clickAllowed",void 0),e(this,"dragThreshold",void 0),e(this,"enableClick",void 0),e(this,"onMove",function(e){if(i.isDragging){var t=e.clientX||e.touches[0].clientX,n=e.clientY||e.touches[0].clientY;if(i.clickAllowed){var o=Math.abs(t-i.initialX),r=Math.abs(n-i.initialY);(o>i.dragThreshold||r>i.dragThreshold)&&(i.clickAllowed=!1)}i.animationFrameId&&cancelAnimationFrame(i.animationFrameId),i.animationFrameId=requestAnimationFrame(function(){var t=e.touches?e.touches[0].clientX:e.clientX,n=e.touches?e.touches[0].clientY:e.clientY,o=t-i.offsetX,r=n-i.offsetY,s=window.innerWidth-i.element.offsetWidth,a=window.innerHeight-i.element.offsetHeight;o=Math.max(0,Math.min(o,s)),r=Math.max(0,Math.min(r,a)),i.element.style.transform="translate(\n "+(o-i.initialX)+"px, \n "+(r-i.initialY)+"px\n )"})}}),e(this,"onEnd",function(){if(i.isDragging){i.isDragging=!1;var e=new DOMMatrix(getComputedStyle(i.element).transform),t=i.initialX+e.m41,n=i.initialY+e.m42;i.element.style.left=t+"px",i.element.style.top=n+"px",i.element.style.transform="none",i.initialX=t,i.initialY=n,document.removeEventListener("mousemove",i.onMove),document.removeEventListener("mouseup",i.onEnd),document.removeEventListener("touchmove",i.onMove),document.removeEventListener("touchend",i.onEnd),setTimeout(function(){i.clickAllowed=!0},50)}}),this.element=t,this.isDragging=!1,this.enableClick=!1,this.animationFrameId=null,this.lastX=0,this.lastY=0,this.initialX=0,this.initialY=0,this.offsetX=0,this.offsetY=0,this.clickAllowed=!0,this.dragThreshold=1,this.initPosition(),this.bindEvents(),this.bindClickHandler()}var i=t.prototype;return i.initPosition=function(){var e=this.element.getBoundingClientRect();this.element.style.position="fixed",this.element.style.left=e.left+"px",this.element.style.top=e.top+"px",this.element.style.transform="translate(0, 0)"},i.bindEvents=function(){this.element.addEventListener("mousedown",this.onStart.bind(this)),this.element.addEventListener("touchstart",this.onStart.bind(this))},i.onStart=function(e){e.preventDefault(),this.initialX=e.clientX||e.touches[0].clientX,this.initialY=e.clientY||e.touches[0].clientY;var t=e.touches?e.touches[0].clientX:e.clientX,i=e.touches?e.touches[0].clientY:e.clientY,n=this.element.getBoundingClientRect();this.initialX=n.left,this.initialY=n.top,this.offsetX=t-this.initialX,this.offsetY=i-this.initialY,this.clickAllowed=!0,this.isDragging=!0,document.addEventListener("mousemove",this.onMove),document.addEventListener("mouseup",this.onEnd),document.addEventListener("touchmove",this.onMove),document.addEventListener("touchend",this.onEnd)},i.bindClickHandler=function(){var e=this;this.element.addEventListener("click",function(t){if(e.enableClick)return e.clickAllowed?void(window&&window.postMessage({type:"devtool:web:open-draw"},location.origin)):(t.stopImmediatePropagation(),void t.preventDefault())})},i.enable=function(){this.enableClick=!0,this.element.style.cursor="pointer",this.element.style.opacity="1"},t}(),N=function(){function t(t,i){e(this,"collect",void 0),e(this,"config",void 0),e(this,"devToolReady",!1),e(this,"devToolOrigin","*"),e(this,"sendAlready",!1),e(this,"app_id",void 0),e(this,"info",void 0),e(this,"log",void 0),e(this,"event",void 0),e(this,"filterEvent",void 0),e(this,"cacheStorgae",void 0),e(this,"loadUrl",void 0),e(this,"trackEnabled",!0),e(this,"currentAppKey",void 0),e(this,"debugButton",void 0),i.disable_debug||"Microsoft Internet Explorer"!==t.configManager.get("browser")&&(this.collect=t,this.config=i,this.app_id=i.app_id,this.trackEnabled=!!i.track_enabled,this.cacheStorgae=new y,this.currentAppKey="__applog_load_devtool_web_"+this.app_id,this.loadUrl=i.devtool_url||"https://lf-static.applogcdn.com/obj/applog-sdk-static/log-sdk/collect/devtool/debug-web.v2.0.1.js",this.filterEvent=new Set(["__bav_page","__bav_beat","__bav_page_statistics","__bav_click","__bav_page_exposure","bav2b_page","bav2b_beat","bav2b_page_statistics","bav2b_click","bav2b_page_exposure","_be_active","predefine_pageview","__profile_set","__profile_set_once","__profile_increment","__profile_unset","__profile_append","predefine_page_alive","predefine_page_close","abtest_exposure"]),this.load())}var i=t.prototype;return i.loadScript=function(e){var t=this;try{var i=document.createElement("script");i.src=e,i.onerror=function(){console.log("load DevTool render fail")},i.onload=function(){t.enableDebugButton(),console.log("load DevTool render success")},document.getElementsByTagName("body")[0].appendChild(i)}catch(e){console.log("devTool load fail, "+e.message)}},i.parseUrl=function(){var e={};try{var t=window.location.href.split("?")[1].split("&");t.length&&t.forEach(function(t){var i=t.split("=");e[decodeURIComponent(i[0])]=decodeURIComponent(i[1])})}catch(e){}return e},i.load=function(){try{var e=this.parseUrl();if(0==e.open_devtool_web)return void this.cacheStorgae.removeLocalItem("__applog_open_devtool_web");if(e.open_devtool_web&&e.app_id){if(parseInt(e.app_id)!==this.app_id)return}else if(!this.getStorage())return;this.loadBaseInfo(),this.loadHook(),this.setStorage(),this.addLintener(),this.loadDevTool()}catch(e){console.log("debug fail, "+e.message)}},i.getStorage=function(){var e=this.cacheStorgae.getLocalItem("__applog_open_devtool_web");return e&&parseInt(e)===this.app_id},i.setStorage=function(){this.cacheStorgae.setLocalItem("__applog_open_devtool_web",this.app_id),this.cacheStorgae.setLocalItem("__applog_devtool_web_track_enable",this.trackEnabled)},i.loadDevTool=function(){1==this.cacheStorgae.getLocalItem(this.currentAppKey)?console.warn("your appid: "+this.app_id+" has load web devtools already, maybe your page has more than two applogsdk and use one appid"):(this.loadDebuggerModule(),this.loadScript(this.loadUrl))},i.loadBaseInfo=function(){if(this.log=[],this.event=[],this.info=[{title:"基本信息",key:"base",type:1,content:[{name:"app_id",desc:"APP_ID",value:this.config.app_id},{name:"channel",desc:"CHANNEL",value:this.config.channel},{name:"domain",desc:"上报域名",value:this.collect.configManager.getDomain()},{name:"sdk_version",desc:"SDK版本",value:E},{name:"sdk_type",desc:"SDK引入方式",value:"npm"}]},{title:"用户信息",key:"user",type:2,content:[{name:"uuid",desc:"UUID",value:this.collect.configManager.get("user").user_unique_id||""},{name:"web_id",desc:"WEB_ID",value:this.collect.configManager.get("user").web_id||""}]},{title:"公共参数信息",type:2,key:"common",content:[{name:"browser",desc:"浏览器",value:this.collect.configManager.get("browser")},{name:"browser_version",desc:"浏览器版本",value:this.collect.configManager.get("browser_version")},{name:"platform",desc:"平台",value:this.collect.configManager.get("platform")},{name:"device_model",desc:"设备型号",value:this.collect.configManager.get("device_model")},{name:"os_name",desc:"操作系统",value:this.collect.configManager.get("os_name")},{name:"os_version",desc:"操作系统版本",value:this.collect.configManager.get("os_version")},{name:"resolution",desc:"屏幕分辨率",value:this.collect.configManager.get("resolution")},{name:"referrer",desc:"来源",value:this.collect.configManager.get("referrer")},{name:"custom",desc:"自定义信息",value:JSON.stringify(this.collect.configManager.get("custom"))}]},{title:"配置信息",key:"config",type:3,content:[{name:"autotrack",desc:"全埋点",value:!!this.config.autotrack},{name:"stay",desc:"停留时长",value:!!this.config.enable_stay_duration}]},{title:"A/B配置信息",key:"ab",type:4,content:[{name:"ab",desc:"A/B实验",value:!!this.config.enable_ab_test}]}],this.config.enable_ab_test){var e=this.getInfo("ab"),t=[{name:"ab",desc:"A/B实验",value:!!this.config.enable_ab_test},{name:"vid",desc:"已曝光VID",value:this.collect.configManager.getAbVersion()},{name:"ab_domain",desc:"A/B域名",value:this.config.ab_channel_domain||r(S[this.config.channel])},{name:"all_values",desc:"全部配置",value:this.collect.configManager.getAbCache()}];e.content=t,this.setInfo("ab",e)}if(this.config.enable_native||this.config.Native){var i={title:"客户端信息",type:3,content:[{name:"native",desc:"是否打通",value:!!this.collect.bridgeReport}]};this.setInfo("native",i)}if(E.includes("tob")){var n=this.getInfo("user");n.content.push({name:"sid",desc:"DISS".split("").reverse().join(""),value:"点击获取"}),this.setInfo("user",n)}},i.getInfo=function(e){var t=null;return this.info.forEach(function(i){i.key===e&&(t=i)}),t},i.setInfo=function(e,t){var i=!1;this.info.forEach(function(n){n.key===e&&(i=!0,n=t)}),i||this.info.push(t)},i.getSecondInfo=function(e,t){var i=this.getInfo(e),n=null;return i.content.forEach(function(e){e.name===t&&(n=e)}),n},i.setSecondInfo=function(e,t,i){var n=this.getInfo(e),o=!1;if(n.content.forEach(function(e){e.name===t&&(e.value=i,o=!0)}),!o){var r={name:t,value:i,desc:t.toLocaleUpperCase()};n.content.push(r)}this.setInfo(e,n)},i.loadHook=function(){var e=this;this.collect.on(D.DEBUGGER_MESSAGE,function(t){switch(t.type){case D.DEBUGGER_MESSAGE_SDK:var i={time:t.time,type:t.logType||"sdk",infoType:t.infoType||"sdk",level:t.level,name:t.info,show:!0,levelShow:!0,needDesc:!!t.data};if(t.data&&(i.desc={content:JSON.stringify(t.data)}),e.updateLog(i),t.secType&&"AB"===t.secType)e.setSecondInfo("ab","vid",e.collect.configManager.getAbVersion()),e.setSecondInfo("ab","all_values",e.collect.configManager.getAbCache());else if("USER"===t.secType)e.setSecondInfo("user","user_unique_id"===t.common?"uuid":t.common,e.collect.configManager.get(t.common));else if("HEADER"===t.secType){var n=e.collect.configManager.get(t.common);e.setSecondInfo("common",t.common,"custom"===t.common?JSON.stringify(n):n)}return void e.updateInfo();case D.DEBUGGER_MESSAGE_EVENT:if(t.data&&t.data.length){var o=t.data[0],r=o.events;if(!r.length)return;r.forEach(function(i){i.checkShow=!0,i.searchShow=!0,i.focusShow=!0,i.status=t.status,i.type=e.filterEvent.has(i.event)?"sdk":"cus",i.verifyType=t.verifyType?"verify":"no",i.info="","fail"===t.status&&(i.info={message:"code: "+t.code+", msg: "+(t.msg||t.failType)})}),e.updateEvent(o)}return}})},i.addLintener=function(){var e=this;window.addEventListener("message",function(t){if(t&&t.data&&"devtool:web:ready"===t.data.type){if(e.devToolOrigin=t.origin,e.devToolReady=!0,e.sendAlready)return;e.sendData("devtool:web:init",{info:e.info,log:e.log,event:e.event,sdk_type:E.includes("tob")?"tob":"inner",appId:e.app_id}),e.sendAlready=!0}t&&t.data&&"devtool:web:ssid"===t.data.type&&e.collect.getToken(function(t){e.setSecondInfo("user","sid",t.tobid),e.updateInfo()})})},i.sendData=function(e,t){try{var i={type:e,payload:t};window&&window.postMessage(i,this.devToolOrigin)}catch(e){}},i.updateInfo=function(){this.devToolReady&&this.sendData("devtool:web:info",this.info)},i.updateLog=function(e){this.devToolReady?this.sendData("devtool:web:log",e):this.log.push(e)},i.updateEvent=function(e){this.devToolReady?this.sendData("devtool:web:event",e):this.event.push(e)},i.loadDebuggerModule=function(){var e=document.head||document.getElementsByTagName("head")[0],t=document.createElement("style");t.appendChild(document.createTextNode("#debugger-applog-web {\n position: fixed;\n width: 90px;\n height: 30px;\n background: #23c243;\n border-radius: 6px;\n color: #fff;\n font-size: 12px;\n bottom: 5%;\n right: 10%;\n text-align: center;\n line-height: 30px;\n cursor: not-allowed;\n z-index:1000;\n font-weight:bold;\n opacity: 0.6;\n }")),e.appendChild(t);var i=document.createElement("div");i.innerHTML='<div id="debugger-applog-web" class="debugger-applog-web">AppLog调试</div>';var n=document.createElement("div");n.innerHTML='<div id="debugger-container" class="debugger-container"></div>',document.getElementsByTagName("body")[0].appendChild(i),document.getElementsByTagName("body")[0].appendChild(n);var o=document.getElementById("debugger-applog-web");this.debugButton=new U(o)},i.enableDebugButton=function(){this.debugButton&&this.debugButton.enable()},t}(),L=d(function(e,t){(function(){var t;function i(e,t,i){null!=e&&("number"==typeof e?this.fromNumber(e,t,i):null==t&&"string"!=typeof e?this.fromString(e,256):this.fromString(e,t))}function n(){return new i(null)}var o="undefined"!=typeof navigator;o&&"Microsoft Internet Explorer"==navigator.appName?(i.prototype.am=function(e,t,i,n,o,r){for(var s=32767&t,a=t>>15;--r>=0;){var c=32767&this[e],h=this[e++]>>15,u=a*c+h*s;o=((c=s*c+((32767&u)<<15)+i[n]+(1073741823&o))>>>30)+(u>>>15)+a*h+(o>>>30),i[n++]=1073741823&c}return o},t=30):o&&"Netscape"!=navigator.appName?(i.prototype.am=function(e,t,i,n,o,r){for(;--r>=0;){var s=t*this[e++]+i[n]+o;o=Math.floor(s/67108864),i[n++]=67108863&s}return o},t=26):(i.prototype.am=function(e,t,i,n,o,r){for(var s=16383&t,a=t>>14;--r>=0;){var c=16383&this[e],h=this[e++]>>14,u=a*c+h*s;o=((c=s*c+((16383&u)<<14)+i[n]+o)>>28)+(u>>14)+a*h,i[n++]=268435455&c}return o},t=28),i.prototype.DB=t,i.prototype.DM=(1<<t)-1,i.prototype.DV=1<<t;i.prototype.FV=Math.pow(2,52),i.prototype.F1=52-t,i.prototype.F2=2*t-52;var r,s,a=new Array;for(r="0".charCodeAt(0),s=0;s<=9;++s)a[r++]=s;for(r="a".charCodeAt(0),s=10;s<36;++s)a[r++]=s;for(r="A".charCodeAt(0),s=10;s<36;++s)a[r++]=s;function c(e){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(e)}function h(e,t){var i=a[e.charCodeAt(t)];return null==i?-1:i}function u(e){var t=n();return t.fromInt(e),t}function l(e){var t,i=1;return 0!=(t=e>>>16)&&(e=t,i+=16),0!=(t=e>>8)&&(e=t,i+=8),0!=(t=e>>4)&&(e=t,i+=4),0!=(t=e>>2)&&(e=t,i+=2),0!=(t=e>>1)&&(e=t,i+=1),i}function f(e){this.m=e}function d(e){this.m=e,this.mp=e.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function p(e,t){return e&t}function g(e,t){return e|t}function m(e,t){return e^t}function v(e,t){return e&~t}function y(e){if(0==e)return-1;var t=0;return 65535&e||(e>>=16,t+=16),255&e||(e>>=8,t+=8),15&e||(e>>=4,t+=4),3&e||(e>>=2,t+=2),1&e||++t,t}function _(e){for(var t=0;0!=e;)e&=e-1,++t;return t}function b(){}function E(e){return e}function S(e){this.r2=n(),this.q3=n(),i.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}f.prototype.convert=function(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e},f.prototype.revert=function(e){return e},f.prototype.reduce=function(e){e.divRemTo(this.m,null,e)},f.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i),this.reduce(i)},f.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},d.prototype.convert=function(e){var t=n();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(i.ZERO)>0&&this.m.subTo(t,t),t},d.prototype.revert=function(e){var t=n();return e.copyTo(t),this.reduce(t),t},d.prototype.reduce=function(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t<this.m.t;++t){var i=32767&e[t],n=i*this.mpl+((i*this.mph+(e[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(e[i=t+this.m.t]+=this.m.am(0,n,e,t,0,this.m.t);e[i]>=e.DV;)e[i]-=e.DV,e[++i]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)},d.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i),this.reduce(i)},d.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},i.prototype.copyTo=function(e){for(var t=this.t-1;t>=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s},i.prototype.fromInt=function(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+this.DV:this.t=0},i.prototype.fromString=function(e,t){var n;if(16==t)n=4;else if(8==t)n=3;else if(256==t)n=8;else if(2==t)n=1;else if(32==t)n=5;else{if(4!=t)return void this.fromRadix(e,t);n=2}this.t=0,this.s=0;for(var o=e.length,r=!1,s=0;--o>=0;){var a=8==n?255&e[o]:h(e,o);a<0?"-"==e.charAt(o)&&(r=!0):(r=!1,0==s?this[this.t++]=a:s+n>this.DB?(this[this.t-1]|=(a&(1<<this.DB-s)-1)<<s,this[this.t++]=a>>this.DB-s):this[this.t-1]|=a<<s,(s+=n)>=this.DB&&(s-=this.DB))}8==n&&128&e[0]&&(this.s=-1,s>0&&(this[this.t-1]|=(1<<this.DB-s)-1<<s)),this.clamp(),r&&i.ZERO.subTo(this,this)},i.prototype.clamp=function(){for(var e=this.s&this.DM;this.t>0&&this[this.t-1]==e;)--this.t},i.prototype.dlShiftTo=function(e,t){var i;for(i=this.t-1;i>=0;--i)t[i+e]=this[i];for(i=e-1;i>=0;--i)t[i]=0;t.t=this.t+e,t.s=this.s},i.prototype.drShiftTo=function(e,t){for(var i=e;i<this.t;++i)t[i-e]=this[i];t.t=Math.max(this.t-e,0),t.s=this.s},i.prototype.lShiftTo=function(e,t){var i,n=e%this.DB,o=this.DB-n,r=(1<<o)-1,s=Math.floor(e/this.DB),a=this.s<<n&this.DM;for(i=this.t-1;i>=0;--i)t[i+s+1]=this[i]>>o|a,a=(this[i]&r)<<n;for(i=s-1;i>=0;--i)t[i]=0;t[s]=a,t.t=this.t+s+1,t.s=this.s,t.clamp()},i.prototype.rShiftTo=function(e,t){t.s=this.s;var i=Math.floor(e/this.DB);if(i>=this.t)t.t=0;else{var n=e%this.DB,o=this.DB-n,r=(1<<n)-1;t[0]=this[i]>>n;for(var s=i+1;s<this.t;++s)t[s-i-1]|=(this[s]&r)<<o,t[s-i]=this[s]>>n;n>0&&(t[this.t-i-1]|=(this.s&r)<<o),t.t=this.t-i,t.clamp()}},i.prototype.subTo=function(e,t){for(var i=0,n=0,o=Math.min(e.t,this.t);i<o;)n+=this[i]-e[i],t[i++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;i<this.t;)n+=this[i],t[i++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;i<e.t;)n-=e[i],t[i++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[i++]=this.DV+n:n>0&&(t[i++]=n),t.t=i,t.clamp()},i.prototype.multiplyTo=function(e,t){var n=this.abs(),o=e.abs(),r=n.t;for(t.t=r+o.t;--r>=0;)t[r]=0;for(r=0;r<o.t;++r)t[r+n.t]=n.am(0,o[r],t,r,0,n.t);t.s=0,t.clamp(),this.s!=e.s&&i.ZERO.subTo(t,t)},i.prototype.squareTo=function(e){for(var t=this.abs(),i=e.t=2*t.t;--i>=0;)e[i]=0;for(i=0;i<t.t-1;++i){var n=t.am(i,t[i],e,2*i,0,1);(e[i+t.t]+=t.am(i+1,2*t[i],e,2*i+1,n,t.t-i-1))>=t.DV&&(e[i+t.t]-=t.DV,e[i+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(i,t[i],e,2*i,0,1)),e.s=0,e.clamp()},i.prototype.divRemTo=function(e,t,o){var r=e.abs();if(!(r.t<=0)){var s=this.abs();if(s.t<r.t)return null!=t&&t.fromInt(0),void(null!=o&&this.copyTo(o));null==o&&(o=n());var a=n(),c=this.s,h=e.s,u=this.DB-l(r[r.t-1]);u>0?(r.lShiftTo(u,a),s.lShiftTo(u,o)):(r.copyTo(a),s.copyTo(o));var f=a.t,d=a[f-1];if(0!=d){var p=d*(1<<this.F1)+(f>1?a[f-2]>>this.F2:0),g=this.FV/p,m=(1<<this.F1)/p,v=1<<this.F2,y=o.t,_=y-f,b=null==t?n():t;for(a.dlShiftTo(_,b),o.compareTo(b)>=0&&(o[o.t++]=1,o.subTo(b,o)),i.ONE.dlShiftTo(f,b),b.subTo(a,a);a.t<f;)a[a.t++]=0;for(;--_>=0;){var E=o[--y]==d?this.DM:Math.floor(o[y]*g+(o[y-1]+v)*m);if((o[y]+=a.am(0,E,o,_,0,f))<E)for(a.dlShiftTo(_,b),o.subTo(b,o);o[y]<--E;)o.subTo(b,o)}null!=t&&(o.drShiftTo(f,t),c!=h&&i.ZERO.subTo(t,t)),o.t=f,o.clamp(),u>0&&o.rShiftTo(u,o),c<0&&i.ZERO.subTo(o,o)}}},i.prototype.invDigit=function(){if(this.t<1)return 0;var e=this[0];if(!(1&e))return 0;var t=3&e;return(t=(t=(t=(t=t*(2-(15&e)*t)&15)*(2-(255&e)*t)&255)*(2-((65535&e)*t&65535))&65535)*(2-e*t%this.DV)%this.DV)>0?this.DV-t:-t},i.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},i.prototype.exp=function(e,t){if(e>4294967295||e<1)return i.ONE;var o=n(),r=n(),s=t.convert(this),a=l(e)-1;for(s.copyTo(o);--a>=0;)if(t.sqrTo(o,r),(e&1<<a)>0)t.mulTo(r,s,o);else{var c=o;o=r,r=c}return t.revert(o)},i.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)return this.toRadix(e);t=2}var i,n=(1<<t)-1,o=!1,r="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(i=this[s]>>a)>0&&(o=!0,r=c(i));s>=0;)a<t?(i=(this[s]&(1<<a)-1)<<t-a,i|=this[--s]>>(a+=this.DB-t)):(i=this[s]>>(a-=t)&n,a<=0&&(a+=this.DB,--s)),i>0&&(o=!0),o&&(r+=c(i));return o?r:"0"},i.prototype.negate=function(){var e=n();return i.ZERO.subTo(this,e),e},i.prototype.abs=function(){return this.s<0?this.negate():this},i.prototype.compareTo=function(e){var t=this.s-e.s;if(0!=t)return t;var i=this.t;if(0!=(t=i-e.t))return this.s<0?-t:t;for(;--i>=0;)if(0!=(t=this[i]-e[i]))return t;return 0},i.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+l(this[this.t-1]^this.s&this.DM)},i.prototype.mod=function(e){var t=n();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(i.ZERO)>0&&e.subTo(t,t),t},i.prototype.modPowInt=function(e,t){var i;return i=e<256||t.isEven()?new f(t):new d(t),this.exp(e,i)},i.ZERO=u(0),i.ONE=u(1),b.prototype.convert=E,b.prototype.revert=E,b.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i)},b.prototype.sqrTo=function(e,t){e.squareTo(t)},S.prototype.convert=function(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=n();return e.copyTo(t),this.reduce(t),t},S.prototype.revert=function(e){return e},S.prototype.reduce=function(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)},S.prototype.mulTo=function(e,t,i){e.multiplyTo(t,i),this.reduce(i)},S.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)};var w,T,D,k=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],A=(1<<26)/k[k.length-1];function I(){var e;e=(new Date).getTime(),T[D++]^=255&e,T[D++]^=e>>8&255,T[D++]^=e>>16&255,T[D++]^=e>>24&255,D>=G&&(D-=G)}if(i.prototype.chunkSize=function(e){return Math.floor(Math.LN2*this.DB/Math.log(e))},i.prototype.toRadix=function(e){if(null==e&&(e=10),0==this.signum()||e<2||e>36)return"0";var t=this.chunkSize(e),i=Math.pow(e,t),o=u(i),r=n(),s=n(),a="";for(this.divRemTo(o,r,s);r.signum()>0;)a=(i+s.intValue()).toString(e).substr(1)+a,r.divRemTo(o,r,s);return s.intValue().toString(e)+a},i.prototype.fromRadix=function(e,t){this.fromInt(0),null==t&&(t=10);for(var n=this.chunkSize(t),o=Math.pow(t,n),r=!1,s=0,a=0,c=0;c<e.length;++c){var u=h(e,c);u<0?"-"==e.charAt(c)&&0==this.signum()&&(r=!0):(a=t*a+u,++s>=n&&(this.dMultiply(o),this.dAddOffset(a,0),s=0,a=0))}s>0&&(this.dMultiply(Math.pow(t,s)),this.dAddOffset(a,0)),r&&i.ZERO.subTo(this,this)},i.prototype.fromNumber=function(e,t,n){if("number"==typeof t)if(e<2)this.fromInt(1);else for(this.fromNumber(e,n),this.testBit(e-1)||this.bitwiseTo(i.ONE.shiftLeft(e-1),g,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(i.ONE.shiftLeft(e-1),this);else{var o=new Array,r=7&e;o.length=1+(e>>3),t.nextBytes(o),r>0?o[0]&=(1<<r)-1:o[0]=0,this.fromString(o,256)}},i.prototype.bitwiseTo=function(e,t,i){var n,o,r=Math.min(e.t,this.t);for(n=0;n<r;++n)i[n]=t(this[n],e[n]);if(e.t<this.t){for(o=e.s&this.DM,n=r;n<this.t;++n)i[n]=t(this[n],o);i.t=this.t}else{for(o=this.s&this.DM,n=r;n<e.t;++n)i[n]=t(o,e[n]);i.t=e.t}i.s=t(this.s,e.s),i.clamp()},i.prototype.changeBit=function(e,t){var n=i.ONE.shiftLeft(e);return this.bitwiseTo(n,t,n),n},i.prototype.addTo=function(e,t){for(var i=0,n=0,o=Math.min(e.t,this.t);i<o;)n+=this[i]+e[i],t[i++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;i<this.t;)n+=this[i],t[i++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;i<e.t;)n+=e[i],t[i++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[i++]=n:n<-1&&(t[i++]=this.DV+n),t.t=i,t.clamp()},i.prototype.dMultiply=function(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()},i.prototype.dAddOffset=function(e,t){if(0!=e){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}},i.prototype.multiplyLowerTo=function(e,t,i){var n,o=Math.min(this.t+e.t,t);for(i.s=0,i.t=o;o>0;)i[--o]=0;for(n=i.t-this.t;o<n;++o)i[o+this.t]=this.am(0,e[o],i,o,0,this.t);for(n=Math.min(e.t,t);o<n;++o)this.am(0,e[o],i,o,0,t-o);i.clamp()},i.prototype.multiplyUpperTo=function(e,t,i){--t;var n=i.t=this.t+e.t-t;for(i.s=0;--n>=0;)i[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)i[this.t+n-t]=this.am(t-n,e[n],i,0,0,this.t+n-t);i.clamp(),i.drShiftTo(1,i)},i.prototype.modInt=function(e){if(e<=0)return 0;var t=this.DV%e,i=this.s<0?e-1:0;if(this.t>0)if(0==t)i=this[0]%e;else for(var n=this.t-1;n>=0;--n)i=(t*i+this[n])%e;return i},i.prototype.millerRabin=function(e){var t=this.subtract(i.ONE),o=t.getLowestSetBit();if(o<=0)return!1;var r=t.shiftRight(o);(e=e+1>>1)>k.length&&(e=k.length);for(var s=n(),a=0;a<e;++a){s.fromInt(k[Math.floor(Math.random()*k.length)]);var c=s.modPow(r,this);if(0!=c.compareTo(i.ONE)&&0!=c.compareTo(t)){for(var h=1;h++<o&&0!=c.compareTo(t);)if(0==(c=c.modPowInt(2,this)).compareTo(i.ONE))return!1;if(0!=c.compareTo(t))return!1}}return!0},i.prototype.clone=function(){var e=n();return this.copyTo(e),e},i.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this[0];if(0==this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]},i.prototype.byteValue=function(){return 0==this.t?this.s:this[0]<<24>>24},i.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},i.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},i.prototype.toByteArray=function(){var e=this.t,t=new Array;t[0]=this.s;var i,n=this.DB-e*this.DB%8,o=0;if(e-- >0)for(n<this.DB&&(i=this[e]>>n)!=(this.s&this.DM)>>n&&(t[o++]=i|this.s<<this.DB-n);e>=0;)n<8?(i=(this[e]&(1<<n)-1)<<8-n,i|=this[--e]>>(n+=this.DB-8)):(i=this[e]>>(n-=8)&255,n<=0&&(n+=this.DB,--e)),128&i&&(i|=-256),0==o&&(128&this.s)!=(128&i)&&++o,(o>0||i!=this.s)&&(t[o++]=i);return t},i.prototype.equals=function(e){return 0==this.compareTo(e)},i.prototype.min=function(e){return this.compareTo(e)<0?this:e},i.prototype.max=function(e){return this.compareTo(e)>0?this:e},i.prototype.and=function(e){var t=n();return this.bitwiseTo(e,p,t),t},i.prototype.or=function(e){var t=n();return this.bitwiseTo(e,g,t),t},i.prototype.xor=function(e){var t=n();return this.bitwiseTo(e,m,t),t},i.prototype.andNot=function(e){var t=n();return this.bitwiseTo(e,v,t),t},i.prototype.not=function(){for(var e=n(),t=0;t<this.t;++t)e[t]=this.DM&~this[t];return e.t=this.t,e.s=~this.s,e},i.prototype.shiftLeft=function(e){var t=n();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t},i.prototype.shiftRight=function(e){var t=n();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t},i.prototype.getLowestSetBit=function(){for(var e=0;e<this.t;++e)if(0!=this[e])return e*this.DB+y(this[e]);return this.s<0?this.t*this.DB:-1},i.prototype.bitCount=function(){for(var e=0,t=this.s&this.DM,i=0;i<this.t;++i)e+=_(this[i]^t);return e},i.prototype.testBit=function(e){var t=Math.floor(e/this.DB);return t>=this.t?0!=this.s:!!(this[t]&1<<e%this.DB)},i.prototype.setBit=function(e){return this.changeBit(e,g)},i.prototype.clearBit=function(e){return this.changeBit(e,v)},i.prototype.flipBit=function(e){return this.changeBit(e,m)},i.prototype.add=function(e){var t=n();return this.addTo(e,t),t},i.prototype.subtract=function(e){var t=n();return this.subTo(e,t),t},i.prototype.multiply=function(e){var t=n();return this.multiplyTo(e,t),t},i.prototype.divide=function(e){var t=n();return this.divRemTo(e,t,null),t},i.prototype.remainder=function(e){var t=n();return this.divRemTo(e,null,t),t},i.prototype.divideAndRemainder=function(e){var t=n(),i=n();return this.divRemTo(e,t,i),new Array(t,i)},i.prototype.modPow=function(e,t){var i,o,r=e.bitLength(),s=u(1);if(r<=0)return s;i=r<18?1:r<48?3:r<144?4:r<768?5:6,o=r<8?new f(t):t.isEven()?new S(t):new d(t);var a=new Array,c=3,h=i-1,p=(1<<i)-1;if(a[1]=o.convert(this),i>1){var g=n();for(o.sqrTo(a[1],g);c<=p;)a[c]=n(),o.mulTo(g,a[c-2],a[c]),c+=2}var m,v,y=e.t-1,_=!0,b=n();for(r=l(e[y])-1;y>=0;){for(r>=h?m=e[y]>>r-h&p:(m=(e[y]&(1<<r+1)-1)<<h-r,y>0&&(m|=e[y-1]>>this.DB+r-h)),c=i;!(1&m);)m>>=1,--c;if((r-=c)<0&&(r+=this.DB,--y),_)a[m].copyTo(s),_=!1;else{for(;c>1;)o.sqrTo(s,b),o.sqrTo(b,s),c-=2;c>0?o.sqrTo(s,b):(v=s,s=b,b=v),o.mulTo(b,a[m],s)}for(;y>=0&&!(e[y]&1<<r);)o.sqrTo(s,b),v=s,s=b,b=v,--r<0&&(r=this.DB-1,--y)}return o.revert(s)},i.prototype.modInverse=function(e){var t=e.isEven();if(this.isEven()&&t||0==e.signum())return i.ZERO;for(var n=e.clone(),o=this.clone(),r=u(1),s=u(0),a=u(0),c=u(1);0!=n.signum();){for(;n.isEven();)n.rShiftTo(1,n),t?(r.isEven()&&s.isEven()||(r.addTo(this,r),s.subTo(e,s)),r.rShiftTo(1,r)):s.isEven()||s.subTo(e,s),s.rShiftTo(1,s);for(;o.isEven();)o.rShiftTo(1,o),t?(a.isEven()&&c.isEven()||(a.addTo(this,a),c.subTo(e,c)),a.rShiftTo(1,a)):c.isEven()||c.subTo(e,c),c.rShiftTo(1,c);n.compareTo(o)>=0?(n.subTo(o,n),t&&r.subTo(a,r),s.subTo(c,s)):(o.subTo(n,o),t&&a.subTo(r,a),c.subTo(s,c))}return 0!=o.compareTo(i.ONE)?i.ZERO:c.compareTo(e)>=0?c.subtract(e):c.signum()<0?(c.addTo(e,c),c.signum()<0?c.add(e):c):c},i.prototype.pow=function(e){return this.exp(e,new b)},i.prototype.gcd=function(e){var t=this.s<0?this.negate():this.clone(),i=e.s<0?e.negate():e.clone();if(t.compareTo(i)<0){var n=t;t=i,i=n}var o=t.getLowestSetBit(),r=i.getLowestSetBit();if(r<0)return t;for(o<r&&(r=o),r>0&&(t.rShiftTo(r,t),i.rShiftTo(r,i));t.signum()>0;)(o=t.getLowestSetBit())>0&&t.rShiftTo(o,t),(o=i.getLowestSetBit())>0&&i.rShiftTo(o,i),t.compareTo(i)>=0?(t.subTo(i,t),t.rShiftTo(1,t)):(i.subTo(t,i),i.rShiftTo(1,i));return r>0&&i.lShiftTo(r,i),i},i.prototype.isProbablePrime=function(e){var t,i=this.abs();if(1==i.t&&i[0]<=k[k.length-1]){for(t=0;t<k.length;++t)if(i[0]==k[t])return!0;return!1}if(i.isEven())return!1;for(t=1;t<k.length;){for(var n=k[t],o=t+1;o<k.length&&n<A;)n*=k[o++];for(n=i.modInt(n);t<o;)if(n%k[t++]==0)return!1}return i.millerRabin(e)},i.prototype.square=function(){var e=n();return this.squareTo(e),e},i.prototype.Barrett=S,null==T){var B;if(T=new Array,D=0,"undefined"!=typeof window&&window.crypto)if(window.crypto.getRandomValues){var M=new Uint8Array(32);for(window.crypto.getRandomValues(M),B=0;B<32;++B)T[D++]=M[B]}else if("Netscape"==navigator.appName&&navigator.appVersion<"5"){var C=window.crypto.random(32);for(B=0;B<C.length;++B)T[D++]=255&C.charCodeAt(B)}for(;D<G;)B=Math.floor(65536*Math.random()),T[D++]=B>>>8,T[D++]=255&B;D=0,I()}function x(){if(null==w){for(I(),(w=new O).init(T),D=0;D<T.length;++D)T[D]=0;D=0}return w.next()}function R(){}function O(){this.i=0,this.j=0,this.S=new Array}R.prototype.nextBytes=function(e){var t;for(t=0;t<e.length;++t)e[t]=x()},O.prototype.init=function(e){var t,i,n;for(t=0;t<256;++t)this.S[t]=t;for(i=0,t=0;t<256;++t)i=i+this.S[t]+e[t%e.length]&255,n=this.S[t],this.S[t]=this.S[i],this.S[i]=n;this.i=0,this.j=0},O.prototype.next=function(){var e;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,e=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=e,this.S[e+this.S[this.i]&255]};var G=256;e.exports={default:i,BigInteger:i,SecureRandom:R}}).call(f)});L.BigInteger,L.SecureRandom;const{BigInteger:K}=L;class V{constructor(){this.tlv=null,this.t="00",this.l="00",this.v=""}getEncodedHex(){return this.tlv||(this.v=this.getValue(),this.l=this.getLength(),this.tlv=this.t+this.l+this.v),this.tlv}getLength(){const e=this.v.length/2;let t=e.toString(16);if(t.length%2==1&&(t="0"+t),e<128)return t;return(128+t.length/2).toString(16)+t}getValue(){return""}}class H extends V{constructor(e){super(),this.t="02",e&&(this.v=function(e){let t=e.toString(16);if("-"!==t[0])t.length%2==1?t="0"+t:t.match(/^[0-7]/)||(t="00"+t);else{t=t.substr(1);let i=t.length;i%2==1?i+=1:t.match(/^[0-7]/)||(i+=2);let n="";for(let e=0;e<i;e++)n+="f";n=new K(n,16),t=n.xor(e).add(K.ONE),t=t.toString(16).replace(/^-/,"")}return t}(e))}getValue(){return this.v}}class j extends V{constructor(e){super(),this.t="30",this.asn1Array=e}getValue(){return this.v=this.asn1Array.map(e=>e.getEncodedHex()).join(""),this.v}}function X(e,t){return+e[t+2]<8?1:128&+e.substr(t+2,2)}function W(e,t){const i=X(e,t),n=e.substr(t+2,2*i);if(!n)return-1;return(+n[0]<8?new K(n,16):new K(n.substr(2),16)).intValue()}function J(e,t){return t+2*(X(e,t)+1)}var Y={encodeDer(e,t){const i=new H(e),n=new H(t);return new j([i,n]).getEncodedHex()},decodeDer(e){const t=J(e,0),i=J(e,t),n=W(e,t),o=e.substr(i,2*n),r=i+o.length,s=J(e,r),a=W(e,r),c=e.substr(s,2*a);return{r:new K(o,16),s:new K(c,16)}}};const{BigInteger:$}=L,Z=new $("2"),Q=new $("3");class ee{constructor(e,t){this.x=t,this.q=e}equals(e){return e===this||this.q.equals(e.q)&&this.x.equals(e.x)}toBigInteger(){return this.x}negate(){return new ee(this.q,this.x.negate().mod(this.q))}add(e){return new ee(this.q,this.x.add(e.toBigInteger()).mod(this.q))}subtract(e){return new ee(this.q,this.x.subtract(e.toBigInteger()).mod(this.q))}multiply(e){return new ee(this.q,this.x.multiply(e.toBigInteger()).mod(this.q))}divide(e){return new ee(this.q,this.x.multiply(e.toBigInteger().modInverse(this.q)).mod(this.q))}square(){return new ee(this.q,this.x.square().mod(this.q))}}class te{constructor(e,t,i,n){this.curve=e,this.x=t,this.y=i,this.z=null==n?$.ONE:n,this.zinv=null}getX(){return null===this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.x.toBigInteger().multiply(this.zinv).mod(this.curve.q))}getY(){return null===this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.y.toBigInteger().multiply(this.zinv).mod(this.curve.q))}equals(e){if(e===this)return!0;if(this.isInfinity())return e.isInfinity();if(e.isInfinity())return this.isInfinity();if(!e.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(e.z)).mod(this.curve.q).equals($.ZERO))return!1;return e.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(e.z)).mod(this.curve.q).equals($.ZERO)}isInfinity(){return null===this.x&&null===this.y||this.z.equals($.ZERO)&&!this.y.toBigInteger().equals($.ZERO)}negate(){return new te(this.curve,this.x,this.y.negate(),this.z)}add(e){if(this.isInfinity())return e;if(e.isInfinity())return this;const t=this.x.toBigInteger(),i=this.y.toBigInteger(),n=this.z,o=e.x.toBigInteger(),r=e.y.toBigInteger(),s=e.z,a=this.curve.q,c=t.multiply(s).mod(a),h=o.multiply(n).mod(a),u=c.subtract(h),l=i.multiply(s).mod(a),f=r.multiply(n).mod(a),d=l.subtract(f);if($.ZERO.equals(u))return $.ZERO.equals(d)?this.twice():this.curve.infinity;const p=c.add(h),g=n.multiply(s).mod(a),m=u.square().mod(a),v=u.multiply(m).mod(a),y=g.multiply(d.square()).subtract(p.multiply(m)).mod(a),_=u.multiply(y).mod(a),b=d.multiply(m.multiply(c).subtract(y)).subtract(l.multiply(v)).mod(a),E=v.multiply(g).mod(a);return new te(this.curve,this.curve.fromBigInteger(_),this.curve.fromBigInteger(b),E)}twice(){if(this.isInfinity())return this;if(!this.y.toBigInteger().signum())return this.curve.infinity;const e=this.x.toBigInteger(),t=this.y.toBigInteger(),i=this.z,n=this.curve.q,o=this.curve.a.toBigInteger(),r=e.square().multiply(Q).add(o.multiply(i.square())).mod(n),s=t.shiftLeft(1).multiply(i).mod(n),a=t.square().mod(n),c=a.multiply(e).multiply(i).mod(n),h=s.square().mod(n),u=r.square().subtract(c.shiftLeft(3)).mod(n),l=s.multiply(u).mod(n),f=r.multiply(c.shiftLeft(2).subtract(u)).subtract(h.shiftLeft(1).multiply(a)).mod(n),d=s.multiply(h).mod(n);return new te(this.curve,this.curve.fromBigInteger(l),this.curve.fromBigInteger(f),d)}multiply(e){if(this.isInfinity())return this;if(!e.signum())return this.curve.infinity;const t=e.multiply(Q),i=this.negate();let n=this;for(let o=t.bitLength()-2;o>0;o--){n=n.twice();const r=t.testBit(o);r!==e.testBit(o)&&(n=n.add(r?this:i))}return n}}var ie={ECPointFp:te,ECCurveFp:class{constructor(e,t,i){this.q=e,this.a=this.fromBigInteger(t),this.b=this.fromBigInteger(i),this.infinity=new te(this,null,null)}equals(e){return e===this||this.q.equals(e.q)&&this.a.equals(e.a)&&this.b.equals(e.b)}fromBigInteger(e){return new ee(this.q,e)}decodePointHex(e){switch(parseInt(e.substr(0,2),16)){case 0:return this.infinity;case 2:case 3:const t=this.fromBigInteger(new $(e.substr(2),16));let i=this.fromBigInteger(t.multiply(t.square()).add(t.multiply(this.a)).add(this.b).toBigInteger().modPow(this.q.divide(new $("4")).add($.ONE),this.q));return i.toBigInteger().mod(Z).equals(new $(e.substr(0,2),16).subtract(Z))||(i=i.negate()),new te(this,t,i);case 4:case 6:case 7:const n=(e.length-2)/2,o=e.substr(2,n),r=e.substr(n+2,n);return new te(this,this.fromBigInteger(new $(o,16)),this.fromBigInteger(new $(r,16)));default:return null}}}};const{BigInteger:ne,SecureRandom:oe}=L,{ECCurveFp:re}=ie,se=new oe,{curve:ae,G:ce,n:he}=ue();function ue(){const e=new ne("FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF",16),t=new ne("FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFC",16),i=new ne("28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93",16),n=new re(e,t,i),o=n.decodePointHex("0432C4AE2C1F1981195F9904466A39C9948FE30BBFF2660BE1715A4589334C74C7BC3736A2F4F6779C59BDCEE36B692153D0A9877CC62A474002DF32E52139F0A0");return{curve:n,G:o,n:new ne("FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C6052B53BBF40939D54123",16)}}function le(e,t){return e.length>=t?e:new Array(t-e.length+1).join("0")+e}var fe={getGlobalCurve:function(){return ae},generateEcparam:ue,generateKeyPairHex:function(e,t,i){const n=(e?new ne(e,t,i):new ne(he.bitLength(),se)).mod(he.subtract(ne.ONE)).add(ne.ONE),o=le(n.toString(16),64),r=ce.multiply(n);return{privateKey:o,publicKey:"04"+le(r.getX().toBigInteger().toString(16),64)+le(r.getY().toBigInteger().toString(16),64)}},compressPublicKeyHex:function(e){if(130!==e.length)throw new Error("Invalid public key to compress");const t=(e.length-2)/2,i=e.substr(2,t);let n="03";return new ne(e.substr(t+2,t),16).mod(new ne("2")).equals(ne.ZERO)&&(n="02"),n+i},utf8ToHex:function(e){const t=(e=unescape(encodeURIComponent(e))).length,i=[];for(let n=0;n<t;n++)i[n>>>2]|=(255&e.charCodeAt(n))<<24-n%4*8;const n=[];for(let e=0;e<t;e++){const t=i[e>>>2]>>>24-e%4*8&255;n.push((t>>>4).toString(16)),n.push((15&t).toString(16))}return n.join("")},leftPad:le,arrayToHex:function(e){return e.map(e=>1===(e=e.toString(16)).length?"0"+e:e).join("")},arrayToUtf8:function(e){const t=[];let i=0;for(let n=0;n<2*e.length;n+=2)t[n>>>3]|=parseInt(e[i],10)<<24-n%8*4,i++;try{const i=[];for(let n=0;n<e.length;n++){const e=t[n>>>2]>>>24-n%4*8&255;i.push(String.fromCharCode(e))}return decodeURIComponent(escape(i.join("")))}catch(e){throw new Error("Malformed UTF-8 data")}},hexToArray:function(e){const t=[];let i=e.length;i%2!=0&&(e=le(e,i+1)),i=e.length;for(let n=0;n<i;n+=2)t.push(parseInt(e.substr(n,2),16));return t},verifyPublicKey:function(e){const t=ae.decodePointHex(e);if(!t)return!1;const i=t.getX();return t.getY().square().equals(i.multiply(i.square()).add(i.multiply(ae.a)).add(ae.b))},comparePublicKeyHex:function(e,t){const i=ae.decodePointHex(e);if(!i)return!1;const n=ae.decodePointHex(t);return!!n&&i.equals(n)}};const de=new Uint32Array(68),pe=new Uint32Array(64);function ge(e,t){const i=31&t;return e<<i|e>>>32-i}function me(e,t){const i=[];for(let n=e.length-1;n>=0;n--)i[n]=255&(e[n]^t[n]);return i}function ve(e){return e^ge(e,9)^ge(e,17)}function ye(e){return e^ge(e,15)^ge(e,23)}function _e(e){let t=8*e.length,i=t%512;i=i>=448?512-i%448-1:448-i-1;const n=new Array((i-7)/8),o=new Array(8);for(let e=0,t=n.length;e<t;e++)n[e]=0;for(let e=0,t=o.length;e<t;e++)o[e]=0;t=t.toString(2);for(let e=7;e>=0;e--)if(t.length>8){const i=t.length-8;o[e]=parseInt(t.substr(i),2),t=t.substr(0,i)}else t.length>0&&(o[e]=parseInt(t,2),t="");const r=new Uint8Array([...e,128,...n,...o]),s=new DataView(r.buffer,0),a=r.length/64,c=new Uint32Array([1937774191,1226093241,388252375,3666478592,2842636476,372324522,3817729613,2969243214]);for(let e=0;e<a;e++){de.fill(0),pe.fill(0);const t=16*e;for(let e=0;e<16;e++)de[e]=s.getUint32(4*(t+e),!1);for(let e=16;e<68;e++)de[e]=ye(de[e-16]^de[e-9]^ge(de[e-3],15))^ge(de[e-13],7)^de[e-6];for(let e=0;e<64;e++)pe[e]=de[e]^de[e+4];const i=2043430169,n=2055708042;let o,r,a,h,u,l=c[0],f=c[1],d=c[2],p=c[3],g=c[4],m=c[5],v=c[6],y=c[7];for(let e=0;e<64;e++)u=e>=0&&e<=15?i:n,o=ge(ge(l,12)+g+ge(u,e),7),r=o^ge(l,12),a=(e>=0&&e<=15?l^f^d:l&f|l&d|f&d)+p+r+pe[e],h=(e>=0&&e<=15?g^m^v:g&m|~g&v)+y+o+de[e],p=d,d=ge(f,9),f=l,l=a,y=v,v=ge(m,19),m=g,g=ve(h);c[0]^=l,c[1]^=f,c[2]^=d,c[3]^=p,c[4]^=g,c[5]^=m,c[6]^=v,c[7]^=y}const h=[];for(let e=0,t=c.length;e<t;e++){const t=c[e];h.push((4278190080&t)>>>24,(16711680&t)>>>16,(65280&t)>>>8,255&t)}return h}const be=new Uint8Array(64),Ee=new Uint8Array(64);for(let e=0;e<64;e++)be[e]=54,Ee[e]=92;var Se={sm3:_e,hmac:function(e,t){for(t.length>64&&(t=_e(t));t.length<64;)t.push(0);const i=me(t,be),n=me(t,Ee),o=_e([...i,...e]);return _e([...n,...o])}};const{BigInteger:we}=L,{encodeDer:Te,decodeDer:De}=Y,ke=Se.sm3,{G:Ae,curve:Ie,n:Be}=fe.generateEcparam();function Me(e,t,i="1234567812345678"){i=fe.utf8ToHex(i);const n=fe.leftPad(Ae.curve.a.toBigInteger().toRadix(16),64),o=fe.leftPad(Ae.curve.b.toBigInteger().toRadix(16),64),r=fe.leftPad(Ae.getX().toBigInteger().toRadix(16),64),s=fe.leftPad(Ae.getY().toBigInteger().toRadix(16),64);let a,c;if(128===t.length)a=t.substr(0,64),c=t.substr(64,64);else{const e=Ae.curve.decodePointHex(t);a=fe.leftPad(e.getX().toBigInteger().toRadix(16),64),c=fe.leftPad(e.getY().toBigInteger().toRadix(16),64)}const h=fe.hexToArray(i+n+o+r+s+a+c),u=4*i.length;h.unshift(255&u),h.unshift(u>>8&255);const l=ke(h);return fe.arrayToHex(ke(l.concat(fe.hexToArray(e))))}function Ce(e){const t=Ae.multiply(new we(e,16));return"04"+fe.leftPad(t.getX().toBigInteger().toString(16),64)+fe.leftPad(t.getY().toBigInteger().toString(16),64)}function xe(){const e=fe.generateKeyPairHex(),t=Ie.decodePointHex(e.publicKey);return e.k=new we(e.privateKey,16),e.x1=t.getX().toBigInteger(),e}var Re={generateKeyPairHex:fe.generateKeyPairHex,compressPublicKeyHex:fe.compressPublicKeyHex,comparePublicKeyHex:fe.comparePublicKeyHex,doEncrypt:function(e,t,i=1){e="string"==typeof e?fe.hexToArray(fe.utf8ToHex(e)):Array.prototype.slice.call(e),t=fe.getGlobalCurve().decodePointHex(t);const n=fe.generateKeyPairHex(),o=new we(n.privateKey,16);let r=n.publicKey;r.length>128&&(r=r.substr(r.length-128));const s=t.multiply(o),a=fe.hexToArray(fe.leftPad(s.getX().toBigInteger().toRadix(16),64)),c=fe.hexToArray(fe.leftPad(s.getY().toBigInteger().toRadix(16),64)),h=fe.arrayToHex(ke([].concat(a,e,c)));let u=1,l=0,f=[];const d=[].concat(a,c),p=()=>{f=ke([...d,u>>24&255,u>>16&255,u>>8&255,255&u]),u++,l=0};p();for(let t=0,i=e.length;t<i;t++)l===f.length&&p(),e[t]^=255&f[l++];const g=fe.arrayToHex(e);return 0===i?r+g+h:r+h+g},doDecrypt:function(e,t,i=1,{output:n="string"}={}){t=new we(t,16);let o=e.substr(128,64),r=e.substr(192);0===i&&(o=e.substr(e.length-64),r=e.substr(128,e.length-128-64));const s=fe.hexToArray(r),a=fe.getGlobalCurve().decodePointHex("04"+e.substr(0,128));if(!a||!fe.verifyPublicKey("04"+e.substr(0,128)))return"array"===n?[]:"";const c=a.multiply(t),h=fe.hexToArray(fe.leftPad(c.getX().toBigInteger().toRadix(16),64)),u=fe.hexToArray(fe.leftPad(c.getY().toBigInteger().toRadix(16),64));let l=1,f=0,d=[];const p=[].concat(h,u),g=()=>{d=ke([...p,l>>24&255,l>>16&255,l>>8&255,255&l]),l++,f=0};g();for(let e=0,t=s.length;e<t;e++)f===d.length&&g(),s[e]^=255&d[f++];return fe.arrayToHex(ke([].concat(h,s,u)))===o.toLowerCase()?"array"===n?s:fe.arrayToUtf8(s):"array"===n?[]:""},doSignature:function(e,t,{pointPool:i,der:n,hash:o,publicKey:r,userId:s}={}){let a="string"==typeof e?fe.utf8ToHex(e):fe.arrayToHex(e);o&&(a=Me(a,r=r||Ce(t),s));const c=new we(t,16),h=new we(a,16);let u=null,l=null,f=null;do{do{let e;e=i&&i.length?i.pop():xe(),u=e.k,l=h.add(e.x1).mod(Be)}while(l.equals(we.ZERO)||l.add(u).equals(Be));f=c.add(we.ONE).modInverse(Be).multiply(u.subtract(l.multiply(c))).mod(Be)}while(f.equals(we.ZERO));return n?Te(l,f):fe.leftPad(l.toString(16),64)+fe.leftPad(f.toString(16),64)},doVerifySignature:function(e,t,i,{der:n,hash:o,userId:r}={}){let s,a,c="string"==typeof e?fe.utf8ToHex(e):fe.arrayToHex(e);if(o&&(c=Me(c,i,r)),n){const e=De(t);s=e.r,a=e.s}else s=new we(t.substring(0,64),16),a=new we(t.substring(64),16);const h=Be.subtract(we.ONE);if(s.compareTo(we.ONE)<0||s.compareTo(h)>0)return!1;if(a.compareTo(we.ONE)<0||a.compareTo(h)>0)return!1;const u=Ie.decodePointHex(i);if(!u||!fe.verifyPublicKey(i))return!1;const l=new we(c,16),f=s.add(a).mod(Be);if(f.equals(we.ZERO))return!1;const d=Ae.multiply(a).add(u.multiply(f)),p=l.add(d.getX().toBigInteger()).mod(Be);return s.equals(p)},getPublicKeyFromPrivateKey:Ce,getPoint:xe,verifyPublicKey:fe.verifyPublicKey};const{sm3:Oe,hmac:Ge}=Se;function Fe(e){return e.map(e=>1===(e=e.toString(16)).length?"0"+e:e).join("")}function Pe(e){const t=[];let i=e.length;var n,o;i%2!=0&&(o=i+1,e=(n=e).length>=o?n:new Array(o-n.length+1).join("0")+n),i=e.length;for(let n=0;n<i;n+=2)t.push(parseInt(e.substr(n,2),16));return t}const ze=16,qe=[214,144,233,254,204,225,61,183,22,182,20,194,40,251,44,5,43,103,154,118,42,190,4,195,170,68,19,38,73,134,6,153,156,66,80,244,145,239,152,122,51,84,11,67,237,207,172,98,228,179,28,169,201,8,232,149,128,223,148,250,117,143,63,166,71,7,167,252,243,115,23,186,131,89,60,25,230,133,79,168,104,107,129,178,113,100,218,139,248,235,15,75,112,86,157,53,30,36,14,94,99,88,209,162,37,34,124,59,1,33,120,135,212,0,70,87,159,211,39,82,76,54,2,231,160,196,200,158,234,191,138,210,64,199,56,181,163,247,242,206,249,97,21,161,224,174,93,164,155,52,26,85,173,147,50,48,245,140,177,227,29,246,226,46,130,102,202,96,192,41,35,171,13,83,78,111,213,219,55,69,222,253,142,47,3,255,106,114,109,108,91,81,141,27,175,146,187,221,188,127,17,217,92,65,31,16,90,216,10,193,49,136,165,205,123,189,45,116,208,18,184,229,180,176,137,105,151,74,12,150,119,126,101,185,241,9,197,110,198,132,24,240,125,236,58,220,77,32,121,238,95,62,215,203,57,72],Ue=[462357,472066609,943670861,1415275113,1886879365,2358483617,2830087869,3301692121,3773296373,4228057617,404694573,876298825,1347903077,1819507329,2291111581,2762715833,3234320085,3705924337,4177462797,337322537,808926789,1280531041,1752135293,2223739545,2695343797,3166948049,3638552301,4110090761,269950501,741554753,1213159005,1684763257];function Ne(e){const t=[];for(let i=0,n=e.length;i<n;i+=2)t.push(parseInt(e.substr(i,2),16));return t}function Le(e,t){const i=31&t;return e<<i|e>>>32-i}function Ke(e){return(255&qe[e>>>24&255])<<24|(255&qe[e>>>16&255])<<16|(255&qe[e>>>8&255])<<8|255&qe[255&e]}function Ve(e){return e^Le(e,2)^Le(e,10)^Le(e,18)^Le(e,24)}function He(e){return e^Le(e,13)^Le(e,23)}function je(e,t,i){const n=new Array(4),o=new Array(4);for(let t=0;t<4;t++)o[0]=255&e[4*t],o[1]=255&e[4*t+1],o[2]=255&e[4*t+2],o[3]=255&e[4*t+3],n[t]=o[0]<<24|o[1]<<16|o[2]<<8|o[3];for(let e,t=0;t<32;t+=4)e=n[1]^n[2]^n[3]^i[t+0],n[0]^=Ve(Ke(e)),e=n[2]^n[3]^n[0]^i[t+1],n[1]^=Ve(Ke(e)),e=n[3]^n[0]^n[1]^i[t+2],n[2]^=Ve(Ke(e)),e=n[0]^n[1]^n[2]^i[t+3],n[3]^=Ve(Ke(e));for(let e=0;e<16;e+=4)t[e]=n[3-e/4]>>>24&255,t[e+1]=n[3-e/4]>>>16&255,t[e+2]=n[3-e/4]>>>8&255,t[e+3]=255&n[3-e/4]}function Xe(e,t,i,{padding:n="pkcs#7",mode:o,iv:r=[],output:s="string"}={}){if("cbc"===o&&("string"==typeof r&&(r=Ne(r)),16!==r.length))throw new Error("iv is invalid");if("string"==typeof t&&(t=Ne(t)),16!==t.length)throw new Error("key is invalid");if(e="string"==typeof e?0!==i?function(e){const t=[];for(let i=0,n=e.length;i<n;i++){const n=e.codePointAt(i);if(n<=127)t.push(n);else if(n<=2047)t.push(192|n>>>6),t.push(128|63&n);else if(n<=55295||n>=57344&&n<=65535)t.push(224|n>>>12),t.push(128|n>>>6&63),t.push(128|63&n);else{if(!(n>=65536&&n<=1114111))throw t.push(n),new Error("input is not supported");i++,t.push(240|n>>>18&28),t.push(128|n>>>12&63),t.push(128|n>>>6&63),t.push(128|63&n)}}return t}(e):Ne(e):[...e],("pkcs#5"===n||"pkcs#7"===n)&&0!==i){const t=ze-e.length%ze;for(let i=0;i<t;i++)e.push(t)}const a=new Array(32);!function(e,t,i){const n=new Array(4),o=new Array(4);for(let t=0;t<4;t++)o[0]=255&e[0+4*t],o[1]=255&e[1+4*t],o[2]=255&e[2+4*t],o[3]=255&e[3+4*t],n[t]=o[0]<<24|o[1]<<16|o[2]<<8|o[3];n[0]^=2746333894,n[1]^=1453994832,n[2]^=1736282519,n[3]^=2993693404;for(let e,i=0;i<32;i+=4)e=n[1]^n[2]^n[3]^Ue[i+0],t[i+0]=n[0]^=He(Ke(e)),e=n[2]^n[3]^n[0]^Ue[i+1],t[i+1]=n[1]^=He(Ke(e)),e=n[3]^n[0]^n[1]^Ue[i+2],t[i+2]=n[2]^=He(Ke(e)),e=n[0]^n[1]^n[2]^Ue[i+3],t[i+3]=n[3]^=He(Ke(e));if(0===i)for(let e,i=0;i<16;i++)e=t[i],t[i]=t[31-i],t[31-i]=e}(t,a,i);const c=[];let h=r,u=e.length,l=0;for(;u>=ze;){const t=e.slice(l,l+16),n=new Array(16);if("cbc"===o)for(let e=0;e<ze;e++)0!==i&&(t[e]^=h[e]);je(t,n,a);for(let e=0;e<ze;e++)"cbc"===o&&0===i&&(n[e]^=h[e]),c[l+e]=n[e];"cbc"===o&&(h=0!==i?n:t),u-=ze,l+=ze}if(("pkcs#5"===n||"pkcs#7"===n)&&0===i){const e=c.length,t=c[e-1];for(let i=1;i<=t;i++)if(c[e-i]!==t)throw new Error("padding is invalid");c.splice(e-t,t)}return"array"!==s?0!==i?c.map(e=>1===(e=e.toString(16)).length?"0"+e:e).join(""):function(e){const t=[];for(let i=0,n=e.length;i<n;i++)e[i]>=240&&e[i]<=247?(t.push(String.fromCodePoint(((7&e[i])<<18)+((63&e[i+1])<<12)+((63&e[i+2])<<6)+(63&e[i+3]))),i+=3):e[i]>=224&&e[i]<=239?(t.push(String.fromCodePoint(((15&e[i])<<12)+((63&e[i+1])<<6)+(63&e[i+2]))),i+=2):e[i]>=192&&e[i]<=223?(t.push(String.fromCodePoint(((31&e[i])<<6)+(63&e[i+1]))),i++):t.push(String.fromCodePoint(e[i]));return t.join("")}(c):c}var We={sm2:Re,sm3:function(e,t){if(e="string"==typeof e?function(e){const t=[];for(let i=0,n=e.length;i<n;i++){const n=e.codePointAt(i);if(n<=127)t.push(n);else if(n<=2047)t.push(192|n>>>6),t.push(128|63&n);else if(n<=55295||n>=57344&&n<=65535)t.push(224|n>>>12),t.push(128|n>>>6&63),t.push(128|63&n);else{if(!(n>=65536&&n<=1114111))throw t.push(n),new Error("input is not supported");i++,t.push(240|n>>>18&28),t.push(128|n>>>12&63),t.push(128|n>>>6&63),t.push(128|63&n)}}return t}(e):Array.prototype.slice.call(e),t){if("hmac"!==(t.mode||"hmac"))throw new Error("invalid mode");let i=t.key;if(!i)throw new Error("invalid key");return i="string"==typeof i?Pe(i):Array.prototype.slice.call(i),Fe(Ge(e,i))}return Fe(Oe(e))},sm4:{encrypt:(e,t,i)=>Xe(e,t,1,i),decrypt:(e,t,i)=>Xe(e,t,0,i)}}.sm2;var Je=["web_id","user_unique_id"],Ye=function(){function t(t){e(this,"name",void 0),e(this,"hook",void 0),e(this,"inited",void 0),e(this,"logger",void 0),e(this,"Types",void 0),e(this,"configManager",void 0),e(this,"appBridge",void 0),e(this,"eventManager",void 0),e(this,"tokenManager",void 0),e(this,"sessionManager",void 0),e(this,"disableAutoPageView",!1),e(this,"bridgeReport",!1),e(this,"staging",!1),e(this,"initConfig",void 0),e(this,"pluginInstances",[]),e(this,"sended",!1),e(this,"started",!1),e(this,"remotePlugin",void 0),e(this,"eventFilter",void 0),e(this,"destroy",!1),e(this,"adapters",{}),e(this,"sdkReady",!1),e(this,"debugger",void 0),e(this,"eventEncrypt",void 0),e(this,"env",void 0),e(this,"dynamicParamsFilter",void 0),e(this,"publicKey",void 0),e(this,"requestManager",void 0),this.name=t,this.hook=new i,this.logger=new C(t),this.remotePlugin=new Map,this.Types=T}t.usePlugin=function(e,i,n){if(i){for(var o=!1,r=0,s=t.plugins.length;r<s;r++){if(t.plugins[r].name===i){t.plugins[r].plugin=e,t.plugins[r].options=n||{},o=!0;break}}o||t.plugins.push({name:i,plugin:e,options:n})}else t.plugins.push({plugin:e})};var r=t.prototype;return r.init=function(e){var i,o=this;this.inited?console.log("init can be call only one time"):e&&n(e)?e.app_id&&("number"==typeof(i=e.app_id)&&!isNaN(i))?!e.app_key||function(e){return"string"==typeof e}(e.app_key)?(e.channel_domain||-1!==["cn","sg","va"].indexOf(e.channel)||(console.warn("channel must be `cn`, `sg`,`va` !!!"),e.channel="cn"),this.logger=new C(this.name,e.log),this.configManager=new M(this,e),this.appBridge=new x(e,this.configManager),this.bridgeReport=this.appBridge.bridgeInject(),this.debugger=new N(this,e),this.requestManager=new q(this,e),this.initConfig=e,this.env=e.channel_domain?"self":"public",this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行INIT",data:e,level:"info",time:Date.now()}),e.disable_auto_pv&&(this.disableAutoPageView=!0),this.bridgeReport?(this.inited=!0,this.emit(T.Init)):(e.enable_encryption&&"sm"===e.encryption_type&&this.initCrypto(),this.configManager.set({app_id:e.app_id}),this.eventManager=new R,this.tokenManager=new z,this.sessionManager=new P,Promise.all([new Promise(function(e){o.once(T.TokenComplete,function(){e(!0)})}),new Promise(function(e){o.once(T.Start,function(){e(!0)})})]).then(function(){try{t.plugins.reduce(function(e,t){var i=t.plugin,n=t.options,r=Object.assign(o.initConfig,n),s=new i;return s.apply(o,r),e.push(s),e},o.pluginInstances)}catch(e){console.log("load plugin error, "+e.message),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}o.sdkReady=!0,o.emit(T.Ready),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 初始化完成",time:Date.now(),level:"info",data:o.configManager.get("user")}),o.logger.info("appid: "+e.app_id+", userInfo:"+JSON.stringify(o.configManager.get("user"))),o.logger.info("appid: "+e.app_id+", sdk is ready, version is "+E+", you can report now !!!");try{(window.opener||window.parent).postMessage("[tea-sdk]ready","*")}catch(e){o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}o.pageView(),o.on(T.TokenChange,function(t){"webid"!==t.type&&"anonymous_id"!==t.type||o.pageView(),o.logger.info("appid: "+e.app_id+" token change, new userInfo:"+JSON.stringify(o.configManager.get("user"))),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 设置了用户信息",time:Date.now(),secType:"USER",level:"info",data:o.configManager.get("user")})}),o.on(T.TokenReset,function(){o.logger.info("appid: "+e.app_id+" token reset, new userInfo:"+JSON.stringify(o.configManager.get("user"))),o.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 重置了用户信息",time:Date.now(),secType:"USER",level:"info",data:o.configManager.get("user")})}),o.on(T.RouteChange,function(t){t.init||e.disable_route_report||o.pageView()})}),this.tokenManager.apply(this,e),this.eventManager.apply(this,e),this.sessionManager.apply(this,e),this.inited=!0,this.emit(T.Init))):console.warn("app_key param is error, must be string, please check!"):console.warn("app_id param is error, must be number, please check!"):console.warn("init params error,please check")},r.config=function(e){if(this.inited)if(e&&n(e))if(this.bridgeReport)this.appBridge.setConfig(e);else{e._staging_flag&&1===e._staging_flag&&(this.staging=!0),e.disable_auto_pv&&(this.disableAutoPageView=!0,delete e.disable_auto_pv);var t=Object.assign({},e);if(this.initConfig&&this.initConfig.configPersist){var i=this.configManager.getStore();i&&(t=Object.assign(i,e)),this.configManager.setStore(e)}var o=t;o.web_id,o.user_unique_id;var r=function(e,t){if(null==e)return{};var i={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;i[n]=e[n]}return i}(o,Je);t.hasOwnProperty("web_id")&&this.emit(T.ConfigWebId,t.web_id),t.hasOwnProperty("user_unique_id")&&this.emit(T.ConfigUuid,t.user_unique_id),this.configManager.set(r),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行CONFIG",level:"info",time:Date.now(),data:t})}else this.logger.warn("config params is error, please check");else this.logger.warn("config must be use after function init")},r.setDomain=function(e){this.configManager&&this.configManager.setDomain(e),this.emit(T.ConfigDomain)},r.getConfig=function(e){return this.configManager.get(e)},r.send=function(){this.start()},r.start=function(){this.inited&&!this.sended&&(this.sended=!0,this.emit(T.Start),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行START",level:"info",time:Date.now()}),this.bridgeReport&&(this.pageView(),this.emit(T.Ready)))},r.event=function(e,t){var i=this;try{if(this.initConfig&&this.initConfig.disable_track_event)return;var n=[];if(Array.isArray(e))e.forEach(function(e){var t=i.processEvent(e[0],e[1]||{});t&&n.push(t)});else{var o=this.processEvent(e,t);if(!o)return;n.push(o)}this.bridgeReport?n.forEach(function(e){var t=e.event,n=e.params;i.appBridge.onEventV3(t,JSON.stringify(n))}):n.length&&(this.emit(T.Event,n),this.emit(T.SessionResetTime))}catch(e){this.logger.warn("something error, please check"),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},r.beconEvent=function(e,t){if(!this.initConfig||!this.initConfig.disable_track_event)if(Array.isArray(e))console.warn("beconEvent not support batch report, please check");else{var i=[],n=this.processEvent(e,t||{});n&&(i.push(n),i.length&&(this.emit(T.BeconEvent,i),this.emit(T.SessionResetTime)))}},r.processEvent=function(e,t){void 0===t&&(t={});try{if(!e)return this.logger.warn("eventName is null, please check"),null;var i=e;/^event\./.test(e)&&(i=e.slice(6));var n,r=t;return"object"!=typeof r&&(r={}),r.profile?delete r.profile:r.event_index=o(),r.local_ms?(n=r.local_ms,delete r.local_ms):n=+new Date,{event:i,params:r,local_time_ms:n,is_bav:this.initConfig&&this.initConfig.autotrack?1:0}}catch(i){return this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:i.message}),{event:e,params:t}}},r.dynamicParams=function(e){this.dynamicParamsFilter=e},r.filterEvent=function(e){this.eventFilter=e},r.on=function(e,t){this.hook.on(e,t)},r.once=function(e,t){this.hook.once(e,t)},r.off=function(e,t){this.hook.off(e,t)},r.emit=function(e,t,i){this.hook.emit(e,t,i)},r.set=function(e){this.hook.set(e)},r.pageView=function(){this.disableAutoPageView||this.predefinePageView()},r.predefinePageView=function(e){if(void 0===e&&(e={}),this.inited){var t={title:document.title||location.pathname,url:location.href,url_path:location.pathname,time:Date.now(),referrer:window.document.referrer,$is_first_time:""+(this.configManager&&this.configManager.is_first_time||!1)},i=Object.assign({},t,e);this.event("predefine_pageview",i)}else console.warn("predefinePageView should call after init")},r.clearEventCache=function(){this.emit(T.CleanEvents)},r.setWebIDviaUnionID=function(e){if(e){var t=h(e);this.config({web_id:""+t,wechat_unionid:e}),this.emit(T.CustomWebId)}},r.setWebIDviaOpenID=function(e){if(e){var t=h(e);this.config({web_id:""+t,wechat_openid:e}),this.emit(T.CustomWebId)}},r.setAnonymousId=function(e){this.emit(T.AnonymousId,e)},r.setNativeAppId=function(e){this.bridgeReport&&this.appBridge.setNativeAppId(e)},r.enableTransPort=function(){this.configManager.setEnableClientTransport(!0)},r.disableTransPort=function(){this.configManager.setEnableClientTransport(!1)},r.resetStayDuration=function(e,t,i){void 0===e&&(e=""),void 0===t&&(t=""),void 0===i&&(i=""),this.emit(T.ResetStay,{url_path:e,title:t,url:i},T.Stay)},r.resetStayParams=function(e,t,i){void 0===e&&(e=""),void 0===t&&(t=""),void 0===i&&(i=""),this.emit(T.SetStay,{url_path:e,title:t,url:i},T.Stay)},r.getToken=function(e,t){var i=this;if(this.inited){var n=!1,o=function(t){if(!n){n=!0;var o=i.configManager.get().user;return t&&(o.tobid=t,o["diss".split("").reverse().join("")]=t),e(Object.assign({},o))}},r=function(){i.tokenManager.getTobId().then(function(e){o(e)})};this.sdkReady?r():(t&&setTimeout(function(){o()},t),this.on(T.Ready,function(){r()}))}else this.logger.warn("getToken must be use after function init")},r.startTrackEvent=function(e){e&&this.emit(T.TrackDurationStart,e,T.TrackDuration)},r.endTrackEvent=function(e,t){void 0===t&&(t={}),e&&this.emit(T.TrackDurationEnd,{eventName:e,params:t},T.TrackDuration)},r.pauseTrackEvent=function(e){e&&this.emit(T.TrackDurationPause,e,T.TrackDuration)},r.resumeTrackEvent=function(e){e&&this.emit(T.TrackDurationResume,e,T.TrackDuration)},r.profileSet=function(e){this.bridgeReport?this.appBridge.profileSet(JSON.stringify(e)):this.emit(T.ProfileSet,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileSet",level:"info",time:Date.now(),data:e})},r.profileSetOnce=function(e){this.bridgeReport?this.appBridge.profileSetOnce(JSON.stringify(e)):this.emit(T.ProfileSetOnce,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileSetOnce",level:"info",time:Date.now(),data:e})},r.profileIncrement=function(e){this.bridgeReport?this.appBridge.profileIncrement(JSON.stringify(e)):this.emit(T.ProfileIncrement,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileIncrement",level:"info",time:Date.now(),data:e})},r.profileUnset=function(e){this.bridgeReport?this.appBridge.profileUnset(e):this.emit(T.ProfileUnset,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileUnset",level:"info",time:Date.now(),data:e})},r.profileAppend=function(e){this.bridgeReport?this.appBridge.profileAppend(JSON.stringify(e)):this.emit(T.ProfileAppend,e,T.Profile),this.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"SDK 执行profileAppend",level:"info",time:Date.now(),data:e})},r.setExternalAbVersion=function(e){this.bridgeReport?this.appBridge.setExternalAbVersion(e):this.emit(T.AbExternalVersion,"string"==typeof e&&e?(""+e).trim():null,T.Ab)},r.getVar=function(e,t,i){this.bridgeReport?this.appBridge.getVar(e,t,i):this.emit(T.AbVar,{name:e,defaultValue:t,callback:i},T.Ab)},r.getAllVars=function(e){this.bridgeReport?this.appBridge.getAllVars(e):this.emit(T.AbAllVars,e,T.Ab)},r.getABconfig=function(e,t){this.emit(T.AbConfig,{params:e,callback:t},T.Ab)},r.getAbSdkVersion=function(e){if(!this.bridgeReport||!e)return this.configManager.getAbVersion()||"";this.appBridge.getAbSdkVersion(e)},r.onAbSdkVersionChange=function(e){var t=this;return this.emit(T.AbVersionChangeOn,e,T.Ab),function(){t.emit(T.AbVersionChangeOff,e,T.Ab)}},r.offAbSdkVersionChange=function(e){this.emit(T.AbVersionChangeOff,e,T.Ab)},r.openOverlayer=function(){this.emit(T.AbOpenLayer,"",T.Ab)},r.closeOverlayer=function(){this.emit(T.AbCloseLayer,"",T.Ab)},r.initCrypto=function(){this.publicKey=this.initConfig.crypto_publicKey||"04BA9E229380DC0E41E10839B0C52A4763D3EDFE8903F3B8E81395523381E03AA995D295BD4A4088792E4785B224F7837EB4D2C7C05973C7AE8687A35ACAE470A0",this.initConfig.encryption_header=this.initConfig.encryption_header||"gm_sm2"},r.cryptoData=function(e){try{if(!this.initConfig.enable_encryption)return e;var t;if("sm"===this.initConfig.encryption_type){var i=(r=JSON.stringify(e),s=this.publicKey,void 0===(a=1)&&(a=1),"04"+We.doEncrypt(r,s,a)),n=u(i);t=new Uint8Array(n)}else t="data="+(o=JSON.stringify(e),window.btoa?window.btoa(encodeURIComponent(o)):encodeURIComponent(o));return t}catch(t){return e}var o,r,s,a},r.destoryInstance=function(){this.destroyInstance()},r.destoryInstace=function(){this.destroyInstance()},r.destroyInstance=function(){this.destroy||(this.destroy=!0,this.off(T.TokenComplete))},t}();e(Ye,"plugins",[]);var $e=function(){function t(){e(this,"collect",void 0),e(this,"config",void 0),e(this,"cache",void 0),e(this,"duration",void 0),e(this,"reportUrl",void 0),e(this,"eventCheck",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.duration=6e4,this.reportUrl=e.configManager.getDomain()+"/profile/list",this.eventCheck=new w(e,t),this.cache={},this.collect.on(T.ProfileSet,function(e){i.setProfile(e)}),this.collect.on(T.ProfileSetOnce,function(e){i.setOnceProfile(e)}),this.collect.on(T.ProfileUnset,function(e){i.unsetProfile(e)}),this.collect.on(T.ProfileIncrement,function(e){i.incrementProfile(e)}),this.collect.on(T.ProfileAppend,function(e){i.appendProfile(e)}),this.collect.on(T.ProfileClear,function(){i.cache={}}),this.ready(T.Profile)},i.ready=function(e){var t=this;if(this.collect.set(e),this.collect.hook._hooksCache.hasOwnProperty(e)){var i=this.collect.hook._hooksCache[e];if(!Object.keys(i).length)return;var n=function(e){i[e].length&&i[e].forEach(function(i){t.collect.hook.emit(e,i)})};for(var o in i)n(o)}},i.report=function(e,t){var i=this;void 0===t&&(t={});try{if(this.config.disable_track_event)return;var n=[];n.push(this.collect.processEvent(e,t));var o=this.collect.eventManager.merge(n,!0),r=this.collect.cryptoData(o);this.collect.configManager.getUrl("profile");this.collect.requestManager.useRequest({url:this.reportUrl,data:r,timeout:1e5,encryption:this.config.enable_encryption,encryption_header:this.config.encryption_header,zip:!0,success:function(e,t,n,o,r){e&&0!==e.e?i.collect.emit(T.SubmitError,{type:"f_data",eventData:t,errorCode:e.e,response:e,startTime:o,endTime:Date.now(),status:r}):i.collect.emit(T.SubmitSuccess,{eventData:t,res:e,response:e,startTime:o,endTime:Date.now(),status:r})},fail:function(e,t,n){i.collect.emit(T.SubmitError,{type:"f_net",eventData:e,errorCode:t,startTime:n,endTime:Date.now()})}}),this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_EVENT,info:"埋点上报成功",time:Date.now(),data:o,code:200,status:"success"})}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message})}},i.setProfile=function(e){var t=this.formatParams(e);t&&Object.keys(t).length&&(this.pushCache(t),this.report("__profile_set",Object.assign({},t,{profile:!0})))},i.setOnceProfile=function(e){var t=this.formatParams(e,!0);t&&Object.keys(t).length&&(this.pushCache(t),this.report("__profile_set_once",Object.assign({},t,{profile:!0})))},i.incrementProfile=function(e){e?this.report("__profile_increment",Object.assign({},e,{profile:!0})):console.warn("please check the params, must be object!!!")},i.unsetProfile=function(e){if(e){var t={};t[e]="1",this.report("__profile_unset",Object.assign({},t,{profile:!0}))}else console.warn("please check the key, must be string!!!")},i.appendProfile=function(e){if(e){var t={};for(var i in e)"string"==typeof e[i]||"Array"===Object.prototype.toString.call(e[i]).slice(8,-1)?t[i]=e[i]:console.warn("please check the value of param: "+i+", must be string or array !!!");Object.keys(t).length&&this.report("__profile_append",Object.assign({},t,{profile:!0}))}else console.warn("please check the params, must be object!!!")},i.pushCache=function(e){var t=this;Object.keys(e).forEach(function(i){t.cache[i]={val:t.clone(e[i]),timestamp:Date.now()}})},i.formatParams=function(e,t){var i=this;void 0===t&&(t=!1);try{if(!e||"[object Object]"!==Object.prototype.toString.call(e))return void console.warn("please check the params type, must be object !!!");var n={};for(var o in e)"string"==typeof e[o]||"number"==typeof e[o]||"Array"===Object.prototype.toString.call(e[o]).slice(8,-1)?n[o]=e[o]:console.warn("please check the value of params:"+o+", must be string,number,Array !!!");var r=Object.keys(n);if(!r.length)return;var s=Date.now();return r.filter(function(n){var o=i.cache[n];return t?!o:!(o&&i.compare(o.val,e[n])&&s-o.timestamp<i.duration)}).reduce(function(e,t){return e[t]=n[t],e},{})}catch(e){this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message}),console.log("error")}},i.compare=function(e,t){try{return JSON.stringify(e)===JSON.stringify(t)}catch(e){return this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:e.message}),!1}},i.clone=function(e){try{return JSON.parse(JSON.stringify(e))}catch(t){return this.collect.emit(D.DEBUGGER_MESSAGE,{type:D.DEBUGGER_MESSAGE_SDK,info:"发生了异常",level:"error",time:Date.now(),data:t.message}),e}},i.unReady=function(){console.warn("sdk is not ready, please use this api after start")},t}(),Ze=function(){function t(){var t=this;e(this,"sessionInterval",void 0),e(this,"isSessionhasEvent",void 0),e(this,"startTime",void 0),e(this,"lastTime",void 0),e(this,"collect",void 0),e(this,"clearIntervalFunc",void 0),e(this,"setInterval",function(){t.clearIntervalFunc=function(e,t){void 0===e&&(e=function(){}),void 0===t&&(t=1e3);var i,n=Date.now()+t;return i=window.setTimeout(function o(){var r=Date.now()-n;e(),n+=t,i=window.setTimeout(o,Math.max(0,t-r))},t),function(){window.clearTimeout(i)}}(function(){t.isSessionhasEvent&&t.endCurrentSession()},t.sessionInterval)}),e(this,"clearInterval",function(){t.clearIntervalFunc&&t.clearIntervalFunc()})}var i=t.prototype;return i.apply=function(e,t){var i=this;if(this.collect=e,!t.disable_heartbeat){this.sessionInterval=6e4,this.startTime=0,this.lastTime=0,this.setInterval();var n=this.collect.Types;this.collect.on(n.SessionReset,function(){i.process()})}},i.endCurrentSession=function(){this.collect.event("_be_active",{start_time:this.startTime,end_time:this.lastTime,url:window.location.href,referrer:window.document.referrer,title:document.title||location.pathname}),this.isSessionhasEvent=!1,this.startTime=0},i.process=function(){this.isSessionhasEvent||(this.isSessionhasEvent=!0,this.startTime=+new Date);var e=this.lastTime||+new Date;this.lastTime=+new Date,this.lastTime-e>this.sessionInterval&&(this.clearInterval(),this.endCurrentSession(),this.setInterval())},t}(),Qe=500,et=5005;var tt=function(){function t(){e(this,"collector",void 0),e(this,"config",void 0),e(this,"eventStorage",void 0),e(this,"domain",void 0),e(this,"verifyReady",!1),e(this,"cleanStatus",!1),e(this,"key",void 0),e(this,"heart",void 0)}var i=t.prototype;return i.apply=function(e,t){var i=this;this.collector=e,this.config=t,this.eventStorage=[],this.collector.on("submit-verify-h5",function(e){e&&e.length&&i.eventStore(e[0])}),this.checkUrl(),this.heartbeat()},i.checkUrl=function(){var e=window.location.href,t=c(e);t._r_d_&&t._r_c_k_?(this.verifyReady=!0,this.domain=t._r_d_,this.key=t._r_c_k_,this.checkCache()):this.collector.off("submit-verify-h5")},i.checkCache=function(){this.eventStorage.length&&this.postVerify(this.eventStorage)},i.heartbeat=function(){var e=this;this.heart=setInterval(function(){var t={event:"simulator_test__",local_time_ms:Date.now()},i=e.collector.configManager.get(),n=i.header,o={events:[t],user:i.user,header:n};e.eventStore(o)},6e4)},i.eventStore=function(e){this.cleanStatus||(this.verifyReady?this.postVerify(e):this.eventStorage.push(e))},i.cleanVerify=function(){this.cleanStatus=!0,this.eventStorage=[],clearInterval(this.heart)},i.postVerify=function(e){var t,i=this;try{var n=JSON.parse(JSON.stringify(e));t=e,Array.isArray(t)?n.forEach(function(e){i.fetchLog(e)}):this.fetchLog(n)}catch(e){console.log("web verify post error ~")}},i.fetchLog=function(e){!function(e,t,i,n,o,r,s,a,c,h){try{var u=new XMLHttpRequest,l=a||"POST";u.open(l,""+e,!0),c&&h?u.setRequestHeader("Content-Type","application/octet-stream;tt-data="+h):u.setRequestHeader("Content-Type","application/json; charset=utf-8"),s&&u.setRequestHeader("X-MCS-AppKey",""+s),n&&(u.withCredentials=!0),i&&(u.timeout=i,u.ontimeout=function(){r&&r(t,et)}),u.onload=function(){if(o){var e=null;if(u.responseText){try{e=JSON.parse(u.responseText)}catch(t){e={}}o(e,t)}}},u.onerror=function(){u.abort(),r&&r(t,Qe)},c?u.send(t):u.send(JSON.stringify(t))}catch(e){}}(this.domain+"/simulator/h5/log?connection_key="+this.key,e,2e4,!1)},i.leave=function(){var e=this;document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&&e.cleanVerify()}),s(function(){e.cleanVerify()})},t}();Ye.usePlugin(tt,"verifyH"),Ye.usePlugin($e,"profile"),Ye.usePlugin(Ze,"heartbeat");var it=new Ye("default"),nt=Ye;exports.Collector=nt,exports.default=it;
|