@cloudcare/browser-logs 2.0.4 → 2.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- !function(){"use strict";var e="beforeunload",t="click",r="keydown",n="scroll",o="touchstart",i="visibilitychange",s="freeze",a="pagehide",u="securitypolicyviolation",c="action",f="error",l="long_task",d="view",p="resource",v="logger",h={FETCH:"fetch",XHR:"xhr"},g="unhandled";function b(e,t){var r,n=window;return n.Zone&&"function"==typeof n.Zone.__symbol__&&(r=e[n.Zone.__symbol__(t)]),r||(r=e[t]),r}var y=Array.prototype,m=Function.prototype,w=Object.prototype,_=y.slice,x=w.toString,O=w.hasOwnProperty,S=(m.bind,y.forEach),k=(y.indexOf,Array.isArray),E=function(e,t,r){if(null===e)return!1;if(S&&e.forEach===S)e.forEach(t,r);else if(e.length===+e.length){for(var n=0,o=e.length;n<o;n++)if(n in e&&false===t.call(r,e[n],n,e))return!1}else for(var i in e)if(O.call(e,i)&&false===t.call(r,e[i],i,e))return!1};function C(e){return E(_.call(arguments,1),(function(t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})),e}var L=function(e){return E(_.call(arguments,1),(function(t){for(var r in t)void 0!==t[r]&&(e[r]=t[r])})),e},$=function(e){return E(_.call(arguments,1),(function(t){for(var r in t)void 0!==t[r]&&(I(t[r])&&I(e[r])?L(e[r],t[r]):e[r]=t[r])})),e},T=k||function(e){return"[object Array]"===x.call(e)},B=function(e){if(!e)return!1;try{return/^\s*\bfunction\b/.test(e)}catch(e){return!1}},M=function(e){var t=[];return null===e||E(e,(function(e){t[t.length]=e})),t},R=function(e){var t=[];return null===e||E(e,(function(e,r){t[t.length]=r})),t},A=function(e,t,r){if(e.filter)return e.filter(t);for(var n=[],o=0;o<e.length;o++)if(O.call(e,o)){var i=e[o];t.call(r,i,o,e)&&n.push(i)}return n},U=function(e,t,r){if(e.map)return e.map(t);for(var n=[],o=0;o<e.length;o++)if(O.call(e,o)){var i=e[o];n.push(t.call(r,i,o,e))}return n},I=function(e){return null!==e&&"[object Object]"===x.call(e)},P=function(e){if(I(e)){for(var t in e)if(O.call(e,t))return!1;return!0}return!1},D=function(e){return"[object String]"===x.call(e)},F=function(e){return"[object Boolean]"===x.call(e)},j=function(e){return"[object Number]"===x.call(e)&&/[\d\.]+/.test(String(e))},q=(Date.now,function(e,t,r){var n,o,i=!r||void 0===r.leading||r.leading,s=!r||void 0===r.trailing||r.trailing,a=!1,u=this;return{throttled:function(){a?n=arguments:(i?e.apply(u,arguments):n=arguments,a=!0,o=setTimeout((function(){s&&n&&e.apply(u,n),a=!1,n=void 0}),t))},cancel:function(){clearTimeout(o),a=!1,n=void 0}}});function Q(e){return e?(parseInt(e,10)^16*Math.random()>>parseInt(e,10)/4).toString(16):"".concat(1e7,"-",1e3,"-",4e3,"-",8e3,"-",1e11).replace(/[018]/g,Q)}function N(e,t,r){if(void 0===r&&(r=function(){if("undefined"!=typeof WeakSet){var e=new WeakSet;return{hasAlreadyBeenSeen:function(t){var r=e.has(t);return r||e.add(t),r}}}var t=[];return{hasAlreadyBeenSeen:function(e){var r=t.indexOf(e)>=0;return r||t.push(e),r}}}()),void 0===t)return e;if("object"!=typeof t||null===t)return t;if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp){var n=t.flags||[t.global?"g":"",t.ignoreCase?"i":"",t.multiline?"m":"",t.sticky?"y":"",t.unicode?"u":""].join("");return new RegExp(t.source,n)}if(!r.hasAlreadyBeenSeen(t)){if(Array.isArray(t)){for(var o=Array.isArray(e)?e:[],i=0;i<t.length;++i)o[i]=N(o[i],t[i],r);return o}var s;o="object"==(null===(s=e)?"null":Array.isArray(s)?"array":typeof s)?e:{};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(o[a]=N(o[a],t[a],r));return o}}function V(e){return N(void 0,e)}function W(e,t,r){if(null==e)return JSON.stringify(e);var n=[!1,void 0];G(e)&&(n=[!0,e.toJSON],delete e.toJSON);var o,i,s=[!1,void 0];"object"==typeof e&&G(o=Object.getPrototypeOf(e))&&(s=[!0,o.toJSON],delete o.toJSON);try{i=JSON.stringify(e,void 0,r)}catch(e){i="<error: unable to serialize object>"}finally{n[0]&&(e.toJSON=n[1]),s[0]&&(o.toJSON=s[1])}return i}function G(e){return"object"==typeof e&&null!==e&&e.hasOwnProperty("toJSON")}function H(){}var X,z=1e3,K=6e4;function Y(e,t){return+e.toFixed(t)}function Z(){return performance.now()}function J(){return{relative:Z(),timeStamp:ee()}}function ee(){return te()}function te(){return(new Date).getTime()}function re(){return void 0===X&&(X=performance.timing.navigationStart),X}function ne(e,t){for(var r=t.split(".");r.length;){var n=r.shift();if(!(e&&n in e&&O.call(e,n)))return;e=e[n]}return e}function oe(e,t){var r=e.charCodeAt(t-1);return r>=55296&&r<=56319?e.slice(0,t+1):e.slice(0,t)}function ie(e,t,r,n){return se(e,[t],r,n)}function se(e,t,r,n){var o=n&&n.once?function(e){s(),r(e)}:r;n=n&&n.passive?{capture:n.capture,passive:n.passive}:n&&n.capture;var i=b(e,"addEventListener");E(t,(function(t){i.call(e,t,o,n)}));var s=function(){var r=b(e,"removeEventListener");E(t,(function(t){r.call(e,t,o,n)}))};return{stop:s}}function ae(e,t){return-1!==e.indexOf(t)}function ue(){var e={};return{get:function(){return e},add:function(t,r){D(t)?e[t]=r:console.error("key 需要传递字符串类型")},remove:function(t){delete e[t]},set:function(t){I(t)?e=t:console.error("content 需要传递对象类型数据")},getContext:function(){return V(e)},setContext:function(t){e=V(t)},setContextProperty:function(t,r){e[t]=V(r)},removeContextProperty:function(t){delete e[t]},clearContext:function(){e={}}}}function ce(e){var t={};return E(e,(function(e,r){var n;t[(n=r,n.replace(/[A-Z]/g,(function(e,t){return(0!==t?"_":"")+e.toLowerCase()})).replace(/-/g,"_"))]=fe(e)})),t}function fe(e){return T(e)?U(e,(function(e){return fe(e)})):"object"==typeof e&&null!==e?ce(e):e}function le(e){if("object"==typeof e&&e)e=W(e);else if(!D(e))return e;return String(e).replace(/[\s=,"]/g,(function(e){return"\\"+e}))}function de(e){return'"'+e.replace(/\\/g,"\\\\").replace(/[\\]*"/g,'"').replace(/"/g,'\\"')+'"'}function pe(e){return"object"==typeof e&&e?de(W(e)):D(e)?de(e):e}function ve(e,t){return null!=e?e:t}var he=function(){this.buffer=[]};he.prototype={add:function(e){this.buffer.push(e)>500&&this.buffer.splice(0,1)},drain:function(){E(this.buffer,(function(e){e()})),this.buffer.length=0}};var ge=he,be=1/0;function ye(e){this.expireDelay=e,this.entries=[];var t=this;this.clearOldContextsInterval=setInterval((function(){t.clearOldContexts()}),6e4)}ye.prototype.add=function(e,t){var r=this,n={context:e,startTime:t,endTime:be,remove:function(){var e=r.entries.indexOf(n);e>=0&&r.entries.splice(e,1)},close:function(e){n.endTime=e}};return this.entries.unshift(n),n},ye.prototype.find=function(e){void 0===e&&(e=be);for(var t=0;t<this.entries.length;t++){var r=this.entries[t];if(r.startTime<=e){if(e<=r.endTime)return r.context;break}}},ye.prototype.closeActive=function(e){var t=this.entries[0];t&&t.endTime===be&&t.close(e)},ye.prototype.findAll=function(e){void 0===e&&(e=be);var t=A(this.entries,(function(t){return t.startTime<=e&&e<=t.endTime}));return U(t,(function(e){return e.context}))},ye.prototype.reset=function(){this.entries=[]},ye.prototype.stop=function(){clearInterval(this.clearOldContextsInterval)},ye.prototype.clearOldContexts=function(){for(var e=Z()-this.expireDelay;this.entries.length>0&&this.entries[this.entries.length-1].endTime<e;)this.entries.pop()};var me={log:"log",debug:"debug",info:"info",warn:"warn",error:"error"},we=function e(t){var r=[].slice.call(arguments,1);Object.prototype.hasOwnProperty.call(me,t)||(t=me.log),e[t].apply(e,r)};we.debug=console.debug.bind(console),we.log=console.log.bind(console),we.info=console.info.bind(console),we.warn=console.warn.bind(console),we.error=console.error.bind(console);var _e={navigator:void 0!==window.navigator?window.navigator:{},infoMap:{engine:["WebKit","Trident","Gecko","Presto"],browser:["Safari","Chrome","Edge","IE","IE 11","IE 10","IE 9","IE 8","IE 7","Firefox","Firefox Focus","Chromium","Opera","Vivaldi","Yandex","Arora","Lunascape","QupZilla","Coc Coc","Kindle","Iceweasel","Konqueror","Iceape","SeaMonkey","Epiphany","360","360SE","360EE","UC","QQBrowser","QQ","Baidu","Maxthon","Sogou","LBBROWSER","2345Explorer","TheWorld","XiaoMi","Quark","Qiyu","Wechat",,"WechatWork","Taobao","Alipay","Weibo","Douban","Suning","iQiYi"],os:["Windows","Linux","Mac OS","Android","Ubuntu","FreeBSD","Debian","iOS","Windows Phone","BlackBerry","MeeGo","Symbian","Chrome OS","WebOS"],device:["Mobile","Tablet","iPad"]}},xe={getMatchMap:function(e){return{Trident:e.indexOf("Trident")>-1||e.indexOf("NET CLR")>-1,Presto:e.indexOf("Presto")>-1,WebKit:e.indexOf("AppleWebKit")>-1,Gecko:e.indexOf("Gecko/")>-1,Safari:e.indexOf("Safari")>-1,Chrome:e.indexOf("Chrome")>-1||e.indexOf("CriOS")>-1,IE:e.indexOf("MSIE")>-1||e.indexOf("Trident")>-1,Edge:e.indexOf("Edge")>-1,Firefox:e.indexOf("Firefox")>-1||e.indexOf("FxiOS")>-1,"Firefox Focus":e.indexOf("Focus")>-1,Chromium:e.indexOf("Chromium")>-1,Opera:e.indexOf("Opera")>-1||e.indexOf("OPR")>-1,Vivaldi:e.indexOf("Vivaldi")>-1,Yandex:e.indexOf("YaBrowser")>-1,Arora:e.indexOf("Arora")>-1,Lunascape:e.indexOf("Lunascape")>-1,QupZilla:e.indexOf("QupZilla")>-1,"Coc Coc":e.indexOf("coc_coc_browser")>-1,Kindle:e.indexOf("Kindle")>-1||e.indexOf("Silk/")>-1,Iceweasel:e.indexOf("Iceweasel")>-1,Konqueror:e.indexOf("Konqueror")>-1,Iceape:e.indexOf("Iceape")>-1,SeaMonkey:e.indexOf("SeaMonkey")>-1,Epiphany:e.indexOf("Epiphany")>-1,360:e.indexOf("QihooBrowser")>-1||e.indexOf("QHBrowser")>-1,"360EE":e.indexOf("360EE")>-1,"360SE":e.indexOf("360SE")>-1,UC:e.indexOf("UC")>-1||e.indexOf(" UBrowser")>-1,QQBrowser:e.indexOf("QQBrowser")>-1,QQ:e.indexOf("QQ/")>-1,Baidu:e.indexOf("Baidu")>-1||e.indexOf("BIDUBrowser")>-1,Maxthon:e.indexOf("Maxthon")>-1,Sogou:e.indexOf("MetaSr")>-1||e.indexOf("Sogou")>-1,LBBROWSER:e.indexOf("LBBROWSER")>-1,"2345Explorer":e.indexOf("2345Explorer")>-1,TheWorld:e.indexOf("TheWorld")>-1,XiaoMi:e.indexOf("MiuiBrowser")>-1,Quark:e.indexOf("Quark")>-1,Qiyu:e.indexOf("Qiyu")>-1,Wechat:e.indexOf("MicroMessenger")>-1,Taobao:e.indexOf("AliApp(TB")>-1,Alipay:e.indexOf("AliApp(AP")>-1,Weibo:e.indexOf("Weibo")>-1,Douban:e.indexOf("com.douban.frodo")>-1,Suning:e.indexOf("SNEBUY-APP")>-1,iQiYi:e.indexOf("IqiyiApp")>-1,Windows:e.indexOf("Windows")>-1,Linux:e.indexOf("Linux")>-1||e.indexOf("X11")>-1,"Mac OS":e.indexOf("Macintosh")>-1,Android:e.indexOf("Android")>-1||e.indexOf("Adr")>-1,Ubuntu:e.indexOf("Ubuntu")>-1,FreeBSD:e.indexOf("FreeBSD")>-1,Debian:e.indexOf("Debian")>-1,"Windows Phone":e.indexOf("IEMobile")>-1||e.indexOf("Windows Phone")>-1,BlackBerry:e.indexOf("BlackBerry")>-1||e.indexOf("RIM")>-1,MeeGo:e.indexOf("MeeGo")>-1,Symbian:e.indexOf("Symbian")>-1,iOS:e.indexOf("like Mac OS X")>-1,"Chrome OS":e.indexOf("CrOS")>-1,WebOS:e.indexOf("hpwOS")>-1,Mobile:e.indexOf("Mobi")>-1||e.indexOf("iPh")>-1||e.indexOf("480")>-1,Tablet:e.indexOf("Tablet")>-1||e.indexOf("Nexus 7")>-1,iPad:e.indexOf("iPad")>-1}},matchInfoMap:function(e){var t=_e.navigator.userAgent||{},r=xe.getMatchMap(t);for(var n in _e.infoMap)for(var o=0;o<_e.infoMap[n].length;o++){var i=_e.infoMap[n][o];r[i]&&(e[n]=i)}},getOS:function(){return xe.matchInfoMap(this),this.os||"Unknown"},getOSVersion:function(){var e=this,t=_e.navigator.userAgent||{};e.osVersion="",e.osMajor="";var r={Windows:function(){var e=t.replace(/^.*Windows NT ([\d.]+);.*$/,"$1");return{6.4:"10",6.3:"8.1",6.2:"8",6.1:"7","6.0":"Vista",5.2:"XP",5.1:"XP","5.0":"2000"}[e]||e},Android:function(){return t.replace(/^.*Android ([\d.]+);.*$/,"$1")},iOS:function(){return t.replace(/^.*OS ([\d_]+) like.*$/,"$1").replace(/_/g,".")},Debian:function(){return t.replace(/^.*Debian\/([\d.]+).*$/,"$1")},"Windows Phone":function(){return t.replace(/^.*Windows Phone( OS)? ([\d.]+);.*$/,"$2")},"Mac OS":function(){return t.replace(/^.*Mac OS X ([\d_]+).*$/,"$1").replace(/_/g,".")},WebOS:function(){return t.replace(/^.*hpwOS\/([\d.]+);.*$/,"$1")}};return r[e.os]&&(e.osVersion=r[e.os](),e.osVersion===t&&(e.osVersion="")),e.osVersion&&(e.osMajor=e.osVersion.split(".").length&&e.osVersion.split(".")[0]),{version:e.osVersion,osMajor:e.osMajor}},getOrientationStatu:function(){return window.matchMedia("(orientation: portrait)").matches?"竖屏":"横屏"},getDeviceType:function(){var e=this;return e.device="PC",xe.matchInfoMap(e),e.device},getNetwork:function(){var e=window.navigator.connection||window.navigator.mozConnection||window.navigator.webkitConnection,t="unknown",r=e?e.type||e.effectiveType:null;if(r&&"string"==typeof r)switch(r){case"bluetooth":case"cellular":case"slow-2g":case"2g":case"3g":t="cellular";break;case"none":t="none";break;case"ethernet":case"wifi":case"wimax":case"4g":t="wifi";break;case"other":case"unknown":t="unknown"}return t},getLanguage:function(){var e;return this.language=((e=(_e.navigator.browserLanguage||_e.navigator.language).split("-"))[1]&&(e[1]=e[1].toUpperCase()),e.join("_")),this.language},getBrowserInfo:function(){var e=this;xe.matchInfoMap(e);var t=_e.navigator.userAgent||{},r=function(e,t){var r=_e.navigator.mimeTypes;for(var n in r)if(r[n][e]==t)return!0;return!1},n=xe.getMatchMap(t),o=!1;if(window.chrome){var i=t.replace(/^.*Chrome\/([\d]+).*$/,"$1");i>36&&window.showModalDialog?o=!0:i>45&&(o=r("type","application/vnd.chromium.remoting-viewer"))}if(n.Baidu&&n.Opera&&(n.Baidu=!1),n.Mobile&&(n.Mobile=!(t.indexOf("iPad")>-1)),o&&(r("type","application/gameplugin")||_e.navigator&&void 0===_e.navigator.connection.saveData?n["360SE"]=!0:n["360EE"]=!0),n.IE||n.Edge)switch(window.screenTop-window.screenY){case 71:case 74:case 99:case 75:case 74:case 105:default:break;case 102:n["360EE"]=!0;break;case 104:n["360SE"]=!0}var s={Safari:function(){return t.replace(/^.*Version\/([\d.]+).*$/,"$1")},Chrome:function(){return t.replace(/^.*Chrome\/([\d.]+).*$/,"$1").replace(/^.*CriOS\/([\d.]+).*$/,"$1")},IE:function(){return t.replace(/^.*MSIE ([\d.]+).*$/,"$1").replace(/^.*rv:([\d.]+).*$/,"$1")},Edge:function(){return t.replace(/^.*Edge\/([\d.]+).*$/,"$1")},Firefox:function(){return t.replace(/^.*Firefox\/([\d.]+).*$/,"$1").replace(/^.*FxiOS\/([\d.]+).*$/,"$1")},"Firefox Focus":function(){return t.replace(/^.*Focus\/([\d.]+).*$/,"$1")},Chromium:function(){return t.replace(/^.*Chromium\/([\d.]+).*$/,"$1")},Opera:function(){return t.replace(/^.*Opera\/([\d.]+).*$/,"$1").replace(/^.*OPR\/([\d.]+).*$/,"$1")},Vivaldi:function(){return t.replace(/^.*Vivaldi\/([\d.]+).*$/,"$1")},Yandex:function(){return t.replace(/^.*YaBrowser\/([\d.]+).*$/,"$1")},Arora:function(){return t.replace(/^.*Arora\/([\d.]+).*$/,"$1")},Lunascape:function(){return t.replace(/^.*Lunascape[\/\s]([\d.]+).*$/,"$1")},QupZilla:function(){return t.replace(/^.*QupZilla[\/\s]([\d.]+).*$/,"$1")},"Coc Coc":function(){return t.replace(/^.*coc_coc_browser\/([\d.]+).*$/,"$1")},Kindle:function(){return t.replace(/^.*Version\/([\d.]+).*$/,"$1")},Iceweasel:function(){return t.replace(/^.*Iceweasel\/([\d.]+).*$/,"$1")},Konqueror:function(){return t.replace(/^.*Konqueror\/([\d.]+).*$/,"$1")},Iceape:function(){return t.replace(/^.*Iceape\/([\d.]+).*$/,"$1")},SeaMonkey:function(){return t.replace(/^.*SeaMonkey\/([\d.]+).*$/,"$1")},Epiphany:function(){return t.replace(/^.*Epiphany\/([\d.]+).*$/,"$1")},360:function(){return t.replace(/^.*QihooBrowser\/([\d.]+).*$/,"$1")},"360SE":function(){return{63:"10.0",55:"9.1",45:"8.1",42:"8.0",31:"7.0",21:"6.3"}[t.replace(/^.*Chrome\/([\d]+).*$/,"$1")]||""},"360EE":function(){return{69:"11.0",63:"9.5",55:"9.0",50:"8.7",30:"7.5"}[t.replace(/^.*Chrome\/([\d]+).*$/,"$1")]||""},Maxthon:function(){return t.replace(/^.*Maxthon\/([\d.]+).*$/,"$1")},QQBrowser:function(){return t.replace(/^.*QQBrowser\/([\d.]+).*$/,"$1")},QQ:function(){return t.replace(/^.*QQ\/([\d.]+).*$/,"$1")},Baidu:function(){return t.replace(/^.*BIDUBrowser[\s\/]([\d.]+).*$/,"$1")},UC:function(){return t.replace(/^.*UC?Browser\/([\d.]+).*$/,"$1")},Sogou:function(){return t.replace(/^.*SE ([\d.X]+).*$/,"$1").replace(/^.*SogouMobileBrowser\/([\d.]+).*$/,"$1")},LBBROWSER:function(){var e="";t.indexOf("LieBaoFast")>-1&&(e=t.replace(/^.*LieBaoFast\/([\d.]+).*$/,"$1"));var r=t.replace(/^.*Chrome\/([\d]+).*$/,"$1");return e||{57:"6.5",49:"6.0",46:"5.9",42:"5.3",39:"5.2",34:"5.0",29:"4.5",21:"4.0"}[r]||""},"2345Explorer":function(){return t.replace(/^.*2345Explorer\/([\d.]+).*$/,"$1")},TheWorld:function(){return t.replace(/^.*TheWorld ([\d.]+).*$/,"$1")},XiaoMi:function(){return t.replace(/^.*MiuiBrowser\/([\d.]+).*$/,"$1")},Quark:function(){return t.replace(/^.*Quark\/([\d.]+).*$/,"$1")},Qiyu:function(){return t.replace(/^.*Qiyu\/([\d.]+).*$/,"$1")},Wechat:function(){return t.replace(/^.*MicroMessenger\/([\d.]+).*$/,"$1")},WechatWork:function(){return t.replace(/^.*wxwork\/([\d.]+).*$/,"$1")},Taobao:function(){return t.replace(/^.*AliApp\(TB\/([\d.]+).*$/,"$1")},Alipay:function(){return t.replace(/^.*AliApp\(AP\/([\d.]+).*$/,"$1")},Weibo:function(){return t.replace(/^.*weibo__([\d.]+).*$/,"$1")},Douban:function(){return t.replace(/^.*com.douban.frodo\/([\d.]+).*$/,"$1")},Suning:function(){return t.replace(/^.*SNEBUY-APP([\d.]+).*$/,"$1")},iQiYi:function(){return t.replace(/^.*IqiyiVersion\/([\d.]+).*$/,"$1")}};return e.browserVersion="",e.browserMajor="",s[e.browser]&&(e.browserVersion=s[e.browser](),e.browserVersion==t&&(e.browserVersion="")),"Chrome"==e.browser&&t.match(/\S+Browser/)&&(e.browser=t.match(/\S+Browser/)[0],e.version=t.replace(/^.*Browser\/([\d.]+).*$/,"$1")),"Edge"==e.browser&&(e.version>"75"?e.engine="Blink":e.engine="EdgeHTML"),("Chrome"==e.browser&&parseInt(e.browserVersion)>27||n.Chrome&&"WebKit"==e.engine&&parseInt(e.browserVersion)>27||"Opera"==e.browser&&parseInt(e.version)>12||"Yandex"==e.browser)&&(e.engine="Blink"),e.browserVersion&&(e.browserMajor=e.browserVersion.split(".").length&&this.browserVersion.split(".")[0]),{browser:e.browser,browserVersion:e.browserVersion,engine:e.engine,browserMajor:e.browserMajor}},getGeoPostion:function(e){navigator&&navigator.geolocation&&navigator.geolocation.getCurrentPosition((function(t){e(t)}),(function(e){we.warn(e)}))}},Oe={os:xe.getOS(),osVersion:xe.getOSVersion().version,osVersionMajor:xe.getOSVersion().osMajor,browser:xe.getBrowserInfo().browser,browserVersion:xe.getBrowserInfo().browserVersion,browserVersionMajor:xe.getBrowserInfo().browserMajor,screenSize:window.screen.width+"*"+window.screen.height,networkType:xe.getNetwork(),divice:xe.getDeviceType()};function Se(e,t,r){var n=e[t],o=r(n),i=function(){if("function"==typeof o)return o.apply(this,arguments)};return e[t]=i,{stop:function(){e[t]===i?e[t]=n:o=n}}}function ke(e,t,r){return Se(e,t,(function(e){return function(){var t;return r&&r.before&&r.before.apply(this,arguments),"function"==typeof e&&(t=e.apply(this,arguments)),r&&r.after&&r.after.apply(this,arguments),t}}))}var Ee="?";function Ce(e){var t=[],r=Ue(e,"stack");return r&&E(r.split("\n"),(function(e){var r=function(e){var t=$e.exec(e);if(!t)return;var r=t[2]&&0===t[2].indexOf("native"),n=t[2]&&0===t[2].indexOf("eval"),o=Te.exec(t[2]);n&&o&&(t[2]=o[1],t[3]=o[2],t[4]=o[3]);return{args:r?[t[2]]:[],column:t[4]?+t[4]:void 0,func:t[1]||Ee,line:t[3]?+t[3]:void 0,url:r?void 0:t[2]}}(e)||function(e){var t=Be.exec(e);if(!t)return;return{args:[],column:t[3]?+t[3]:void 0,func:Ee,line:t[2]?+t[2]:void 0,url:t[1]}}(e)||function(e){var t=Me.exec(e);if(!t)return;return{args:[],column:t[4]?+t[4]:void 0,func:t[1]||Ee,line:+t[3],url:t[2]}}(e)||function(e){var t=Re.exec(e);if(!t)return;var r=t[3]&&t[3].indexOf(" > eval")>-1,n=Ae.exec(t[3]);r&&n&&(t[3]=n[1],t[4]=n[2],t[5]=void 0);return{args:t[2]?t[2].split(","):[],column:t[5]?+t[5]:void 0,func:t[1]||Ee,line:t[4]?+t[4]:void 0,url:t[3]}}(e);r&&(!r.func&&r.line&&(r.func=Ee),t.push(r))})),{message:Ue(e,"message"),name:Ue(e,"name"),stack:t}}var Le="((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\\w+\\.|\\/).*?)",$e=new RegExp("^\\s*at (.*?) ?\\("+Le+"(?::(\\d+))?"+"(?::(\\d+))?\\)?\\s*$","i"),Te=new RegExp("\\((\\S*)(?::(\\d+))(?::(\\d+))\\)");var Be=new RegExp("^\\s*at ?"+Le+"(?::(\\d+))?"+"(?::(\\d+))??\\s*$","i");var Me=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i;var Re=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,Ae=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i;function Ue(e,t){if("object"==typeof e&&e&&t in e){var r=e[t];return"string"==typeof r?r:void 0}}var Ie=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/;function Pe(e){var t=function(e){return ke(window,"onerror",{before:function(t,r,n,o,i){var s;if(i)s=Ce(i),e(s,i);else{var a,u={url:r,column:o,line:n},c=t;if("[object String]"==={}.toString.call(t)){var f=Ie.exec(c);f&&(a=f[1],c=f[2])}e(s={name:a,message:"string"==typeof c?c:void 0,stack:[u]},t)}}})}(e),r=function(e){return ke(window,"onunhandledrejection",{before:function(t){var r=t.reason||"Empty reason",n=Ce(r);e(n,r)}})}(e);return{stop:function(){t.stop(),r.stop()}}}var De={AGENT:"agent",CONSOLE:"console",NETWORK:"network",SOURCE:"source",LOGGER:"logger",CUSTOM:"custom"};function Fe(){var e=new Error;if(!e.stack)try{throw e}catch(e){}var t=Ce(e);return t.stack=t.stack.slice(2),je(t)}function je(e){var t=qe(e);return E(e.stack,(function(e){var r="?"===e.func?"<anonymous>":e.func,n=e.args&&e.args.length>0?"("+e.args.join(", ")+")":"",o=e.line?":"+e.line:"",i=e.line&&e.column?":"+e.column:"";t+="\n at "+r+n+" @ "+e.url+o+i})),t}function qe(e){return(e.name||"Error")+": "+e.message}function Qe(e,t){for(var r=e,n=[];r&&r.cause instanceof Error&&n.length<10;){var o=Ce(r.cause);n.push({message:r.cause.message,source:t,type:o&&o.name,stack:o&&je(o)}),r=r.cause}return n.length?n:void 0}function Ne(e){return Pe((function(t,r){e.notify(function(e){var t=e.stackTrace,r=e.originalError,n=e.handlingStack,o=e.startClocks,i=e.nonErrorPrefix,s=e.source,a=e.handling;return t&&(void 0!==t.message||r instanceof Error)?{startClocks:o,source:s,handling:a,originalError:r,message:t.message||"Empty message",stack:je(t),handlingStack:n,type:t.name,causes:Qe(r,s)}:{startClocks:o,source:s,handling:a,originalError:r,message:i+" "+W(r),stack:"No stack, consider using an instance of Error",handlingStack:n,type:t&&t.name}}({stackTrace:t,originalError:r,startClocks:J(),nonErrorPrefix:"Uncaught",source:De.SOURCE,handling:g}))}))}var Ve=function(e){this.observers=[],this.onLastUnsubscribe=void 0,this.onFirstSubscribe=e};Ve.prototype={subscribe:function(e){!this.observers.length&&this.onFirstSubscribe&&(this.onLastUnsubscribe=this.onFirstSubscribe()||void 0),this.observers.push(e);var t=this;return{unsubscribe:function(){t.observers=A(t.observers,(function(t){return e!==t})),!t.observers.length&&t.onLastUnsubscribe&&t.onLastUnsubscribe()}}},notify:function(e){E(this.observers,(function(t){t(e)}))}};var We=Ve;function Ge(){var e=[].slice.call(arguments),t=new We((function(){var r=U(e,(function(e){return e.subscribe((function(e){return t.notify(e)}))}));return function(){return E(r,(function(e){return e.unsubscribe()}))}}));return t}var He={};function Xe(e){var t=U(e,(function(e){return He[e]||(He[e]=function(e){var t=new We((function(){var r=console[e];return console[e]=function(){var n=[].slice.call(arguments);r.apply(console,arguments);var o=Fe();t.notify(ze(n,e,o))},function(){console[e]=r}}));return t}(e)),He[e]}));return Ge.apply(this,t)}function ze(e,t,r){var n,o=U(e,(function(e){return function(e){if("string"==typeof e)return e;if(e instanceof Error)return qe(Ce(e));return W(e,0,2)}(e)})).join(" ");if(t===me.error){var i=function(e,t){for(var r=0;r<e.length;r+=1){var n=e[r];if(t(n,r,e))return n}}(e,(function(e){return e instanceof Error}));n=i?je(Ce(i)):void 0,o="console error: "+o}return{api:t,message:o,stack:n,handlingStack:r}}var Ke={intervention:"intervention",deprecation:"deprecation",cspViolation:"csp_violation"};function Ye(e){var t,r=[];ae(e,Ke.cspViolation)&&r.push(t=new We((function(){return ie(document,u,(function(e){t.notify(function(e){var t=Ke.cspViolation,r="'"+e.blockedURI+"' blocked by '"+e.effectiveDirective+"' directive";return{type:Ke.cspViolation,subtype:e.effectiveDirective,message:t+": "+r,stack:Ze(e.effectiveDirective,r+' of the policy "'+oe(e.originalPolicy,100)+'"',e.sourceFile,e.lineNumber,e.columnNumber)}}(e))})).stop})));var n=A(e,(function(e){return e!==Ke.cspViolation}));return n.length&&r.push(function(e){var t=new We((function(){if(window.ReportingObserver){var r=function(e){E(e,(function(e){t.notify(function(e){var t=e.body,r=e.type;return{type:r,subtype:t.id,message:r+": "+t.message,stack:Ze(t.id,t.message,t.sourceFile,t.lineNumber,t.columnNumber)}}(e))}))},n=new window.ReportingObserver(r,{types:e,buffered:!0});return n.observe(),function(){n.disconnect()}}}));return t}(n)),Ge.apply(this,r)}function Ze(e,t,r,n,o){return r&&je({name:e,message:t,stack:[{func:"?",url:r,line:n,column:o}]})}var Je=function(){this._events=[],this.pendingEvents=[]};Je.prototype={emit:function(e){var t=[].slice.call(arguments,1);E(this._events,(function(r){if(r.type!==e)return!1;r.callback.apply(r.context,t)}))},on:function(e,t,r){"function"==typeof t&&this._events.push({type:e,callback:t,context:r||this})}};new Je;var et,tt="RAW_LOG_COLLECTED",rt="LOG_COLLECTED";function nt(){this.callbacks={}}function ot(e){return it(e,function(e){if(e.origin)return e.origin;var t=e.host.replace(/(:80|:443)$/,"");return e.protocol+"//"+t}(window.location)).href}function it(e,t){if(function(){if(void 0!==et)return et;try{var e=new URL("http://test/path");return et="http://test/path"===e.href}catch(e){et=!1}return et}())return void 0!==t?new URL(e,t):new URL(e);if(void 0===t&&!/:/.test(e))throw new Error("Invalid URL: "+e);var r=document,n=r.createElement("a");if(void 0!==t){var o=(r=document.implementation.createHTMLDocument("")).createElement("base");o.href=t,r.head.appendChild(o),r.body.appendChild(n)}return n.href=e,n}nt.prototype={notify:function(e,t){var r=this.callbacks[e];r&&E(r,(function(e){e(t)}))},subscribe:function(e,t){this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(t);var r=this;return{unsubscribe:function(){r.callbacks[e]=A(r.callbacks[e],(function(e){return e!==t}))}}}};var st=navigator.userAgent.toLowerCase(),at=function(){return/iphone os/.test(st)};var ut;function ct(e,t,r,n){var o=new Date;o.setTime(o.getTime()+r);var i="expires="+o.toUTCString(),s=n&&n.crossSite?"none":"strict",a=n&&n.domain?";domain="+n.domain:"",u=n&&n.secure?";secure":"";document.cookie=e+"="+t+";"+i+";path=/;samesite="+s+a+u}function ft(e){return function(e,t){var r=e.match("(?:^|;)\\s*"+t+"\\s*=\\s*([^;]+)");return r?r[1]:void 0}(document.cookie,e)}var lt=/^\s+|\s+$/g;function dt(e){return e.replace(lt,"")}function pt(e){return e.lastIndexOf("/")===e.length-1?dt(e)+"v1/write/logging":dt(e)+"/v1/write/logging"}function vt(e){return e.lastIndexOf("/")===e.length-1?dt(e)+"v1/write/rum/replay":dt(e)+"/v1/write/rum/replay"}var ht,gt;function bt(e){var t,r,n;if(void 0===e.sampleRate||(t=e.sampleRate,j(t)&&t>=0&&t<=100))return C({beforeSend:e.beforeSend&&(r=e.beforeSend,n="beforeSend threw an error:",function(){var e=[].slice.call(arguments);try{return r.apply(this,e)}catch(e){we.error(n,e)}}),cookieOptions:yt(e),sampleRate:ve(e.sampleRate,100),service:e.service,version:e.version,env:e.env,silentMultipleInit:!!e.silentMultipleInit,batchBytesLimit:16384,eventRateLimiterThreshold:3e3,flushTimeout:3e4,batchMessagesLimit:50,messageBytesLimit:262144,resourceUrlLimit:5120},function(e){var t=function(e){return!1};"isIntakeUrl"in e&&B(e.isIntakeUrl)&&F(e.isIntakeUrl())&&(t=e.isIntakeUrl);var r,n=function(e){return!1};return"isServerError"in e&&B(e.isServerError)&&F(e.isServerError())&&(n=e.isServerError),{datakitUrl:(r=e.datakitUrl||e.datakitOrigin,r.lastIndexOf("/")===r.length-1?dt(r)+"v1/write/rum":dt(r)+"/v1/write/rum"),logsEndpoint:pt(e.datakitOrigin),sessionReplayEndPoint:vt(e.datakitOrigin),isIntakeUrl:t,isServerError:n}}(e));we.error("Sample Rate should be a number between 0 and 100")}function yt(e){var t={};return t.secure=function(e){return!!e.useSecureSessionCookie||!!e.useCrossSiteSessionCookie}(e),t.crossSite=!!e.useCrossSiteSessionCookie,e.trackSessionAcrossSubdomains&&(t.domain=function(){if(void 0===ut){for(var e="dd_site_test_".concat(Q()),t=window.location.hostname.split("."),r=t.pop();t.length&&!ft(e);)r=t.pop()+"."+r,ct(e,"test",z,{domain:r});ut=r}return ut}()),t}function mt(){var e;return ht||(e=new We((function(){if(window.fetch){var t=Se(window,"fetch",(function(t){return function(r,n){var o,i=function(e,t,r){var n=r&&r.method||"object"==typeof t&&t.method||"GET",o=ot("object"==typeof t&&t.url||t),i=J(),s={state:"start",init:r,input:t,method:n,startClocks:i,url:o};return e.notify(s),s}(e,r,n);return i?(o=t.call(this,i.input,i.init),function(e,t,r){var n=function(t){var n=r;n.state="resolve","stack"in t||t instanceof Error?(n.status=0,n.isAborted=t instanceof DOMException&&t.code===DOMException.ABORT_ERR,n.error=t):"status"in t&&(n.response=t,n.responseType=t.type,n.status=t.status,n.isAborted=!1),e.notify(n)};t.then(n,n)}(e,o,i)):o=t.call(this,r,n),o}}));return t.stop}})),ht=e),ht}var wt={};function _t(){var e;return gt||(e=new We((function(){var t=ke(XMLHttpRequest.prototype,"open",{before:xt}),r=ke(XMLHttpRequest.prototype,"send",{before:function(){Ot.call(this,e)}}),n=ke(XMLHttpRequest.prototype,"abort",{before:kt});return function(){t.stop(),r.stop(),n.stop()}})),gt=e),gt}function xt(e,t){var r=this._DATAFLUX_REQUEST_UUID||Q();this._DATAFLUX_REQUEST_UUID=r,wt[r]={state:"open",method:e,url:ot(String(t))}}function Ot(e){var t=wt[this._DATAFLUX_REQUEST_UUID];if(t){var r=t;r.state="start",r.startTime=Z(),r.startClocks=J(),r.isAborted=!1,r.xhr=this;var n=!1,o=ke(this,"onreadystatechange",{before:function(){this.readyState===XMLHttpRequest.DONE&&i.call(this)}}),i=function i(){if(this.removeEventListener("loadend",i),o.stop(),!n){n=!0;var s,a=t;a.state="complete",a.duration=(s=r.startClocks.timeStamp,ee()-s),a.status=this.status,e.notify(C({},a)),St.call(this)}};this.addEventListener("loadend",i),e.notify(r)}}function St(){delete wt[this._DATAFLUX_REQUEST_UUID],delete this._DATAFLUX_REQUEST_UUID}function kt(){var e=wt[this._DATAFLUX_REQUEST_UUID];e&&(e.isAborted=!0)}var Et={HIDDEN:"visibility_hidden",UNLOADING:"before_unload",PAGEHIDE:"page_hide",FROZEN:"page_frozen"};var Ct={sdk_name:"_dd.sdk_name",sdk_version:"_dd.sdk_version",app_id:"application.id",env:"env",service:"service",version:"version",userid:"user.id",user_email:"user.email",user_name:"user.name",session_id:"session.id",session_type:"session.type",session_sampling:"session.is_sampling",session_has_replay:"session.has_replay",is_signin:"user.is_signin",os:"device.os",os_version:"device.os_version",os_version_major:"device.os_version_major",browser:"device.browser",browser_version:"device.browser_version",browser_version_major:"device.browser_version_major",screen_size:"device.screen_size",network_type:"device.network_type",device:"device.device",view_id:"view.id",view_referrer:"view.referrer",view_url:"view.url",view_host:"view.host",view_path:"view.path",view_name:"view.path",view_path_group:"view.path_group",view_url_query:"view.url_query"},Lt={action_id:"action.id",view_in_foreground:"view.in_foreground"},$t={view:{type:d,tags:{view_loading_type:"view.loading_type",view_apdex_level:"view.apdex_level",is_active:"view.is_active"},fields:{session_replay_stats:"_dd.replay_stats",view_error_count:"view.error.count",view_resource_count:"view.resource.count",view_long_task_count:"view.long_task.count",view_action_count:"view.action.count",first_contentful_paint:"view.first_contentful_paint",largest_contentful_paint:"view.largest_contentful_paint",cumulative_layout_shift:"view.cumulative_layout_shift",first_input_delay:"view.first_input_delay",loading_time:"view.loading_time",dom_interactive:"view.dom_interactive",dom_content_loaded:"view.dom_content_loaded",dom_complete:"view.dom_complete",load_event:"view.load_event",first_input_time:"view.first_input_time",first_meaningful_paint:"view.largest_contentful_paint",first_paint_time:"view.fpt",resource_load_time:"view.resource_load_time",time_to_interactive:"view.tti",dom:"view.dom",dom_ready:"view.dom_ready",time_spent:"view.time_spent",in_foreground_periods:"view.in_foreground_periods",frustration_count:"view.frustration.count"}},resource:{type:p,tags:{trace_id:"_dd.trace_id",span_id:"_dd.span_id",resource_url:"resource.url",resource_url_host:"resource.url_host",resource_url_path:"resource.url_path",resource_url_path_group:"resource.url_path_group",resource_url_query:"resource.url_query",resource_type:"resource.type",resource_status:"resource.status",resource_status_group:"resource.status_group",resource_method:"resource.method"},fields:{duration:"resource.duration",resource_size:"resource.size",resource_dns:"resource.dns",resource_tcp:"resource.tcp",resource_ssl:"resource.ssl",resource_ttfb:"resource.ttfb",resource_trans:"resource.trans",resource_redirect:"resource.redirect",resource_first_byte:"resource.firstbyte",resource_dns_time:"resource.dns_time",resource_download_time:"resource.download_time",resource_first_byte_time:"resource.first_byte_time",resource_connect_time:"resource.connect_time",resource_ssl_time:"resource.ssl_time",resource_redirect_time:"resource.redirect_time"}},error:{type:f,tags:{error_id:"error.id",trace_id:"_dd.trace_id",span_id:"_dd.span_id",error_source:"error.source",error_type:"error.type",error_handling:"error.handling"},fields:{error_message:["string","error.message"],error_stack:["string","error.stack"],error_causes:["string","error.causes"]}},long_task:{type:l,tags:{long_task_id:"long_task.id"},fields:{duration:"long_task.duration"}},action:{type:c,tags:{action_type:"action.type"},fields:{action_name:"action.target.name",duration:"action.loading_time",action_error_count:"action.error.count",action_resource_count:"action.resource.count",action_frustration_types:"action.frustration.type",action_long_task_count:"action.long_task.count"}},browser_log:{type:v,tags:{error_source:"error.source",error_type:"error.type",error_resource_url:"http.url",error_resource_url_host:"http.url_host",error_resource_url_path:"http.url_path",error_resource_url_path_group:"http.url_path_group",error_resource_status:"http.status_code",error_resource_status_group:"http.status_group",error_resource_method:"http.method",action_id:"user_action.id",service:"service",status:"status"},fields:{message:["string","message"]}}};var Tt,Bt=144e5,Mt=9e5,Rt=/^([a-z]+)=([a-z0-9-]+)$/,At="&",Ut="_dataflux_s",It=[];function Pt(e,t){if(void 0===t&&(t=0),Tt||(Tt=e),e===Tt)if(t>=100)jt();else{var r,n=Qt();if(Dt()){if(n.lock)return void Ft(e,t);if(r=Q(),n.lock=r,qt(n,e.options),(n=Qt()).lock!==r)return void Ft(e,t)}var o=e.process(n);if(Dt()&&(n=Qt()).lock!==r)Ft(e,t);else{if(o&&function(e,t){if(Nt(e))return void function(e){ct(Ut,"",0,e)}(t);e.expire=String(te()+Mt),qt(e,t)}(o,e.options),Dt()&&(!o||!Nt(o))){if((n=Qt()).lock!==r)return void Ft(e,t);delete n.lock,qt(n,e.options),o=n}e.after&&e.after(o||n),jt()}}else It.push(e)}function Dt(){return!!window.chrome||/HeadlessChrome/.test(window.navigator.userAgent)}function Ft(e,t){setTimeout((function(){Pt(e,t+1)}),10)}function jt(){Tt=void 0;var e=It.shift();e&&Pt(e)}function qt(e,t){ct(Ut,function(e){return U((t=e,r=[],E(t,(function(e,t){r.push([t,e])})),r),(function(e){return e[0]+"="+e[1]})).join(At);var t,r}(e),Mt,t)}function Qt(){var e=ft(Ut),t={};return function(e){return void 0!==e&&(-1!==e.indexOf(At)||Rt.test(e))}(e)&&E(e.split(At),(function(e){var r=Rt.exec(e);if(null!==r){var n=r[1],o=r[2];t[n]=o}})),t}function Nt(e){return P(e)}function Vt(e,t,r){var n=new We,o=new We,i=setInterval((function(){Pt({options:e,process:function(e){return c(e)?void 0:{}},after:a})}),1e3),s=function(){var e=Qt();if(c(e))return e;return{}}();function a(e){return c(e)||(e={}),u()&&(!function(e){return s.id!==e.id||s[t]!==e[t]}(e)?s=e:(s={},o.notify())),e}function u(){return void 0!==s[t]}function c(e){return(void 0===e.created||te()-Number(e.created)<Bt)&&(void 0===e.expire||te()<Number(e.expire))}return{expandOrRenewSession:q((function(){var o;Pt({options:e,process:function(e){var n=a(e);return o=function(e){var n=r(e[t]),o=n.trackingType,i=n.isTracked;e[t]=o,i&&!e.id&&(e.id=Q(),e.created=String(te()));return i}(n),n},after:function(e){o&&!u()&&function(e){s=e,n.notify()}(e),s=e}})}),1e3).throttled,expandSession:function(){Pt({options:e,process:function(e){return u()?a(e):void 0}})},getSession:function(){return s},renewObservable:n,expireObservable:o,stop:function(){clearInterval(i)}}}var Wt=[],Gt=function(e,s,a){var u=Vt(e,s,a);Wt.push((function(){return u.stop()}));var c,f=new ye(144e5);function l(){return{id:u.getSession().id,trackingType:u.getSession()[s]}}return Wt.push((function(){return f.stop()})),u.renewObservable.subscribe((function(){f.add(l(),Z())})),u.expireObservable.subscribe((function(){f.closeActive(Z())})),u.expandOrRenewSession(),f.add(l(),[0,re()][0]),c=se(window,[t,o,r,n],(function(){return u.expandOrRenewSession()}),{capture:!0,passive:!0}),Wt.push(c.stop),function(e){var t=function(){"visible"===document.visibilityState&&e()},r=ie(document,i,t);Wt.push(r.stop);var n=setInterval(t,6e4);Wt.push((function(){clearInterval(n)}))}((function(){return u.expandSession()})),{findActiveSession:function(e){return f.find(e)},renewObservable:u.renewObservable,expireObservable:u.expireObservable}};var Ht=3145728,Xt=0,zt=1,Kt=2,Yt=0,Zt=1;function Jt(e,t,r,n){t.transportStatus===Xt&&0===t.queuedPayloads.size()&&t.bandwidthMonitor.canHandle(e)?tr(e,t,r,{onSuccess:function(){return rr(Yt,t,r,n)},onFailure:function(){t.queuedPayloads.enqueue(e),er(t,r,n)}}):t.queuedPayloads.enqueue(e)}function er(e,t,r){e.transportStatus===Kt&&setTimeout((function(){tr(e.queuedPayloads.first(),e,t,{onSuccess:function(){e.queuedPayloads.dequeue(),e.currentBackoffTime=1e3,rr(Zt,e,t,r)},onFailure:function(){e.currentBackoffTime=Math.min(256e3,2*e.currentBackoffTime),er(e,t,r)}})}),e.currentBackoffTime)}function tr(e,t,r,n){var o=n.onSuccess,i=n.onFailure;t.bandwidthMonitor.add(e),r(e,(function(r){t.bandwidthMonitor.remove(e),!function(e){return"opaque"!==e.type&&(0===e.status&&!navigator.onLine||408===e.status||429===e.status||e.status>=500)}(r)?(t.transportStatus=Xt,o()):(t.transportStatus=t.bandwidthMonitor.ongoingRequestCount>0?zt:Kt,t.lastFailureStatus=r.status,i())}))}function rr(e,t,r,n){e===Yt&&t.queuedPayloads.isFull()&&!t.queueFullReported&&(n({message:"Reached max events size queued for upload: 3MiB",source:De.AGENT,startClocks:J()}),t.queueFullReported=!0);var o=t.queuedPayloads;for(t.queuedPayloads=nr();o.size()>0;)Jt(o.dequeue(),t,r,n)}function nr(){var e=[];return{bytesCount:0,enqueue:function(t){this.isFull()||(e.push(t),this.bytesCount+=t.bytesCount)},first:function(){return e[0]},dequeue:function(){var t=e.shift();return t&&(this.bytesCount-=t.bytesCount),t},size:function(){return e.length},isFull:function(){return this.bytesCount>=Ht}}}function or(e){return e?e+(-1===e.indexOf("?")?"?":"&")+"precision=ms":e}function ir(e,t,r){var n={transportStatus:Xt,lastFailureStatus:0,currentBackoffTime:1e3,bandwidthMonitor:{ongoingRequestCount:0,ongoingByteCount:0,canHandle:function(e){return 0===this.ongoingRequestCount||this.ongoingByteCount+e.bytesCount<=81920&&this.ongoingRequestCount<32},add:function(e){this.ongoingRequestCount+=1,this.ongoingByteCount+=e.bytesCount},remove:function(e){this.ongoingRequestCount-=1,this.ongoingByteCount-=e.bytesCount}},queuedPayloads:nr(),queueFullReported:!1},o=function(r,n){return function(e,t,r,n){var o=r.data,i=r.bytesCount,s=or(e);(function(){try{return window.Request&&"keepalive"in new Request("http://a")}catch(e){return!1}})()&&i<t?fetch(s,{method:"POST",body:o,keepalive:!0,mode:"cors"}).then((function(e){"function"==typeof n&&n({status:e.status,type:e.type})}),(function(){sr(s,o,n)})):sr(s,o,n)}(e,t,r,n)};return{send:function(e){Jt(e,n,o,r)},sendOnExit:function(r){!function(e,t,r){var n=r.data,o=r.bytesCount,i=or(e);if(navigator.sendBeacon&&o<t)try{if(navigator.sendBeacon(i,n))return}catch(e){}sr(i,n)}(e,t,r)}}}function sr(e,t,r){var n=new XMLHttpRequest;n.open("POST",e,!0),n.send(t),n.addEventListener("loadend",(function(){"function"==typeof r&&r({status:n.status})}))}var ar=/[^\u0000-\u007F]/,ur="custom_keys",cr=function(e){if(!e||!e.type)return{rowStr:"",rowData:void 0};var t={tags:{},fields:{}},r=!1,n="";return E($t,(function(o,i){if(o.type===e.type){n+=i+",",t.measurement=i;var s=[],a=L({},Ct,o.tags),u=["date","type",ur];E(a,(function(r,n){var o=ne(e,r);u.push(n),(o||j(o))&&(t.tags[n]=function(e){return D(e)?e:W(e)}(o),s.push(le(n)+"="+le(o)))}));var c=[],f=L({},Lt,o.fields);if(E(f,(function(r,n){if(T(r)&&2===r.length){r[0];var o=r[1],i=ne(e,o);u.push(n),(i||j(i))&&(t.fields[n]=i,c.push(le(n)+"="+pe(i)))}else if(D(r)){i=ne(e,r);u.push(n),(i||j(i))&&(t.fields[n]=i,c.push(le(n)+"="+pe(i)))}})),e.tags&&I(e.tags)&&!P(e.tags)){var l=[];E(e.tags,(function(e,r){u.indexOf(r)>-1||(u.push(r),(e||j(e))&&(l.push(r),t.fields[r]=e,c.push(le(r)+"="+pe(e))))})),l.length&&(t.fields.custom_keys=pe(l),c.push(le(ur)+"="+pe(l)))}e.type===v&&E(e,(function(e,r){-1===u.indexOf(r)&&(j(e)||D(e)||F(e))&&(t.fields[r]=e,c.push(le(r)+"="+pe(e)))})),s.length&&(n+=s.join(",")),c.length&&(n+=" ",n+=c.join(","),r=!0),n=n+" "+e.date,t.time=(d=e.date,j(d)?Y(1e6*d,0):d)}var d})),{rowStr:r?n:"",rowData:r?t:void 0}},fr=function(e,t,r,n,o,i){this.pushOnlyBuffer=[],this.upsertBuffer={},this.bufferBytesCount=0,this.bufferMessagesCount=0,this.request=e,this.batchMessagesLimit=t,this.batchBytesLimit=r,this.messageBytesLimit=n,this.flushTimeout=o;var s=this;i.subscribe((function(){s.flush(s.request.sendOnExit)})),this.flushPeriodically()};fr.prototype.add=function(e){this.addOrUpdate(e)},fr.prototype.upsert=function(e,t){this.addOrUpdate(e,t)},fr.prototype.flush=function(e){if("function"!=typeof e&&(e=this.request.send),0!==this.bufferMessagesCount){var t=this.pushOnlyBuffer.concat(M(this.upsertBuffer)),r=this.bufferBytesCount;this.pushOnlyBuffer=[],this.upsertBuffer={},this.bufferBytesCount=0,this.bufferMessagesCount=0,t.length>0&&e({data:t.join("\n"),bytesCount:r})}},fr.prototype.flushOnExit=function(){this.flush(this.request.sendOnExit)},fr.prototype.computeBytesCount=function(e){return ar.test(e)?void 0!==window.TextEncoder?(new TextEncoder).encode(e).length:new Blob([e]).size:e.length},fr.prototype.addOrUpdate=function(e,t){var r=this.process(e),n=r.processedMessage,o=r.messageBytesCount;o>=this.messageBytesLimit?we.warn("Discarded a message whose size was bigger than the maximum allowed size "+this.messageBytesLimit+"KB."):(this.hasMessageFor(t)&&this.remove(t),this.willReachedBytesLimitWith(o)&&this.flush(),this.push(n,o,t),this.isFull()&&this.flush())},fr.prototype.process=function(e){var t=cr(e).rowStr;return{processedMessage:t,messageBytesCount:this.computeBytesCount(t)}},fr.prototype.push=function(e,t,r){this.bufferMessagesCount>0&&(this.bufferBytesCount+=1),void 0!==r?this.upsertBuffer[r]=e:this.pushOnlyBuffer.push(e),this.bufferBytesCount+=t,this.bufferMessagesCount+=1},fr.prototype.remove=function(e){var t=this.upsertBuffer[e];delete this.upsertBuffer[e];var r=this.computeBytesCount(t);this.bufferBytesCount-=r,this.bufferMessagesCount-=1,this.bufferMessagesCount>0&&(this.bufferBytesCount-=1)},fr.prototype.hasMessageFor=function(e){return void 0!==e&&void 0!==this.upsertBuffer[e]},fr.prototype.willReachedBytesLimitWith=function(e){return this.bufferBytesCount+e+1>=this.batchBytesLimit},fr.prototype.isFull=function(){return this.bufferMessagesCount===this.batchMessagesLimit||this.bufferBytesCount>=this.batchBytesLimit},fr.prototype.flushPeriodically=function(){var e=this;setTimeout((function(){e.flush(),e.flushPeriodically()}),this.flushTimeout)};var lr=fr;var dr={sdkVersion:"2.0.4",sdkName:"df_web_logs_sdk"};function pr(e,t,r){return void 0===e?[]:"all"===e||T(e)&&function(e,t,r){if(e.every)return e.every(t);for(var n=!0,o=0;o<e.length;o++)if(O.call(e,o)){var i=e[o];if(!t.call(r,i,o,e)){n=!1;break}}return n}(e,(function(e){return ae(t,e)}))?"all"===e?t:function(e){for(var t,r=[],n={},o=0;o<e.length;o++)(t=e[o])in n||(n[t]=!0,r.push(t));return r}(e):void we.error(r+' should be "all" or an array with allowed values "'+t.join('", "')+'"')}var vr={debug:"debug",error:"error",info:"info",warn:"warn",critical:"critical"},hr="console",gr="http",br=R(vr);function yr(e,t,r,n,o){this.contextManager=ue(),void 0===r&&(r=gr),void 0===n&&(n=vr.debug),void 0===o&&(o={}),this.handleLogStrategy=e,this.handlerType=r,this.level=n,this.contextManager.set(C({},o,t?{logger:{name:t}}:void 0))}yr.prototype={log:function(e,t,r){void 0===r&&(r=vr.info),this.handleLogStrategy({message:e,context:V(t),status:r},this)},debug:function(e,t){this.log(e,t,vr.debug)},info:function(e,t){this.log(e,t,vr.info)},warn:function(e,t){this.log(e,t,vr.warn)},critical:function(e,t){this.log(e,t,vr.critical)},error:function(e,t){var r={error:{origin:De.LOGGER}};this.log(e,$(r,t),vr.error)},setContext:function(e){this.contextManager.set(e)},getContext:function(){return this.contextManager.get()},addContext:function(e,t){this.contextManager.add(e,t)},removeContext:function(e){this.contextManager.remove(e)},setHandler:function(e){this.handlerType=e},getHandler:function(){return this.handlerType},setLevel:function(e){this.level=e},getLevel:function(){return this.level}};var mr="0",wr="1";function _r(e){var t=Gt(e.cookieOptions,"logs",(function(t){return function(e,t){var r=function(e){return e===mr||e===wr}(t)?t:function(e){if(t=e.sessionSampleRate,!(0!==t&&100*Math.random()<=t))return mr;var t;return wr}(e);return{trackingType:r,isTracked:r===wr}}(e,t)}));return{findTrackedSession:function(e){var r=t.findActiveSession(e);return r&&r.trackingType===wr?{id:r.id}:void 0}}}var xr={[vr.debug]:0,[vr.info]:1,[vr.warn]:2,[vr.error]:3};function Or(e,t,r){var n=r.getHandler(),o=T(n)?n:[n];return xr[e]>=xr[r.getLevel()]&&ae(o,t)}function Sr(e,t,r,n,o,i){var s=br.concat(["custom"]),a={};E(s,(function(e){var r,n,o,s,u;a[e]=(r=e,n=t.eventRateLimiterThreshold,o=i,s=0,u=!1,{isLimitReached:function(){if(0===s&&setTimeout((function(){s=0}),K),(s+=1)<=n||u)return u=!1,!1;if(s===n+1){u=!0;try{o({message:"Reached max number of "+r+"s by minute: "+n,source:De.AGENT,startClocks:J()})}finally{u=!1}}return!0}})})),r.subscribe(tt,(function(i){var s=i.rawLogsEvent,u=i.messageContext||void 0,c=i.messageContext||void 0,f=i.logger||o,l=s.date-re(),d=e.findTrackedSession(l);if(d){var p=c||n(),h=$({service:t.service||"browser",env:t.env||"",version:t.version||"",_dd:{sdkName:t.sdkName,sdkVersion:t.sdkVersion},session:{id:d.id},view:p.view,device:Oe,type:v},p.context,function(e){return t(window.DATAFLUX_RUM);function t(t){if(t&&t.getInternalContext)return t.getInternalContext(e)}}(l),s,f.getContext(),u);!Or(s.status,gr,f)||t.beforeSend&&!1===t.beforeSend(h)||h.error&&h.error.origin!==De.AGENT&&ve(a[h.status],a.custom).isLimitReached()||r.notify(rt,ce(h))}}))}var kr={[me.log]:vr.info,[me.debug]:vr.debug,[me.info]:vr.info,[me.warn]:vr.warn,[me.error]:vr.error};var Er={[Ke.cspViolation]:vr.error,[Ke.intervention]:vr.error,[Ke.deprecation]:vr.warn};function Cr(e,t){if(!e.forwardErrorsToLogs)return{stop:H};var r=_t().subscribe((function(e){"complete"===e.state&&o(h.XHR,e)})),n=mt().subscribe((function(e){"resolve"===e.state&&o(h.FETCH,e)}));function o(r,n){function o(e){var o,i,s,a,u,c=(o=n.url,i=function(e){this._fields={Username:4,Password:5,Port:7,Protocol:2,Host:6,Path:8,URL:0,QueryString:9,Fragment:10},this._values={},this._regex=null,this._regex=/^((\w+):\/\/)?((\w+):?(\w+)?@)?([^\/\?:]+):?(\d+)?(\/?[^\?#]+)?\??([^#]+)?#?(\w*)/,void 0!==e&&this._parse(e)},i.prototype.setUrl=function(e){this._parse(e)},i.prototype._initValues=function(){for(var e in this._fields)this._values[e]=""},i.prototype.addQueryString=function(e){if("object"!=typeof e)return!1;var t=this._values.QueryString||"";for(var r in e)t=new RegExp(r+"[^&]+").test(t)?t.replace(new RegExp(r+"[^&]+"),r+"="+e[r]):"&"===t.slice(-1)?t+r+"="+e[r]:""===t?r+"="+e[r]:t+"&"+r+"="+e[r];this._values.QueryString=t},i.prototype.getParse=function(){return this._values},i.prototype.getUrl=function(){var e="";return e+=this._values.Origin,(e+=this._values.Path)+(this._values.QueryString?"?"+this._values.QueryString:"")},i.prototype._parse=function(e){this._initValues();var t=this._regex.exec(e);if(!t)throw"DPURLParser::_parse -> Invalid URL";for(var r in this._fields)void 0!==t[this._fields[r]]&&(this._values[r]=t[this._fields[r]]);this._values.Path=this._values.Path||"/",this._values.Hostname=this._values.Host.replace(/:\d+$/,""),this._values.Origin=this._values.Protocol+"://"+this._values.Hostname+(this._values.Port?":"+this._values.Port:"")},new i(o)).getParse();t.notify(tt,{rawLogsEvent:{message:$r(r)+" error "+n.method+" "+n.url,date:n.startClocks.timeStamp,error:{origin:De.NETWORK,stack:e||"Failed to load"},http:{method:n.method,status_code:n.status,url:n.url,statusGroup:(u=n.status,u?String(u).substr(0,1)+String(u).substr(1).replace(/\d*/g,"x"):u),urlHost:c.Host,urlPath:c.Path,urlPathGroup:(s=c.Path,a="",s&&(a=s.replace(/\/([^\/]*)\d([^\/]*)/g,"/?").replace(/\/$/g,"")),a||"/")},status:vr.error,origin:De.NETWORK}})}!e.isIntakeUrl(n.url)&&(function(e){return 0===e.status&&"opaque"!==e.responseType}(n)||function(e){return e.status>=500}(n)||e.isServerError(n))&&("xhr"in n?function(e,t,r){"string"==typeof e.response?r(Lr(e.response,t)):r(e.response)}(n.xhr,e,o):n.response?function(e,t,r){var n=function(e){try{return e.clone()}catch(e){return}}(e);n&&n.body?window.TextDecoder?function(e,t,r){!function(e,t,r){var n=e.getReader(),o=[],i=0;function s(){var e,s;if(n.cancel().catch(H),r.collectStreamBody){var a;if(1===o.length)a=o[0];else{a=new Uint8Array(i);var u=0;E(o,(function(e){a.set(e,u),u+=e.length}))}e=a.slice(0,r.bytesLimit),s=a.length>r.bytesLimit}t(void 0,e,s)}!function e(){n.read().then((function(t){t.done?s():(r.collectStreamBody&&o.push(t.value),(i+=t.value.length)>r.bytesLimit?s():e())}),(function(e){t(e)}))}()}(e,(function(e,t,n){if(e)r(e);else{var o=(new TextDecoder).decode(t);n&&(o+="..."),r(void 0,o)}}),{bytesLimit:t,collectStreamBody:!0})}(n.body,t.requestErrorResponseLengthLimit,(function(e,t){r(e?"Unable to retrieve response: "+e:t)})):n.text().then((function(e){return r(Lr(e,t))}),(function(e){return r("Unable to retrieve response: "+e)})):r()}(n.response,e,o):n.error&&function(e,t,r){r(Lr(je(Ce(e)),t))}(n.error,e,o))}return{stop:function(){r.unsubscribe(),n.unsubscribe()}}}function Lr(e,t){return e.length>t.requestErrorResponseLengthLimit?e.substring(0,t.requestErrorResponseLengthLimit)+"...":e}function $r(e){return h.XHR===e?"XHR":"Fetch"}function Tr(e,t,r,n){var o=function(e,t,r,n){var o=function(t){return new lr(ir(t,e.batchBytesLimit,r),e.batchMessagesLimit,e.batchBytesLimit,e.messageBytesLimit,e.flushTimeout,n)}(t);return{add:function(e){o.add(e)}}}(e,e.logsEndpoint,r,n);t.subscribe(rt,(function(e){o.add(e)}))}const Br=function(e){var t,r,n=!1,o=ue(),i={},s=function(){},a=new ge,u=function(e,t,r,n){void 0===r&&(r=V(l())),void 0===n&&(n=ee()),a.add((function(){return u(e,t,r,n)}))},c=function(){},f=new yr((function(){return u.apply(this,arguments)}));function l(){return{view:{referrer:document.referrer,url:window.location.href},context:o.get()}}return t={logger:f,init:function(t){if(function(e){return n?(e.silentMultipleInit||we.error("DD_LOGS is already initialized."),!1):!(!e.datakitUrl&&!e.datakitOrigin)||(we.error("datakitOrigin is not configured, no RUM data will be collected."),!1)}(t)){var r=function(e){var t=bt(e),r=pr(e.forwardConsoleLogs,M(me),"Forward Console Logs"),n=pr(e.forwardReports,M(Ke),"Forward Reports");if(t&&r&&n)return e.forwardErrorsToLogs&&!ae(r,me.error)&&r.push(me.error),C({forwardErrorsToLogs:!1!==e.forwardErrorsToLogs,forwardConsoleLogs:r,forwardReports:n,requestErrorResponseLengthLimit:32768},t,dr)}(t);if(r){var o=e(r,l,f);u=o.handleLog,s=o.getInternalContext,c=function(){return V(t)},a.drain(),n=!0}}},getGlobalContext:o.getContext,setGlobalContext:o.setContext,setGlobalContextProperty:o.setContextProperty,removeGlobalContextProperty:o.removeContextProperty,clearGlobalContext:o.clearContext,createLogger:function(e,t){return void 0===t&&(t={}),i[e]=new yr((function(){return u(this.arguments)}),e,t.handler,t.level,t.context),i[e]},getLogger:function(e){return i[e]},getInitConfiguration:function(){return c()},getInternalContext:function(e){return s(e)}},r=L({},t,{onReady:function(e){e()}}),Object.defineProperty(r,"_setDebug",{get:function(){return setDebugMode},enumerable:!1}),r}((function(t,r,n){var o,u=new nt,c=function(e){u.notify(tt,{rawLogsEvent:{message:e.message,date:e.startClocks.timeStamp,error:{origin:De.AGENT},origin:De.AGENT,status:vr.error}})},f=o=new We((function(){var t=se(document,[i,s,a],(function(e){e.type===i&&"hidden"===document.visibilityState?o.notify({reason:Et.HIDDEN}):e.type===s&&o.notify({reason:Et.FROZEN})}),{capture:!0}),r=ie(window,e,(function(){o.notify({reason:Et.UNLOADING})}));return function(){t.stop(),r.stop()}}));Cr(t,u),function(e,t){if(!e.forwardErrorsToLogs)return{stop:H};var r=new We,n=Ne(r),o=r.subscribe((function(e){t.notify(tt,{rawLogsEvent:{message:e.message,date:e.startClocks.timeStamp,error:{kind:e.type,origin:De.SOURCE,stack:e.stack},origin:De.SOURCE,status:vr.error}})}))}(t,u),function(e,t){var r=Xe(e.forwardConsoleLogs).subscribe((function(e){t.notify(tt,{rawLogsEvent:{date:ee(),message:e.message,origin:De.CONSOLE,error:e.api===me.error?{origin:De.CONSOLE,stack:e.stack}:void 0,status:kr[e.api]}})}))}(t,u),function(e,t){var r=Ye(e.forwardReports).subscribe((function(e){var r,n,o,i=e.message,s=Er[e.type];s===vr.error?r={kind:e.subtype,origin:De.REPORT,stack:e.stack}:e.stack&&(i+=" Found in "+(n=e.stack,(o=/@ (.+)/.exec(n))&&o[1])),t.notify(tt,{rawLogsEvent:{date:ee(),message:i,origin:De.REPORT,error:r,status:s}})}))}(t,u);var l=function(e){return{handleLog:function(t,r,n,o){var i=t.context;Or(t.status,hr,r)&&we(t.status,t.message,$(r.getContext(),i)),e.notify(tt,{rawLogsEvent:{date:o||ee(),message:t.message,status:t.status,origin:De.LOGGER},messageContext:i,savedCommonContext:n,logger:r})}}}(u),d=_r(t);Sr(d,t,u,r,n,c),Tr(t,u,c,f);var p,v=(p=d,{get:function(e){var t=p.findTrackedSession(e);if(t)return{session:{id:t.id}}}});return{handleLog:l.handleLog,getInternalContext:v.get}}));var Mr,Rr,Ar,Ur;Mr=function(){if("object"==typeof globalThis)return globalThis;Object.defineProperty(Object.prototype,"_dd_temp_",{get:function(){return this},configurable:!0});var e=_dd_temp_;return delete Object.prototype._dd_temp_,"object"!=typeof e&&(e="object"==typeof self?self:"object"==typeof window?window:{}),e}(),Ar=Br,Ur=Mr[Rr="DATAFLUX_LOGS"],Mr[Rr]=Ar,Ur&&Ur.q&&E(Ur.q,(function(e){e()}))}();
1
+ !function(){"use strict";var e="beforeunload",r="click",n="keydown",t="scroll",o="touchstart",i="visibilitychange",s="freeze",a="pagehide",u="securitypolicyviolation",c="action",f="error",l="long_task",d="view",p="resource",v="logger",g={FETCH:"fetch",XHR:"xhr"},h="unhandled";function b(e,r){var n,t=window;return t.Zone&&"function"==typeof t.Zone.__symbol__&&(n=e[t.Zone.__symbol__(r)]),n||(n=e[r]),n}function m(){if("object"==typeof globalThis)return globalThis;Object.defineProperty(Object.prototype,"_dd_temp_",{get:function(){return this},configurable:!0});var e=_dd_temp_;return delete Object.prototype._dd_temp_,"object"!=typeof e&&(e="object"==typeof self?self:"object"==typeof window?window:{}),e}function w(e,r){return b(m(),"setTimeout")(e,r)}function y(e){b(m(),"clearTimeout")(e)}function _(e,r){return b(window,"setInterval")(e,r)}function x(e){b(window,"clearInterval")(e)}var O=Array.prototype,S=Function.prototype,k=Object.prototype,E=O.slice,C=k.toString,$=k.hasOwnProperty,L=(S.bind,O.forEach),T=(O.indexOf,Array.isArray),R=function(e,r,n){if(null===e)return!1;if(L&&e.forEach===L)e.forEach(r,n);else if(e.length===+e.length){for(var t=0,o=e.length;t<o;t++)if(t in e&&false===r.call(n,e[t],t,e))return!1}else for(var i in e)if($.call(e,i)&&false===r.call(n,e[i],i,e))return!1};function M(e){return R(E.call(arguments,1),(function(r){for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])})),e}var B=function(e){return R(E.call(arguments,1),(function(r){for(var n in r)void 0!==r[n]&&(e[n]=r[n])})),e},A=function(e){return R(E.call(arguments,1),(function(r){for(var n in r)void 0!==r[n]&&(q(r[n])&&q(e[n])?B(e[n],r[n]):e[n]=r[n])})),e},U=T||function(e){return"[object Array]"===C.call(e)},I=function(e){if(!e)return!1;try{return/^\s*\bfunction\b/.test(e)}catch(e){return!1}},P=function(e){var r=[];return null===e||R(e,(function(e){r[r.length]=e})),r},D=function(e){var r=[];return null===e||R(e,(function(e,n){r[r.length]=n})),r},j=function(e,r,n){if(e.filter)return e.filter(r);for(var t=[],o=0;o<e.length;o++)if($.call(e,o)){var i=e[o];r.call(n,i,o,e)&&t.push(i)}return t},F=function(e,r,n){if(e.map)return e.map(r);for(var t=[],o=0;o<e.length;o++)if($.call(e,o)){var i=e[o];t.push(r.call(n,i,o,e))}return t},q=function(e){return null!==e&&"[object Object]"===C.call(e)},Q=function(e){if(q(e)){for(var r in e)if($.call(e,r))return!1;return!0}return!1},V=function(e){return"[object String]"===C.call(e)},N=function(e){return"[object Boolean]"===C.call(e)},W=function(e){return"[object Number]"===C.call(e)&&/[\d\.]+/.test(String(e))},G=(Date.now,function(e,r,n){var t,o,i=!n||void 0===n.leading||n.leading,s=!n||void 0===n.trailing||n.trailing,a=!1,u=this;return{throttled:function(){a?t=arguments:(i?e.apply(u,arguments):t=arguments,a=!0,o=w((function(){s&&t&&e.apply(u,t),a=!1,t=void 0}),r))},cancel:function(){y(o),a=!1,t=void 0}}});function H(e){return e?(parseInt(e,10)^16*Math.random()>>parseInt(e,10)/4).toString(16):"".concat(1e7,"-",1e3,"-",4e3,"-",8e3,"-",1e11).replace(/[018]/g,H)}function X(e){return null===e?"null":Array.isArray(e)?"array":typeof e}function K(e,r,n){if(void 0===n&&(n=function(){if("undefined"!=typeof WeakSet){var e=new WeakSet;return{hasAlreadyBeenSeen:function(r){var n=e.has(r);return n||e.add(r),n}}}var r=[];return{hasAlreadyBeenSeen:function(e){var n=r.indexOf(e)>=0;return n||r.push(e),n}}}()),void 0===r)return e;if("object"!=typeof r||null===r)return r;if(r instanceof Date)return new Date(r.getTime());if(r instanceof RegExp){var t=r.flags||[r.global?"g":"",r.ignoreCase?"i":"",r.multiline?"m":"",r.sticky?"y":"",r.unicode?"u":""].join("");return new RegExp(r.source,t)}if(!n.hasAlreadyBeenSeen(r)){if(Array.isArray(r)){for(var o=Array.isArray(e)?e:[],i=0;i<r.length;++i)o[i]=K(o[i],r[i],n);return o}o="object"===X(e)?e:{};for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(o[s]=K(o[s],r[s],n));return o}}function z(e){return K(void 0,e)}function Y(){}var Z,J=1e3,ee=6e4;function re(e,r){return+e.toFixed(r)}function ne(){return performance.now()}function te(){return{relative:ne(),timeStamp:oe()}}function oe(){return ie()}function ie(){return(new Date).getTime()}function se(){return void 0===Z&&(Z=performance.timing.navigationStart),Z}function ae(e,r){for(var n=r.split(".");n.length;){var t=n.shift();if(!(e&&t in e&&$.call(e,t)))return;e=e[t]}return e}function ue(e,r){var n=e.charCodeAt(r-1);return n>=55296&&n<=56319?e.slice(0,r+1):e.slice(0,r)}function ce(e,r){return-1!==e.indexOf(r)}function fe(e){return W(e)&&e>=0&&e<=100}function le(e){var r={};return R(e,(function(e,n){var t;r[(t=n,t.replace(/[A-Z]/g,(function(e,r){return(0!==r?"_":"")+e.toLowerCase()})).replace(/-/g,"_"))]=de(e)})),r}function de(e){return U(e)?F(e,(function(e){return de(e)})):"object"==typeof e&&null!==e?le(e):e}function pe(e,r){return null!=e?e:r}var ve=function(){this.buffer=[]};ve.prototype={add:function(e){this.buffer.push(e)>500&&this.buffer.splice(0,1)},drain:function(){R(this.buffer,(function(e){e()})),this.buffer.length=0}};var ge=ve,he=1/0;function be(e){this.expireDelay=e,this.entries=[];var r=this;this.clearOldContextsInterval=_((function(){r.clearOldContexts()}),6e4)}be.prototype.add=function(e,r){var n=this,t={context:e,startTime:r,endTime:he,remove:function(){var e=n.entries.indexOf(t);e>=0&&n.entries.splice(e,1)},close:function(e){t.endTime=e}};return this.entries.unshift(t),t},be.prototype.find=function(e){void 0===e&&(e=he);for(var r=0;r<this.entries.length;r++){var n=this.entries[r];if(n.startTime<=e){if(e<=n.endTime)return n.context;break}}},be.prototype.closeActive=function(e){var r=this.entries[0];r&&r.endTime===he&&r.close(e)},be.prototype.findAll=function(e){void 0===e&&(e=he);var r=j(this.entries,(function(r){return r.startTime<=e&&e<=r.endTime}));return F(r,(function(e){return e.context}))},be.prototype.reset=function(){this.entries=[]},be.prototype.stop=function(){x(this.clearOldContextsInterval)},be.prototype.clearOldContexts=function(){for(var e=ne()-this.expireDelay;this.entries.length>0&&this.entries[this.entries.length-1].endTime<e;)this.entries.pop()};var me={log:"log",debug:"debug",info:"info",warn:"warn",error:"error"},we=function e(r){var n=[].slice.call(arguments,1);Object.prototype.hasOwnProperty.call(me,r)||(r=me.log),e[r].apply(e,n)};we.debug=console.debug.bind(console),we.log=console.log.bind(console),we.info=console.info.bind(console),we.warn=console.warn.bind(console),we.error=console.error.bind(console);var ye={navigator:void 0!==window.navigator?window.navigator:{},infoMap:{engine:["WebKit","Trident","Gecko","Presto"],browser:["Safari","Chrome","Edge","IE","IE 11","IE 10","IE 9","IE 8","IE 7","Firefox","Firefox Focus","Chromium","Opera","Vivaldi","Yandex","Arora","Lunascape","QupZilla","Coc Coc","Kindle","Iceweasel","Konqueror","Iceape","SeaMonkey","Epiphany","360","360SE","360EE","UC","QQBrowser","QQ","Baidu","Maxthon","Sogou","LBBROWSER","2345Explorer","TheWorld","XiaoMi","Quark","Qiyu","Wechat",,"WechatWork","Taobao","Alipay","Weibo","Douban","Suning","iQiYi"],os:["Windows","Linux","Mac OS","Android","Ubuntu","FreeBSD","Debian","iOS","Windows Phone","BlackBerry","MeeGo","Symbian","Chrome OS","WebOS"],device:["Mobile","Tablet","iPad"]}},_e={getMatchMap:function(e){return{Trident:e.indexOf("Trident")>-1||e.indexOf("NET CLR")>-1,Presto:e.indexOf("Presto")>-1,WebKit:e.indexOf("AppleWebKit")>-1,Gecko:e.indexOf("Gecko/")>-1,Safari:e.indexOf("Safari")>-1,Chrome:e.indexOf("Chrome")>-1||e.indexOf("CriOS")>-1,IE:e.indexOf("MSIE")>-1||e.indexOf("Trident")>-1,Edge:e.indexOf("Edge")>-1||e.indexOf("Edg")>-1,Firefox:e.indexOf("Firefox")>-1||e.indexOf("FxiOS")>-1,"Firefox Focus":e.indexOf("Focus")>-1,Chromium:e.indexOf("Chromium")>-1,Opera:e.indexOf("Opera")>-1||e.indexOf("OPR")>-1,Vivaldi:e.indexOf("Vivaldi")>-1,Yandex:e.indexOf("YaBrowser")>-1,Arora:e.indexOf("Arora")>-1,Lunascape:e.indexOf("Lunascape")>-1,QupZilla:e.indexOf("QupZilla")>-1,"Coc Coc":e.indexOf("coc_coc_browser")>-1,Kindle:e.indexOf("Kindle")>-1||e.indexOf("Silk/")>-1,Iceweasel:e.indexOf("Iceweasel")>-1,Konqueror:e.indexOf("Konqueror")>-1,Iceape:e.indexOf("Iceape")>-1,SeaMonkey:e.indexOf("SeaMonkey")>-1,Epiphany:e.indexOf("Epiphany")>-1,360:e.indexOf("QihooBrowser")>-1||e.indexOf("QHBrowser")>-1,"360EE":e.indexOf("360EE")>-1,"360SE":e.indexOf("360SE")>-1,UC:e.indexOf("UC")>-1||e.indexOf(" UBrowser")>-1,QQBrowser:e.indexOf("QQBrowser")>-1,QQ:e.indexOf("QQ/")>-1,Baidu:e.indexOf("Baidu")>-1||e.indexOf("BIDUBrowser")>-1,Maxthon:e.indexOf("Maxthon")>-1,Sogou:e.indexOf("MetaSr")>-1||e.indexOf("Sogou")>-1,LBBROWSER:e.indexOf("LBBROWSER")>-1,"2345Explorer":e.indexOf("2345Explorer")>-1,TheWorld:e.indexOf("TheWorld")>-1,XiaoMi:e.indexOf("MiuiBrowser")>-1,Quark:e.indexOf("Quark")>-1,Qiyu:e.indexOf("Qiyu")>-1,Wechat:e.indexOf("MicroMessenger")>-1,Taobao:e.indexOf("AliApp(TB")>-1,Alipay:e.indexOf("AliApp(AP")>-1,Weibo:e.indexOf("Weibo")>-1,Douban:e.indexOf("com.douban.frodo")>-1,Suning:e.indexOf("SNEBUY-APP")>-1,iQiYi:e.indexOf("IqiyiApp")>-1,Windows:e.indexOf("Windows")>-1,Linux:e.indexOf("Linux")>-1||e.indexOf("X11")>-1,"Mac OS":e.indexOf("Macintosh")>-1,Android:e.indexOf("Android")>-1||e.indexOf("Adr")>-1,Ubuntu:e.indexOf("Ubuntu")>-1,FreeBSD:e.indexOf("FreeBSD")>-1,Debian:e.indexOf("Debian")>-1,"Windows Phone":e.indexOf("IEMobile")>-1||e.indexOf("Windows Phone")>-1,BlackBerry:e.indexOf("BlackBerry")>-1||e.indexOf("RIM")>-1,MeeGo:e.indexOf("MeeGo")>-1,Symbian:e.indexOf("Symbian")>-1,iOS:e.indexOf("like Mac OS X")>-1,"Chrome OS":e.indexOf("CrOS")>-1,WebOS:e.indexOf("hpwOS")>-1,Mobile:e.indexOf("Mobi")>-1||e.indexOf("iPh")>-1||e.indexOf("480")>-1,Tablet:e.indexOf("Tablet")>-1||e.indexOf("Nexus 7")>-1,iPad:e.indexOf("iPad")>-1}},matchInfoMap:function(e){var r=ye.navigator.userAgent||{},n=_e.getMatchMap(r);for(var t in ye.infoMap)for(var o=0;o<ye.infoMap[t].length;o++){var i=ye.infoMap[t][o];n[i]&&(e[t]=i)}},getOS:function(){return _e.matchInfoMap(this),this.os||"Unknown"},getOSVersion:function(){var e=this,r=ye.navigator.userAgent||{};e.osVersion="",e.osMajor="";var n={Windows:function(){var e=r.replace(/^.*Windows NT ([\d.]+);.*$/,"$1");return{6.4:"10",6.3:"8.1",6.2:"8",6.1:"7","6.0":"Vista",5.2:"XP",5.1:"XP","5.0":"2000"}[e]||e},Android:function(){return r.replace(/^.*Android ([\d.]+);.*$/,"$1")},iOS:function(){return r.replace(/^.*OS ([\d_]+) like.*$/,"$1").replace(/_/g,".")},Debian:function(){return r.replace(/^.*Debian\/([\d.]+).*$/,"$1")},"Windows Phone":function(){return r.replace(/^.*Windows Phone( OS)? ([\d.]+);.*$/,"$2")},"Mac OS":function(){return r.replace(/^.*Mac OS X ([\d_]+).*$/,"$1").replace(/_/g,".")},WebOS:function(){return r.replace(/^.*hpwOS\/([\d.]+);.*$/,"$1")}};return n[e.os]&&(e.osVersion=n[e.os](),e.osVersion===r&&(e.osVersion="")),e.osVersion&&(e.osMajor=e.osVersion.split(".").length&&e.osVersion.split(".")[0]),{version:e.osVersion,osMajor:e.osMajor}},getOrientationStatu:function(){return window.matchMedia("(orientation: portrait)").matches?"竖屏":"横屏"},getDeviceType:function(){var e=this;return e.device="PC",_e.matchInfoMap(e),e.device},getNetwork:function(){var e=window.navigator.connection||window.navigator.mozConnection||window.navigator.webkitConnection,r="unknown",n=e?e.type||e.effectiveType:null;if(n&&"string"==typeof n)switch(n){case"bluetooth":case"cellular":case"slow-2g":case"2g":case"3g":r="cellular";break;case"none":r="none";break;case"ethernet":case"wifi":case"wimax":case"4g":r="wifi";break;case"other":case"unknown":r="unknown"}return r},getLanguage:function(){var e;return this.language=((e=(ye.navigator.browserLanguage||ye.navigator.language).split("-"))[1]&&(e[1]=e[1].toUpperCase()),e.join("_")),this.language},getBrowserInfo:function(){var e=this;_e.matchInfoMap(e);var r=ye.navigator.userAgent||{},n=function(e,r){var n=ye.navigator.mimeTypes;for(var t in n)if(n[t][e]==r)return!0;return!1},t=_e.getMatchMap(r),o=!1;if(window.chrome){var i=r.replace(/^.*Chrome\/([\d]+).*$/,"$1");i>36&&window.showModalDialog?o=!0:i>45&&(o=n("type","application/vnd.chromium.remoting-viewer"))}if(t.Baidu&&t.Opera&&(t.Baidu=!1),t.Mobile&&(t.Mobile=!(r.indexOf("iPad")>-1)),o&&(n("type","application/gameplugin")||ye.navigator&&void 0===ye.navigator.connection.saveData?t["360SE"]=!0:t["360EE"]=!0),t.IE||t.Edge)switch(window.screenTop-window.screenY){case 71:case 74:case 99:case 75:case 74:case 105:default:break;case 102:t["360EE"]=!0;break;case 104:t["360SE"]=!0}var s={Safari:function(){return r.replace(/^.*Version\/([\d.]+).*$/,"$1")},Chrome:function(){return r.replace(/^.*Chrome\/([\d.]+).*$/,"$1").replace(/^.*CriOS\/([\d.]+).*$/,"$1")},IE:function(){return r.replace(/^.*MSIE ([\d.]+).*$/,"$1").replace(/^.*rv:([\d.]+).*$/,"$1")},Edge:function(){return r.replace(/^.*Edge?\/([\d.]+).*$/,"$1")},Firefox:function(){return r.replace(/^.*Firefox\/([\d.]+).*$/,"$1").replace(/^.*FxiOS\/([\d.]+).*$/,"$1")},"Firefox Focus":function(){return r.replace(/^.*Focus\/([\d.]+).*$/,"$1")},Chromium:function(){return r.replace(/^.*Chromium\/([\d.]+).*$/,"$1")},Opera:function(){return r.replace(/^.*Opera\/([\d.]+).*$/,"$1").replace(/^.*OPR\/([\d.]+).*$/,"$1")},Vivaldi:function(){return r.replace(/^.*Vivaldi\/([\d.]+).*$/,"$1")},Yandex:function(){return r.replace(/^.*YaBrowser\/([\d.]+).*$/,"$1")},Arora:function(){return r.replace(/^.*Arora\/([\d.]+).*$/,"$1")},Lunascape:function(){return r.replace(/^.*Lunascape[\/\s]([\d.]+).*$/,"$1")},QupZilla:function(){return r.replace(/^.*QupZilla[\/\s]([\d.]+).*$/,"$1")},"Coc Coc":function(){return r.replace(/^.*coc_coc_browser\/([\d.]+).*$/,"$1")},Kindle:function(){return r.replace(/^.*Version\/([\d.]+).*$/,"$1")},Iceweasel:function(){return r.replace(/^.*Iceweasel\/([\d.]+).*$/,"$1")},Konqueror:function(){return r.replace(/^.*Konqueror\/([\d.]+).*$/,"$1")},Iceape:function(){return r.replace(/^.*Iceape\/([\d.]+).*$/,"$1")},SeaMonkey:function(){return r.replace(/^.*SeaMonkey\/([\d.]+).*$/,"$1")},Epiphany:function(){return r.replace(/^.*Epiphany\/([\d.]+).*$/,"$1")},360:function(){return r.replace(/^.*QihooBrowser\/([\d.]+).*$/,"$1")},"360SE":function(){return{63:"10.0",55:"9.1",45:"8.1",42:"8.0",31:"7.0",21:"6.3"}[r.replace(/^.*Chrome\/([\d]+).*$/,"$1")]||""},"360EE":function(){return{69:"11.0",63:"9.5",55:"9.0",50:"8.7",30:"7.5"}[r.replace(/^.*Chrome\/([\d]+).*$/,"$1")]||""},Maxthon:function(){return r.replace(/^.*Maxthon\/([\d.]+).*$/,"$1")},QQBrowser:function(){return r.replace(/^.*QQBrowser\/([\d.]+).*$/,"$1")},QQ:function(){return r.replace(/^.*QQ\/([\d.]+).*$/,"$1")},Baidu:function(){return r.replace(/^.*BIDUBrowser[\s\/]([\d.]+).*$/,"$1")},UC:function(){return r.replace(/^.*UC?Browser\/([\d.]+).*$/,"$1")},Sogou:function(){return r.replace(/^.*SE ([\d.X]+).*$/,"$1").replace(/^.*SogouMobileBrowser\/([\d.]+).*$/,"$1")},LBBROWSER:function(){var e="";r.indexOf("LieBaoFast")>-1&&(e=r.replace(/^.*LieBaoFast\/([\d.]+).*$/,"$1"));var n=r.replace(/^.*Chrome\/([\d]+).*$/,"$1");return e||{57:"6.5",49:"6.0",46:"5.9",42:"5.3",39:"5.2",34:"5.0",29:"4.5",21:"4.0"}[n]||""},"2345Explorer":function(){return r.replace(/^.*2345Explorer\/([\d.]+).*$/,"$1")},TheWorld:function(){return r.replace(/^.*TheWorld ([\d.]+).*$/,"$1")},XiaoMi:function(){return r.replace(/^.*MiuiBrowser\/([\d.]+).*$/,"$1")},Quark:function(){return r.replace(/^.*Quark\/([\d.]+).*$/,"$1")},Qiyu:function(){return r.replace(/^.*Qiyu\/([\d.]+).*$/,"$1")},Wechat:function(){return r.replace(/^.*MicroMessenger\/([\d.]+).*$/,"$1")},WechatWork:function(){return r.replace(/^.*wxwork\/([\d.]+).*$/,"$1")},Taobao:function(){return r.replace(/^.*AliApp\(TB\/([\d.]+).*$/,"$1")},Alipay:function(){return r.replace(/^.*AliApp\(AP\/([\d.]+).*$/,"$1")},Weibo:function(){return r.replace(/^.*weibo__([\d.]+).*$/,"$1")},Douban:function(){return r.replace(/^.*com.douban.frodo\/([\d.]+).*$/,"$1")},Suning:function(){return r.replace(/^.*SNEBUY-APP([\d.]+).*$/,"$1")},iQiYi:function(){return r.replace(/^.*IqiyiVersion\/([\d.]+).*$/,"$1")}};return e.browserVersion="",e.browserMajor="",s[e.browser]&&(e.browserVersion=s[e.browser](),e.browserVersion==r&&(e.browserVersion="")),"Chrome"==e.browser&&r.match(/\S+Browser/)&&(e.browser=r.match(/\S+Browser/)[0],e.version=r.replace(/^.*Browser\/([\d.]+).*$/,"$1")),"Edge"==e.browser&&(e.version>"75"?e.engine="Blink":e.engine="EdgeHTML"),("Chrome"==e.browser&&parseInt(e.browserVersion)>27||t.Chrome&&"WebKit"==e.engine&&parseInt(e.browserVersion)>27||"Opera"==e.browser&&parseInt(e.version)>12||"Yandex"==e.browser)&&(e.engine="Blink"),e.browserVersion&&(e.browserMajor=e.browserVersion.split(".").length&&this.browserVersion.split(".")[0]),{browser:e.browser,browserVersion:e.browserVersion,engine:e.engine,browserMajor:e.browserMajor}},getGeoPostion:function(e){navigator&&navigator.geolocation&&navigator.geolocation.getCurrentPosition((function(r){e(r)}),(function(e){we.warn(e)}))}},xe={os:_e.getOS(),osVersion:_e.getOSVersion().version,osVersionMajor:_e.getOSVersion().osMajor,browser:_e.getBrowserInfo().browser,browserVersion:_e.getBrowserInfo().browserVersion,browserVersionMajor:_e.getBrowserInfo().browserMajor,screenSize:window.screen.width+"*"+window.screen.height,networkType:_e.getNetwork(),divice:_e.getDeviceType()};function Oe(e,r,n){var t=e[r],o=n(t),i=function(){if("function"==typeof o)return o.apply(this,arguments)};return e[r]=i,{stop:function(){e[r]===i?e[r]=t:o=t}}}function Se(e,r,n){return Oe(e,r,(function(e){return function(){var r;return n&&n.before&&n.before.apply(this,arguments),"function"==typeof e&&(r=e.apply(this,arguments)),n&&n.after&&n.after.apply(this,arguments),r}}))}function ke(e,r,n){if("object"!=typeof e||null===e)return JSON.stringify(e);var t=Ee(Object.prototype),o=Ee(Array.prototype),i=Ee(Object.getPrototypeOf(e)),s=Ee(e);try{return JSON.stringify(e,r,n)}catch(e){return"<error: unable to serialize object>"}finally{t(),o(),i(),s()}}function Ee(e){var r=e,n=r.toJSON;return n?(delete r.toJSON,()=>{r.toJSON=n}):Y}var Ce="?";function $e(e){var r=[],n=Ie(e,"stack");return n&&R(n.split("\n"),(function(e){var n=function(e){var r=Te.exec(e);if(!r)return;var n=r[2]&&0===r[2].indexOf("native"),t=r[2]&&0===r[2].indexOf("eval"),o=Re.exec(r[2]);t&&o&&(r[2]=o[1],r[3]=o[2],r[4]=o[3]);return{args:n?[r[2]]:[],column:r[4]?+r[4]:void 0,func:r[1]||Ce,line:r[3]?+r[3]:void 0,url:n?void 0:r[2]}}(e)||function(e){var r=Me.exec(e);if(!r)return;return{args:[],column:r[3]?+r[3]:void 0,func:Ce,line:r[2]?+r[2]:void 0,url:r[1]}}(e)||function(e){var r=Be.exec(e);if(!r)return;return{args:[],column:r[4]?+r[4]:void 0,func:r[1]||Ce,line:+r[3],url:r[2]}}(e)||function(e){var r=Ae.exec(e);if(!r)return;var n=r[3]&&r[3].indexOf(" > eval")>-1,t=Ue.exec(r[3]);n&&t&&(r[3]=t[1],r[4]=t[2],r[5]=void 0);return{args:r[2]?r[2].split(","):[],column:r[5]?+r[5]:void 0,func:r[1]||Ce,line:r[4]?+r[4]:void 0,url:r[3]}}(e);n&&(!n.func&&n.line&&(n.func=Ce),r.push(n))})),{message:Ie(e,"message"),name:Ie(e,"name"),stack:r}}var Le="((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\\w+\\.|\\/).*?)",Te=new RegExp("^\\s*at (.*?) ?\\("+Le+"(?::(\\d+))?"+"(?::(\\d+))?\\)?\\s*$","i"),Re=new RegExp("\\((\\S*)(?::(\\d+))(?::(\\d+))\\)");var Me=new RegExp("^\\s*at ?"+Le+"(?::(\\d+))?"+"(?::(\\d+))??\\s*$","i");var Be=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i;var Ae=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,Ue=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i;function Ie(e,r){if("object"==typeof e&&e&&r in e){var n=e[r];return"string"==typeof n?n:void 0}}var Pe=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/;function De(e){var r=function(e){return Se(window,"onerror",{before:function(r,n,t,o,i){var s;if(i)s=$e(i),e(s,i);else{var a,u={url:n,column:o,line:t},c=r;if("[object String]"==={}.toString.call(r)){var f=Pe.exec(c);f&&(a=f[1],c=f[2])}e(s={name:a,message:"string"==typeof c?c:void 0,stack:[u]},r)}}})}(e),n=function(e){return Se(window,"onunhandledrejection",{before:function(r){var n=r.reason||"Empty reason",t=$e(n);e(t,n)}})}(e);return{stop:function(){r.stop(),n.stop()}}}var je={AGENT:"agent",CONSOLE:"console",NETWORK:"network",SOURCE:"source",LOGGER:"logger",CUSTOM:"custom"};function Fe(){var e=new Error;if(!e.stack)try{throw e}catch(e){}var r=$e(e);return r.stack=r.stack.slice(2),qe(r)}function qe(e){var r=Qe(e);return R(e.stack,(function(e){var n="?"===e.func?"<anonymous>":e.func,t=e.args&&e.args.length>0?"("+e.args.join(", ")+")":"",o=e.line?":"+e.line:"",i=e.line&&e.column?":"+e.column:"";r+="\n at "+n+t+" @ "+e.url+o+i})),r}function Qe(e){return(e.name||"Error")+": "+e.message}function Ve(e,r){for(var n=e,t=[];n&&n.cause instanceof Error&&t.length<10;){var o=$e(n.cause);t.push({message:n.cause.message,source:r,type:o&&o.name,stack:o&&qe(o)}),n=n.cause}return t.length?t:void 0}var Ne=/[^\u0000-\u007F]/;function We(e){return Ne.test(e)?void 0!==window.TextEncoder?(new TextEncoder).encode(e).length:new Blob([e]).size:e.length}function Ge(e){return De((function(r,n){e.notify(function(e){var r=e.stackTrace,n=e.originalError,t=e.handlingStack,o=e.startClocks,i=e.nonErrorPrefix,s=e.source,a=e.handling;return r&&(void 0!==r.message||n instanceof Error)?{startClocks:o,source:s,handling:a,originalError:n,message:r.message||"Empty message",stack:qe(r),handlingStack:t,type:r.name,causes:Ve(n,s)}:{startClocks:o,source:s,handling:a,originalError:n,message:i+" "+ke(n),stack:"No stack, consider using an instance of Error",handlingStack:t,type:r&&r.name}}({stackTrace:r,originalError:n,startClocks:te(),nonErrorPrefix:"Uncaught",source:je.SOURCE,handling:h}))}))}var He=function(e){this.observers=[],this.onLastUnsubscribe=void 0,this.onFirstSubscribe=e};He.prototype={subscribe:function(e){!this.observers.length&&this.onFirstSubscribe&&(this.onLastUnsubscribe=this.onFirstSubscribe()||void 0),this.observers.push(e);var r=this;return{unsubscribe:function(){r.observers=j(r.observers,(function(r){return e!==r})),!r.observers.length&&r.onLastUnsubscribe&&r.onLastUnsubscribe()}}},notify:function(e){R(this.observers,(function(r){r(e)}))}};var Xe=He;function Ke(){var e=[].slice.call(arguments),r=new Xe((function(){var n=F(e,(function(e){return e.subscribe((function(e){return r.notify(e)}))}));return function(){return R(n,(function(e){return e.unsubscribe()}))}}));return r}var ze={};function Ye(e){var r=F(e,(function(e){return ze[e]||(ze[e]=function(e){var r=new Xe((function(){var n=console[e];return console[e]=function(){var t=[].slice.call(arguments);n.apply(console,arguments);var o=Fe();r.notify(Ze(t,e,o))},function(){console[e]=n}}));return r}(e)),ze[e]}));return Ke.apply(this,r)}function Ze(e,r,n){var t,o=F(e,(function(e){return function(e){if("string"==typeof e)return e;if(e instanceof Error)return Qe($e(e));return ke(e,void 0,2)}(e)})).join(" ");if(r===me.error){var i=function(e,r){for(var n=0;n<e.length;n+=1){var t=e[n];if(r(t,n,e))return t}}(e,(function(e){return e instanceof Error}));t=i?qe($e(i)):void 0,o="console error: "+o}return{api:r,message:o,stack:t,handlingStack:n}}function Je(e,r,n,t){return er(e,[r],n,t)}function er(e,r,n,t){var o=t&&t.once?function(e){s(),n(e)}:n;t=t&&t.passive?{capture:t.capture,passive:t.passive}:t&&t.capture;var i=b(e,"addEventListener");R(r,(function(r){i.call(e,r,o,t)}));var s=function(){var n=b(e,"removeEventListener");R(r,(function(r){n.call(e,r,o,t)}))};return{stop:s}}var rr={intervention:"intervention",deprecation:"deprecation",cspViolation:"csp_violation"};function nr(e){var r,n=[];ce(e,rr.cspViolation)&&n.push(r=new Xe((function(){return Je(document,u,(function(e){r.notify(function(e){var r=rr.cspViolation,n="'"+e.blockedURI+"' blocked by '"+e.effectiveDirective+"' directive";return{type:rr.cspViolation,subtype:e.effectiveDirective,message:r+": "+n,stack:tr(e.effectiveDirective,n+' of the policy "'+ue(e.originalPolicy,100)+'"',e.sourceFile,e.lineNumber,e.columnNumber)}}(e))})).stop})));var t=j(e,(function(e){return e!==rr.cspViolation}));return t.length&&n.push(function(e){var r=new Xe((function(){if(window.ReportingObserver){var n=function(e){R(e,(function(e){r.notify(function(e){var r=e.body,n=e.type;return{type:n,subtype:r.id,message:n+": "+r.message,stack:tr(r.id,r.message,r.sourceFile,r.lineNumber,r.columnNumber)}}(e))}))},t=new window.ReportingObserver(n,{types:e,buffered:!0});return t.observe(),function(){t.disconnect()}}}));return r}(t)),Ke.apply(this,n)}function tr(e,r,n,t,o){return n&&qe({name:e,message:r,stack:[{func:"?",url:n,line:t,column:o}]})}var or=function(){this._events=[],this.pendingEvents=[]};or.prototype={emit:function(e){var r=[].slice.call(arguments,1);R(this._events,(function(n){if(n.type!==e)return!1;n.callback.apply(n.context,r)}))},on:function(e,r,n){"function"==typeof r&&this._events.push({type:e,callback:r,context:n||this})}};new or;var ir,sr="RAW_LOG_COLLECTED",ar="LOG_COLLECTED";function ur(){this.callbacks={}}function cr(e){return fr(e,function(e){if(e.origin)return e.origin;var r=e.host.replace(/(:80|:443)$/,"");return e.protocol+"//"+r}(window.location)).href}function fr(e,r){if(function(){if(void 0!==ir)return ir;try{var e=new URL("http://test/path");return ir="http://test/path"===e.href}catch(e){ir=!1}return ir}())return void 0!==r?new URL(e,r):new URL(e);if(void 0===r&&!/:/.test(e))throw new Error("Invalid URL: "+e);var n=document,t=n.createElement("a");if(void 0!==r){var o=(n=document.implementation.createHTMLDocument("")).createElement("base");o.href=r,n.head.appendChild(o),n.body.appendChild(t)}return t.href=e,t}ur.prototype={notify:function(e,r){var n=this.callbacks[e];n&&R(n,(function(e){e(r)}))},subscribe:function(e,r){this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(r);var n=this;return{unsubscribe:function(){n.callbacks[e]=j(n.callbacks[e],(function(e){return e!==r}))}}}};var lr=navigator.userAgent.toLowerCase(),dr=function(){return/iphone os/.test(lr)};var pr;function vr(e,r,n,t){var o=new Date;o.setTime(o.getTime()+n);var i="expires="+o.toUTCString(),s=t&&t.crossSite?"none":"strict",a=t&&t.domain?";domain="+t.domain:"",u=t&&t.secure?";secure":"";document.cookie=e+"="+r+";"+i+";path=/;samesite="+s+a+u}function gr(e){return function(e,r){var n=e.match("(?:^|;)\\s*"+r+"\\s*=\\s*([^;]+)");return n?n[1]:void 0}(document.cookie,e)}var hr=/^\s+|\s+$/g;function br(e){return e.replace(hr,"")}function mr(e){return e.lastIndexOf("/")===e.length-1?br(e)+"v1/write/logging":br(e)+"/v1/write/logging"}function wr(e){return e.lastIndexOf("/")===e.length-1?br(e)+"v1/write/rum/replay":br(e)+"/v1/write/rum/replay"}var yr,_r;function xr(e){if(void 0===e.sampleRate||fe(e.sampleRate)){if(void 0===e.sessionSampleRate||fe(e.sessionSampleRate)){var r,n,t=e.sessionSampleRate||e.sampleRate;return M({beforeSend:e.beforeSend&&(r=e.beforeSend,n="beforeSend threw an error:",function(){var e=[].slice.call(arguments);try{return r.apply(this,e)}catch(e){we.error(n,e)}}),cookieOptions:Or(e),sessionSampleRate:pe(t,100),service:e.service,version:e.version,env:e.env,silentMultipleInit:!!e.silentMultipleInit,batchBytesLimit:16384,eventRateLimiterThreshold:3e3,flushTimeout:3e4,batchMessagesLimit:50,messageBytesLimit:262144,resourceUrlLimit:5120},function(e){var r=function(e){return!1};"isIntakeUrl"in e&&I(e.isIntakeUrl)&&N(e.isIntakeUrl())&&(r=e.isIntakeUrl);var n,t=function(e){return!1};return"isServerError"in e&&I(e.isServerError)&&N(e.isServerError())&&(t=e.isServerError),{datakitUrl:(n=e.datakitUrl||e.datakitOrigin,n.lastIndexOf("/")===n.length-1?br(n)+"v1/write/rum":br(n)+"/v1/write/rum"),logsEndpoint:mr(e.datakitOrigin),sessionReplayEndPoint:wr(e.datakitOrigin),isIntakeUrl:r,isServerError:t}}(e))}we.error("Sample Rate should be a number between 0 and 100")}else we.error("Sample Rate should be a number between 0 and 100")}function Or(e){var r={};return r.secure=function(e){return!!e.useSecureSessionCookie||!!e.useCrossSiteSessionCookie}(e),r.crossSite=!!e.useCrossSiteSessionCookie,e.trackSessionAcrossSubdomains&&(r.domain=function(){if(void 0===pr){for(var e="dd_site_test_".concat(H()),r=window.location.hostname.split("."),n=r.pop();r.length&&!gr(e);)n=r.pop()+"."+n,vr(e,"test",J,{domain:n});pr=n}return pr}()),r}function Sr(){var e;return yr||(e=new Xe((function(){if(window.fetch){var r=Oe(window,"fetch",(function(r){return function(n,t){var o,i=function(e,r,n){var t=n&&n.method||"object"==typeof r&&r.method||"GET",o=cr("object"==typeof r&&r.url||r),i=te(),s={state:"start",init:n,input:r,method:t,startClocks:i,url:o};return e.notify(s),s}(e,n,t);return i?(o=r.call(this,i.input,i.init),function(e,r,n){var t=function(r){var t=n;t.state="resolve","stack"in r||r instanceof Error?(t.status=0,t.isAborted=r instanceof DOMException&&r.code===DOMException.ABORT_ERR,t.error=r):"status"in r&&(t.response=r,t.responseType=r.type,t.status=r.status,t.isAborted=!1),e.notify(t)};r.then(t,t)}(e,o,i)):o=r.call(this,n,t),o}}));return r.stop}})),yr=e),yr}var kr={};function Er(){var e;return _r||(e=new Xe((function(){var r=Se(XMLHttpRequest.prototype,"open",{before:Cr}),n=Se(XMLHttpRequest.prototype,"send",{before:function(){$r.call(this,e)}}),t=Se(XMLHttpRequest.prototype,"abort",{before:Tr});return function(){r.stop(),n.stop(),t.stop()}})),_r=e),_r}function Cr(e,r){var n=this._DATAFLUX_REQUEST_UUID||H();this._DATAFLUX_REQUEST_UUID=n,kr[n]={state:"open",method:e,url:cr(String(r))}}function $r(e){var r=kr[this._DATAFLUX_REQUEST_UUID];if(r){var n=r;n.state="start",n.startTime=ne(),n.startClocks=te(),n.isAborted=!1,n.xhr=this;var t=!1,o=Se(this,"onreadystatechange",{before:function(){this.readyState===XMLHttpRequest.DONE&&i.call(this)}}).stop,i=function(){if(s(),o(),!t){t=!0;var i,a=r;a.state="complete",a.duration=(i=n.startClocks.timeStamp,oe()-i),a.status=this.status,e.notify(M({},a)),Lr.call(this)}},s=Je(this,"loadend",i).stop;e.notify(n)}}function Lr(){delete kr[this._DATAFLUX_REQUEST_UUID],delete this._DATAFLUX_REQUEST_UUID}function Tr(){var e=kr[this._DATAFLUX_REQUEST_UUID];e&&(e.isAborted=!0)}var Rr={HIDDEN:"visibility_hidden",UNLOADING:"before_unload",PAGEHIDE:"page_hide",FROZEN:"page_frozen"};var Mr,Br={sdk_name:"_dd.sdk_name",sdk_version:"_dd.sdk_version",app_id:"application.id",env:"env",service:"service",version:"version",userid:"user.id",user_email:"user.email",user_name:"user.name",session_id:"session.id",session_type:"session.type",session_sampling:"session.is_sampling",session_has_replay:"session.has_replay",is_signin:"user.is_signin",os:"device.os",os_version:"device.os_version",os_version_major:"device.os_version_major",browser:"device.browser",browser_version:"device.browser_version",browser_version_major:"device.browser_version_major",screen_size:"device.screen_size",network_type:"device.network_type",device:"device.device",view_id:"view.id",view_referrer:"view.referrer",view_url:"view.url",view_host:"view.host",view_path:"view.path",view_name:"view.path",view_path_group:"view.path_group",view_url_query:"view.url_query"},Ar={action_id:"action.id",view_in_foreground:"view.in_foreground"},Ur={view:{type:d,tags:{view_loading_type:"view.loading_type",view_apdex_level:"view.apdex_level",is_active:"view.is_active"},fields:{session_replay_stats:"_dd.replay_stats",session_is_active:"session.is_active",view_error_count:"view.error.count",view_resource_count:"view.resource.count",view_long_task_count:"view.long_task.count",view_action_count:"view.action.count",first_contentful_paint:"view.first_contentful_paint",largest_contentful_paint:"view.largest_contentful_paint",cumulative_layout_shift:"view.cumulative_layout_shift",first_input_delay:"view.first_input_delay",loading_time:"view.loading_time",dom_interactive:"view.dom_interactive",dom_content_loaded:"view.dom_content_loaded",dom_complete:"view.dom_complete",load_event:"view.load_event",first_input_time:"view.first_input_time",first_meaningful_paint:"view.largest_contentful_paint",first_paint_time:"view.fpt",resource_load_time:"view.resource_load_time",time_to_interactive:"view.tti",dom:"view.dom",dom_ready:"view.dom_ready",time_spent:"view.time_spent",in_foreground_periods:"view.in_foreground_periods",frustration_count:"view.frustration.count"}},resource:{type:p,tags:{trace_id:"_dd.trace_id",span_id:"_dd.span_id",resource_url:"resource.url",resource_url_host:"resource.url_host",resource_url_path:"resource.url_path",resource_url_path_group:"resource.url_path_group",resource_url_query:"resource.url_query",resource_type:"resource.type",resource_status:"resource.status",resource_status_group:"resource.status_group",resource_method:"resource.method"},fields:{duration:"resource.duration",resource_size:"resource.size",resource_dns:"resource.dns",resource_tcp:"resource.tcp",resource_ssl:"resource.ssl",resource_ttfb:"resource.ttfb",resource_trans:"resource.trans",resource_redirect:"resource.redirect",resource_first_byte:"resource.firstbyte",resource_dns_time:"resource.dns_time",resource_download_time:"resource.download_time",resource_first_byte_time:"resource.first_byte_time",resource_connect_time:"resource.connect_time",resource_ssl_time:"resource.ssl_time",resource_redirect_time:"resource.redirect_time"}},error:{type:f,tags:{error_id:"error.id",trace_id:"_dd.trace_id",span_id:"_dd.span_id",error_source:"error.source",error_type:"error.type",error_handling:"error.handling"},fields:{error_message:["string","error.message"],error_stack:["string","error.stack"],error_causes:["string","error.causes"]}},long_task:{type:l,tags:{long_task_id:"long_task.id"},fields:{duration:"long_task.duration"}},action:{type:c,tags:{action_type:"action.type"},fields:{action_name:"action.target.name",duration:"action.loading_time",action_error_count:"action.error.count",action_resource_count:"action.resource.count",action_frustration_types:"action.frustration.type",action_long_task_count:"action.long_task.count"}},browser_log:{type:v,tags:{error_source:"error.source",error_type:"error.type",error_resource_url:"http.url",error_resource_url_host:"http.url_host",error_resource_url_path:"http.url_path",error_resource_url_path_group:"http.url_path_group",error_resource_status:"http.status_code",error_resource_status_group:"http.status_group",error_resource_method:"http.method",action_id:"user_action.id",service:"service",status:"status"},fields:{message:["string","message"]}}},Ir=144e5,Pr=9e5,Dr=/^([a-z]+)=([a-z0-9-]+)$/,jr="&",Fr="_dataflux_s",qr=[];function Qr(e,r){if(void 0===r&&(r=0),Mr||(Mr=e),e===Mr)if(r>=100)Wr();else{var n,t=Hr();if(Vr()){if(t.lock)return void Nr(e,r);if(n=H(),t.lock=n,Gr(t,e.options),(t=Hr()).lock!==n)return void Nr(e,r)}var o=e.process(t);if(Vr()&&(t=Hr()).lock!==n)Nr(e,r);else{if(o&&function(e,r){if(Xr(e))return void function(e){vr(Fr,"",0,e)}(r);e.expire=String(ie()+Pr),Gr(e,r)}(o,e.options),Vr()&&(!o||!Xr(o))){if((t=Hr()).lock!==n)return void Nr(e,r);delete t.lock,Gr(t,e.options),o=t}e.after&&e.after(o||t),Wr()}}else qr.push(e)}function Vr(){return!!window.chrome||/HeadlessChrome/.test(window.navigator.userAgent)}function Nr(e,r){w((function(){Qr(e,r+1)}),10)}function Wr(){Mr=void 0;var e=qr.shift();e&&Qr(e)}function Gr(e,r){vr(Fr,function(e){return F((r=e,n=[],R(r,(function(e,r){n.push([r,e])})),n),(function(e){return e[0]+"="+e[1]})).join(jr);var r,n}(e),Pr,r)}function Hr(){var e=gr(Fr),r={};return function(e){return void 0!==e&&(-1!==e.indexOf(jr)||Dr.test(e))}(e)&&R(e.split(jr),(function(e){var n=Dr.exec(e);if(null!==n){var t=n[1],o=n[2];r[t]=o}})),r}function Xr(e){return Q(e)}function Kr(e,r,n){var t=new Xe,o=new Xe,i=_((function(){Qr({options:e,process:function(e){return c(e)?void 0:{}},after:a})}),1e3),s=function(){var e=Hr();if(c(e))return e;return{}}();function a(e){return c(e)||(e={}),u()&&(!function(e){return s.id!==e.id||s[r]!==e[r]}(e)?s=e:(s={},o.notify())),e}function u(){return void 0!==s[r]}function c(e){return(void 0===e.created||ie()-Number(e.created)<Ir)&&(void 0===e.expire||ie()<Number(e.expire))}return{expandOrRenewSession:G((function(){var o;Qr({options:e,process:function(e){var t=a(e);return o=function(e){var t=n(e[r]),o=t.trackingType,i=t.isTracked;e[r]=o,i&&!e.id&&(e.id=H(),e.created=String(ie()));return i}(t),t},after:function(e){o&&!u()&&function(e){s=e,t.notify()}(e),s=e}})}),1e3).throttled,expandSession:function(){Qr({options:e,process:function(e){return u()?a(e):void 0}})},getSession:function(){return s},renewObservable:t,expireObservable:o,expire:function(){deleteSessionCookie(e),a({})},stop:function(){x(i)}}}var zr=[],Yr=function(e,s,a){var u=Kr(e,s,a);zr.push((function(){return u.stop()}));var c,f=new be(144e5);function l(){return{id:u.getSession().id,trackingType:u.getSession()[s]}}return zr.push((function(){return f.stop()})),u.renewObservable.subscribe((function(){f.add(l(),ne())})),u.expireObservable.subscribe((function(){f.closeActive(ne())})),u.expandOrRenewSession(),f.add(l(),[0,se()][0]),c=er(window,[r,o,n,t],(function(){return u.expandOrRenewSession()}),{capture:!0,passive:!0}),zr.push(c.stop),function(e){var r=function(){"visible"===document.visibilityState&&e()},n=Je(document,i,r);zr.push(n.stop);var t=_(r,6e4);zr.push((function(){x(t)}))}((function(){return u.expandSession()})),{findActiveSession:function(e){return f.find(e)},renewObservable:u.renewObservable,expireObservable:u.expireObservable,expire:u.expire}};var Zr=3145728,Jr=0,en=1,rn=2,nn=0,tn=1;function on(e,r,n,t){r.transportStatus===Jr&&0===r.queuedPayloads.size()&&r.bandwidthMonitor.canHandle(e)?an(e,r,n,{onSuccess:function(){return un(nn,r,n,t)},onFailure:function(){r.queuedPayloads.enqueue(e),sn(r,n,t)}}):r.queuedPayloads.enqueue(e)}function sn(e,r,n){e.transportStatus===rn&&w((function(){an(e.queuedPayloads.first(),e,r,{onSuccess:function(){e.queuedPayloads.dequeue(),e.currentBackoffTime=1e3,un(tn,e,r,n)},onFailure:function(){e.currentBackoffTime=Math.min(256e3,2*e.currentBackoffTime),sn(e,r,n)}})}),e.currentBackoffTime)}function an(e,r,n,t){var o=t.onSuccess,i=t.onFailure;r.bandwidthMonitor.add(e),n(e,(function(n){r.bandwidthMonitor.remove(e),!function(e){return"opaque"!==e.type&&(0===e.status&&!navigator.onLine||408===e.status||429===e.status||e.status>=500)}(n)?(r.transportStatus=Jr,o()):(r.transportStatus=r.bandwidthMonitor.ongoingRequestCount>0?en:rn,r.lastFailureStatus=n.status,i())}))}function un(e,r,n,t){e===nn&&r.queuedPayloads.isFull()&&!r.queueFullReported&&(t({message:"Reached max events size queued for upload: 3MiB",source:je.AGENT,startClocks:te()}),r.queueFullReported=!0);var o=r.queuedPayloads;for(r.queuedPayloads=cn();o.size()>0;)on(o.dequeue(),r,n,t)}function cn(){var e=[];return{bytesCount:0,enqueue:function(r){this.isFull()||(e.push(r),this.bytesCount+=r.bytesCount)},first:function(){return e[0]},dequeue:function(){var r=e.shift();return r&&(this.bytesCount-=r.bytesCount),r},size:function(){return e.length},isFull:function(){return this.bytesCount>=Zr}}}function fn(e){return e?e+(-1===e.indexOf("?")?"?":"&")+"precision=ms":e}function ln(e,r,n){var t={transportStatus:Jr,lastFailureStatus:0,currentBackoffTime:1e3,bandwidthMonitor:{ongoingRequestCount:0,ongoingByteCount:0,canHandle:function(e){return 0===this.ongoingRequestCount||this.ongoingByteCount+e.bytesCount<=81920&&this.ongoingRequestCount<32},add:function(e){this.ongoingRequestCount+=1,this.ongoingByteCount+=e.bytesCount},remove:function(e){this.ongoingRequestCount-=1,this.ongoingByteCount-=e.bytesCount}},queuedPayloads:cn(),queueFullReported:!1},o=function(n,t){return function(e,r,n,t){var o=n.data,i=n.bytesCount,s=fn(e);(function(){try{return window.Request&&"keepalive"in new Request("http://a")}catch(e){return!1}})()&&i<r?fetch(s,{method:"POST",body:o,keepalive:!0,mode:"cors"}).then((function(e){"function"==typeof t&&t({status:e.status,type:e.type})}),(function(){dn(s,o,t)})):dn(s,o,t)}(e,r,n,t)};return{send:function(e){on(e,t,o,n)},sendOnExit:function(n){!function(e,r,n){var t=n.data,o=n.bytesCount,i=fn(e);if(navigator.sendBeacon&&o<r)try{if(navigator.sendBeacon(i,t))return}catch(e){}dn(i,t)}(e,r,n)}}}function dn(e,r,n){var t=new XMLHttpRequest;t.open("POST",e,!0),Je(t,"loadend",(function(){"function"==typeof n&&n({status:t.status})}),{once:!0}),t.send(r)}function pn(e){if("object"==typeof e&&e)e=ke(e);else if(!V(e))return e;return String(e).replace(/[\s=,"]/g,(function(e){return"\\"+e}))}function vn(e){return'"'+e.replace(/\\/g,"\\\\").replace(/[\\]*"/g,'"').replace(/"/g,'\\"')+'"'}function gn(e){return"object"==typeof e&&e?vn(ke(e)):V(e)?vn(e):e}var hn="custom_keys",bn=function(e){if(!e||!e.type)return{rowStr:"",rowData:void 0};var r={tags:{},fields:{}},n=!1,t="";return R(Ur,(function(o,i){if(o.type===e.type){t+=i+",",r.measurement=i;var s=[],a=B({},Br,o.tags),u=["date","type",hn];R(a,(function(n,t){var o=ae(e,n);u.push(t),(o||W(o))&&(r.tags[t]=function(e){return V(e)?e:ke(e)}(o),s.push(pn(t)+"="+pn(o)))}));var c=[],f=B({},Ar,o.fields);if(R(f,(function(n,t){if(U(n)&&2===n.length){n[0];var o=n[1],i=ae(e,o);u.push(t),(i||W(i))&&(r.fields[t]=i,c.push(pn(t)+"="+gn(i)))}else if(V(n)){i=ae(e,n);u.push(t),(i||W(i))&&(r.fields[t]=i,c.push(pn(t)+"="+gn(i)))}})),e.tags&&q(e.tags)&&!Q(e.tags)){var l=[];R(e.tags,(function(e,n){u.indexOf(n)>-1||(u.push(n),(e||W(e))&&(l.push(n),r.fields[n]=e,c.push(pn(n)+"="+gn(e))))})),l.length&&(r.fields.custom_keys=gn(l),c.push(pn(hn)+"="+gn(l)))}e.type===v&&R(e,(function(e,n){-1===u.indexOf(n)&&(W(e)||V(e)||N(e))&&(r.fields[n]=e,c.push(pn(n)+"="+gn(e)))})),s.length&&(t+=s.join(",")),c.length&&(t+=" ",t+=c.join(","),n=!0),t=t+" "+e.date,r.time=(d=e.date,W(d)?re(1e6*d,0):d)}var d})),{rowStr:n?t:"",rowData:n?r:void 0}},mn=function(e,r,n){this.pushOnlyBuffer=[],this.upsertBuffer={},this.request=e,this.flushController=r,this.messageBytesLimit=n;var t=this;this.flushController.flushObservable.subscribe((function(e){t.flush(e)}))};mn.prototype.add=function(e){this.addOrUpdate(e)},mn.prototype.upsert=function(e,r){this.addOrUpdate(e,r)},mn.prototype.flush=function(e){var r,n=this.pushOnlyBuffer.concat(P(this.upsertBuffer));if(this.pushOnlyBuffer=[],this.upsertBuffer={},n.length>0){var t={data:n.join("\n"),bytesCount:e.bytesCount,flushReason:e.reason};r=e.reason,ce(P(Rr),r)?this.request.sendOnExit(t):this.request.send(t)}},mn.prototype.addOrUpdate=function(e,r){var n=this.process(e),t=n.processedMessage,o=n.messageBytesCount;o>=this.messageBytesLimit?we.warn("Discarded a message whose size was bigger than the maximum allowed size "+this.messageBytesLimit+"KB."):(this.hasMessageFor(r)&&this.remove(r),this.push(t,o,r))},mn.prototype.process=function(e){var r=bn(e).rowStr;return{processedMessage:r,messageBytesCount:We(r)}},mn.prototype.push=function(e,r,n){var t=this.flushController.getMessagesCount()>0?1:0;this.flushController.notifyBeforeAddMessage(r+t),void 0!==n?this.upsertBuffer[n]=e:this.pushOnlyBuffer.push(e),this.flushController.notifyAfterAddMessage()},mn.prototype.remove=function(e){var r=this.upsertBuffer[e];delete this.upsertBuffer[e];var n=We(r),t=this.flushController.getMessagesCount()>1?1:0;this.flushController.notifyAfterRemoveMessage(n+t)},mn.prototype.hasMessageFor=function(e){return void 0!==e&&void 0!==this.upsertBuffer[e]};var wn=mn;function yn(e){var{messagesLimit:r,bytesLimit:n,durationLimit:t,pageExitObservable:o,sessionExpireObservable:i}=e,s=new Xe;o.subscribe((function(e){return f(e.reason)})),i.subscribe((function(){return f("session_expire")}));var a,u=0,c=0;function f(e){if(0!==c){var r=c,n=u;c=0,u=0,l(),s.notify({reason:e,messagesCount:r,bytesCount:n})}}function l(){y(a),a=void 0}return{flushObservable:s,getMessagesCount:function(){return c},notifyBeforeAddMessage:function(e){u+e>=n&&f("bytes_limit"),c+=1,u+=e,void 0===a&&(a=w((function(){f("duration_limit")}),t))},notifyAfterAddMessage:function(){c>=r?f("messages_limit"):u>=n&&f("bytes_limit")},notifyAfterRemoveMessage:function(e){u-=e,0===(c-=1)&&l()}}}var _n="user",xn="global context",On="logger context";function Sn(e,r){void 0===r&&(r=We);var n,t={},o=!1,i=G((function(t){n=r(ke(t)),o||(o=function(e,r){return e>3072&&(we.warn("The "+r+"data is over 3 KiB. On low connectivity, the SDK has the potential to exhaust the user's upload bandwidth."),!0)}(n,e))}),200).throttled;return{getBytesCount:function(){return n},get:function(){return t},add:function(e,r){t[e]=r,i(t)},remove:function(e){delete t[e],i(t)},set:function(e){i(t=e)},getContext:function(){return z(t)},setContext:function(e){t=z(e),i(t)},setContextProperty:function(e,r){t[e]=z(r),i(t)},removeContextProperty:function(e){delete t[e],i(t)},clearContext:function(){t={},n=0}}}var kn={sdkVersion:"2.0.6",sdkName:"df_web_logs_sdk"};function En(e,r,n){return void 0===e?[]:"all"===e||U(e)&&function(e,r,n){if(e.every)return e.every(r);for(var t=!0,o=0;o<e.length;o++)if($.call(e,o)){var i=e[o];if(!r.call(n,i,o,e)){t=!1;break}}return t}(e,(function(e){return ce(r,e)}))?"all"===e?r:function(e){for(var r,n=[],t={},o=0;o<e.length;o++)(r=e[o])in t||(t[r]=!0,n.push(r));return n}(e):void we.error(n+' should be "all" or an array with allowed values "'+r.join('", "')+'"')}var Cn={debug:"debug",error:"error",info:"info",warn:"warn",critical:"critical"},$n="console",Ln="http",Tn=D(Cn);function Rn(e,r,n,t,o){this.contextManager=Sn(On),void 0===n&&(n=Ln),void 0===t&&(t=Cn.debug),void 0===o&&(o={}),this.handleLogStrategy=e,this.handlerType=n,this.level=t,this.contextManager.set(M({},o,r?{logger:{name:r}}:void 0))}Rn.prototype={log:function(e,r,n){void 0===n&&(n=Cn.info),this.handleLogStrategy({message:e,context:z(r),status:n},this)},debug:function(e,r){this.log(e,r,Cn.debug)},info:function(e,r){this.log(e,r,Cn.info)},warn:function(e,r){this.log(e,r,Cn.warn)},critical:function(e,r){this.log(e,r,Cn.critical)},error:function(e,r){var n={error:{origin:je.LOGGER}};this.log(e,A(n,r),Cn.error)},setContext:function(e){this.contextManager.set(e)},getContext:function(){return this.contextManager.get()},addContext:function(e,r){this.contextManager.add(e,r)},removeContext:function(e){this.contextManager.remove(e)},setHandler:function(e){this.handlerType=e},getHandler:function(){return this.handlerType},setLevel:function(e){this.level=e},getLevel:function(){return this.level}};var Mn="0",Bn="1";function An(e){var r=Yr(e.cookieOptions,"logs",(function(r){return function(e,r){var n=function(e){return e===Mn||e===Bn}(r)?r:Un(e);return{trackingType:n,isTracked:n===Bn}}(e,r)}));return{findTrackedSession:function(e){var n=r.findActiveSession(e);return n&&n.trackingType===Bn?{id:n.id}:void 0},expireObservable:r.expireObservable}}function Un(e){return 0!==(r=e.sessionSampleRate)&&100*Math.random()<=r?Bn:Mn;var r}var In={[Cn.debug]:0,[Cn.info]:1,[Cn.warn]:2,[Cn.error]:3};function Pn(e,r,n){var t=n.getHandler(),o=U(t)?t:[t];return In[e]>=In[n.getLevel()]&&ce(o,r)}function Dn(e,r,n,t,o,i){var s=Tn.concat(["custom"]),a={};R(s,(function(e){var n,t,o,s,u;a[e]=(n=e,t=r.eventRateLimiterThreshold,o=i,s=0,u=!1,{isLimitReached:function(){if(0===s&&w((function(){s=0}),ee),(s+=1)<=t||u)return u=!1,!1;if(s===t+1){u=!0;try{o({message:"Reached max number of "+n+"s by minute: "+t,source:je.AGENT,startClocks:te()})}finally{u=!1}}return!0}})})),n.subscribe(sr,(function(i){var s=i.rawLogsEvent,u=i.messageContext||void 0,c=i.messageContext||void 0,f=i.logger||o,l=s.date-se(),d=e.findTrackedSession(l);if(d){var p=c||t(),g=A({service:r.service||"browser",env:r.env||"",version:r.version||"",_dd:{sdkName:r.sdkName,sdkVersion:r.sdkVersion},session:{id:d.id},view:p.view,user:Q(p.user)?void 0:p.user,device:xe,type:v},p.context,function(e){return r(window.DATAFLUX_RUM);function r(r){if(r&&r.getInternalContext)return r.getInternalContext(e)}}(l),s,f.getContext(),u);!Pn(s.status,Ln,f)||r.beforeSend&&!1===r.beforeSend(g)||g.error&&g.error.origin!==je.AGENT&&pe(a[g.status],a.custom).isLimitReached()||n.notify(ar,le(g))}}))}var jn={[me.log]:Cn.info,[me.debug]:Cn.debug,[me.info]:Cn.info,[me.warn]:Cn.warn,[me.error]:Cn.error};var Fn={[rr.cspViolation]:Cn.error,[rr.intervention]:Cn.error,[rr.deprecation]:Cn.warn};function qn(e,r){if(!e.forwardErrorsToLogs)return{stop:Y};var n=Er().subscribe((function(e){"complete"===e.state&&o(g.XHR,e)})),t=Sr().subscribe((function(e){"resolve"===e.state&&o(g.FETCH,e)}));function o(n,t){function o(e){var o,i,s,a,u,c=(o=t.url,i=function(e){this._fields={Username:4,Password:5,Port:7,Protocol:2,Host:6,Path:8,URL:0,QueryString:9,Fragment:10},this._values={},this._regex=null,this._regex=/^((\w+):\/\/)?((\w+):?(\w+)?@)?([^\/\?:]+):?(\d+)?(\/?[^\?#]+)?\??([^#]+)?#?(\w*)/,void 0!==e&&this._parse(e)},i.prototype.setUrl=function(e){this._parse(e)},i.prototype._initValues=function(){for(var e in this._fields)this._values[e]=""},i.prototype.addQueryString=function(e){if("object"!=typeof e)return!1;var r=this._values.QueryString||"";for(var n in e)r=new RegExp(n+"[^&]+").test(r)?r.replace(new RegExp(n+"[^&]+"),n+"="+e[n]):"&"===r.slice(-1)?r+n+"="+e[n]:""===r?n+"="+e[n]:r+"&"+n+"="+e[n];this._values.QueryString=r},i.prototype.getParse=function(){return this._values},i.prototype.getUrl=function(){var e="";return e+=this._values.Origin,(e+=this._values.Path)+(this._values.QueryString?"?"+this._values.QueryString:"")},i.prototype._parse=function(e){this._initValues();var r=this._regex.exec(e);if(!r)throw"DPURLParser::_parse -> Invalid URL";for(var n in this._fields)void 0!==r[this._fields[n]]&&(this._values[n]=r[this._fields[n]]);this._values.Path=this._values.Path||"/",this._values.Hostname=this._values.Host.replace(/:\d+$/,""),this._values.Origin=this._values.Protocol+"://"+this._values.Hostname+(this._values.Port?":"+this._values.Port:"")},new i(o)).getParse();r.notify(sr,{rawLogsEvent:{message:Vn(n)+" error "+t.method+" "+t.url,date:t.startClocks.timeStamp,error:{origin:je.NETWORK,stack:e||"Failed to load"},http:{method:t.method,status_code:t.status,url:t.url,statusGroup:(u=t.status,u?String(u).substr(0,1)+String(u).substr(1).replace(/\d*/g,"x"):u),urlHost:c.Host,urlPath:c.Path,urlPathGroup:(s=c.Path,a="",s&&(a=s.replace(/\/([^\/]*)\d([^\/]*)/g,"/?").replace(/\/$/g,"")),a||"/")},status:Cn.error,origin:je.NETWORK}})}!e.isIntakeUrl(t.url)&&(function(e){return 0===e.status&&"opaque"!==e.responseType}(t)||function(e){return e.status>=500}(t)||e.isServerError(t))&&("xhr"in t?function(e,r,n){"string"==typeof e.response?n(Qn(e.response,r)):n(e.response)}(t.xhr,e,o):t.response?function(e,r,n){var t=function(e){try{return e.clone()}catch(e){return}}(e);t&&t.body?window.TextDecoder?function(e,r,n){!function(e,r,n){var t=e.getReader(),o=[],i=0;function s(){var e,s;if(t.cancel().catch(Y),n.collectStreamBody){var a;if(1===o.length)a=o[0];else{a=new Uint8Array(i);var u=0;R(o,(function(e){a.set(e,u),u+=e.length}))}e=a.slice(0,n.bytesLimit),s=a.length>n.bytesLimit}r(void 0,e,s)}!function e(){t.read().then((function(r){r.done?s():(n.collectStreamBody&&o.push(r.value),(i+=r.value.length)>n.bytesLimit?s():e())}),(function(e){r(e)}))}()}(e,(function(e,r,t){if(e)n(e);else{var o=(new TextDecoder).decode(r);t&&(o+="..."),n(void 0,o)}}),{bytesLimit:r,collectStreamBody:!0})}(t.body,r.requestErrorResponseLengthLimit,(function(e,r){n(e?"Unable to retrieve response: "+e:r)})):t.text().then((function(e){return n(Qn(e,r))}),(function(e){return n("Unable to retrieve response: "+e)})):n()}(t.response,e,o):t.error&&function(e,r,n){n(Qn(qe($e(e)),r))}(t.error,e,o))}return{stop:function(){n.unsubscribe(),t.unsubscribe()}}}function Qn(e,r){return e.length>r.requestErrorResponseLengthLimit?e.substring(0,r.requestErrorResponseLengthLimit)+"...":e}function Vn(e){return g.XHR===e?"XHR":"Fetch"}function Nn(e,r,n,t,o){var i=function(e,r,n,t,o){var i=function(r){return new wn(ln(r,e.batchBytesLimit,n),yn({messagesLimit:e.batchMessagesLimit,bytesLimit:e.batchBytesLimit,durationLimit:e.flushTimeout,pageExitObservable:t,sessionExpireObservable:o}),e.messageBytesLimit)}(r);return{add:function(e){i.add(e)}}}(e,e.logsEndpoint,n,t,o);r.subscribe(ar,(function(e){i.add(e)}))}const Wn=function(e){var r,n=!1,t=Sn(xn),o=Sn(_n),i={},s=function(){},a=new ge,u=function(e,r,n,t){void 0===n&&(n=z(l())),void 0===t&&(t=oe()),a.add((function(){return u(e,r,n,t)}))},c=function(){},f=new Rn((function(){return u.apply(this,arguments)}));function l(){return{view:{referrer:document.referrer,url:window.location.href},context:t.getContext(),user:o.getContext()}}return r={logger:f,init:function(r){if(function(e){return n?(e.silentMultipleInit||we.error("DD_LOGS is already initialized."),!1):!(!e.datakitUrl&&!e.datakitOrigin)||(we.error("datakitOrigin is not configured, no RUM data will be collected."),!1)}(r)){var t=function(e){var r=xr(e),n=En(e.forwardConsoleLogs,P(me),"Forward Console Logs"),t=En(e.forwardReports,P(rr),"Forward Reports");if(r&&n&&t)return e.forwardErrorsToLogs&&!ce(n,me.error)&&n.push(me.error),M({forwardErrorsToLogs:!1!==e.forwardErrorsToLogs,forwardConsoleLogs:n,forwardReports:t,requestErrorResponseLengthLimit:32768},r,kn)}(r);if(t){var o=e(t,l,f);u=o.handleLog,s=o.getInternalContext,c=function(){return z(r)},a.drain(),n=!0}}},getGlobalContext:t.getContext,setGlobalContext:t.setContext,setGlobalContextProperty:t.setContextProperty,removeGlobalContextProperty:t.removeContextProperty,clearGlobalContext:t.clearContext,createLogger:function(e,r){return void 0===r&&(r={}),i[e]=new Rn((function(){return u(this.arguments)}),e,r.handler,r.level,r.context),i[e]},getLogger:function(e){return i[e]},getInitConfiguration:function(){return c()},getInternalContext:function(e){return s(e)},setUser:function(e){(function(e){var r="object"===X(e);return r||we.error("Unsupported user:",e),r})(e)&&o.setContext(function(e){var r=M({},e);return R(["id","name","email"],(function(e){e in r&&(r[e]=String(r[e]))})),r}(e))},getUser:o.getContext,removeUserProperty:o.removeContextProperty,clearUser:o.clearContext},B({},r,{onReady:function(e){e()}})}((function(r,n,t){var o,u=new ur,c=function(e){u.notify(sr,{rawLogsEvent:{message:e.message,date:e.startClocks.timeStamp,error:{origin:je.AGENT},origin:je.AGENT,status:Cn.error}})},f=o=new Xe((function(){var r=er(document,[i,s,a],(function(e){e.type===i&&"hidden"===document.visibilityState?o.notify({reason:Rr.HIDDEN}):e.type===s&&o.notify({reason:Rr.FROZEN})}),{capture:!0}),n=Je(window,e,(function(){o.notify({reason:Rr.UNLOADING})}));return function(){r.stop(),n.stop()}})),l=function(e){if(void 0===document.cookie||null===document.cookie)return!1;try{var r="dd_cookie_test_".concat(H()),n="test";return vr(r,n,J,e),gr(r)===n}catch(e){return console.error(e),!1}}(r.cookieOptions)?An(r):function(e){var r=Un(e)===Bn?{}:void 0;return{findTrackedSession:function(){return r},expireObservable:new Xe}}(r);qn(r,u),function(e,r){if(!e.forwardErrorsToLogs)return{stop:Y};var n=new Xe,t=Ge(n),o=n.subscribe((function(e){r.notify(sr,{rawLogsEvent:{message:e.message,date:e.startClocks.timeStamp,error:{kind:e.type,origin:je.SOURCE,stack:e.stack},origin:je.SOURCE,status:Cn.error}})}))}(r,u),function(e,r){var n=Ye(e.forwardConsoleLogs).subscribe((function(e){r.notify(sr,{rawLogsEvent:{date:oe(),message:e.message,origin:je.CONSOLE,error:e.api===me.error?{origin:je.CONSOLE,stack:e.stack}:void 0,status:jn[e.api]}})}))}(r,u),function(e,r){var n=nr(e.forwardReports).subscribe((function(e){var n,t,o,i=e.message,s=Fn[e.type];s===Cn.error?n={kind:e.subtype,origin:je.REPORT,stack:e.stack}:e.stack&&(i+=" Found in "+(t=e.stack,(o=/@ (.+)/.exec(t))&&o[1])),r.notify(sr,{rawLogsEvent:{date:oe(),message:i,origin:je.REPORT,error:n,status:s}})}))}(r,u);var d=function(e){return{handleLog:function(r,n,t,o){var i=r.context;Pn(r.status,$n,n)&&we(r.status,r.message,A(n.getContext(),i)),e.notify(sr,{rawLogsEvent:{date:o||oe(),message:r.message,status:r.status,origin:je.LOGGER},messageContext:i,savedCommonContext:t,logger:n})}}}(u);Dn(l,r,u,n,t,c),Nn(r,u,c,f,l.expireObservable);var p,v=(p=l,{get:function(e){var r=p.findTrackedSession(e);if(r)return{session:{id:r.id}}}});return{handleLog:d.handleLog,getInternalContext:v.get}}));var Gn,Hn,Xn,Kn;Gn=m(),Xn=Wn,Kn=Gn[Hn="DATAFLUX_LOGS"],Gn[Hn]=Xn,Kn&&Kn.q&&R(Kn.q,(function(e){e()}))}();
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.buildEnv = void 0;
7
7
  var buildEnv = {
8
- sdkVersion: '2.0.4',
8
+ sdkVersion: '2.0.6',
9
9
  sdkName: 'df_web_logs_sdk'
10
10
  };
11
11
  exports.buildEnv = buildEnv;
@@ -13,7 +13,8 @@ var _logger = require("../domain/logger");
13
13
 
14
14
  function makeLogsPublicApi(startLogsImpl) {
15
15
  var isAlreadyInitialized = false;
16
- var globalContextManager = (0, _browserCore.createContextManager)();
16
+ var globalContextManager = (0, _browserCore.createContextManager)(_browserCore.CustomerDataType.GlobalContext);
17
+ var userContextManager = (0, _browserCore.createContextManager)(_browserCore.CustomerDataType.User);
17
18
  var customLoggers = {};
18
19
 
19
20
  var getInternalContextStrategy = function getInternalContextStrategy() {
@@ -24,7 +25,7 @@ function makeLogsPublicApi(startLogsImpl) {
24
25
 
25
26
  var _handleLogStrategy = function handleLogStrategy(logsMessage, logger, savedCommonContext, date) {
26
27
  if (typeof savedCommonContext === 'undefined') {
27
- savedCommonContext = (0, _browserCore.deepClone)(getCommonContext());
28
+ savedCommonContext = (0, _browserCore.deepClone)(buildCommonContext());
28
29
  }
29
30
 
30
31
  if (typeof date === 'undefined') {
@@ -44,13 +45,14 @@ function makeLogsPublicApi(startLogsImpl) {
44
45
  return _handleLogStrategy.apply(this, arguments);
45
46
  });
46
47
 
47
- function getCommonContext() {
48
+ function buildCommonContext() {
48
49
  return {
49
50
  view: {
50
51
  referrer: document.referrer,
51
52
  url: window.location.href
52
53
  },
53
- context: globalContextManager.get()
54
+ context: globalContextManager.getContext(),
55
+ user: userContextManager.getContext()
54
56
  };
55
57
  }
56
58
 
@@ -67,7 +69,7 @@ function makeLogsPublicApi(startLogsImpl) {
67
69
  return;
68
70
  }
69
71
 
70
- var _startLogsImpl = startLogsImpl(configuration, getCommonContext, mainLogger);
72
+ var _startLogsImpl = startLogsImpl(configuration, buildCommonContext, mainLogger);
71
73
 
72
74
  _handleLogStrategy = _startLogsImpl.handleLog;
73
75
  getInternalContextStrategy = _startLogsImpl.getInternalContext;
@@ -110,7 +112,15 @@ function makeLogsPublicApi(startLogsImpl) {
110
112
  },
111
113
  getInternalContext: function getInternalContext(startTime) {
112
114
  return getInternalContextStrategy(startTime);
113
- }
115
+ },
116
+ setUser: function setUser(newUser) {
117
+ if ((0, _browserCore.checkUser)(newUser)) {
118
+ userContextManager.setContext((0, _browserCore.sanitizeUser)(newUser));
119
+ }
120
+ },
121
+ getUser: userContextManager.getContext,
122
+ removeUserProperty: userContextManager.removeContextProperty,
123
+ clearUser: userContextManager.clearContext
114
124
  });
115
125
 
116
126
  function canInitLogs(initConfiguration) {
@@ -27,7 +27,7 @@ var _logger = require("../domain/logger");
27
27
 
28
28
  var _internalContext = require("../domain/internalContext");
29
29
 
30
- function startLogs(configuration, getCommonContext, mainLogger) {
30
+ function startLogs(configuration, buildCommonContext, mainLogger) {
31
31
  var lifeCycle = new _browserCore.LifeCycle();
32
32
 
33
33
  var reportError = function reportError(error) {
@@ -46,6 +46,7 @@ function startLogs(configuration, getCommonContext, mainLogger) {
46
46
  };
47
47
 
48
48
  var pageExitObservable = (0, _browserCore.createPageExitObservable)();
49
+ var session = (0, _browserCore.areCookiesAuthorized)(configuration.cookieOptions) ? (0, _logsSessionManager.startLogsSessionManager)(configuration) : (0, _logsSessionManager.startLogsSessionManagerStub)(configuration);
49
50
  (0, _networkErrorCollection.startNetworkErrorCollection)(configuration, lifeCycle);
50
51
  (0, _runtimeErrorCollection.startRuntimeErrorCollection)(configuration, lifeCycle);
51
52
  (0, _consoleCollection.startConsoleCollection)(configuration, lifeCycle);
@@ -53,9 +54,8 @@ function startLogs(configuration, getCommonContext, mainLogger) {
53
54
 
54
55
  var _startLoggerCollection = (0, _loggerCollection.startLoggerCollection)(lifeCycle);
55
56
 
56
- var session = (0, _logsSessionManager.startLogsSessionManager)(configuration);
57
- (0, _assembly.startLogsAssembly)(session, configuration, lifeCycle, getCommonContext, mainLogger, reportError);
58
- (0, _startLogsBatch.startLogsBatch)(configuration, lifeCycle, reportError, pageExitObservable);
57
+ (0, _assembly.startLogsAssembly)(session, configuration, lifeCycle, buildCommonContext, mainLogger, reportError);
58
+ (0, _startLogsBatch.startLogsBatch)(configuration, lifeCycle, reportError, pageExitObservable, session.expireObservable);
59
59
  var internalContext = (0, _internalContext.startInternalContext)(session);
60
60
  return {
61
61
  handleLog: _startLoggerCollection.handleLog,
@@ -13,7 +13,7 @@ var _logger = require("./logger");
13
13
 
14
14
  var _loggerCollection = require("./logsCollection/logger/loggerCollection");
15
15
 
16
- function startLogsAssembly(sessionManager, configuration, lifeCycle, getCommonContext, mainLogger, reportError) {
16
+ function startLogsAssembly(sessionManager, configuration, lifeCycle, buildCommonContext, mainLogger, reportError) {
17
17
  var statusWithCustom = _logger.STATUSES.concat(['custom']);
18
18
 
19
19
  var logRateLimiters = {};
@@ -33,7 +33,7 @@ function startLogsAssembly(sessionManager, configuration, lifeCycle, getCommonCo
33
33
  return;
34
34
  }
35
35
 
36
- var commonContext = savedCommonContext || getCommonContext();
36
+ var commonContext = savedCommonContext || buildCommonContext();
37
37
  var log = (0, _browserCore.extend2Lev)({
38
38
  service: configuration.service || 'browser',
39
39
  env: configuration.env || '',
@@ -46,6 +46,7 @@ function startLogsAssembly(sessionManager, configuration, lifeCycle, getCommonCo
46
46
  id: session.id
47
47
  },
48
48
  view: commonContext.view,
49
+ user: !(0, _browserCore.isEmptyObject)(commonContext.user) ? commonContext.user : undefined,
49
50
  device: _browserCore.deviceInfo,
50
51
  type: _browserCore.RumEventType.LOGGER
51
52
  }, commonContext.context, getRUMInternalContext(startTime), rawLogsEvent, logger.getContext(), messageContext);
@@ -28,7 +28,7 @@ var STATUSES = (0, _browserCore.keys)(StatusType); // eslint-disable-next-line @
28
28
  exports.STATUSES = STATUSES;
29
29
 
30
30
  function Logger(handleLogStrategy, name, handlerType, level, loggerContext) {
31
- this.contextManager = (0, _browserCore.createContextManager)();
31
+ this.contextManager = (0, _browserCore.createContextManager)(_browserCore.CustomerDataType.LoggerContext);
32
32
 
33
33
  if (typeof handlerType === 'undefined') {
34
34
  handlerType = HandlerType.http;
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.LoggerTrackingType = exports.LOGS_SESSION_KEY = void 0;
7
7
  exports.startLogsSessionManager = startLogsSessionManager;
8
+ exports.startLogsSessionManagerStub = startLogsSessionManagerStub;
8
9
 
9
10
  var _browserCore = require("@cloudcare/browser-core");
10
11
 
@@ -26,16 +27,21 @@ function startLogsSessionManager(configuration) {
26
27
  return session && session.trackingType === LoggerTrackingType.TRACKED ? {
27
28
  id: session.id
28
29
  } : undefined;
29
- }
30
+ },
31
+ expireObservable: sessionManager.expireObservable
30
32
  };
31
- } // export function startLogsSessionManagerStub(configuration) {
32
- // var isTracked = computeTrackingType(configuration) === LoggerTrackingType.TRACKED
33
- // var session = isTracked ? {} : undefined
34
- // return {
35
- // findTrackedSession: function() { return session },
36
- // }
37
- // }
33
+ }
38
34
 
35
+ function startLogsSessionManagerStub(configuration) {
36
+ var isTracked = computeTrackingType(configuration) === LoggerTrackingType.TRACKED;
37
+ var session = isTracked ? {} : undefined;
38
+ return {
39
+ findTrackedSession: function findTrackedSession() {
40
+ return session;
41
+ },
42
+ expireObservable: new _browserCore.Observable()
43
+ };
44
+ }
39
45
 
40
46
  function computeTrackingType(configuration) {
41
47
  if (!(0, _browserCore.performDraw)(configuration.sessionSampleRate)) {
@@ -7,8 +7,8 @@ exports.startLogsBatch = startLogsBatch;
7
7
 
8
8
  var _browserCore = require("@cloudcare/browser-core");
9
9
 
10
- function startLogsBatch(configuration, lifeCycle, reportError, pageExitObservable) {
11
- var batch = (0, _browserCore.startBatchWithReplica)(configuration, configuration.logsEndpoint, reportError, pageExitObservable);
10
+ function startLogsBatch(configuration, lifeCycle, reportError, pageExitObservable, sessionExpireObservable) {
11
+ var batch = (0, _browserCore.startBatchWithReplica)(configuration, configuration.logsEndpoint, reportError, pageExitObservable, sessionExpireObservable);
12
12
  lifeCycle.subscribe(_browserCore.LifeCycleEventType.LOG_COLLECTED, function (serverLogsEvent) {
13
13
  batch.add(serverLogsEvent);
14
14
  });
@@ -1,4 +1,4 @@
1
1
  export var buildEnv = {
2
- sdkVersion: '2.0.4',
2
+ sdkVersion: '2.0.6',
3
3
  sdkName: 'df_web_logs_sdk'
4
4
  };
@@ -1,9 +1,10 @@
1
- import { BoundedBuffer, createContextManager, makePublicApi, display, deepClone, timeStampNow } from '@cloudcare/browser-core';
1
+ import { BoundedBuffer, createContextManager, makePublicApi, CustomerDataType, display, deepClone, timeStampNow, checkUser, sanitizeUser } from '@cloudcare/browser-core';
2
2
  import { validateAndBuildLogsConfiguration } from '../domain/configuration';
3
3
  import { Logger } from '../domain/logger';
4
4
  export function makeLogsPublicApi(startLogsImpl) {
5
5
  var isAlreadyInitialized = false;
6
- var globalContextManager = createContextManager();
6
+ var globalContextManager = createContextManager(CustomerDataType.GlobalContext);
7
+ var userContextManager = createContextManager(CustomerDataType.User);
7
8
  var customLoggers = {};
8
9
 
9
10
  var getInternalContextStrategy = function getInternalContextStrategy() {
@@ -14,7 +15,7 @@ export function makeLogsPublicApi(startLogsImpl) {
14
15
 
15
16
  var _handleLogStrategy = function handleLogStrategy(logsMessage, logger, savedCommonContext, date) {
16
17
  if (typeof savedCommonContext === 'undefined') {
17
- savedCommonContext = deepClone(getCommonContext());
18
+ savedCommonContext = deepClone(buildCommonContext());
18
19
  }
19
20
 
20
21
  if (typeof date === 'undefined') {
@@ -34,13 +35,14 @@ export function makeLogsPublicApi(startLogsImpl) {
34
35
  return _handleLogStrategy.apply(this, arguments);
35
36
  });
36
37
 
37
- function getCommonContext() {
38
+ function buildCommonContext() {
38
39
  return {
39
40
  view: {
40
41
  referrer: document.referrer,
41
42
  url: window.location.href
42
43
  },
43
- context: globalContextManager.get()
44
+ context: globalContextManager.getContext(),
45
+ user: userContextManager.getContext()
44
46
  };
45
47
  }
46
48
 
@@ -57,7 +59,7 @@ export function makeLogsPublicApi(startLogsImpl) {
57
59
  return;
58
60
  }
59
61
 
60
- var _startLogsImpl = startLogsImpl(configuration, getCommonContext, mainLogger);
62
+ var _startLogsImpl = startLogsImpl(configuration, buildCommonContext, mainLogger);
61
63
 
62
64
  _handleLogStrategy = _startLogsImpl.handleLog;
63
65
  getInternalContextStrategy = _startLogsImpl.getInternalContext;
@@ -100,7 +102,15 @@ export function makeLogsPublicApi(startLogsImpl) {
100
102
  },
101
103
  getInternalContext: function getInternalContext(startTime) {
102
104
  return getInternalContextStrategy(startTime);
103
- }
105
+ },
106
+ setUser: function setUser(newUser) {
107
+ if (checkUser(newUser)) {
108
+ userContextManager.setContext(sanitizeUser(newUser));
109
+ }
110
+ },
111
+ getUser: userContextManager.getContext,
112
+ removeUserProperty: userContextManager.removeContextProperty,
113
+ clearUser: userContextManager.clearContext
104
114
  });
105
115
 
106
116
  function canInitLogs(initConfiguration) {
@@ -1,5 +1,5 @@
1
- import { ErrorSource, LifeCycle, LifeCycleEventType, createPageExitObservable } from '@cloudcare/browser-core';
2
- import { startLogsSessionManager } from '../domain/logsSessionManager';
1
+ import { ErrorSource, LifeCycle, LifeCycleEventType, createPageExitObservable, areCookiesAuthorized } from '@cloudcare/browser-core';
2
+ import { startLogsSessionManager, startLogsSessionManagerStub } from '../domain/logsSessionManager';
3
3
  import { startLogsAssembly } from '../domain/assembly';
4
4
  import { startConsoleCollection } from '../domain/logsCollection/console/consoleCollection';
5
5
  import { startReportCollection } from '../domain/logsCollection/report/reportCollection';
@@ -9,7 +9,7 @@ import { startLoggerCollection } from '../domain/logsCollection/logger/loggerCol
9
9
  import { startLogsBatch } from '../transport/startLogsBatch';
10
10
  import { StatusType } from '../domain/logger';
11
11
  import { startInternalContext } from '../domain/internalContext';
12
- export function startLogs(configuration, getCommonContext, mainLogger) {
12
+ export function startLogs(configuration, buildCommonContext, mainLogger) {
13
13
  var lifeCycle = new LifeCycle();
14
14
 
15
15
  var reportError = function reportError(error) {
@@ -28,6 +28,7 @@ export function startLogs(configuration, getCommonContext, mainLogger) {
28
28
  };
29
29
 
30
30
  var pageExitObservable = createPageExitObservable();
31
+ var session = areCookiesAuthorized(configuration.cookieOptions) ? startLogsSessionManager(configuration) : startLogsSessionManagerStub(configuration);
31
32
  startNetworkErrorCollection(configuration, lifeCycle);
32
33
  startRuntimeErrorCollection(configuration, lifeCycle);
33
34
  startConsoleCollection(configuration, lifeCycle);
@@ -35,9 +36,8 @@ export function startLogs(configuration, getCommonContext, mainLogger) {
35
36
 
36
37
  var _startLoggerCollection = startLoggerCollection(lifeCycle);
37
38
 
38
- var session = startLogsSessionManager(configuration);
39
- startLogsAssembly(session, configuration, lifeCycle, getCommonContext, mainLogger, reportError);
40
- startLogsBatch(configuration, lifeCycle, reportError, pageExitObservable);
39
+ startLogsAssembly(session, configuration, lifeCycle, buildCommonContext, mainLogger, reportError);
40
+ startLogsBatch(configuration, lifeCycle, reportError, pageExitObservable, session.expireObservable);
41
41
  var internalContext = startInternalContext(session);
42
42
  return {
43
43
  handleLog: _startLoggerCollection.handleLog,