@datarangers/sdk-javascript 0.0.4-lite → 0.0.5-lite
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.min.js +1 -1
- package/lib/index.min.js +1 -1
- package/package.json +1 -1
package/es/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=function(){return e=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var o in t=arguments[i])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},e.apply(this,arguments)};function t(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var n,o,r=i.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=r.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return s}function i(){for(var e=[],i=0;i<arguments.length;i++)e=e.concat(t(arguments[i]));return e}var n,o=function(){function e(){this._hooks={},this._cache=[],this._hooksCache={}}return e.prototype.on=function(e,t){e&&t&&"function"==typeof t&&(this._hooks[e]||(this._hooks[e]=[]),this._hooks[e].push(t))},e.prototype.once=function(e,t){var i=this;if(e&&t&&"function"==typeof t){this.on(e,(function n(o){t(o),i.off(e,n)}))}},e.prototype.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]=[]},e.prototype.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)},e.prototype._emit=function(e,t){e&&this._hooks[e]&&this._hooks[e].length&&i(this._hooks[e]).forEach((function(e){try{e(t)}catch(e){}}))},e.prototype.set=function(e){e&&-1===this._cache.indexOf(e)&&this._cache.push(e)},e}(),r=function(e){return null!=e&&"[object Object]"==Object.prototype.toString.call(e)},s=(n=+Date.now()+Number((""+Math.random()).slice(2,8)),function(){return n+=1}),a=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)},c=function(e){var t=document.createElement("a");return t.href=e,t},h=function(){function e(e){this.appid=e,this.userAgent=window.navigator.userAgent,this.appVersion=window.navigator.appVersion}return e.prototype.init=function(){var e=window.navigator.userAgent,t=window.navigator.language,i=document.referrer,n=i?c(i).hostname:"";!function(e){var t={};try{var i=c(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){}}(window.location.href);var o=/Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion)?"wap":"web",r=this.browser(),s=this.os();return{browser:r.browser,browser_version:r.browser_version,platform:o,os_name:s.os_name,os_version:s.os_version,userAgent:e,screen_width:window.screen&&window.screen.width,screen_height:window.screen&&window.screen.height,device_model:this.getDeviceModel(s.os_name),language:t,referrer:i,referrer_host:n}},e.prototype.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}},e.prototype.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}},e.prototype.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()},e.prototype.isNewIpad=function(){return void 0!==this.userAgent&&"MacIntel"===navigator.platform&&"number"==typeof navigator.maxTouchPoints&&navigator.maxTouchPoints>1},e}();"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var u,p,f=(u=function(e,t){e.exports=function(){function e(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var n in i)e[n]=i[n]}return e}function t(i,n){function o(t,o,r){if("undefined"!=typeof document){"number"==typeof(r=e({},n,r)).expires&&(r.expires=new Date(Date.now()+864e5*r.expires)),r.expires&&(r.expires=r.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var s="";for(var a in r)r[a]&&(s+="; "+a,!0!==r[a]&&(s+="="+r[a].split(";")[0]));return document.cookie=t+"="+i.write(o,t)+s}}function r(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],n={},o=0;o<t.length;o++){var r=t[o].split("="),s=r.slice(1).join("=");try{var a=decodeURIComponent(r[0]);if(n[a]=i.read(s,a),e===a)break}catch(e){}}return e?n[e]:n}}return Object.create({set:o,get:r,remove:function(t,i){o(t,"",e({},i,{expires:-1}))},withAttributes:function(i){return t(this.converter,e({},this.attributes,i))},withConverter:function(i){return t(e({},this.converter,i),this.attributes)}},{attributes:{value:Object.freeze(n)},converter:{value:Object.freeze(i)}})}return t({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})}()},u(p={exports:{}},p.exports),p.exports),g=f,d=function(){function e(){this.cache={}}return e.prototype.setItem=function(e,t){this.cache[e]=t},e.prototype.getItem=function(e){return this.cache[e]},e.prototype.removeItem=function(e){this.cache[e]=void 0},e.prototype.getCookie=function(e){this.getItem(e)},e.prototype.setCookie=function(e,t){this.setItem(e,t)},e}();var l,m={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);localStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{localStorage.removeItem(e)}catch(e){}},getCookie:function(e,t){try{return g.get(e,{domain:t||document.domain})}catch(e){return""}},setCookie:function(e,t,i,n){try{var o=n||document.domain,r=+new Date+i;g.set(e,t,{expires:new Date(r),path:"/",domain:o})}catch(e){}},isSupportLS:function(){try{return localStorage.setItem("_ranger-test-key","hi"),localStorage.getItem("_ranger-test-key"),localStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},_={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);sessionStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{sessionStorage.removeItem(e)}catch(e){}},getCookie:function(e){this.getItem(e)},setCookie:function(e,t){this.setItem(e,t)},isSupportSession:function(){try{return sessionStorage.setItem("_ranger-test-key","hi"),sessionStorage.getItem("_ranger-test-key"),sessionStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},v=function(){function e(e,t){this._storage=t&&"session"===t?_:!e&&m.isSupportLS?m:new d}return e.prototype.getItem=function(e){return this._storage.getItem(e)},e.prototype.setItem=function(e,t){this._storage.setItem(e,t)},e.prototype.getCookie=function(e,t){return this._storage.getCookie(e,t)},e.prototype.setCookie=function(e,t,i,n){this._storage.setCookie(e,t,i,n)},e.prototype.removeItem=function(e){this._storage.removeItem(e)},e}(),y={cn:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az24z1mz1jz1az1cz18z1nz1nz1jz1mz1ez4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},w=void 0,b=(new Date).getTimezoneOffset(),k=parseInt(""+-b/60,10),x=60*b,O=function(){function t(e,t){this.is_first_time=!0,this.initConfig=t,this.collect=e;var i=new h(t.app_id).init(),n="__tea_cache_first_"+t.app_id;this.configKey="__tea_cache_config_"+t.app_id,this.sessionStorage=new v(!1,"session"),this.localStorage=new v(!1,"local");var o=this.localStorage.getItem(n);o&&1==o?this.is_first_time=!1:(this.is_first_time=!0,this.localStorage.setItem(n,"1")),this.envInfo={user:{user_unique_id:w,user_type:w,user_id:w,user_is_auth:w,user_is_login:w,device_id:w,web_id:w,user_unique_id_type:w},header:{app_id:w,app_name:w,app_install_id:w,install_id:w,app_package:w,app_channel:w,app_version:w,ab_version:w,os_name:i.os_name,os_version:i.os_version,device_model:i.device_model,ab_client:w,traffic_type:w,client_ip:w,device_brand:w,os_api:w,access:w,language:i.language,region:w,app_language:w,app_region:w,creative_id:w,ad_id:w,campaign_id:w,log_type:w,rnd:w,platform:i.platform,sdk_version:"0.0.4-lite",sdk_lib:"js",province:w,city:w,timezone:k,tz_offset:x,tz_name:w,sim_region:w,carrier:w,resolution:i.screen_width+"x"+i.screen_height,browser:i.browser,browser_version:i.browser_version,referrer:i.referrer,referrer_host:i.referrer_host,width:i.screen_width,height:i.screen_height,screen_width:i.screen_width,screen_height:i.screen_height,utm_term:w,utm_content:w,utm_source:w,utm_medium:w,utm_campaign:w,custom:{},wechat_unionid:w,wechat_openid:w}},this.evtParams={},this.reportErrorCallback=function(){},this.initDomain()}return t.prototype.initDomain=function(){var e=this.initConfig.channel_domain;if(e)this.domain=e;else{var t=this.initConfig.channel;this.domain=a(y[t])}},t.prototype.setDomain=function(e){this.domain=e},t.prototype.getDomain=function(){return this.domain},t.prototype.getUrl=function(e){var t="";switch(e){case"event":t=this.initConfig.report_url||"/list";break;case"webid":t="/webid"}return""+this.getDomain()+t},t.prototype.set=function(t){var i=this;Object.keys(t).forEach((function(n){"evtParams"===n?i.evtParams=e({},i.evtParams||{},t.evtParams||{}):"_staging_flag"===n?i.evtParams=e({},i.evtParams||{},{_staging_flag:t._staging_flag}):"reportErrorCallback"===n&&"function"==typeof t[n]?i.reportErrorCallback=t[n]:Object.hasOwnProperty.call(i.envInfo.user,n)?["user_id","web_id","user_unique_id"].indexOf(n)>-1&&(i.envInfo.user[n]=t[n]?String(t[n]):t[n]):Object.hasOwnProperty.call(i.envInfo.header,n)?i.envInfo.header[n]=t[n]:i.envInfo.header.custom[n]=t[n]}))},t.prototype.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 ")}},t}();!function(e){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.TokenChange="token-change",e.TokenReset="token-reset",e.SessionReset="session-reset",e.SessionResetTime="session-reset-time",e.Event="event",e.Events="events",e.BeconEvent="becon-event",e.SubmitBefore="submit-before"}(l||(l={}));var S=l,I=500,z=5005;function M(e,t,i,n,o,r,s,a,c){try{var h=new XMLHttpRequest,u=a||"POST";h.open(u,""+e,!0),h.setRequestHeader("Content-Type","application/json; charset=utf-8"),i&&(h.timeout=i,h.ontimeout=function(){r&&r(t,z)}),h.onload=function(){if(o){var e=null;if(h.responseText){try{e=JSON.parse(h.responseText)}catch(t){e={}}o(e,t)}}},h.onerror=function(){h.abort(),r&&r(t,I)},c?h.send(t):h.send(JSON.stringify(t))}catch(e){}}var T=4003,C=function(){function t(){this.eventLimit=50,this.eventCache=[],this.beconEventCache=[]}return t.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=e.configManager,this.cacheStorgae=new v(!0),this.localStorage=new v(!1),this.maxReport=t.max_report||20,this.reportTime=t.reportTime||30,this.timeout=t.timeout||1e5,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.collect.on(S.Ready,(function(){i.reportAll(!1)})),this.collect.on(S.Event,(function(e){i.event(e)})),this.collect.on(S.BeconEvent,(function(e){i.beconEvent(e)})),this.linster()},t.prototype.linster=function(){var e=this;window.addEventListener("unload",(function(){e.reportAll(!0)}),!1),function(e){navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)?window.addEventListener("pagehide",e,!1):window.addEventListener("beforeunload",e,!1)}((function(){e.reportAll(!0)})),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&e.reportAll(!0)}),!1)},t.prototype.reportAll=function(e){this.report(e),this.reportBecon()},t.prototype.event=function(e){var t=this;try{var n=i(e,this.cacheStorgae.getItem(this.eventKey)||[]);if(this.cacheStorgae.setItem(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){}},t.prototype.beconEvent=function(e){var t=i(e,this.cacheStorgae.getItem(this.beconKey)||[]);this.cacheStorgae.setItem(this.beconKey,t),this.collect.destroyInstance||this.collect.tokenManager.getReady()&&this.collect.sdkReady&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(t)),!0))},t.prototype.reportBecon=function(){var e=this.cacheStorgae.getItem(this.beconKey)||[];e&&e.length&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(e)),!0))},t.prototype.report=function(e){if(!this.collect.destroyInstance&&this.collect.tokenManager.getReady()&&this.collect.sdkReady){var t=this.cacheStorgae.getItem(this.eventKey)||[];t.length&&(this.cacheStorgae.removeItem(this.eventKey),this.sliceEvent(t,e))}},t.prototype.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{o=this.split(this.merge(e));this.send(o,t)}},t.prototype.merge=function(t){var i=this,n=this.configManager.get(),o=n.header,r=n.user;o.custom=JSON.stringify(o.custom);var s=this.configManager.get("evtParams"),a=t.map((function(t){try{return Object.keys(s).length&&(t.params=e({},s,t.params)),t.session_id=i.collect.sessionManager.getSessionId(),t.params=JSON.stringify(t.params),t}catch(e){return t}})),c=[];if(!Object.keys(r).length)return console.warn("user info error,cant report"),c;var h=JSON.parse(JSON.stringify({events:a,user:r,header:o}));return h.local_time=Math.floor(Date.now()/1e3),h.verbose=1,c.push(h),c},t.prototype.split=function(e){return e=e.map((function(e){var t=[];return t.push(e),t}))},t.prototype.send=function(e,t){var i=this;e.length&&e.forEach((function(e){try{if(!e.length)return;i.collect.emit(S.SubmitBefore,e),n=i.reportUrl,o=e,r=i.timeout,s=function(e,t){},a=function(e,t){i.configManager.get("reportErrorCallback")(e,t)},c=!1,t&&window.navigator&&window.navigator.sendBeacon?window.navigator.sendBeacon(n,JSON.stringify(o))?s():a(n,o,T):M(n,o,r,0,s,a,0,"",c)}catch(e){console.warn("something error, "+JSON.stringify(e.stack))}var n,o,r,s,a,c}))},t}(),E=function e(t){return t?(t^16*Math.random()>>t/4).toString(10):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e)},P=function(){return E().replace(/-/g,"").slice(0,19)},A=function(){function e(){this.cacheToken={}}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=this.collect.configManager,this.storage=new v(!1),this.tokenKey="__tea_cache_tokens_"+t.app_id,this.collect.on(S.ConfigUuid,(function(e){i.setUuid(e)})),this.checkStorage()},e.prototype.checkStorage=function(){this.cacheToken=this.storage.getItem(this.tokenKey)||{},this.check()},e.prototype.check=function(){this.cacheToken&&this.cacheToken.web_id?this.complete(this.cacheToken):this.remoteWebid()},e.prototype.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:""},n=P();M(t,i,3e5,0,(function(t){var i;t&&0===t.e?i=t.web_id:(i=n,e.collect.configManager.set({localWebId:n}),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})}),(function(){e.complete({web_id:e.configManager.get("web_id")||n,user_unique_id:e.configManager.get("user_unique_id")||n}),e.collect.configManager.set({localWebId:n}),e.collect.logger.warn("appid: "+e.config.app_id+", get webid error, use local webid~")}))},e.prototype.complete=function(e){var t=e.web_id,i=e.user_unique_id;t||i?(e.timestamp=Date.now(),this.collect.configManager.set({web_id:t,user_unique_id:i}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(S.TokenComplete)):console.warn("token error")},e.prototype.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)}else this.clearUuid()},e.prototype.clearUuid=function(){this.config.enable_ttwebid||this.configManager.get("web_id")&&(this.configManager.set({user_unique_id:this.configManager.get("web_id")}),this.cacheToken&&this.cacheToken.web_id&&(this.cacheToken.user_unique_id=this.cacheToken.web_id,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken)),this.collect.emit(S.TokenReset))},e.prototype.setStorage=function(e){e._type_="default",this.storage.setItem(this.tokenKey,e),this.cacheToken=e},e.prototype.getReady=function(){return this.tokenReady},e}(),D=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)}))},N=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.storage=new v(!1,"session"),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(S.SessionReset,(function(){i.resetSessionId()})),this.collect.on(S.SessionResetTime,(function(){i.updateSessionIdTime()})))},e.prototype.updateSessionIdTime=function(){var e=this.storage.getItem(this.sessionKey);if(e&&e.sessionId){var t=e.timestamp;Date.now()-t>this.expireTime?e={sessionId:D(),timestamp:Date.now()}:e.timestamp=Date.now(),this.storage.setItem(this.sessionKey,e),this.resetExpTime()}},e.prototype.setSessionId=function(){var e=this,t=this.storage.getItem(this.sessionKey);t&&t.sessionId?t.timestamp=Date.now():t={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,t),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime)},e.prototype.getSessionId=function(){var e=this.storage.getItem(this.sessionKey);return this.disableSession?"":e&&e.sessionId?e.sessionId:""},e.prototype.resetExpTime=function(){var e=this;this.sessionExp&&(clearInterval(this.sessionExp),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime))},e.prototype.resetSessionId=function(){var e={sessionId:D(),timestamp:Date.now()};this.storage.setItem(this.sessionKey,e)},e.prototype.checkEXp=function(){var e=this.storage.getItem(this.sessionKey);e&&e.sessionId&&(Date.now()-e.timestamp+30>=this.expireTime&&(e={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,e)))},e}(),R=function(){function t(e){this.disableAutoPageView=!1,this.staging=!1,this.sended=!1,this.started=!1,this.adapters={},this.sdkReady=!1,this.pluginInstances=[],this.name=e,this.hook=new o,this.Types=S,this.adapters.fetch=M,this.adapters.storage=v}return 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})},t.prototype.init=function(e){var i,n=this;this.inited?console.log("init can be call only one time"):e&&r(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.inited=!0,this.configManager=new O(this,e),this.initConfig=e,e.disable_auto_pv&&(this.disableAutoPageView=!0),this.configManager.set({app_id:e.app_id}),this.eventManager=new C,this.tokenManager=new A,this.sessionManager=new N,Promise.all([new Promise((function(e){n.once(S.TokenComplete,(function(){e(!0)}))})),new Promise((function(e){n.once(S.Start,(function(){e(!0)}))}))]).then((function(){try{t.plugins.reduce((function(e,t){var i=t.plugin,o=t.options,r=Object.assign(n.initConfig,o),s=new i;return s.apply(n,r),e.push(s),e}),n.pluginInstances)}catch(e){console.warn("load plugin error, "+e.message)}n.sdkReady=!0,n.emit(S.Ready),console.info("appid: "+e.app_id+", userInfo:"+JSON.stringify(n.configManager.get("user"))),console.info("appid: "+e.app_id+", sdk is ready, version is 0.0.4-lite, you can report now !!!"),n.pageView()})),this.tokenManager.apply(this,e),this.eventManager.apply(this,e),this.sessionManager.apply(this,e),this.emit(S.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")},t.prototype.config=function(t){if(this.inited)if(t&&r(t)){t._staging_flag&&1===t._staging_flag&&(this.staging=!0),t.disable_auto_pv&&(this.disableAutoPageView=!0,delete t.disable_auto_pv);var i=e({},t);i.user_unique_id;var n=function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(i[n[o]]=e[n[o]])}return i}(i,["user_unique_id"]);i.hasOwnProperty("user_unique_id")&&this.emit(S.ConfigUuid,i.user_unique_id),this.configManager.set(n)}else console.warn("config params is error, please check");else console.warn("config must be use after function init")},t.prototype.getConfig=function(e){return this.configManager.get(e)},t.prototype.start=function(){this.inited&&!this.sended&&(this.sended=!0,this.emit(S.Start))},t.prototype.event=function(e,t){var i=this;try{var n=[];Array.isArray(e)?e.forEach((function(e){n.push(i.processEvent(e[0],e[1]||{}))})):n.push(this.processEvent(e,t)),n.length&&(this.emit(S.Event,n),this.emit(S.SessionResetTime))}catch(e){console.warn("something error, please check")}},t.prototype.beconEvent=function(e,t){if(Array.isArray(e))console.warn("beconEvent not support batch report, please check");else{var i=[];i.push(this.processEvent(e,t||{})),i.length&&(this.emit(S.BeconEvent,i),this.emit(S.SessionResetTime))}},t.prototype.processEvent=function(e,t){void 0===t&&(t={});try{var i=e;/^event\./.test(e)&&(i=e.slice(6));var n=t;"object"!=typeof n&&(n={}),n.event_index=s();var o=void 0;return n.local_ms?(o=n.local_ms,delete n.local_ms):o=+new Date,{event:i,params:n,local_time_ms:o}}catch(i){return{event:e,params:t}}},t.prototype.on=function(e,t){this.hook.on(e,t)},t.prototype.once=function(e,t){this.hook.once(e,t)},t.prototype.off=function(e,t){this.hook.off(e,t)},t.prototype.emit=function(e,t,i){this.hook.emit(e,t,i)},t.prototype.set=function(e){this.hook.set(e)},t.prototype.pageView=function(){this.disableAutoPageView||this.predefinePageView()},t.prototype.predefinePageView=function(t){void 0===t&&(t={});var i={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)},n=e({},i,t);this.event("predefine_pageview",n)},t.plugins=[],t}(),B=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;if(t.event_verify_url)if("string"==typeof t.event_verify_url){if(this.url=t.event_verify_url+"/v1/list_test",this.url){var n=e.Types;e.on(n.SubmitBefore,(function(e){window.navigator.sendBeacon(i.url,JSON.stringify(e))}))}}else console.log("please use correct et_test url")},e}();R.usePlugin(B,"et");var q=new R("default"),j=R;export{j as Collector,q as default};
|
|
1
|
+
var e=function(){return e=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var o in t=arguments[i])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},e.apply(this,arguments)};function t(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var n,o,r=i.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=r.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return s}function i(){for(var e=[],i=0;i<arguments.length;i++)e=e.concat(t(arguments[i]));return e}var n,o=function(){function e(){this._hooks={},this._cache=[],this._hooksCache={}}return e.prototype.on=function(e,t){e&&t&&"function"==typeof t&&(this._hooks[e]||(this._hooks[e]=[]),this._hooks[e].push(t))},e.prototype.once=function(e,t){var i=this;if(e&&t&&"function"==typeof t){this.on(e,(function n(o){t(o),i.off(e,n)}))}},e.prototype.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]=[]},e.prototype.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)},e.prototype._emit=function(e,t){e&&this._hooks[e]&&this._hooks[e].length&&i(this._hooks[e]).forEach((function(e){try{e(t)}catch(e){}}))},e.prototype.set=function(e){e&&-1===this._cache.indexOf(e)&&this._cache.push(e)},e}(),r=function(e){return null!=e&&"[object Object]"==Object.prototype.toString.call(e)},s=(n=+Date.now()+Number((""+Math.random()).slice(2,8)),function(){return n+=1}),a=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)},c=function(e){var t=document.createElement("a");return t.href=e,t},h=function(){function e(e){this.appid=e,this.userAgent=window.navigator.userAgent,this.appVersion=window.navigator.appVersion}return e.prototype.init=function(){var e=window.navigator.userAgent,t=window.navigator.language,i=document.referrer,n=i?c(i).hostname:"";!function(e){var t={};try{var i=c(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){}}(window.location.href);var o=/Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion)?"wap":"web",r=this.browser(),s=this.os();return{browser:r.browser,browser_version:r.browser_version,platform:o,os_name:s.os_name,os_version:s.os_version,userAgent:e,screen_width:window.screen&&window.screen.width,screen_height:window.screen&&window.screen.height,device_model:this.getDeviceModel(s.os_name),language:t,referrer:i,referrer_host:n}},e.prototype.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}},e.prototype.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}},e.prototype.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()},e.prototype.isNewIpad=function(){return void 0!==this.userAgent&&"MacIntel"===navigator.platform&&"number"==typeof navigator.maxTouchPoints&&navigator.maxTouchPoints>1},e}();"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var u,p,f=(u=function(e,t){e.exports=function(){function e(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var n in i)e[n]=i[n]}return e}function t(i,n){function o(t,o,r){if("undefined"!=typeof document){"number"==typeof(r=e({},n,r)).expires&&(r.expires=new Date(Date.now()+864e5*r.expires)),r.expires&&(r.expires=r.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var s="";for(var a in r)r[a]&&(s+="; "+a,!0!==r[a]&&(s+="="+r[a].split(";")[0]));return document.cookie=t+"="+i.write(o,t)+s}}function r(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],n={},o=0;o<t.length;o++){var r=t[o].split("="),s=r.slice(1).join("=");try{var a=decodeURIComponent(r[0]);if(n[a]=i.read(s,a),e===a)break}catch(e){}}return e?n[e]:n}}return Object.create({set:o,get:r,remove:function(t,i){o(t,"",e({},i,{expires:-1}))},withAttributes:function(i){return t(this.converter,e({},this.attributes,i))},withConverter:function(i){return t(e({},this.converter,i),this.attributes)}},{attributes:{value:Object.freeze(n)},converter:{value:Object.freeze(i)}})}return t({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})}()},u(p={exports:{}},p.exports),p.exports),g=f,d=function(){function e(){this.cache={}}return e.prototype.setItem=function(e,t){this.cache[e]=t},e.prototype.getItem=function(e){return this.cache[e]},e.prototype.removeItem=function(e){this.cache[e]=void 0},e.prototype.getCookie=function(e){this.getItem(e)},e.prototype.setCookie=function(e,t){this.setItem(e,t)},e}();var l,m={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);localStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{localStorage.removeItem(e)}catch(e){}},getCookie:function(e,t){try{return g.get(e,{domain:t||document.domain})}catch(e){return""}},setCookie:function(e,t,i,n){try{var o=n||document.domain,r=+new Date+i;g.set(e,t,{expires:new Date(r),path:"/",domain:o})}catch(e){}},isSupportLS:function(){try{return localStorage.setItem("_ranger-test-key","hi"),localStorage.getItem("_ranger-test-key"),localStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},_={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);sessionStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{sessionStorage.removeItem(e)}catch(e){}},getCookie:function(e){this.getItem(e)},setCookie:function(e,t){this.setItem(e,t)},isSupportSession:function(){try{return sessionStorage.setItem("_ranger-test-key","hi"),sessionStorage.getItem("_ranger-test-key"),sessionStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},v=function(){function e(e,t){this._storage=t&&"session"===t?_:!e&&m.isSupportLS?m:new d}return e.prototype.getItem=function(e){return this._storage.getItem(e)},e.prototype.setItem=function(e,t){this._storage.setItem(e,t)},e.prototype.getCookie=function(e,t){return this._storage.getCookie(e,t)},e.prototype.setCookie=function(e,t,i,n){this._storage.setCookie(e,t,i,n)},e.prototype.removeItem=function(e){this._storage.removeItem(e)},e}(),y={cn:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az24z1mz1jz1az1cz18z1nz1nz1jz1mz1ez4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},w=void 0,b=(new Date).getTimezoneOffset(),k=parseInt(""+-b/60,10),x=60*b,O=function(){function t(e,t){this.is_first_time=!0,this.initConfig=t,this.collect=e;var i=new h(t.app_id).init(),n="__tea_cache_first_"+t.app_id;this.configKey="__tea_cache_config_"+t.app_id,this.sessionStorage=new v(!1,"session"),this.localStorage=new v(!1,"local");var o=this.localStorage.getItem(n);o&&1==o?this.is_first_time=!1:(this.is_first_time=!0,this.localStorage.setItem(n,"1")),this.envInfo={user:{user_unique_id:w,user_type:w,user_id:w,user_is_auth:w,user_is_login:w,device_id:w,web_id:w,user_unique_id_type:w},header:{app_id:w,app_name:w,app_install_id:w,install_id:w,app_package:w,app_channel:w,app_version:w,ab_version:w,os_name:i.os_name,os_version:i.os_version,device_model:i.device_model,ab_client:w,traffic_type:w,client_ip:w,device_brand:w,os_api:w,access:w,language:i.language,region:w,app_language:w,app_region:w,creative_id:w,ad_id:w,campaign_id:w,log_type:w,rnd:w,platform:i.platform,sdk_version:"0.0.5-lite",sdk_lib:"js",province:w,city:w,timezone:k,tz_offset:x,tz_name:w,sim_region:w,carrier:w,resolution:i.screen_width+"x"+i.screen_height,browser:i.browser,browser_version:i.browser_version,referrer:i.referrer,referrer_host:i.referrer_host,width:i.screen_width,height:i.screen_height,screen_width:i.screen_width,screen_height:i.screen_height,utm_term:w,utm_content:w,utm_source:w,utm_medium:w,utm_campaign:w,custom:{},wechat_unionid:w,wechat_openid:w}},this.evtParams={},this.reportErrorCallback=function(){},this.initDomain()}return t.prototype.initDomain=function(){var e=this.initConfig.channel_domain;if(e)this.domain=e;else{var t=this.initConfig.channel;this.domain=a(y[t])}},t.prototype.setDomain=function(e){this.domain=e},t.prototype.getDomain=function(){return this.domain},t.prototype.getUrl=function(e){var t="";switch(e){case"event":t=this.initConfig.report_url||"/list";break;case"webid":t="/webid"}return""+this.getDomain()+t},t.prototype.set=function(t){var i=this;Object.keys(t).forEach((function(n){"evtParams"===n?i.evtParams=e({},i.evtParams||{},t.evtParams||{}):"_staging_flag"===n?i.evtParams=e({},i.evtParams||{},{_staging_flag:t._staging_flag}):"reportErrorCallback"===n&&"function"==typeof t[n]?i.reportErrorCallback=t[n]:Object.hasOwnProperty.call(i.envInfo.user,n)?["user_id","web_id","user_unique_id"].indexOf(n)>-1&&(i.envInfo.user[n]=t[n]?String(t[n]):t[n]):Object.hasOwnProperty.call(i.envInfo.header,n)?i.envInfo.header[n]=t[n]:i.envInfo.header.custom[n]=t[n]}))},t.prototype.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 ")}},t}();!function(e){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.TokenChange="token-change",e.TokenReset="token-reset",e.SessionReset="session-reset",e.SessionResetTime="session-reset-time",e.Event="event",e.Events="events",e.BeconEvent="becon-event",e.SubmitBefore="submit-before"}(l||(l={}));var S=l,I=500,z=5005;function M(e,t,i,n,o,r,s,a,c){try{var h=new XMLHttpRequest,u=a||"POST";h.open(u,""+e,!0),h.setRequestHeader("Content-Type","application/json; charset=utf-8"),i&&(h.timeout=i,h.ontimeout=function(){r&&r(t,z)}),h.onload=function(){if(o){var e=null;if(h.responseText){try{e=JSON.parse(h.responseText)}catch(t){e={}}o(e,t)}}},h.onerror=function(){h.abort(),r&&r(t,I)},c?h.send(t):h.send(JSON.stringify(t))}catch(e){}}var T=4003,C=function(){function t(){this.eventLimit=50,this.eventCache=[],this.beconEventCache=[]}return t.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=e.configManager,this.cacheStorgae=new v(!0),this.localStorage=new v(!1),this.maxReport=t.max_report||20,this.reportTime=t.reportTime||30,this.timeout=t.timeout||1e5,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.collect.on(S.Ready,(function(){i.reportAll(!1)})),this.collect.on(S.Event,(function(e){i.event(e)})),this.collect.on(S.BeconEvent,(function(e){i.beconEvent(e)})),this.linster()},t.prototype.linster=function(){var e=this;window.addEventListener("unload",(function(){e.reportAll(!0)}),!1),function(e){navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)?window.addEventListener("pagehide",e,!1):window.addEventListener("beforeunload",e,!1)}((function(){e.reportAll(!0)})),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&e.reportAll(!0)}),!1)},t.prototype.reportAll=function(e){this.report(e),this.reportBecon()},t.prototype.event=function(e){var t=this;try{var n=i(e,this.cacheStorgae.getItem(this.eventKey)||[]);if(this.cacheStorgae.setItem(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){}},t.prototype.beconEvent=function(e){var t=i(e,this.cacheStorgae.getItem(this.beconKey)||[]);this.cacheStorgae.setItem(this.beconKey,t),this.collect.destroyInstance||this.collect.tokenManager.getReady()&&this.collect.sdkReady&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(t)),!0))},t.prototype.reportBecon=function(){var e=this.cacheStorgae.getItem(this.beconKey)||[];e&&e.length&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(e)),!0))},t.prototype.report=function(e){if(!this.collect.destroyInstance&&this.collect.tokenManager.getReady()&&this.collect.sdkReady){var t=this.cacheStorgae.getItem(this.eventKey)||[];t.length&&(this.cacheStorgae.removeItem(this.eventKey),this.sliceEvent(t,e))}},t.prototype.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{o=this.split(this.merge(e));this.send(o,t)}},t.prototype.merge=function(t){var i=this,n=this.configManager.get(),o=n.header,r=n.user;o.custom=JSON.stringify(o.custom);var s=this.configManager.get("evtParams"),a=t.map((function(t){try{return Object.keys(s).length&&(t.params=e({},s,t.params)),t.session_id=i.collect.sessionManager.getSessionId(),t.params=JSON.stringify(t.params),t}catch(e){return t}})),c=[];if(!Object.keys(r).length)return console.warn("user info error,cant report"),c;var h=JSON.parse(JSON.stringify({events:a,user:r,header:o}));return h.local_time=Math.floor(Date.now()/1e3),h.verbose=1,c.push(h),c},t.prototype.split=function(e){return e=e.map((function(e){var t=[];return t.push(e),t}))},t.prototype.send=function(e,t){var i=this;e.length&&e.forEach((function(e){try{if(!e.length)return;i.collect.emit(S.SubmitBefore,e),n=i.reportUrl,o=e,r=i.timeout,s=function(e,t){},a=function(e,t){i.configManager.get("reportErrorCallback")(e,t)},c=!1,t&&window.navigator&&window.navigator.sendBeacon?window.navigator.sendBeacon(n,JSON.stringify(o))?s():a(n,o,T):M(n,o,r,0,s,a,0,"",c)}catch(e){console.warn("something error, "+JSON.stringify(e.stack))}var n,o,r,s,a,c}))},t}(),E=function e(t){return t?(t^16*Math.random()>>t/4).toString(10):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e)},P=function(){return E().replace(/-/g,"").slice(0,19)},A=function(){function e(){this.cacheToken={}}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=this.collect.configManager,this.storage=new v(!1),this.tokenKey="__tea_cache_tokens_"+t.app_id,this.collect.on(S.ConfigUuid,(function(e){i.setUuid(e)})),this.checkStorage()},e.prototype.checkStorage=function(){this.cacheToken=this.storage.getItem(this.tokenKey)||{},this.check()},e.prototype.check=function(){this.cacheToken&&this.cacheToken.web_id?this.complete(this.cacheToken):this.remoteWebid()},e.prototype.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:""},n=P();M(t,i,3e5,0,(function(t){var i;t&&0===t.e?i=t.web_id:(i=n,e.collect.configManager.set({localWebId:n}),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})}),(function(){e.complete({web_id:e.configManager.get("web_id")||n,user_unique_id:e.configManager.get("user_unique_id")||n}),e.collect.configManager.set({localWebId:n}),e.collect.logger.warn("appid: "+e.config.app_id+", get webid error, use local webid~")}))},e.prototype.complete=function(e){var t=e.web_id,i=e.user_unique_id;t||i?(e.timestamp=Date.now(),this.collect.configManager.set({web_id:t,user_unique_id:i}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(S.TokenComplete)):console.warn("token error")},e.prototype.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)}else this.clearUuid()},e.prototype.clearUuid=function(){this.config.enable_ttwebid||this.configManager.get("web_id")&&(this.configManager.set({user_unique_id:this.configManager.get("web_id")}),this.cacheToken&&this.cacheToken.web_id&&(this.cacheToken.user_unique_id=this.cacheToken.web_id,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken)),this.collect.emit(S.TokenReset))},e.prototype.setStorage=function(e){e._type_="default",this.storage.setItem(this.tokenKey,e),this.cacheToken=e},e.prototype.getReady=function(){return this.tokenReady},e}(),D=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)}))},N=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.storage=new v(!1,"session"),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(S.SessionReset,(function(){i.resetSessionId()})),this.collect.on(S.SessionResetTime,(function(){i.updateSessionIdTime()})))},e.prototype.updateSessionIdTime=function(){var e=this.storage.getItem(this.sessionKey);if(e&&e.sessionId){var t=e.timestamp;Date.now()-t>this.expireTime?e={sessionId:D(),timestamp:Date.now()}:e.timestamp=Date.now(),this.storage.setItem(this.sessionKey,e),this.resetExpTime()}},e.prototype.setSessionId=function(){var e=this,t=this.storage.getItem(this.sessionKey);t&&t.sessionId?t.timestamp=Date.now():t={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,t),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime)},e.prototype.getSessionId=function(){var e=this.storage.getItem(this.sessionKey);return this.disableSession?"":e&&e.sessionId?e.sessionId:""},e.prototype.resetExpTime=function(){var e=this;this.sessionExp&&(clearInterval(this.sessionExp),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime))},e.prototype.resetSessionId=function(){var e={sessionId:D(),timestamp:Date.now()};this.storage.setItem(this.sessionKey,e)},e.prototype.checkEXp=function(){var e=this.storage.getItem(this.sessionKey);e&&e.sessionId&&(Date.now()-e.timestamp+30>=this.expireTime&&(e={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,e)))},e}(),R=function(){function t(e){this.disableAutoPageView=!1,this.staging=!1,this.sended=!1,this.started=!1,this.adapters={},this.sdkReady=!1,this.pluginInstances=[],this.name=e,this.hook=new o,this.Types=S,this.adapters.fetch=M,this.adapters.storage=v}return 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})},t.prototype.init=function(e){var i,n=this;this.inited?console.log("init can be call only one time"):e&&r(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.inited=!0,this.configManager=new O(this,e),this.initConfig=e,e.disable_auto_pv&&(this.disableAutoPageView=!0),this.configManager.set({app_id:e.app_id}),this.eventManager=new C,this.tokenManager=new A,this.sessionManager=new N,Promise.all([new Promise((function(e){n.once(S.TokenComplete,(function(){e(!0)}))})),new Promise((function(e){n.once(S.Start,(function(){e(!0)}))}))]).then((function(){try{t.plugins.reduce((function(e,t){var i=t.plugin,o=t.options,r=Object.assign(n.initConfig,o),s=new i;return s.apply(n,r),e.push(s),e}),n.pluginInstances)}catch(e){console.warn("load plugin error, "+e.message)}n.sdkReady=!0,n.emit(S.Ready),console.info("appid: "+e.app_id+", userInfo:"+JSON.stringify(n.configManager.get("user"))),console.info("appid: "+e.app_id+", sdk is ready, version is 0.0.5-lite, you can report now !!!"),n.pageView()})),this.tokenManager.apply(this,e),this.eventManager.apply(this,e),this.sessionManager.apply(this,e),this.emit(S.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")},t.prototype.config=function(t){if(this.inited)if(t&&r(t)){t._staging_flag&&1===t._staging_flag&&(this.staging=!0),t.disable_auto_pv&&(this.disableAutoPageView=!0,delete t.disable_auto_pv);var i=e({},t);i.user_unique_id;var n=function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(i[n[o]]=e[n[o]])}return i}(i,["user_unique_id"]);i.hasOwnProperty("user_unique_id")&&this.emit(S.ConfigUuid,i.user_unique_id),this.configManager.set(n)}else console.warn("config params is error, please check");else console.warn("config must be use after function init")},t.prototype.getConfig=function(e){return this.configManager.get(e)},t.prototype.start=function(){this.inited&&!this.sended&&(this.sended=!0,this.emit(S.Start))},t.prototype.event=function(e,t){var i=this;try{var n=[];Array.isArray(e)?e.forEach((function(e){n.push(i.processEvent(e[0],e[1]||{}))})):n.push(this.processEvent(e,t)),n.length&&(this.emit(S.Event,n),this.emit(S.SessionResetTime))}catch(e){console.warn("something error, please check")}},t.prototype.beconEvent=function(e,t){if(Array.isArray(e))console.warn("beconEvent not support batch report, please check");else{var i=[];i.push(this.processEvent(e,t||{})),i.length&&(this.emit(S.BeconEvent,i),this.emit(S.SessionResetTime))}},t.prototype.processEvent=function(e,t){void 0===t&&(t={});try{var i=e;/^event\./.test(e)&&(i=e.slice(6));var n=t;"object"!=typeof n&&(n={}),n.event_index=s();var o=void 0;return n.local_ms?(o=n.local_ms,delete n.local_ms):o=+new Date,{event:i,params:n,local_time_ms:o}}catch(i){return{event:e,params:t}}},t.prototype.on=function(e,t){this.hook.on(e,t)},t.prototype.once=function(e,t){this.hook.once(e,t)},t.prototype.off=function(e,t){this.hook.off(e,t)},t.prototype.emit=function(e,t,i){this.hook.emit(e,t,i)},t.prototype.set=function(e){this.hook.set(e)},t.prototype.pageView=function(){this.disableAutoPageView||this.predefinePageView()},t.prototype.predefinePageView=function(t){void 0===t&&(t={});var i={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)},n=e({},i,t);this.event("predefine_pageview",n)},t.plugins=[],t}(),B=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;if(t.event_verify_url)if("string"==typeof t.event_verify_url){if(this.url=t.event_verify_url+"/v1/list_test",this.url){var n=e.Types;e.on(n.SubmitBefore,(function(e){window.navigator.sendBeacon(i.url,JSON.stringify(e))}))}}else console.log("please use correct et_test url")},e}();R.usePlugin(B,"et");var q=new R("default"),j=R;export{j as Collector,q as default};
|
package/lib/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=function(){return e=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var o in t=arguments[i])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},e.apply(this,arguments)};function t(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var n,o,r=i.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=r.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return s}function i(){for(var e=[],i=0;i<arguments.length;i++)e=e.concat(t(arguments[i]));return e}var n,o=function(){function e(){this._hooks={},this._cache=[],this._hooksCache={}}return e.prototype.on=function(e,t){e&&t&&"function"==typeof t&&(this._hooks[e]||(this._hooks[e]=[]),this._hooks[e].push(t))},e.prototype.once=function(e,t){var i=this;if(e&&t&&"function"==typeof t){this.on(e,(function n(o){t(o),i.off(e,n)}))}},e.prototype.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]=[]},e.prototype.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)},e.prototype._emit=function(e,t){e&&this._hooks[e]&&this._hooks[e].length&&i(this._hooks[e]).forEach((function(e){try{e(t)}catch(e){}}))},e.prototype.set=function(e){e&&-1===this._cache.indexOf(e)&&this._cache.push(e)},e}(),r=function(e){return null!=e&&"[object Object]"==Object.prototype.toString.call(e)},s=(n=+Date.now()+Number((""+Math.random()).slice(2,8)),function(){return n+=1}),a=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)},c=function(e){var t=document.createElement("a");return t.href=e,t},h=function(){function e(e){this.appid=e,this.userAgent=window.navigator.userAgent,this.appVersion=window.navigator.appVersion}return e.prototype.init=function(){var e=window.navigator.userAgent,t=window.navigator.language,i=document.referrer,n=i?c(i).hostname:"";!function(e){var t={};try{var i=c(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){}}(window.location.href);var o=/Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion)?"wap":"web",r=this.browser(),s=this.os();return{browser:r.browser,browser_version:r.browser_version,platform:o,os_name:s.os_name,os_version:s.os_version,userAgent:e,screen_width:window.screen&&window.screen.width,screen_height:window.screen&&window.screen.height,device_model:this.getDeviceModel(s.os_name),language:t,referrer:i,referrer_host:n}},e.prototype.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}},e.prototype.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}},e.prototype.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()},e.prototype.isNewIpad=function(){return void 0!==this.userAgent&&"MacIntel"===navigator.platform&&"number"==typeof navigator.maxTouchPoints&&navigator.maxTouchPoints>1},e}();"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var u,p,f=(u=function(e,t){e.exports=function(){function e(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var n in i)e[n]=i[n]}return e}function t(i,n){function o(t,o,r){if("undefined"!=typeof document){"number"==typeof(r=e({},n,r)).expires&&(r.expires=new Date(Date.now()+864e5*r.expires)),r.expires&&(r.expires=r.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var s="";for(var a in r)r[a]&&(s+="; "+a,!0!==r[a]&&(s+="="+r[a].split(";")[0]));return document.cookie=t+"="+i.write(o,t)+s}}function r(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],n={},o=0;o<t.length;o++){var r=t[o].split("="),s=r.slice(1).join("=");try{var a=decodeURIComponent(r[0]);if(n[a]=i.read(s,a),e===a)break}catch(e){}}return e?n[e]:n}}return Object.create({set:o,get:r,remove:function(t,i){o(t,"",e({},i,{expires:-1}))},withAttributes:function(i){return t(this.converter,e({},this.attributes,i))},withConverter:function(i){return t(e({},this.converter,i),this.attributes)}},{attributes:{value:Object.freeze(n)},converter:{value:Object.freeze(i)}})}return t({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})}()},u(p={exports:{}},p.exports),p.exports),g=f,d=function(){function e(){this.cache={}}return e.prototype.setItem=function(e,t){this.cache[e]=t},e.prototype.getItem=function(e){return this.cache[e]},e.prototype.removeItem=function(e){this.cache[e]=void 0},e.prototype.getCookie=function(e){this.getItem(e)},e.prototype.setCookie=function(e,t){this.setItem(e,t)},e}();var l,m={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);localStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{localStorage.removeItem(e)}catch(e){}},getCookie:function(e,t){try{return g.get(e,{domain:t||document.domain})}catch(e){return""}},setCookie:function(e,t,i,n){try{var o=n||document.domain,r=+new Date+i;g.set(e,t,{expires:new Date(r),path:"/",domain:o})}catch(e){}},isSupportLS:function(){try{return localStorage.setItem("_ranger-test-key","hi"),localStorage.getItem("_ranger-test-key"),localStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},_={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);sessionStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{sessionStorage.removeItem(e)}catch(e){}},getCookie:function(e){this.getItem(e)},setCookie:function(e,t){this.setItem(e,t)},isSupportSession:function(){try{return sessionStorage.setItem("_ranger-test-key","hi"),sessionStorage.getItem("_ranger-test-key"),sessionStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},v=function(){function e(e,t){this._storage=t&&"session"===t?_:!e&&m.isSupportLS?m:new d}return e.prototype.getItem=function(e){return this._storage.getItem(e)},e.prototype.setItem=function(e,t){this._storage.setItem(e,t)},e.prototype.getCookie=function(e,t){return this._storage.getCookie(e,t)},e.prototype.setCookie=function(e,t,i,n){this._storage.setCookie(e,t,i,n)},e.prototype.removeItem=function(e){this._storage.removeItem(e)},e}(),y={cn:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az24z1mz1jz1az1cz18z1nz1nz1jz1mz1ez4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},w=void 0,b=(new Date).getTimezoneOffset(),k=parseInt(""+-b/60,10),x=60*b,O=function(){function t(e,t){this.is_first_time=!0,this.initConfig=t,this.collect=e;var i=new h(t.app_id).init(),n="__tea_cache_first_"+t.app_id;this.configKey="__tea_cache_config_"+t.app_id,this.sessionStorage=new v(!1,"session"),this.localStorage=new v(!1,"local");var o=this.localStorage.getItem(n);o&&1==o?this.is_first_time=!1:(this.is_first_time=!0,this.localStorage.setItem(n,"1")),this.envInfo={user:{user_unique_id:w,user_type:w,user_id:w,user_is_auth:w,user_is_login:w,device_id:w,web_id:w,user_unique_id_type:w},header:{app_id:w,app_name:w,app_install_id:w,install_id:w,app_package:w,app_channel:w,app_version:w,ab_version:w,os_name:i.os_name,os_version:i.os_version,device_model:i.device_model,ab_client:w,traffic_type:w,client_ip:w,device_brand:w,os_api:w,access:w,language:i.language,region:w,app_language:w,app_region:w,creative_id:w,ad_id:w,campaign_id:w,log_type:w,rnd:w,platform:i.platform,sdk_version:"0.0.4-lite",sdk_lib:"js",province:w,city:w,timezone:k,tz_offset:x,tz_name:w,sim_region:w,carrier:w,resolution:i.screen_width+"x"+i.screen_height,browser:i.browser,browser_version:i.browser_version,referrer:i.referrer,referrer_host:i.referrer_host,width:i.screen_width,height:i.screen_height,screen_width:i.screen_width,screen_height:i.screen_height,utm_term:w,utm_content:w,utm_source:w,utm_medium:w,utm_campaign:w,custom:{},wechat_unionid:w,wechat_openid:w}},this.evtParams={},this.reportErrorCallback=function(){},this.initDomain()}return t.prototype.initDomain=function(){var e=this.initConfig.channel_domain;if(e)this.domain=e;else{var t=this.initConfig.channel;this.domain=a(y[t])}},t.prototype.setDomain=function(e){this.domain=e},t.prototype.getDomain=function(){return this.domain},t.prototype.getUrl=function(e){var t="";switch(e){case"event":t=this.initConfig.report_url||"/list";break;case"webid":t="/webid"}return""+this.getDomain()+t},t.prototype.set=function(t){var i=this;Object.keys(t).forEach((function(n){"evtParams"===n?i.evtParams=e({},i.evtParams||{},t.evtParams||{}):"_staging_flag"===n?i.evtParams=e({},i.evtParams||{},{_staging_flag:t._staging_flag}):"reportErrorCallback"===n&&"function"==typeof t[n]?i.reportErrorCallback=t[n]:Object.hasOwnProperty.call(i.envInfo.user,n)?["user_id","web_id","user_unique_id"].indexOf(n)>-1&&(i.envInfo.user[n]=t[n]?String(t[n]):t[n]):Object.hasOwnProperty.call(i.envInfo.header,n)?i.envInfo.header[n]=t[n]:i.envInfo.header.custom[n]=t[n]}))},t.prototype.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 ")}},t}();!function(e){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.TokenChange="token-change",e.TokenReset="token-reset",e.SessionReset="session-reset",e.SessionResetTime="session-reset-time",e.Event="event",e.Events="events",e.BeconEvent="becon-event",e.SubmitBefore="submit-before"}(l||(l={}));var S=l,I=500,z=5005;function M(e,t,i,n,o,r,s,a,c){try{var h=new XMLHttpRequest,u=a||"POST";h.open(u,""+e,!0),h.setRequestHeader("Content-Type","application/json; charset=utf-8"),i&&(h.timeout=i,h.ontimeout=function(){r&&r(t,z)}),h.onload=function(){if(o){var e=null;if(h.responseText){try{e=JSON.parse(h.responseText)}catch(t){e={}}o(e,t)}}},h.onerror=function(){h.abort(),r&&r(t,I)},c?h.send(t):h.send(JSON.stringify(t))}catch(e){}}var T=4003,C=function(){function t(){this.eventLimit=50,this.eventCache=[],this.beconEventCache=[]}return t.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=e.configManager,this.cacheStorgae=new v(!0),this.localStorage=new v(!1),this.maxReport=t.max_report||20,this.reportTime=t.reportTime||30,this.timeout=t.timeout||1e5,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.collect.on(S.Ready,(function(){i.reportAll(!1)})),this.collect.on(S.Event,(function(e){i.event(e)})),this.collect.on(S.BeconEvent,(function(e){i.beconEvent(e)})),this.linster()},t.prototype.linster=function(){var e=this;window.addEventListener("unload",(function(){e.reportAll(!0)}),!1),function(e){navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)?window.addEventListener("pagehide",e,!1):window.addEventListener("beforeunload",e,!1)}((function(){e.reportAll(!0)})),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&e.reportAll(!0)}),!1)},t.prototype.reportAll=function(e){this.report(e),this.reportBecon()},t.prototype.event=function(e){var t=this;try{var n=i(e,this.cacheStorgae.getItem(this.eventKey)||[]);if(this.cacheStorgae.setItem(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){}},t.prototype.beconEvent=function(e){var t=i(e,this.cacheStorgae.getItem(this.beconKey)||[]);this.cacheStorgae.setItem(this.beconKey,t),this.collect.destroyInstance||this.collect.tokenManager.getReady()&&this.collect.sdkReady&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(t)),!0))},t.prototype.reportBecon=function(){var e=this.cacheStorgae.getItem(this.beconKey)||[];e&&e.length&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(e)),!0))},t.prototype.report=function(e){if(!this.collect.destroyInstance&&this.collect.tokenManager.getReady()&&this.collect.sdkReady){var t=this.cacheStorgae.getItem(this.eventKey)||[];t.length&&(this.cacheStorgae.removeItem(this.eventKey),this.sliceEvent(t,e))}},t.prototype.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{o=this.split(this.merge(e));this.send(o,t)}},t.prototype.merge=function(t){var i=this,n=this.configManager.get(),o=n.header,r=n.user;o.custom=JSON.stringify(o.custom);var s=this.configManager.get("evtParams"),a=t.map((function(t){try{return Object.keys(s).length&&(t.params=e({},s,t.params)),t.session_id=i.collect.sessionManager.getSessionId(),t.params=JSON.stringify(t.params),t}catch(e){return t}})),c=[];if(!Object.keys(r).length)return console.warn("user info error,cant report"),c;var h=JSON.parse(JSON.stringify({events:a,user:r,header:o}));return h.local_time=Math.floor(Date.now()/1e3),h.verbose=1,c.push(h),c},t.prototype.split=function(e){return e=e.map((function(e){var t=[];return t.push(e),t}))},t.prototype.send=function(e,t){var i=this;e.length&&e.forEach((function(e){try{if(!e.length)return;i.collect.emit(S.SubmitBefore,e),n=i.reportUrl,o=e,r=i.timeout,s=function(e,t){},a=function(e,t){i.configManager.get("reportErrorCallback")(e,t)},c=!1,t&&window.navigator&&window.navigator.sendBeacon?window.navigator.sendBeacon(n,JSON.stringify(o))?s():a(n,o,T):M(n,o,r,0,s,a,0,"",c)}catch(e){console.warn("something error, "+JSON.stringify(e.stack))}var n,o,r,s,a,c}))},t}(),E=function e(t){return t?(t^16*Math.random()>>t/4).toString(10):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e)},P=function(){return E().replace(/-/g,"").slice(0,19)},A=function(){function e(){this.cacheToken={}}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=this.collect.configManager,this.storage=new v(!1),this.tokenKey="__tea_cache_tokens_"+t.app_id,this.collect.on(S.ConfigUuid,(function(e){i.setUuid(e)})),this.checkStorage()},e.prototype.checkStorage=function(){this.cacheToken=this.storage.getItem(this.tokenKey)||{},this.check()},e.prototype.check=function(){this.cacheToken&&this.cacheToken.web_id?this.complete(this.cacheToken):this.remoteWebid()},e.prototype.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:""},n=P();M(t,i,3e5,0,(function(t){var i;t&&0===t.e?i=t.web_id:(i=n,e.collect.configManager.set({localWebId:n}),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})}),(function(){e.complete({web_id:e.configManager.get("web_id")||n,user_unique_id:e.configManager.get("user_unique_id")||n}),e.collect.configManager.set({localWebId:n}),e.collect.logger.warn("appid: "+e.config.app_id+", get webid error, use local webid~")}))},e.prototype.complete=function(e){var t=e.web_id,i=e.user_unique_id;t||i?(e.timestamp=Date.now(),this.collect.configManager.set({web_id:t,user_unique_id:i}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(S.TokenComplete)):console.warn("token error")},e.prototype.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)}else this.clearUuid()},e.prototype.clearUuid=function(){this.config.enable_ttwebid||this.configManager.get("web_id")&&(this.configManager.set({user_unique_id:this.configManager.get("web_id")}),this.cacheToken&&this.cacheToken.web_id&&(this.cacheToken.user_unique_id=this.cacheToken.web_id,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken)),this.collect.emit(S.TokenReset))},e.prototype.setStorage=function(e){e._type_="default",this.storage.setItem(this.tokenKey,e),this.cacheToken=e},e.prototype.getReady=function(){return this.tokenReady},e}(),D=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)}))},N=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.storage=new v(!1,"session"),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(S.SessionReset,(function(){i.resetSessionId()})),this.collect.on(S.SessionResetTime,(function(){i.updateSessionIdTime()})))},e.prototype.updateSessionIdTime=function(){var e=this.storage.getItem(this.sessionKey);if(e&&e.sessionId){var t=e.timestamp;Date.now()-t>this.expireTime?e={sessionId:D(),timestamp:Date.now()}:e.timestamp=Date.now(),this.storage.setItem(this.sessionKey,e),this.resetExpTime()}},e.prototype.setSessionId=function(){var e=this,t=this.storage.getItem(this.sessionKey);t&&t.sessionId?t.timestamp=Date.now():t={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,t),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime)},e.prototype.getSessionId=function(){var e=this.storage.getItem(this.sessionKey);return this.disableSession?"":e&&e.sessionId?e.sessionId:""},e.prototype.resetExpTime=function(){var e=this;this.sessionExp&&(clearInterval(this.sessionExp),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime))},e.prototype.resetSessionId=function(){var e={sessionId:D(),timestamp:Date.now()};this.storage.setItem(this.sessionKey,e)},e.prototype.checkEXp=function(){var e=this.storage.getItem(this.sessionKey);e&&e.sessionId&&(Date.now()-e.timestamp+30>=this.expireTime&&(e={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,e)))},e}(),R=function(){function t(e){this.disableAutoPageView=!1,this.staging=!1,this.sended=!1,this.started=!1,this.adapters={},this.sdkReady=!1,this.pluginInstances=[],this.name=e,this.hook=new o,this.Types=S,this.adapters.fetch=M,this.adapters.storage=v}return 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})},t.prototype.init=function(e){var i,n=this;this.inited?console.log("init can be call only one time"):e&&r(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.inited=!0,this.configManager=new O(this,e),this.initConfig=e,e.disable_auto_pv&&(this.disableAutoPageView=!0),this.configManager.set({app_id:e.app_id}),this.eventManager=new C,this.tokenManager=new A,this.sessionManager=new N,Promise.all([new Promise((function(e){n.once(S.TokenComplete,(function(){e(!0)}))})),new Promise((function(e){n.once(S.Start,(function(){e(!0)}))}))]).then((function(){try{t.plugins.reduce((function(e,t){var i=t.plugin,o=t.options,r=Object.assign(n.initConfig,o),s=new i;return s.apply(n,r),e.push(s),e}),n.pluginInstances)}catch(e){console.warn("load plugin error, "+e.message)}n.sdkReady=!0,n.emit(S.Ready),console.info("appid: "+e.app_id+", userInfo:"+JSON.stringify(n.configManager.get("user"))),console.info("appid: "+e.app_id+", sdk is ready, version is 0.0.4-lite, you can report now !!!"),n.pageView()})),this.tokenManager.apply(this,e),this.eventManager.apply(this,e),this.sessionManager.apply(this,e),this.emit(S.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")},t.prototype.config=function(t){if(this.inited)if(t&&r(t)){t._staging_flag&&1===t._staging_flag&&(this.staging=!0),t.disable_auto_pv&&(this.disableAutoPageView=!0,delete t.disable_auto_pv);var i=e({},t);i.user_unique_id;var n=function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(i[n[o]]=e[n[o]])}return i}(i,["user_unique_id"]);i.hasOwnProperty("user_unique_id")&&this.emit(S.ConfigUuid,i.user_unique_id),this.configManager.set(n)}else console.warn("config params is error, please check");else console.warn("config must be use after function init")},t.prototype.getConfig=function(e){return this.configManager.get(e)},t.prototype.start=function(){this.inited&&!this.sended&&(this.sended=!0,this.emit(S.Start))},t.prototype.event=function(e,t){var i=this;try{var n=[];Array.isArray(e)?e.forEach((function(e){n.push(i.processEvent(e[0],e[1]||{}))})):n.push(this.processEvent(e,t)),n.length&&(this.emit(S.Event,n),this.emit(S.SessionResetTime))}catch(e){console.warn("something error, please check")}},t.prototype.beconEvent=function(e,t){if(Array.isArray(e))console.warn("beconEvent not support batch report, please check");else{var i=[];i.push(this.processEvent(e,t||{})),i.length&&(this.emit(S.BeconEvent,i),this.emit(S.SessionResetTime))}},t.prototype.processEvent=function(e,t){void 0===t&&(t={});try{var i=e;/^event\./.test(e)&&(i=e.slice(6));var n=t;"object"!=typeof n&&(n={}),n.event_index=s();var o=void 0;return n.local_ms?(o=n.local_ms,delete n.local_ms):o=+new Date,{event:i,params:n,local_time_ms:o}}catch(i){return{event:e,params:t}}},t.prototype.on=function(e,t){this.hook.on(e,t)},t.prototype.once=function(e,t){this.hook.once(e,t)},t.prototype.off=function(e,t){this.hook.off(e,t)},t.prototype.emit=function(e,t,i){this.hook.emit(e,t,i)},t.prototype.set=function(e){this.hook.set(e)},t.prototype.pageView=function(){this.disableAutoPageView||this.predefinePageView()},t.prototype.predefinePageView=function(t){void 0===t&&(t={});var i={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)},n=e({},i,t);this.event("predefine_pageview",n)},t.plugins=[],t}(),B=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;if(t.event_verify_url)if("string"==typeof t.event_verify_url){if(this.url=t.event_verify_url+"/v1/list_test",this.url){var n=e.Types;e.on(n.SubmitBefore,(function(e){window.navigator.sendBeacon(i.url,JSON.stringify(e))}))}}else console.log("please use correct et_test url")},e}();R.usePlugin(B,"et");var j=new R("default"),q=R;exports.Collector=q,exports.default=j;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=function(){return e=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var o in t=arguments[i])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},e.apply(this,arguments)};function t(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var n,o,r=i.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=r.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return s}function i(){for(var e=[],i=0;i<arguments.length;i++)e=e.concat(t(arguments[i]));return e}var n,o=function(){function e(){this._hooks={},this._cache=[],this._hooksCache={}}return e.prototype.on=function(e,t){e&&t&&"function"==typeof t&&(this._hooks[e]||(this._hooks[e]=[]),this._hooks[e].push(t))},e.prototype.once=function(e,t){var i=this;if(e&&t&&"function"==typeof t){this.on(e,(function n(o){t(o),i.off(e,n)}))}},e.prototype.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]=[]},e.prototype.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)},e.prototype._emit=function(e,t){e&&this._hooks[e]&&this._hooks[e].length&&i(this._hooks[e]).forEach((function(e){try{e(t)}catch(e){}}))},e.prototype.set=function(e){e&&-1===this._cache.indexOf(e)&&this._cache.push(e)},e}(),r=function(e){return null!=e&&"[object Object]"==Object.prototype.toString.call(e)},s=(n=+Date.now()+Number((""+Math.random()).slice(2,8)),function(){return n+=1}),a=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)},c=function(e){var t=document.createElement("a");return t.href=e,t},h=function(){function e(e){this.appid=e,this.userAgent=window.navigator.userAgent,this.appVersion=window.navigator.appVersion}return e.prototype.init=function(){var e=window.navigator.userAgent,t=window.navigator.language,i=document.referrer,n=i?c(i).hostname:"";!function(e){var t={};try{var i=c(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){}}(window.location.href);var o=/Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion)?"wap":"web",r=this.browser(),s=this.os();return{browser:r.browser,browser_version:r.browser_version,platform:o,os_name:s.os_name,os_version:s.os_version,userAgent:e,screen_width:window.screen&&window.screen.width,screen_height:window.screen&&window.screen.height,device_model:this.getDeviceModel(s.os_name),language:t,referrer:i,referrer_host:n}},e.prototype.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}},e.prototype.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}},e.prototype.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()},e.prototype.isNewIpad=function(){return void 0!==this.userAgent&&"MacIntel"===navigator.platform&&"number"==typeof navigator.maxTouchPoints&&navigator.maxTouchPoints>1},e}();"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var u,p,f=(u=function(e,t){e.exports=function(){function e(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var n in i)e[n]=i[n]}return e}function t(i,n){function o(t,o,r){if("undefined"!=typeof document){"number"==typeof(r=e({},n,r)).expires&&(r.expires=new Date(Date.now()+864e5*r.expires)),r.expires&&(r.expires=r.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var s="";for(var a in r)r[a]&&(s+="; "+a,!0!==r[a]&&(s+="="+r[a].split(";")[0]));return document.cookie=t+"="+i.write(o,t)+s}}function r(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],n={},o=0;o<t.length;o++){var r=t[o].split("="),s=r.slice(1).join("=");try{var a=decodeURIComponent(r[0]);if(n[a]=i.read(s,a),e===a)break}catch(e){}}return e?n[e]:n}}return Object.create({set:o,get:r,remove:function(t,i){o(t,"",e({},i,{expires:-1}))},withAttributes:function(i){return t(this.converter,e({},this.attributes,i))},withConverter:function(i){return t(e({},this.converter,i),this.attributes)}},{attributes:{value:Object.freeze(n)},converter:{value:Object.freeze(i)}})}return t({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})}()},u(p={exports:{}},p.exports),p.exports),g=f,d=function(){function e(){this.cache={}}return e.prototype.setItem=function(e,t){this.cache[e]=t},e.prototype.getItem=function(e){return this.cache[e]},e.prototype.removeItem=function(e){this.cache[e]=void 0},e.prototype.getCookie=function(e){this.getItem(e)},e.prototype.setCookie=function(e,t){this.setItem(e,t)},e}();var l,m={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);localStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{localStorage.removeItem(e)}catch(e){}},getCookie:function(e,t){try{return g.get(e,{domain:t||document.domain})}catch(e){return""}},setCookie:function(e,t,i,n){try{var o=n||document.domain,r=+new Date+i;g.set(e,t,{expires:new Date(r),path:"/",domain:o})}catch(e){}},isSupportLS:function(){try{return localStorage.setItem("_ranger-test-key","hi"),localStorage.getItem("_ranger-test-key"),localStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},_={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{}},setItem:function(e,t){try{var i="string"==typeof t?t:JSON.stringify(t);sessionStorage.setItem(e,i)}catch(e){}},removeItem:function(e){try{sessionStorage.removeItem(e)}catch(e){}},getCookie:function(e){this.getItem(e)},setCookie:function(e,t){this.setItem(e,t)},isSupportSession:function(){try{return sessionStorage.setItem("_ranger-test-key","hi"),sessionStorage.getItem("_ranger-test-key"),sessionStorage.removeItem("_ranger-test-key"),!0}catch(e){return!1}}()},v=function(){function e(e,t){this._storage=t&&"session"===t?_:!e&&m.isSupportLS?m:new d}return e.prototype.getItem=function(e){return this._storage.getItem(e)},e.prototype.setItem=function(e,t){this._storage.setItem(e,t)},e.prototype.getCookie=function(e,t){return this._storage.getCookie(e,t)},e.prototype.setCookie=function(e,t,i,n){this._storage.setCookie(e,t,i,n)},e.prototype.removeItem=function(e){this._storage.removeItem(e)},e}(),y={cn:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az24z1mz1jz1az1cz18z1nz1nz1jz1mz1ez4az1az1mz1k",va:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k",sg:"1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k"},w=void 0,b=(new Date).getTimezoneOffset(),k=parseInt(""+-b/60,10),x=60*b,O=function(){function t(e,t){this.is_first_time=!0,this.initConfig=t,this.collect=e;var i=new h(t.app_id).init(),n="__tea_cache_first_"+t.app_id;this.configKey="__tea_cache_config_"+t.app_id,this.sessionStorage=new v(!1,"session"),this.localStorage=new v(!1,"local");var o=this.localStorage.getItem(n);o&&1==o?this.is_first_time=!1:(this.is_first_time=!0,this.localStorage.setItem(n,"1")),this.envInfo={user:{user_unique_id:w,user_type:w,user_id:w,user_is_auth:w,user_is_login:w,device_id:w,web_id:w,user_unique_id_type:w},header:{app_id:w,app_name:w,app_install_id:w,install_id:w,app_package:w,app_channel:w,app_version:w,ab_version:w,os_name:i.os_name,os_version:i.os_version,device_model:i.device_model,ab_client:w,traffic_type:w,client_ip:w,device_brand:w,os_api:w,access:w,language:i.language,region:w,app_language:w,app_region:w,creative_id:w,ad_id:w,campaign_id:w,log_type:w,rnd:w,platform:i.platform,sdk_version:"0.0.5-lite",sdk_lib:"js",province:w,city:w,timezone:k,tz_offset:x,tz_name:w,sim_region:w,carrier:w,resolution:i.screen_width+"x"+i.screen_height,browser:i.browser,browser_version:i.browser_version,referrer:i.referrer,referrer_host:i.referrer_host,width:i.screen_width,height:i.screen_height,screen_width:i.screen_width,screen_height:i.screen_height,utm_term:w,utm_content:w,utm_source:w,utm_medium:w,utm_campaign:w,custom:{},wechat_unionid:w,wechat_openid:w}},this.evtParams={},this.reportErrorCallback=function(){},this.initDomain()}return t.prototype.initDomain=function(){var e=this.initConfig.channel_domain;if(e)this.domain=e;else{var t=this.initConfig.channel;this.domain=a(y[t])}},t.prototype.setDomain=function(e){this.domain=e},t.prototype.getDomain=function(){return this.domain},t.prototype.getUrl=function(e){var t="";switch(e){case"event":t=this.initConfig.report_url||"/list";break;case"webid":t="/webid"}return""+this.getDomain()+t},t.prototype.set=function(t){var i=this;Object.keys(t).forEach((function(n){"evtParams"===n?i.evtParams=e({},i.evtParams||{},t.evtParams||{}):"_staging_flag"===n?i.evtParams=e({},i.evtParams||{},{_staging_flag:t._staging_flag}):"reportErrorCallback"===n&&"function"==typeof t[n]?i.reportErrorCallback=t[n]:Object.hasOwnProperty.call(i.envInfo.user,n)?["user_id","web_id","user_unique_id"].indexOf(n)>-1&&(i.envInfo.user[n]=t[n]?String(t[n]):t[n]):Object.hasOwnProperty.call(i.envInfo.header,n)?i.envInfo.header[n]=t[n]:i.envInfo.header.custom[n]=t[n]}))},t.prototype.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 ")}},t}();!function(e){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.TokenChange="token-change",e.TokenReset="token-reset",e.SessionReset="session-reset",e.SessionResetTime="session-reset-time",e.Event="event",e.Events="events",e.BeconEvent="becon-event",e.SubmitBefore="submit-before"}(l||(l={}));var S=l,I=500,z=5005;function M(e,t,i,n,o,r,s,a,c){try{var h=new XMLHttpRequest,u=a||"POST";h.open(u,""+e,!0),h.setRequestHeader("Content-Type","application/json; charset=utf-8"),i&&(h.timeout=i,h.ontimeout=function(){r&&r(t,z)}),h.onload=function(){if(o){var e=null;if(h.responseText){try{e=JSON.parse(h.responseText)}catch(t){e={}}o(e,t)}}},h.onerror=function(){h.abort(),r&&r(t,I)},c?h.send(t):h.send(JSON.stringify(t))}catch(e){}}var T=4003,C=function(){function t(){this.eventLimit=50,this.eventCache=[],this.beconEventCache=[]}return t.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=e.configManager,this.cacheStorgae=new v(!0),this.localStorage=new v(!1),this.maxReport=t.max_report||20,this.reportTime=t.reportTime||30,this.timeout=t.timeout||1e5,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.collect.on(S.Ready,(function(){i.reportAll(!1)})),this.collect.on(S.Event,(function(e){i.event(e)})),this.collect.on(S.BeconEvent,(function(e){i.beconEvent(e)})),this.linster()},t.prototype.linster=function(){var e=this;window.addEventListener("unload",(function(){e.reportAll(!0)}),!1),function(e){navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)?window.addEventListener("pagehide",e,!1):window.addEventListener("beforeunload",e,!1)}((function(){e.reportAll(!0)})),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&e.reportAll(!0)}),!1)},t.prototype.reportAll=function(e){this.report(e),this.reportBecon()},t.prototype.event=function(e){var t=this;try{var n=i(e,this.cacheStorgae.getItem(this.eventKey)||[]);if(this.cacheStorgae.setItem(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){}},t.prototype.beconEvent=function(e){var t=i(e,this.cacheStorgae.getItem(this.beconKey)||[]);this.cacheStorgae.setItem(this.beconKey,t),this.collect.destroyInstance||this.collect.tokenManager.getReady()&&this.collect.sdkReady&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(t)),!0))},t.prototype.reportBecon=function(){var e=this.cacheStorgae.getItem(this.beconKey)||[];e&&e.length&&(this.cacheStorgae.removeItem(this.beconKey),this.send(this.split(this.merge(e)),!0))},t.prototype.report=function(e){if(!this.collect.destroyInstance&&this.collect.tokenManager.getReady()&&this.collect.sdkReady){var t=this.cacheStorgae.getItem(this.eventKey)||[];t.length&&(this.cacheStorgae.removeItem(this.eventKey),this.sliceEvent(t,e))}},t.prototype.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{o=this.split(this.merge(e));this.send(o,t)}},t.prototype.merge=function(t){var i=this,n=this.configManager.get(),o=n.header,r=n.user;o.custom=JSON.stringify(o.custom);var s=this.configManager.get("evtParams"),a=t.map((function(t){try{return Object.keys(s).length&&(t.params=e({},s,t.params)),t.session_id=i.collect.sessionManager.getSessionId(),t.params=JSON.stringify(t.params),t}catch(e){return t}})),c=[];if(!Object.keys(r).length)return console.warn("user info error,cant report"),c;var h=JSON.parse(JSON.stringify({events:a,user:r,header:o}));return h.local_time=Math.floor(Date.now()/1e3),h.verbose=1,c.push(h),c},t.prototype.split=function(e){return e=e.map((function(e){var t=[];return t.push(e),t}))},t.prototype.send=function(e,t){var i=this;e.length&&e.forEach((function(e){try{if(!e.length)return;i.collect.emit(S.SubmitBefore,e),n=i.reportUrl,o=e,r=i.timeout,s=function(e,t){},a=function(e,t){i.configManager.get("reportErrorCallback")(e,t)},c=!1,t&&window.navigator&&window.navigator.sendBeacon?window.navigator.sendBeacon(n,JSON.stringify(o))?s():a(n,o,T):M(n,o,r,0,s,a,0,"",c)}catch(e){console.warn("something error, "+JSON.stringify(e.stack))}var n,o,r,s,a,c}))},t}(),E=function e(t){return t?(t^16*Math.random()>>t/4).toString(10):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e)},P=function(){return E().replace(/-/g,"").slice(0,19)},A=function(){function e(){this.cacheToken={}}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.config=t,this.configManager=this.collect.configManager,this.storage=new v(!1),this.tokenKey="__tea_cache_tokens_"+t.app_id,this.collect.on(S.ConfigUuid,(function(e){i.setUuid(e)})),this.checkStorage()},e.prototype.checkStorage=function(){this.cacheToken=this.storage.getItem(this.tokenKey)||{},this.check()},e.prototype.check=function(){this.cacheToken&&this.cacheToken.web_id?this.complete(this.cacheToken):this.remoteWebid()},e.prototype.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:""},n=P();M(t,i,3e5,0,(function(t){var i;t&&0===t.e?i=t.web_id:(i=n,e.collect.configManager.set({localWebId:n}),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})}),(function(){e.complete({web_id:e.configManager.get("web_id")||n,user_unique_id:e.configManager.get("user_unique_id")||n}),e.collect.configManager.set({localWebId:n}),e.collect.logger.warn("appid: "+e.config.app_id+", get webid error, use local webid~")}))},e.prototype.complete=function(e){var t=e.web_id,i=e.user_unique_id;t||i?(e.timestamp=Date.now(),this.collect.configManager.set({web_id:t,user_unique_id:i}),this.setStorage(e),this.tokenReady=!0,this.collect.emit(S.TokenComplete)):console.warn("token error")},e.prototype.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)}else this.clearUuid()},e.prototype.clearUuid=function(){this.config.enable_ttwebid||this.configManager.get("web_id")&&(this.configManager.set({user_unique_id:this.configManager.get("web_id")}),this.cacheToken&&this.cacheToken.web_id&&(this.cacheToken.user_unique_id=this.cacheToken.web_id,this.cacheToken.timestamp=Date.now(),this.setStorage(this.cacheToken)),this.collect.emit(S.TokenReset))},e.prototype.setStorage=function(e){e._type_="default",this.storage.setItem(this.tokenKey,e),this.cacheToken=e},e.prototype.getReady=function(){return this.tokenReady},e}(),D=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)}))},N=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;this.collect=e,this.storage=new v(!1,"session"),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(S.SessionReset,(function(){i.resetSessionId()})),this.collect.on(S.SessionResetTime,(function(){i.updateSessionIdTime()})))},e.prototype.updateSessionIdTime=function(){var e=this.storage.getItem(this.sessionKey);if(e&&e.sessionId){var t=e.timestamp;Date.now()-t>this.expireTime?e={sessionId:D(),timestamp:Date.now()}:e.timestamp=Date.now(),this.storage.setItem(this.sessionKey,e),this.resetExpTime()}},e.prototype.setSessionId=function(){var e=this,t=this.storage.getItem(this.sessionKey);t&&t.sessionId?t.timestamp=Date.now():t={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,t),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime)},e.prototype.getSessionId=function(){var e=this.storage.getItem(this.sessionKey);return this.disableSession?"":e&&e.sessionId?e.sessionId:""},e.prototype.resetExpTime=function(){var e=this;this.sessionExp&&(clearInterval(this.sessionExp),this.sessionExp=setInterval((function(){e.checkEXp()}),this.expireTime))},e.prototype.resetSessionId=function(){var e={sessionId:D(),timestamp:Date.now()};this.storage.setItem(this.sessionKey,e)},e.prototype.checkEXp=function(){var e=this.storage.getItem(this.sessionKey);e&&e.sessionId&&(Date.now()-e.timestamp+30>=this.expireTime&&(e={sessionId:D(),timestamp:Date.now()},this.storage.setItem(this.sessionKey,e)))},e}(),R=function(){function t(e){this.disableAutoPageView=!1,this.staging=!1,this.sended=!1,this.started=!1,this.adapters={},this.sdkReady=!1,this.pluginInstances=[],this.name=e,this.hook=new o,this.Types=S,this.adapters.fetch=M,this.adapters.storage=v}return 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})},t.prototype.init=function(e){var i,n=this;this.inited?console.log("init can be call only one time"):e&&r(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.inited=!0,this.configManager=new O(this,e),this.initConfig=e,e.disable_auto_pv&&(this.disableAutoPageView=!0),this.configManager.set({app_id:e.app_id}),this.eventManager=new C,this.tokenManager=new A,this.sessionManager=new N,Promise.all([new Promise((function(e){n.once(S.TokenComplete,(function(){e(!0)}))})),new Promise((function(e){n.once(S.Start,(function(){e(!0)}))}))]).then((function(){try{t.plugins.reduce((function(e,t){var i=t.plugin,o=t.options,r=Object.assign(n.initConfig,o),s=new i;return s.apply(n,r),e.push(s),e}),n.pluginInstances)}catch(e){console.warn("load plugin error, "+e.message)}n.sdkReady=!0,n.emit(S.Ready),console.info("appid: "+e.app_id+", userInfo:"+JSON.stringify(n.configManager.get("user"))),console.info("appid: "+e.app_id+", sdk is ready, version is 0.0.5-lite, you can report now !!!"),n.pageView()})),this.tokenManager.apply(this,e),this.eventManager.apply(this,e),this.sessionManager.apply(this,e),this.emit(S.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")},t.prototype.config=function(t){if(this.inited)if(t&&r(t)){t._staging_flag&&1===t._staging_flag&&(this.staging=!0),t.disable_auto_pv&&(this.disableAutoPageView=!0,delete t.disable_auto_pv);var i=e({},t);i.user_unique_id;var n=function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(i[n[o]]=e[n[o]])}return i}(i,["user_unique_id"]);i.hasOwnProperty("user_unique_id")&&this.emit(S.ConfigUuid,i.user_unique_id),this.configManager.set(n)}else console.warn("config params is error, please check");else console.warn("config must be use after function init")},t.prototype.getConfig=function(e){return this.configManager.get(e)},t.prototype.start=function(){this.inited&&!this.sended&&(this.sended=!0,this.emit(S.Start))},t.prototype.event=function(e,t){var i=this;try{var n=[];Array.isArray(e)?e.forEach((function(e){n.push(i.processEvent(e[0],e[1]||{}))})):n.push(this.processEvent(e,t)),n.length&&(this.emit(S.Event,n),this.emit(S.SessionResetTime))}catch(e){console.warn("something error, please check")}},t.prototype.beconEvent=function(e,t){if(Array.isArray(e))console.warn("beconEvent not support batch report, please check");else{var i=[];i.push(this.processEvent(e,t||{})),i.length&&(this.emit(S.BeconEvent,i),this.emit(S.SessionResetTime))}},t.prototype.processEvent=function(e,t){void 0===t&&(t={});try{var i=e;/^event\./.test(e)&&(i=e.slice(6));var n=t;"object"!=typeof n&&(n={}),n.event_index=s();var o=void 0;return n.local_ms?(o=n.local_ms,delete n.local_ms):o=+new Date,{event:i,params:n,local_time_ms:o}}catch(i){return{event:e,params:t}}},t.prototype.on=function(e,t){this.hook.on(e,t)},t.prototype.once=function(e,t){this.hook.once(e,t)},t.prototype.off=function(e,t){this.hook.off(e,t)},t.prototype.emit=function(e,t,i){this.hook.emit(e,t,i)},t.prototype.set=function(e){this.hook.set(e)},t.prototype.pageView=function(){this.disableAutoPageView||this.predefinePageView()},t.prototype.predefinePageView=function(t){void 0===t&&(t={});var i={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)},n=e({},i,t);this.event("predefine_pageview",n)},t.plugins=[],t}(),B=function(){function e(){}return e.prototype.apply=function(e,t){var i=this;if(t.event_verify_url)if("string"==typeof t.event_verify_url){if(this.url=t.event_verify_url+"/v1/list_test",this.url){var n=e.Types;e.on(n.SubmitBefore,(function(e){window.navigator.sendBeacon(i.url,JSON.stringify(e))}))}}else console.log("please use correct et_test url")},e}();R.usePlugin(B,"et");var j=new R("default"),q=R;exports.Collector=q,exports.default=j;
|