@cloudcare/browser-logs 1.1.23 → 1.2.0

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.
Files changed (58) hide show
  1. package/README.md +5 -4
  2. package/bundle/dataflux-logs.js +1 -1
  3. package/cjs/boot/buildEnv.js +1 -1
  4. package/cjs/boot/logsPublicApi.js +133 -0
  5. package/cjs/boot/startLogs.js +63 -0
  6. package/cjs/domain/assembly.js +74 -0
  7. package/cjs/domain/configuration.js +55 -0
  8. package/cjs/domain/internalContext.js +22 -0
  9. package/cjs/domain/logger.js +28 -36
  10. package/cjs/domain/logsCollection/console/consoleCollection.js +39 -0
  11. package/cjs/domain/logsCollection/logger/loggerCollection.js +51 -0
  12. package/cjs/domain/logsCollection/networkError/networkErrorCollection.js +238 -0
  13. package/cjs/domain/logsCollection/report/reportCollection.js +50 -0
  14. package/cjs/domain/logsCollection/rumtimeError/runtimeErrorCollection.js +46 -0
  15. package/cjs/domain/{loggerSession.js → logsSessionManager.js} +19 -23
  16. package/cjs/entries/main.js +16 -0
  17. package/cjs/index.js +2 -2
  18. package/cjs/transport/startLogsBatch.js +15 -0
  19. package/esm/boot/buildEnv.js +1 -1
  20. package/esm/boot/logsPublicApi.js +122 -0
  21. package/esm/boot/startLogs.js +45 -0
  22. package/esm/domain/assembly.js +59 -0
  23. package/esm/domain/configuration.js +41 -0
  24. package/esm/domain/internalContext.js +15 -0
  25. package/esm/domain/logger.js +26 -36
  26. package/esm/domain/logsCollection/console/consoleCollection.js +31 -0
  27. package/esm/domain/logsCollection/logger/loggerCollection.js +38 -0
  28. package/esm/domain/logsCollection/networkError/networkErrorCollection.js +223 -0
  29. package/esm/domain/logsCollection/report/reportCollection.js +40 -0
  30. package/esm/domain/logsCollection/rumtimeError/runtimeErrorCollection.js +37 -0
  31. package/esm/domain/logsSessionManager.js +45 -0
  32. package/esm/entries/main.js +5 -0
  33. package/esm/index.js +1 -1
  34. package/esm/transport/startLogsBatch.js +7 -0
  35. package/package.json +3 -3
  36. package/src/boot/logsPublicApi.js +140 -0
  37. package/src/boot/startLogs.js +51 -0
  38. package/src/domain/assembly.js +101 -0
  39. package/src/domain/configuration.js +70 -0
  40. package/src/domain/internalContext.js +15 -0
  41. package/src/domain/logger.js +37 -58
  42. package/src/domain/logsCollection/console/consoleCollection.js +36 -0
  43. package/src/domain/logsCollection/logger/loggerCollection.js +48 -0
  44. package/src/domain/logsCollection/networkError/networkErrorCollection.js +260 -0
  45. package/src/domain/logsCollection/report/reportCollection.js +49 -0
  46. package/src/domain/logsCollection/rumtimeError/runtimeErrorCollection.js +35 -0
  47. package/src/domain/logsSessionManager.js +52 -0
  48. package/src/entries/main.js +7 -0
  49. package/src/index.js +1 -1
  50. package/src/transport/startLogsBatch.js +17 -0
  51. package/cjs/boot/log.entry.js +0 -115
  52. package/cjs/boot/log.js +0 -132
  53. package/esm/boot/log.entry.js +0 -87
  54. package/esm/boot/log.js +0 -115
  55. package/esm/domain/loggerSession.js +0 -46
  56. package/src/boot/log.entry.js +0 -119
  57. package/src/boot/log.js +0 -185
  58. package/src/domain/loggerSession.js +0 -56
package/README.md CHANGED
@@ -136,9 +136,10 @@ window.DATAFLUX_LOGS && DATAFLUX_LOGS.logger.info('Button clicked', { name: 'but
136
136
  "_dd": {
137
137
  "sdk_name": "Web LOG SDK",
138
138
  "sdk_version": "1.0.0",
139
- "env": "",
140
- "version": ""
139
+
141
140
  },
141
+ "env": "",
142
+ "version": "",
142
143
  "device": {
143
144
  "os": "Mac OS",
144
145
  "os_version": "10.14.6",
@@ -170,9 +171,9 @@ window.DATAFLUX_LOGS && DATAFLUX_LOGS.logger.info('Button clicked', { name: 'but
170
171
  "source": "network",
171
172
  "stack": "Failed to load"
172
173
  },
173
- "resource": {
174
+ "http": {
174
175
  "method": "get",
175
- "status": 0,
176
+ "status_code": 0,
176
177
  "status_group": 0,
177
178
  "url": "http://testing-ft2x-api.cloudcare.cn/api/v1/workspace/xxx",
178
179
  "url_host": "testing-ft2x-api.cloudcare.cn",
@@ -1 +1 @@
1
- (()=>{"use strict";var e=Array.prototype,r=Function.prototype,n=Object.prototype,t=e.slice,i=n.toString,o=n.hasOwnProperty,s=(r.bind,e.forEach),a=(e.indexOf,Array.isArray),u=function(e,r,n){if(null===e)return!1;if(s&&e.forEach===s)e.forEach(r,n);else if(e.length===+e.length){for(var t=0,i=e.length;t<i;t++)if(t in e&&false===r.call(n,e[t],t,e))return!1}else for(var a in e)if(o.call(e,a)&&false===r.call(n,e[a],a,e))return!1};var c=function(e){return u(t.call(arguments,1),(function(r){for(var n in r)void 0!==r[n]&&(e[n]=r[n])})),e},d=function(e){return u(t.call(arguments,1),(function(r){for(var n in r)void 0!==r[n]&&(g(r[n])&&g(e[n])?c(e[n],r[n]):e[n]=r[n])})),e},f=a||function(e){return"[object Array]"===i.call(e)},l=function(e){if(!e)return!1;try{return/^\s*\bfunction\b/.test(e)}catch(e){return!1}},p=function(e){return e?e.toArray?e.toArray():f(e)?t.call(e):(r=e)&&o.call(r,"callee")?t.call(e):v(e):[];var r},v=function(e){var r=[];return null===e||u(e,(function(e){r[r.length]=e})),r},h=function(e,r,n){if(e.map)return e.map(r);for(var t=[],i=0;i<e.length;i++)if(o.call(e,i)){var s=e[i];t.push(r.call(n,s,i,e))}return t},g=function(e){return null!==e&&"[object Object]"===i.call(e)},w=function(e){if(g(e)){for(var r in e)if(o.call(e,r))return!1;return!0}return!1},m=function(e){var r=[];return u(e,(function(e,n){r.push([n,e])})),r},_=function(e){return"[object String]"===i.call(e)},y=function(e){return"[object Boolean]"===i.call(e)},x=function(e){return"[object Number]"===i.call(e)&&/[\d\.]+/.test(String(e))},b=function e(r){var n=r;try{n=e(r)}catch(e){n=r}return n};Date.now;function O(e){return e?(parseInt(e,10)^16*Math.random()>>parseInt(e,10)/4).toString(16):"".concat(1e7,"-",1e3,"-",4e3,"-",8e3,"-",1e11).replace(/[018]/g,O)}function S(e){var r="";return e&&(r=e.replace(/\/([^\/]*)\d([^\/]*)/g,"/?").replace(/\/$/g,"")),r||"/"}var k=function(e){for(var r=function(e){return b(e)},n={},t=(e=e||"").substring(1).split("&"),i=0;i<t.length;i++){var o=t[i].indexOf("=");if(-1!==o){var s=t[i].substring(0,o),a=t[i].substring(o+1);s=r(s),a=r(a),n[s]=a}}return n};function E(e){return e?String(e).substr(0,1)+String(e).substr(1).replace(/\d*/g,"x"):e}function $(e,r,n){if(null==e)return JSON.stringify(e);var t=[!1,void 0];T(e)&&(t=[!0,e.toJSON],delete e.toJSON);var i,o,s=[!1,void 0];"object"==typeof e&&T(i=Object.getPrototypeOf(e))&&(s=[!0,i.toJSON],delete i.toJSON);try{o=JSON.stringify(e,void 0,n)}catch(e){o="<error: unable to serialize object>"}finally{t[0]&&(e.toJSON=t[1]),s[0]&&(i.toJSON=s[1])}return o}function T(e){return"object"==typeof e&&null!==e&&e.hasOwnProperty("toJSON")}var M=1e3,B=6e4;function C(e,r){return+e.toFixed(r)}function W(){return performance.now()}function L(){return{relative:W(),timeStamp:(new Date).getTime()}}function I(e,r){return r-e}function P(e,r){for(var n=r.split(".");n.length;){var t=n.shift();if(!(e&&t in e&&o.call(e,t)))return;e=e[t]}return e}function R(e,r,n,t){return A(e,[r],n,t)}function A(e,r,n,t){var i=t&&t.once?function(e){o(),n(e)}:n;t=t&&t.passive?{capture:t.capture,passive:t.passive}:t&&t.capture,u(r,(function(r){e.addEventListener(r,i,t)}));var o=function(){u(r,(function(r){e.removeEventListener(r,i,t)}))};return{stop:o}}function j(){var e={};return{get:function(){return e},add:function(r,n){_(r)&&(e[r]=n)},remove:function(r){delete e[r]},set:function(r){g(r)&&(e=r)}}}function D(e){var r={};return u(e,(function(e,n){var t;r[(t=n,t.replace(/[A-Z]/g,(function(e,r){return(0!==r?"_":"")+e.toLowerCase()})).replace(/-/g,"_"))]=N(e)})),r}function N(e){return f(e)?h(e,(function(e){return N(e)})):"object"==typeof e&&null!==e?D(e):e}function V(e){if("object"==typeof e&&e)e=$(e);else if(!_(e))return e;return String(e).replace(/[\s=,"]/g,(function(e){return"\\"+e}))}function Q(e){return'"'+e.replace(/[\\]*"/g,'"').replace(/"/g,'\\"')+'"'}function U(e){return"object"==typeof e&&e?Q($(e)):_(e)?Q(e):e}var F=function(){this.buffer=[]};F.prototype={add:function(e){this.buffer.push(e)>this.limit&&this.buffer.splice(0,1)},drain:function(e){u(this.buffer,(function(r){e(r)})),this.buffer.length=0}};var z=F,q={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","Windows 2000","Windows XP","Windows Vista","Windows 7","Windows 8","Windows 8.1","Windows Server 2003","Windows ME","Windows 10","Windows 98","Windows 95","Windows NT 4.0","Windows CE","Windows 3.11","Linux","Mac OS","Android","Ubuntu","FreeBSD","Debian","iOS","Windows Phone","BlackBerry","MeeGo","Symbian","Chrome OS","WebOS"],device:["Mobile","Tablet","iPad"]}},J={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,"IE 11":e.indexOf("Trident")>-1&&e.indexOf("rv:11.0")>-1,"IE 10":e.indexOf("MSIE 10.0")>-1&&e.indexOf("Trident")>-1,"IE 9":e.indexOf("MSIE 9.0")>-1&&e.indexOf("Trident")>-1,"IE 8":e.indexOf("MSIE 9.0")>-1&&e.indexOf("Trident")>-1,"IE 7":e.indexOf("MSIE 7.0")>-1&&e.indexOf("Trident")>-1,Edge:e.indexOf("Edg")>-1||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||e.indexOf("LieBaoFast")>-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,WechatWork:e.indexOf("wxwork/")>-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,"Windows 2000":e.indexOf("Windows NT 5.0")>-1||e.indexOf("Windows 2000")>-1,"Windows XP":e.indexOf("Windows NT 5.1")>-1||e.indexOf("Windows XP")>-1,"Windows Server 2003":e.indexOf("Windows NT 5.2")>-1,"Windows Vista":e.indexOf("Windows NT 6.0")>-1,"Windows 7":e.indexOf("Windows 7")>-1||e.indexOf("Windows NT 6.1")>-1,"Windows 8":e.indexOf("Windows 8")>-1||e.indexOf("Windows NT 6.2")>-1,"Windows 8.1":e.indexOf("Windows 8.1")>-1||e.indexOf("Windows NT 6.3")>-1,"Windows ME":e.indexOf("Win 9x 4.90")>-1||e.indexOf("Windows ME")>-1,"Windows 10":e.indexOf("Windows 10.0")>-1||e.indexOf("Windows NT 10.0")>-1,"Windows 98":e.indexOf("Windows 98")>-1||e.indexOf("Win98")>-1,"Windows 95":e.indexOf("Windows 95")>-1||e.indexOf("Win95")>-1||e.indexOf("Windows_95")>-1,"Windows NT 4.0":e.indexOf("Windows NT 4.0")>-1||e.indexOf("WinNT4.0")>-1||e.indexOf("WinNT")>-1,"Windows CE":e.indexOf("Windows CE")>-1,"Windows 3.11":e.indexOf("Win16")>-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=q.navigator.userAgent||{},n=J.getMatchMap(r);for(var t in q.infoMap)for(var i=0;i<q.infoMap[t].length;i++){var o=q.infoMap[t][i];n[o]&&(e[t]=o)}},getOS:function(){return J.matchInfoMap(this),this.os||"Unknown"},getOSVersion:function(){var e=this,r=q.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",J.matchInfoMap(e),e.device},getNetwork:function(){return navigator&&navigator.connection&&navigator.connection.effectiveType},getLanguage:function(){var e;return this.language=((e=(q.navigator.browserLanguage||q.navigator.language).split("-"))[1]&&(e[1]=e[1].toUpperCase()),e.join("_")),this.language},getBrowserInfo:function(){var e=this;J.matchInfoMap(e);var r=q.navigator.userAgent||{},n=function(e,r){var n=q.navigator.mimeTypes;for(var t in n)if(n[t][e]==r)return!0;return!1},t=J.getMatchMap(r),i=!1;if(window.chrome){var o=r.replace(/^.*Chrome\/([\d]+).*$/,"$1");o>36&&window.showModalDialog?i=!0:o>45&&(i=n("type","application/vnd.chromium.remoting-viewer"))}if(t.Baidu&&t.Opera&&(t.Baidu=!1),t.Mobile&&(t.Mobile=!(r.indexOf("iPad")>-1)),i&&(n("type","application/gameplugin")||q.navigator&&void 0===q.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){}))}},H={os:J.getOS(),osVersion:J.getOSVersion().version,osVersionMajor:J.getOSVersion().osMajor,browser:J.getBrowserInfo().browser,browserVersion:J.getBrowserInfo().browserVersion,browserVersionMajor:J.getBrowserInfo().browserMajor,screenSize:window.screen.width+"*"+window.screen.height,networkType:J.getNetwork(),divice:J.getDeviceType()},X="beforeunload",G="click",K="keydown",Y="scroll",Z="touchstart",ee="visibilitychange",re="action",ne="error",te="long_task",ie="view",oe="resource",se="logger",ae={FETCH:"fetch",XHR:"xhr"},ue={DDTRACE:"ddtrace",ZIPKIN_MULTI_HEADER:"zipkin",ZIPKIN_SINGLE_HEADER:"zipkin_single_header",W3C_TRACEPARENT:"w3c_traceparent",SKYWALKING_V3:"skywalking_v3",JAEGER:"jaeger"},ce="handled",de="unhandled",fe=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/;function le(e){if(ve){if(pe===e)return;Oe()}var r=ke(e);throw ve=r,pe=e,setTimeout((function(){pe===e&&Oe()}),r.incomplete?2e3:0),e}var pe,ve,he,ge,we,me=[];function _e(e){!function(){if(ge)return;he=window.onerror,window.onerror=xe,ge=!0}(),function(){if(we)return;null!==window.onunhandledrejection?window.onunhandledrejection:void 0,window.onunhandledrejection=be,we=!0}(),me.push(e)}function ye(e,r,n){var t;if(u(me,(function(i){try{i(e,r,n)}catch(e){t=e}})),t)throw t}function xe(e,r,n,t,i){if(ve)$e(ve,r,n),Oe();else if(i)ye(ke(i),!0,i);else{var o,s={url:r,column:t,line:n},a=e;if("[object String]"==={}.toString.call(e)){var u=fe.exec(a);u&&(o=u[1],a=u[2])}ye({name:o,message:"string"==typeof a?a:void 0,stack:[s]},!0,e)}return!!he&&he.apply(this,arguments)}function be(e){var r=e.reason||"Empty reason";ye(ke(r),!0,r)}function Oe(){var e=ve,r=pe;ve=void 0,pe=void 0,ye(e,!1,r)}var Se="?";function ke(e,r){var n,t=void 0===r?0:+r;try{if(n=function(e){var r=Me(e,"stacktrace");if(!r)return;for(var n,t=/ line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i,i=/ line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^\)]+))\((.*)\))? in (.*):\s*$/i,o=r.split("\n"),s=[],a=0;a<o.length;a+=2){var u;t.exec(o[a])?u={args:[],column:void 0,func:(n=t.exec(o[a]))[3],line:+n[1],url:n[2]}:i.exec(o[a])&&(u={args:(n=i.exec(o[a]))[5]?n[5].split(","):[],column:+n[2],func:n[3]||n[4],line:+n[1],url:n[6]}),u&&(!u.func&&u.line&&(u.func=Se),u.context=[o[a+1]],s.push(u))}if(!s.length)return;return{stack:s,message:Me(e,"message"),name:Me(e,"name")}}(e),n)return n}catch(e){if(Ee)throw e}try{if(n=function(e){var r=Me(e,"stack");if(!r)return;for(var n,t,i,o,s=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\/).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,a=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,u=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i,c=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,d=/\((\S*)(?::(\d+))(?::(\d+))\)/,f=r.split("\n"),l=[],p=0,v=f.length;p<v;p+=1){if(s.exec(f[p])){var h=(i=s.exec(f[p]))[2]&&0===i[2].indexOf("native");n=i[2]&&0===i[2].indexOf("eval"),t=d.exec(i[2]),n&&t&&(i[2]=t[1],i[3]=t[2],i[4]=t[3]),o={args:h?[i[2]]:[],column:i[4]?+i[4]:void 0,func:i[1]||Se,line:i[3]?+i[3]:void 0,url:h?void 0:i[2]}}else if(u.exec(f[p]))o={args:[],column:(i=u.exec(f[p]))[4]?+i[4]:void 0,func:i[1]||Se,line:+i[3],url:i[2]};else{if(!a.exec(f[p]))continue;n=(i=a.exec(f[p]))[3]&&i[3].indexOf(" > eval")>-1,t=c.exec(i[3]),n&&t?(i[3]=t[1],i[4]=t[2],i[5]=void 0):0!==p||i[5]||Ce(e.columnNumber)||(l[0].column=e.columnNumber+1),o={args:i[2]?i[2].split(","):[],column:i[5]?+i[5]:void 0,func:i[1]||Se,line:i[4]?+i[4]:void 0,url:i[3]}}!o.func&&o.line&&(o.func=Se),l.push(o)}if(!l.length)return;return{stack:l,message:Me(e,"message"),name:Me(e,"name")}}(e),n)return n}catch(e){if(Ee)throw e}try{if(n=function(e){var r=Me(e,"message");if(!r)return;var n=r.split("\n");if(n.length<4)return;var t,i=/^\s*Line (\d+) of linked script ((?:file|https?|blob)\S+)(?:: in function (\S+))?\s*$/i,o=/^\s*Line (\d+) of inline#(\d+) script in ((?:file|https?|blob)\S+)(?:: in function (\S+))?\s*$/i,s=/^\s*Line (\d+) of function script\s*$/i,a=[],u=window&&window.document&&window.document.getElementsByTagName("script"),c=[];for(var d in u)Be(u,d)&&!u[d].src&&c.push(u[d]);for(var f=2;f<n.length;f+=2){var l;if(i.exec(n[f]))l={args:[],column:void 0,func:(t=i.exec(n[f]))[3],line:+t[1],url:t[2]};else if(o.exec(n[f]))l={args:[],column:void 0,func:(t=o.exec(n[f]))[4],line:+t[1],url:t[3]};else if(s.exec(n[f])){t=s.exec(n[f]),l={url:window.location.href.replace(/#.*$/,""),args:[],column:void 0,func:"",line:+t[1]}}l&&(l.func||(l.func=Se),l.context=[n[f+1]],a.push(l))}if(!a.length)return;return{stack:a,message:n[0],name:Me(e,"name")}}(e),n)return n}catch(e){if(Ee)throw e}try{if(n=Te(e,t+1))return n}catch(e){if(Ee)throw e}return{message:Me(e,"message"),name:Me(e,"name"),stack:[]}}var Ee=!1;function $e(e,r,n){var t={url:r,line:n?+n:void 0};if(t.url&&t.line){e.incomplete=!1;var i=e.stack;if(i.length>0&&i[0].url===t.url){if(i[0].line===t.line)return!1;if(!i[0].line&&i[0].func===t.func)return i[0].line=t.line,i[0].context=t.context,!1}return i.unshift(t),e.partial=!0,!0}return e.incomplete=!0,!1}function Te(e,r){for(var n,t,i=/function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,o=[],s={},a=!1,u=Te.caller;u&&!a;u=u.caller)u!==ke&&u!==le&&(t={args:[],column:void 0,func:Se,line:void 0,url:void 0},n=i.exec(u.toString()),u.name?t.func=u.name:n&&(t.func=n[1]),void 0===t.func&&(t.func=n?n.input.substring(0,n.input.indexOf("{")):void 0),s[u.toString()]?a=!0:s[u.toString()]=!0,o.push(t));r&&o.splice(0,r);var c={stack:o,message:Me(e,"message"),name:Me(e,"name")};return $e(c,Me(e,"sourceURL")||Me(e,"fileName"),Me(e,"line")||Me(e,"lineNumber")),c}function Me(e,r){if("object"==typeof e&&e&&r in e){var n=e[r];return"string"==typeof n?n:void 0}}function Be(e,r){return Object.prototype.hasOwnProperty.call(e,r)}function Ce(e){return void 0===e}var We="agent",Le="console",Ie="network",Pe="source",Re="logger";function Ae(){var e=new Error;if(!e.stack)try{throw e}catch(e){}var r=ke(e);return r.stack=r.stack.slice(2),je(r)}function je(e){var r=e.name||"Error: "+e.message;return u(e.stack,(function(e){var n="?"===e.func?"<anonymous>":e.func,t=e.args&&e.args.length>0?"("+e.args.join(", ")+")":"",i=e.line?":"+e.line:"",o=e.line&&e.column?":"+e.column:"";r+="\n at "+n+t+" @ "+e.url+i+o})),r}var De=function(){this._events=[],this.pendingEvents=[]};De.prototype={emit:function(e){var r=[].slice.call(arguments,1);u(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 De;function Ne(e,r,n){var t=d({},e),i=n(t);return u(r,(function(r){var n=Ve(e,r),i=Ve(t,r);"string"==typeof n&&"string"==typeof i&&function(e,r,n){for(var t=e,i=r.split("."),o=0;o<i.length;o+=1){var s=i[o];if(!Qe(t,s))return;o!==i.length-1?t=t[s]:t[s]=n}}(e,r,i)})),i}function Ve(e,r){var n=e;for(var t of r.split(".")){if(!Qe(n,t))return;n=n[t]}return n}function Qe(e,r){return"object"==typeof e&&null!==e&&r in e}var Ue=function(){this.observers=[]};Ue.prototype={subscribe:function(e){this.observers.push(e)},notify:function(e){u(this.observers,(function(r){r(e)}))}};var Fe,ze=Ue;function qe(e){return Je(e,function(e){if(e.origin)return e.origin;var r=e.host.replace(/(:80|:443)$/,"");return e.protocol+"//"+r}(window.location)).href}function Je(e,r){if(function(){if(void 0!==Fe)return Fe;try{var e=new URL("http://test/path");return Fe="http://test/path"===e.href}catch(e){Fe=!1}return Fe}())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 i=(n=document.implementation.createHTMLDocument("")).createElement("base");i.href=r,n.head.appendChild(i),n.body.appendChild(t)}return t.href=e,t}var He=navigator.userAgent.toLowerCase(),Xe=function(){return/iphone os/.test(He)};var Ge;function Ke(e,r){var n,t,i=!1,o=function(){i=!0,window.clearTimeout(n),n=window.setTimeout((function(){i=!1}),1e3)};return{get:function(){return i||(t=Ze(e),o()),t},set:function(n,i){Ye(e,n,i,r),t=n,o()},clearCache:function(){window.clearTimeout(n),i=!1}}}function Ye(e,r,n,t){var i=new Date;i.setTime(i.getTime()+n);var o="expires="+i.toUTCString(),s=t&&t.crossSite?"none":"strict",a=t&&t.domain?";domain="+t.domain:"",u=t&&t.secure?";secure":"";document.cookie=e+"="+r+";"+o+";path=/;samesite="+s+a+u}function Ze(e){return function(e,r){var n=e.match("(?:^|;)\\s*"+r+"\\s*=\\s*([^;]+)");return n?n[1]:void 0}(document.cookie,e)}var er=/^\s+|\s+$/g,rr={resourceSampleRate:100,sampleRate:100,flushTimeout:3e4,maxErrorsByMinute:3e3,maxBatchSize:50,maxMessageSize:262144,requestErrorResponseLengthLimit:32768,batchBytesLimit:16384,datakitUrl:"",logsEndpoint:"",traceType:ue.DDTRACE,traceId128Bit:!1,trackInteractions:!1,allowedDDTracingOrigins:[],allowedTracingOrigins:[],isServiceSampling:!1,isJsBirdge:!1,isLineProtocolToJson:!1,beforeSend:function(e){},isServerError:function(e){return!1}};function nr(e){return e.replace(er,"")}function tr(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===Ge){for(var e="dd_site_test_".concat(O()),r=window.location.hostname.split("."),n=r.pop();r.length&&!Ze(e);)n=r.pop()+"."+n,Ye(e,"test",M,{domain:n});Ge=n}return Ge}()),r}function ir(e){return e.lastIndexOf("/")===e.length-1?nr(e)+"v1/write/logging":nr(e)+"/v1/write/logging"}function or(e,r){var n,t,i=f(e.enableExperimentalFeatures)?e.enableExperimentalFeatures:[],o={applicationId:e.applicationId,env:e.env||"",version:e.version||"",service:e.service||"browser",sdkVersion:r.sdkVersion,sdkName:r.sdkName,datakitUrl:(n=e.datakitUrl||e.datakitOrigin,n.lastIndexOf("/")===n.length-1?nr(n)+"v1/write/rum":nr(n)+"/v1/write/rum"),logsEndpoint:ir(e.datakitOrigin),isEnabled:function(e){return r=e,-1!==i.indexOf(r);var r},cookieOptions:tr(e)};return"isJsBirdge"in e&&(o.isJsBirdge=e.isJsBirdge),"isLineProtocolToJson"in e&&(o.isLineProtocolToJson=e.isLineProtocolToJson),"allowedDDTracingOrigins"in e&&(o.allowedTracingOrigins=e.allowedDDTracingOrigins),"allowedTracingOrigins"in e&&(o.allowedTracingOrigins=e.allowedTracingOrigins),"sampleRate"in e&&(o.sampleRate=e.sampleRate),"resourceSampleRate"in e&&(o.resourceSampleRate=e.resourceSampleRate),"trackInteractions"in e&&(o.trackInteractions=!!e.trackInteractions),"isServerError"in e&&l(e.isServerError)&&y(e.isServerError())&&(o.isServerError=e.isServerError),"traceId128Bit"in e&&(o.traceId128Bit=!!e.traceId128Bit),"traceType"in e&&((t=e.traceType)&&v(ue).indexOf(t)>-1)&&(o.traceType=e.traceType),"isServiceSampling"in e&&y(e.isServiceSampling)&&(o.isServiceSampling=e.isServiceSampling),d({},rr,o)}var sr,ar,ur,cr,dr,fr,lr={sdk_name:"_dd.sdk_name",sdk_version:"_dd.sdk_version",app_id:"application.id",env:"_dd.env",service:"_dd.service",version:"_dd.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",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_path_group:"view.path_group",view_url_query:"view.url_query"},pr={view:{type:ie,tags:{view_loading_type:"view.loading_type",view_apdex_level:"view.apdex_level",is_active:"view.is_active"},fields:{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"}},resource:{type:oe,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_first_byte:"resource.firstbyte"}},error:{type:ne,tags:{trace_id:"_dd.trace_id",span_id:"_dd.span_id",error_source:"error.source",error_type:"error.type",error_handling:"error.handling",resource_url:"error.resource.url",resource_url_host:"error.resource.url_host",resource_url_path:"error.resource.url_path",resource_url_path_group:"error.resource.url_path_group",resource_status:"error.resource.status",resource_status_group:"error.resource.status_group",resource_method:"error.resource.method"},fields:{error_message:["string","error.message"],error_stack:["string","error.stack"]}},long_task:{type:te,tags:{},fields:{duration:"long_task.duration"}},action:{type:re,tags:{action_id:"action.id",action_name:"action.target.name",action_type:"action.type"},fields:{duration:"action.loading_time",action_error_count:"action.error.count",action_resource_count:"action.resource.count",action_long_task_count:"action.long_task.count"}},browser_log:{type:se,tags:{error_source:"error.source",error_type:"error.type",error_resource_url:"resource.url",error_resource_url_host:"resource.url_host",error_resource_url_path:"resource.url_path",error_resource_url_path_group:"resource.url_path_group",error_resource_status:"resource.status",error_resource_status_group:"resource.status_group",error_resource_method:"resource.method",action_id:"user_action.id",service:"service",status:"status"},fields:{message:["string","message"]}}},vr=[],hr=[];function gr(){return sr||(ar=XMLHttpRequest.prototype.open,ur=XMLHttpRequest.prototype.send,cr=XMLHttpRequest.prototype.abort,XMLHttpRequest.prototype.open=function(e,r){return this._dataflux_xhr={method:e,startTime:-1,url:qe(r)},ar.apply(this,arguments)},XMLHttpRequest.prototype.send=function(e){var r=this;if(this._dataflux_xhr){var n=this._dataflux_xhr;n.startTime=W(),n.startClocks=L(),n.isAborted=!1;var t=this.onreadystatechange;this.onreadystatechange=function(){this.readyState===XMLHttpRequest.DONE&&o(),t&&t.apply(this,arguments)};var i=!1,o=function e(){if(r.removeEventListener("loadend",e),!i){i=!0;var t=c({},n,{duration:I(n.startClocks.relative,W()),response:r.response,status:r.status});u(hr,(function(e){e(t,r)}))}};r.addEventListener("loadend",o),u(vr,(function(e){e(n,r)}))}return ur.apply(r,arguments)},XMLHttpRequest.prototype.abort=function(){return this._dataflux_xhr&&(this._dataflux_xhr.isAborted=!0),cr.apply(this,arguments)},sr={beforeSend:function(e){vr.push(e)},onRequestComplete:function(e){hr.push(e)}}),sr}function wr(e,r,n,t,i,o,s){try{var a=e[o](s),u=a.value}catch(e){return void n(e)}a.done?r(u):Promise.resolve(u).then(t,i)}var mr,_r,yr=[],xr=[];function br(){return dr||(!function(){if(!window.fetch)return;fr=window.fetch,window.fetch=function(e,r){var n,t=Or.apply(null,[e,r]);return t?(n=fr.call(this,t.input,t.init),Sr.apply(null,[n,t])):n=fr.call(this,e,r),n}}(),dr={beforeSend:function(e){yr.push(e)},onRequestComplete:function(e){xr.push(e)}}),dr}function Or(e,r){var n=r&&r.method||"object"==typeof e&&e.method||"GET",t=qe("object"==typeof e&&e.url||e),i=L(),o={init:r,input:e,method:n,startTime:W(),startClocks:i,url:t};return u(yr,(function(e){e(o)})),o}function Sr(e,r){var n=function(){var e,n=(e=function*(e){if(r.duration=I(r.startClocks.relative,W()),"stack"in e||e instanceof Error)r.status=0,r.response=je(ke(e)),r.headers=e.headers,r.isAborted=e instanceof DOMException&&e.code===DOMException.ABORT_ERR,u(xr,(function(e){e(r)}));else if("status"in e){var n;try{n=yield e.clone().text()}catch(e){n="Unable to retrieve response: "+e}r.response=n,r.responseType=e.type,r.status=e.status,r.headers=e.headers,r.isAborted=!1,u(xr,(function(e){e(r)}))}},function(){var r=this,n=arguments;return new Promise((function(t,i){var o=e.apply(r,n);function s(e){wr(o,t,i,s,a,"next",e)}function a(e){wr(o,t,i,s,a,"throw",e)}s(void 0)}))});return function(e){return n.apply(this,arguments)}}();e.then(n,n)}function kr(e){return mr||(function(e,r){function n(n,t){(function(e,r){var n=[r.datakitUrl];r.logsEndpoint&&n.push(r.logsEndpoint);var t=!1;for(var i of n)if(0===e.indexOf(i)){t=!0;break}return t})(t.url,e)||t.isAborted||!(function(e){return 0===e.status&&"opaque"!==e.responseType}(t)||function(e){return e.status>=500}(t)||e.isServerError(t))||r.notify({message:Tr(n)+" error "+t.method+" "+t.url,resource:{method:t.method,statusCode:t.status,url:t.url,traceId:t.traceId,spanId:t.spanId},source:Ie,stack:$r(t.response,e)||"Failed to load",startClocks:t.startClocks})}gr().onRequestComplete((function(e){n(ae.XHR,e)})),br().onRequestComplete((function(e){n(ae.FETCH,e)}))}(e,mr=new ze),function(e){_r=console.error,console.error=function(){_r.apply(console,arguments);var r=Ae();e.notify(c({},Er(p(arguments),r),{source:Le,startClocks:L(),handling:ce}))}}(mr),function(e){_e((function(r,n,t){var i=function(e,r,n,t){return e&&(void 0!==e.message||r instanceof Error)?{message:e.message||"Empty message",stack:je(e),handlingStack:t,type:e.name}:{message:n+""+JSON.stringify(r),stack:"No stack, consider using an instance of Error",handlingStack:t,type:e&&e.name}}(r,t,"Uncaught");e.notify({message:i.message,stack:i.stack,type:i.type,source:Pe,startClocks:L(),handling:de})}))}(mr)),mr}function Er(e,r){var n=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}));return{message:h(["console error:"].concat(e),(function(e){return function(e){if("string"==typeof e)return e;if(e instanceof Error)return((r=ke(e)).name||"Error")+": "+r.message;var r;return $(e,0,2)}(e)})).join(" "),stack:n?je(ke(n)):void 0,handlingStack:r}}function $r(e,r){return e&&e.length>r.requestErrorResponseLengthLimit?e.substring(0,r.requestErrorResponseLengthLimit)+"...":e}function Tr(e){return ae.XHR===e?"XHR":"Fetch"}function Mr(){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}var Br=9e5,Cr=144e5;function Wr(e,r,n){var t=function(e){var r=Ke("_dataflulx_an_id",e);return r.get()||r.set(O(),5184e6),r}(e),i=Ke("_dataflux_s",e),o=new ze,s=Pr(i).id,a=function(e,r,n){var t,i,o,s,a=0;n||(n={});var u=function(){a=!1===n.leading?0:(new Date).getTime(),t=null,s=e.apply(i,o),t||(i=o=null)},c=function(){o=arguments;var c=(new Date).getTime();a||!1!==n.leading||(a=c);var d=r-(c-a);return i=this,d<=0||d>r?(t&&(clearTimeout(t),t=null),a=c,s=e.apply(i,o),t||(i=o=null)):t||!1===n.trailing||(t=setTimeout(u,d)),s};return c.cancel=function(){clearTimeout(t),a=0,t=null},c}((function(){i.clearCache();var e=Pr(i),t=n(e[r]);e[r]=t.trackingType,t.isTracked&&!e.id&&(e.id=O(),e.created=String(Date.now())),Rr(e,i),t.isTracked&&s!==e.id&&(s=e.id,o.notify())}),1e3);return a(),function(e){var r=A(window,[G,Z,K,Y],e,{capture:!0,passive:!0});jr.push(r.stop)}(a),function(e){var r=function(){"visible"===document.visibilityState&&e()},n=R(document,ee,r);jr.push(n.stop);var t=window.setInterval(r,6e4);jr.push((function(){clearInterval(t)}))}((function(){i.clearCache(),Rr(Pr(i),i)})),{getAnonymousID:function(){return t.get()},getId:function(){var e=Pr(i);return e.did||e.id},getTrackingType:function(){return Pr(i)[r]},getDebugSession:function(){var e=Pr(i);return w(e)||!e.did?{}:{id:e.did,created:e.dcreated}},addDebugSession:function(e,r){var n=Pr(i);w(n)||(n.did=e||O,n.dcreated=r||String(Date.now()),Rr(n,i))},clearDebugSession:function(){var e=Pr(i),r={};u(m(e),(function(e){"did"!==e[0]&&"dcreated"!==e[0]&&(r[e[0]]=e[1])})),Rr(r,i)},renewObservable:o}}var Lr=/^([a-z]+)=([a-z0-9-]+)$/,Ir="&";function Pr(e){var r=function(e){var r=e.get(),n={};(function(e){return void 0!==e&&(-1!==e.indexOf("&")||Lr.test(e))})(r)&&u(r.split(Ir),(function(e){var r=Lr.exec(e);if(null!==r){var t=r[1],i=r[2];n[t]=i}}));return n}(e);return function(e){return(void 0===e.created||Date.now()-Number(e.created)<Cr)&&(void 0===e.expire||Date.now()<Number(e.expire))}(r)?r:(Ar(e),{})}function Rr(e,r){if(w(e))Ar(r);else{e.expire=String(Date.now()+Br);var n=[];u(m(e),(function(e){n.push(e[0]+"="+e[1])}));var t=n.join(Ir);r.set(t,Br)}}function Ar(e){e.set("",0)}var jr=[];var Dr=/[^\u0000-\u007F]/,Nr="custom_keys";var Vr=Mr(),Qr=function(e,r,n){this.endpointUrl=e,this.bytesLimit=r,this.isLineProtocolToJson=n;var t="[object Navigator]"===Object.prototype.toString.call(Vr&&Vr.navigator)&&"function"==typeof Vr.navigator.sendBeacon;this.sendBeacon=t?Vr.navigator.sendBeacon.bind(Vr.navigator):void 0};Qr.prototype={send:function(e,r){var n=function(e){return e?e+(-1===e.indexOf("?")?"?":"&")+"precision=ms":e}(this.endpointUrl);if(this.sendBeacon&&r<this.bytesLimit&&!this.isLineProtocolToJson){if(this.sendBeacon(n,e))return}else if(this.sendBeacon&&r<this.bytesLimit&&this.isLineProtocolToJson){var t=new Blob([JSON.stringify(e)],{type:"application/json"});if(this.sendBeacon(n,t))return}var i=new XMLHttpRequest;i.open("POST",n,!0),i.withCredentials=!0,this.isLineProtocolToJson?(i.setRequestHeader("Content-type","application/json"),i.send(JSON.stringify(e))):(i.setRequestHeader("Content-type","text/plain;charset=UTF-8"),i.send(e))}};var Ur=Qr,Fr=function(e){if(!e||!e.type)return{rowStr:"",rowData:void 0};var r={tags:{},fields:{}},n=!1,t="";return u(pr,(function(i,o){if(i.type===e.type){t+=o+",",r.measurement=o;var s=[],a=c({},lr,i.tags),d=["date","type",Nr];u(a,(function(n,t){var i=P(e,n);d.push(t),(i||x(i))&&(r.tags[t]=function(e){return _(e)?e:$(e)}(i),s.push(V(t)+"="+V(i)))}));var l=[];if(u(i.fields,(function(n,t){if(f(n)&&2===n.length){n[0];var i=n[1],o=P(e,i);d.push(t),(o||x(o))&&(r.fields[t]=o,l.push(V(t)+"="+U(o)))}else if(_(n)){o=P(e,n);d.push(t),(o||x(o))&&(r.fields[t]=o,l.push(V(t)+"="+U(o)))}})),e.tags&&g(e.tags)&&!w(e.tags)){var p=[];u(e.tags,(function(e,n){d.indexOf(n)>-1||(d.push(n),(e||x(e))&&(p.push(n),r.fields[n]=e,l.push(V(n)+"="+U(e))))})),p.length&&(r.fields.custom_keys=U(p),l.push(V(Nr)+"="+U(p)))}e.type===se&&u(e,(function(e,n){-1===d.indexOf(n)&&(x(e)||_(e)||y(e))&&(r.fields[n]=e,l.push(V(n)+"="+U(e)))})),s.length&&(t+=s.join(",")),l.length&&(t+=" ",t+=l.join(","),n=!0),t=t+" "+e.date,r.time=(v=e.date,x(v)?C(1e6*v,0):v)}var v})),{rowStr:n?t:"",rowData:n?r:void 0}},zr=function(e,r,n,t,i,o,s){this.request=e,this.maxSize=r,this.bytesLimit=n,this.maxMessageSize=t,this.flushTimeout=i,this.isLineProtocolToJson=o,this.beforeUnloadCallback=s,this.pushOnlyBuffer=[],this.upsertBuffer={},this.bufferBytesSize=0,this.bufferMessageCount=0,this.flushOnVisibilityHidden(),this.flushPeriodically()};zr.prototype={add:function(e){this.addOrUpdate(e)},upsert:function(e,r){this.addOrUpdate(e,r)},flush:function(){if(0!==this.bufferMessageCount){var e=this.pushOnlyBuffer.concat(v(this.upsertBuffer));if(0===e.length)return;this.isLineProtocolToJson?this.request.send(h(e,(function(e){return JSON.parse(e)})),this.bufferBytesSize):this.request.send(e.join("\n"),this.bufferBytesSize),this.pushOnlyBuffer=[],this.upsertBuffer={},this.bufferBytesSize=0,this.bufferMessageCount=0}},processSendData:function(e){return this.isLineProtocolToJson?JSON.stringify(Fr(e).rowData):Fr(e).rowStr},sizeInBytes:function(e){return Dr.test(e)?void 0!==window.TextEncoder?(new TextEncoder).encode(e).length:new Blob([e]).size:e.length},addOrUpdate:function(e,r){var n=this.process(e);n.processedMessage&&""!==n.processedMessage&&(n.messageBytesSize>=this.maxMessageSize||(this.hasMessageFor(r)&&this.remove(r),this.willReachedBytesLimitWith(n.messageBytesSize)&&this.flush(),this.push(n.processedMessage,n.messageBytesSize,r),this.isFull()&&this.flush()))},process:function(e){var r="";return{processedMessage:r=this.processSendData(e),messageBytesSize:this.sizeInBytes(r)}},push:function(e,r,n){this.bufferMessageCount>0&&(this.bufferBytesSize+=1),void 0!==n?this.upsertBuffer[n]=e:this.pushOnlyBuffer.push(e),this.bufferBytesSize+=r,this.bufferMessageCount+=1},remove:function(e){var r=this.upsertBuffer[e];delete this.upsertBuffer[e];var n=this.sizeInBytes(r);this.bufferBytesSize-=n,this.bufferMessageCount-=1,this.bufferMessageCount>0&&(this.bufferBytesSize-=1)},hasMessageFor:function(e){return void 0!==e&&void 0!==this.upsertBuffer[e]},willReachedBytesLimitWith:function(e){return this.bufferBytesSize+e+1>=this.bytesLimit},isFull:function(){return this.bufferMessageCount===this.maxSize||this.bufferBytesSize>=this.bytesLimit},flushPeriodically:function(){var e=this;setTimeout((function(){e.flush(),e.flushPeriodically()}),e.flushTimeout)},flushOnVisibilityHidden:function(){var e=this;Vr.navigator.sendBeacon&&(R(window,X,e.beforeUnloadCallback),R(document,ee,(function(){"hidden"===document.visibilityState&&e.flush()})),R(window,X,(function(){e.flush()})))}};var qr=zr,Jr={debug:"debug",critical:"critical",error:"error",info:"info",warn:"warning"},Hr={[Jr.debug]:0,[Jr.info]:1,[Jr.warn]:2,[Jr.error]:3,[Jr.critical]:4};Gr=[],null===(Xr=Jr)||u(Xr,(function(e,r){Gr[Gr.length]=r}));var Xr,Gr;const Kr="http";function Yr(e,r,n,t){this.contextManager=j(),void 0===r&&(r=Kr),void 0===n&&(n=Jr.debug),void 0===t&&(t={}),this.sendLog=e,this.handlerType=r,this.level=n,this.contextManager.set(t)}Yr.prototype={log:function(e,r,n){if(void 0===n&&(n=Jr.info),Hr[n]>=Hr[this.level]&&this.handlerType===Kr){var t=d({message:e,status:n},{tags:this.contextManager.get()},r);this.sendLog(t)}},debug:function(e,r){this.log(e,r,Jr.debug)},info:function(e,r){this.log(e,r,Jr.info)},warn:function(e,r){this.log(e,r,Jr.warn)},critical:function(e,r){this.log(e,r,Jr.critical)},error:function(e,r){var n={error:{origin:Re}};this.log(e,d(n,r),Jr.error)},setContext:function(e){this.contextManager.set(e)},addContext:function(e,r){this.contextManager.add(e,r)},removeContext:function(e){this.contextManager.remove(e)},setHandler:function(e){this.handlerType=e},setLevel:function(e){this.level=e}};var Zr="0",en="1";function rn(e,r){if(!r){var n=nn(e)===en;return{getId:()=>{},isTracked:()=>n}}var t=Wr(e.cookieOptions,"logs",(function(r){return function(e,r){var n=function(e){return e===Zr||e===en}(r)?r:nn(e);return{trackingType:n,isTracked:n===en}}(e,r)}));return{getId:t.getId,isTracked:function(){return t.getTrackingType()===en}}}function nn(e){return 0!==(r=e.sampleRate)&&100*Math.random()<=r?en:Zr;var r}var tn={sdkVersion:"1.1.23",sdkName:"df_web_logs_sdk"},on=["view.url","view.referrer","message","error.stack","source.url"];function sn(e){var r=window.DATAFLUX_RUM;return r&&r.getInternalContext?r.getInternalContext(e):void 0}var an=function(e){var r=!1,n=j(),t={},i=new z,o=function(e,r){i.add([e,r])},s=new Yr(f);return a={logger:s,init:function(t){(function(e){return r?(e.silentMultipleInit,!1):!(!e.datakitUrl&&!e.datakitOrigin)&&!!(void 0===e.sampleRate||(n=e.sampleRate,x(n)&&n>=0&&n<=100));var n})(t)&&(o=e(t,s,n.get),i.drain((function([e,r]){return o(e,r)})),r=!0)},getLoggerGlobalContext:n.get,setLoggerGlobalContext:n.set,addLoggerGlobalContext:n.add,removeLoggerGlobalContext:n.remove,createLogger:function(e,r){return void 0===r&&(r={}),t[e]=new Yr(f,r.handler,r.level,c({},r.context,{logger:{name:e}})),t[e]},getLogger:function(e){return t[e]}},u=c({},a,{onReady:function(e){e()}}),Object.defineProperty(u,"_setDebug",{get:function(){return setDebugMode},enumerable:!1}),u;var a,u;function f(e){var r,t,i;o(e,d({date:(new Date).getTime(),view:{referrer:document.referrer,url:window.location.href,host:window.location.host,path:window.location.pathname,pathGroup:S(window.location.pathname),urlQuery:$((r=window.location.href,t={},i=r.split("?")[1]||"",i&&(t=k("?"+i)),t))}},n.get()))}}((function(e,r,n){var t=or(e,tn);return function(e,r,n,t,i){var o=function(e,r,n){var t=function(e,r){var n=0,t=!1;return{isLimitReached:function(){if(0===n&&setTimeout((function(){n=0}),B),(n+=1)<=e.maxErrorsByMinute||t)return t=!1,!1;if(n===e.maxErrorsByMinute+1){t=!0;try{r({message:"Reached max number of errors by minute: ".concat(e.maxErrorsByMinute),source:We,startClocks:L()})}finally{t=!1}}return!0}}}(r,n);return function(n,i){if(e.isTracked()){var o=d({service:r.service||"browser",session:{id:e.getId()},type:se,_dd:{sdkName:r.sdkName,sdkVersion:r.sdkVersion,env:r.env,version:r.version},device:H,user:{user_id:r.user_id}},i,sn(),n);if(r.beforeSend)if(!1===Ne(o,on,r.beforeSend))return;if(o.status!==Jr.error||!t.isLimitReached())return D(o)}}}(n,e,a),s=function(e){var r=n(e.logsEndpoint);function n(r){return new qr(new Ur(r,e.batchBytesLimit,e.isLineProtocolToJson),e.maxBatchSize,e.batchBytesLimit,e.maxMessageSize,e.flushTimeout,e.isLineProtocolToJson)}return{add:function(e){r.add(e)}}}(e);function a(e){var r,n,i=e.resource;if(i){var o=(r=e.resource.url,n=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)},n.prototype.setUrl=function(e){this._parse(e)},n.prototype._initValues=function(){for(var e in this._fields)this._values[e]=""},n.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},n.prototype.getParse=function(){return this._values},n.prototype.getUrl=function(){var e="";return e+=this._values.Origin,(e+=this._values.Path)+(this._values.QueryString?"?"+this._values.QueryString:"")},n.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 n(r)).getParse();i={method:e.resource.method,status:e.resource.statusCode,statusGroup:E(e.resource.statusCode),url:e.resource.url,urlHost:o.Host,urlPath:o.Path,urlPathGroup:S(o.Path)}}t.error(e.message,d({date:e.startClocks.timeStamp,error:{type:e.type,source:e.source,stack:e.stack}},{resource:i},sn(e.startClocks.relative)))}return r.subscribe(a),function(e,r){var n=o(e,r);n&&s.add(n)}}(t,!1!==e.forwardErrorsToLogs?kr(t):new ze,rn(t,function(e){if(void 0===document.cookie||null===document.cookie)return!1;try{var r="dd_cookie_test_".concat(O()),n="test";return Ye(r,n,M,e),Ze(r)===n}catch(e){return!1}}(t.cookieOptions)),r)}));!function(e,r,n){var t=e[r];e[r]=n,t&&t.q&&u(t.q,(function(e){e()}))}(Mr(),"DATAFLUX_LOGS",an)})();
1
+ (()=>{"use strict";var e=Array.prototype,t=Function.prototype,r=Object.prototype,n=e.slice,o=r.toString,i=r.hasOwnProperty,s=(t.bind,e.forEach),a=(e.indexOf,Array.isArray),u=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 a in e)if(i.call(e,a)&&false===t.call(r,e[a],a,e))return!1};function c(e){return u(n.call(arguments,1),(function(t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})),e}var f=function(e){return u(n.call(arguments,1),(function(t){for(var r in t)void 0!==t[r]&&(e[r]=t[r])})),e},l=function(e){return u(n.call(arguments,1),(function(t){for(var r in t)void 0!==t[r]&&(b(t[r])&&b(e[r])?f(e[r],t[r]):e[r]=t[r])})),e},d=a||function(e){return"[object Array]"===o.call(e)},p=function(e){if(!e)return!1;try{return/^\s*\bfunction\b/.test(e)}catch(e){return!1}},v=function(e){var t=[];return null===e||u(e,(function(e){t[t.length]=e})),t},h=function(e,t,r){if(e.filter)return e.filter(t);for(var n=[],o=0;o<e.length;o++)if(i.call(e,o)){var s=e[o];t.call(r,s,o,e)&&n.push(s)}return n},g=function(e,t,r){if(e.map)return e.map(t);for(var n=[],o=0;o<e.length;o++)if(i.call(e,o)){var s=e[o];n.push(t.call(r,s,o,e))}return n},b=function(e){return null!==e&&"[object Object]"===o.call(e)},y=function(e){if(b(e)){for(var t in e)if(i.call(e,t))return!1;return!0}return!1},m=function(e){return"[object String]"===o.call(e)},w=function(e){return"[object Boolean]"===o.call(e)},_=function(e){return"[object Number]"===o.call(e)&&/[\d\.]+/.test(String(e))},x=(Date.now,function(e,t,r){var n,o,i,s,a=0;r||(r={});var u=function(){a=!1===r.leading?0:(new Date).getTime(),n=null,s=e.apply(o,i),n||(o=i=null)},c=function(){i=arguments;var c=(new Date).getTime();a||!1!==r.leading||(a=c);var f=t-(c-a);return o=this,f<=0||f>t?(n&&(clearTimeout(n),n=null),a=c,s=e.apply(o,i),n||(o=i=null)):n||!1===r.trailing||(n=setTimeout(u,f)),s};return c.cancel=function(){clearTimeout(n),a=0,n=null},c});function O(e){return e?(parseInt(e,10)^16*Math.random()>>parseInt(e,10)/4).toString(16):"".concat(1e7,"-",1e3,"-",4e3,"-",8e3,"-",1e11).replace(/[018]/g,O)}function S(e,t,r){if(void 0===r&&(r=function(){if("undefined"!=typeof WeakSet){var e=new WeakSet;return{hasAlreadyBeenSeen(t){var r=e.has(t);return r||e.add(t),r}}}var t=[];return{hasAlreadyBeenSeen(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]=S(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]=S(o[a],t[a],r));return o}}function E(e){return S(void 0,e)}function k(e,t,r){if(null==e)return JSON.stringify(e);var n=[!1,void 0];C(e)&&(n=[!0,e.toJSON],delete e.toJSON);var o,i,s=[!1,void 0];"object"==typeof e&&C(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 C(e){return"object"==typeof e&&null!==e&&e.hasOwnProperty("toJSON")}function T(){}var $,L=1e3,B=6e4;function M(e,t){return+e.toFixed(t)}function R(){return performance.now()}function U(){return{relative:R(),timeStamp:A()}}function A(){return I()}function I(){return(new Date).getTime()}function P(e,t){return t-e}function F(){return void 0===$&&($=performance.timing.navigationStart),$}function D(e,t){for(var r=t.split(".");r.length;){var n=r.shift();if(!(e&&n in e&&i.call(e,n)))return;e=e[n]}return e}function j(e,t){var r=e.charCodeAt(t-1);return r>=55296&&r<=56319?e.slice(0,t+1):e.slice(0,t)}function q(e,t,r,n){return Q(e,[t],r,n)}function Q(e,t,r,n){var o=n&&n.once?function(e){i(),r(e)}:r;n=n&&n.passive?{capture:n.capture,passive:n.passive}:n&&n.capture,u(t,(function(t){e.addEventListener(t,o,n)}));var i=function(){u(t,(function(t){e.removeEventListener(t,o,n)}))};return{stop:i}}function V(e,t){return-1!==e.indexOf(t)}function W(){var e={};return{get:function(){return e},add:function(t,r){m(t)&&(e[t]=r)},remove:function(t){delete e[t]},set:function(t){b(t)&&(e=t)},getContext:function(){return E(e)},setContext:function(t){e=E(t)},setContextProperty:function(t,r){e[t]=E(r)},removeContextProperty:function(t){delete e[t]},clearContext:function(){e={}}}}function N(e){var t={};return u(e,(function(e,r){var n;t[(n=r,n.replace(/[A-Z]/g,(function(e,t){return(0!==t?"_":"")+e.toLowerCase()})).replace(/-/g,"_"))]=G(e)})),t}function G(e){return d(e)?g(e,(function(e){return G(e)})):"object"==typeof e&&null!==e?N(e):e}function H(e){if("object"==typeof e&&e)e=k(e);else if(!m(e))return e;return String(e).replace(/[\s=,"]/g,(function(e){return"\\"+e}))}function X(e){return'"'+e.replace(/[\\]*"/g,'"').replace(/"/g,'\\"')+'"'}function K(e){return"object"==typeof e&&e?X(k(e)):m(e)?X(e):e}function z(e,t){return null!=e?e:t}var Y=function(){this.buffer=[]};Y.prototype={add:function(e){this.buffer.push(e)>this.limit&&this.buffer.splice(0,1)},drain:function(e){u(this.buffer,(function(t){e(t)})),this.buffer.length=0}};var J=Y,Z=1/0;function ee(e){this.expireDelay=e,this.entries=[];var t=this;this.clearOldContextsInterval=setInterval((function(){t.clearOldContexts()}),6e4)}ee.prototype.add=function(e,t){var r=this,n={context:e,startTime:t,endTime:Z,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},ee.prototype.find=function(e){for(var t of(void 0===e&&(e=Z),this.entries))if(t.startTime<=e){if(e<=t.endTime)return t.context;break}},ee.prototype.closeActive=function(e){var t=this.entries[0];t&&t.endTime===Z&&t.close(e)},ee.prototype.findAll=function(e){void 0===e&&(e=Z);var t=h(this.entries,(function(t){return t.startTime<=e&&e<=t.endTime}));return g(t,(function(e){return e.context}))},ee.prototype.reset=function(){this.entries=[]},ee.prototype.stop=function(){clearInterval(this.clearOldContextsInterval)},ee.prototype.clearOldContexts=function(){for(var e=R()-this.expireDelay;this.entries.length>0&&this.entries[this.entries.length-1].endTime<e;)this.entries.pop()};var te={log:"log",debug:"debug",info:"info",warn:"warn",error:"error"},re=function e(t){var r=[].slice.call(arguments,1);Object.prototype.hasOwnProperty.call(te,t)||(t=te.log),e[t].apply(e,r)};re.debug=void 0,re.log=void 0,re.info=void 0,re.warn=void 0,re.error=void 0;var ne={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"]}},oe={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=ne.navigator.userAgent||{},r=oe.getMatchMap(t);for(var n in ne.infoMap)for(var o=0;o<ne.infoMap[n].length;o++){var i=ne.infoMap[n][o];r[i]&&(e[n]=i)}},getOS:function(){return oe.matchInfoMap(this),this.os||"Unknown"},getOSVersion:function(){var e=this,t=ne.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",oe.matchInfoMap(e),e.device},getNetwork:function(){return navigator&&navigator.connection&&navigator.connection.effectiveType},getLanguage:function(){var e;return this.language=((e=(ne.navigator.browserLanguage||ne.navigator.language).split("-"))[1]&&(e[1]=e[1].toUpperCase()),e.join("_")),this.language},getBrowserInfo:function(){var e=this;oe.matchInfoMap(e);var t=ne.navigator.userAgent||{},r=function(e,t){var r=ne.navigator.mimeTypes;for(var n in r)if(r[n][e]==t)return!0;return!1},n=oe.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")||ne.navigator&&void 0===ne.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){re.warn(e)}))}},ie={os:oe.getOS(),osVersion:oe.getOSVersion().version,osVersionMajor:oe.getOSVersion().osMajor,browser:oe.getBrowserInfo().browser,browserVersion:oe.getBrowserInfo().browserVersion,browserVersionMajor:oe.getBrowserInfo().browserMajor,screenSize:window.screen.width+"*"+window.screen.height,networkType:oe.getNetwork(),divice:oe.getDeviceType()},se="beforeunload",ae="click",ue="keydown",ce="scroll",fe="touchstart",le="visibilitychange",de="securitypolicyviolation",pe="action",ve="error",he="long_task",ge="view",be="resource",ye="logger",me={FETCH:"fetch",XHR:"xhr"},we="unhandled";function _e(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 xe(e,t,r){return _e(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 Oe="?";function Se(e){var t=[],r=Me(e,"stack");return r&&u(r.split("\n"),(function(e){var r=function(e){var t=ke.exec(e);if(!t)return;var r=t[2]&&0===t[2].indexOf("native"),n=t[2]&&0===t[2].indexOf("eval"),o=Ce.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]||Oe,line:t[3]?+t[3]:void 0,url:r?void 0:t[2]}}(e)||function(e){var t=Te.exec(e);if(!t)return;return{args:[],column:t[3]?+t[3]:void 0,func:Oe,line:t[2]?+t[2]:void 0,url:t[1]}}(e)||function(e){var t=$e.exec(e);if(!t)return;return{args:[],column:t[4]?+t[4]:void 0,func:t[1]||Oe,line:+t[3],url:t[2]}}(e)||function(e){var t=Le.exec(e);if(!t)return;var r=t[3]&&t[3].indexOf(" > eval")>-1,n=Be.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]||Oe,line:t[4]?+t[4]:void 0,url:t[3]}}(e);r&&(!r.func&&r.line&&(r.func=Oe),t.push(r))})),{message:Me(e,"message"),name:Me(e,"name"),stack:t}}var Ee="((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\\w+\\.|\\/).*?)",ke=new RegExp("^\\s*at (.*?) ?\\("+Ee+"(?::(\\d+))?"+"(?::(\\d+))?\\)?\\s*$","i"),Ce=new RegExp("\\((\\S*)(?::(\\d+))(?::(\\d+))\\)");var Te=new RegExp("^\\s*at ?"+Ee+"(?::(\\d+))?"+"(?::(\\d+))??\\s*$","i");var $e=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i;var Le=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,Be=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i;function Me(e,t){if("object"==typeof e&&e&&t in e){var r=e[t];return"string"==typeof r?r:void 0}}var Re=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/;function Ue(e){var t=function(e){return xe(window,"onerror",{before:function(t,r,n,o,i){var s;if(i)s=Se(i),e(s,i);else{var a,u={url:r,column:o,line:n},c=t;if("[object String]"==={}.toString.call(t)){var f=Re.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 xe(window,"onunhandledrejection",{before:function(t){var r=t.reason||"Empty reason",n=Se(r);e(n,r)}})}(e);return{stop:function(){t.stop(),r.stop()}}}var Ae={AGENT:"agent",CONSOLE:"console",NETWORK:"network",SOURCE:"source",LOGGER:"logger",CUSTOM:"custom"};function Ie(){var e=new Error;if(!e.stack)try{throw e}catch(e){}var t=Se(e);return t.stack=t.stack.slice(2),Pe(t)}function Pe(e){var t=Fe(e);return u(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 Fe(e){return(e.name||"Error")+": "+e.message}function De(e,t){for(var r=e,n=[];r&&r.cause instanceof Error&&n.length<10;){var o=Se(r.cause);n.push({message:r.cause.message,source:t,type:o&&o.name,stack:o&&Pe(o)}),r=r.cause}return n.length?n:void 0}function je(e){return Ue((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:Pe(t),handlingStack:n,type:t.name,causes:De(r,s)}:{startClocks:o,source:s,handling:a,originalError:r,message:i+" "+k(r),stack:"No stack, consider using an instance of Error",handlingStack:n,type:t&&t.name}}({stackTrace:t,originalError:r,startClocks:U(),nonErrorPrefix:"Uncaught",source:Ae.SOURCE,handling:we}))}))}var qe=function(e){this.observers=[],this.onLastUnsubscribe=void 0,this.onFirstSubscribe=e};qe.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=h(t.observers,(function(t){return e!==t})),!t.observers.length&&t.onLastUnsubscribe&&t.onLastUnsubscribe()}}},notify:function(e){u(this.observers,(function(t){t(e)}))}};var Qe=qe;function Ve(){var e=[].slice.call(arguments),t=new Qe((function(){var r=g(e,(function(e){return e.subscribe((function(e){return t.notify(e)}))}));return function(){return u(r,(function(e){return e.unsubscribe()}))}}));return t}var We={};function Ne(e){var t=g(e,(function(e){return We[e]||(We[e]=function(e){var t=new Qe((function(){var r=console[e];return console[e]=function(){var n=[].slice.call(arguments);r.apply(console,arguments);var o=Ie();t.notify(Ge(n,e,o))},function(){console[e]=r}}));return t}(e)),We[e]}));return Ve.apply(this,t)}function Ge(e,t,r){var n,o=g(e,(function(e){return function(e){if("string"==typeof e)return e;if(e instanceof Error)return Fe(Se(e));return k(e,0,2)}(e)})).join(" ");if(t===te.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?Pe(Se(i)):void 0,o="console error: "+o}return{api:t,message:o,stack:n,handlingStack:r}}var He={intervention:"intervention",deprecation:"deprecation",cspViolation:"csp_violation"};function Xe(e){var t,r=[];V(e,He.cspViolation)&&r.push(t=new Qe((function(){return q(document,de,(function(e){t.notify(function(e){var t=He.cspViolation,r="'"+e.blockedURI+"' blocked by '"+e.effectiveDirective+"' directive";return{type:He.cspViolation,subtype:e.effectiveDirective,message:t+": "+r,stack:Ke(e.effectiveDirective,r+' of the policy "'+j(e.originalPolicy,100)+'"',e.sourceFile,e.lineNumber,e.columnNumber)}}(e))})).stop})));var n=h(e,(function(e){return e!==He.cspViolation}));return n.length&&r.push(function(e){var t=new Qe((function(){if(window.ReportingObserver){var r=function(e){u(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:Ke(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)),Ve.apply(this,r)}function Ke(e,t,r,n,o){return r&&Pe({name:e,message:t,stack:[{func:"?",url:r,line:n,column:o}]})}var ze=function(){this._events=[],this.pendingEvents=[]};ze.prototype={emit:function(e){var t=[].slice.call(arguments,1);u(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 ze;var Ye,Je="RAW_LOG_COLLECTED",Ze="LOG_COLLECTED";function et(){this.callbacks=[]}function tt(e){return rt(e,function(e){if(e.origin)return e.origin;var t=e.host.replace(/(:80|:443)$/,"");return e.protocol+"//"+t}(window.location)).href}function rt(e,t){if(function(){if(void 0!==Ye)return Ye;try{var e=new URL("http://test/path");return Ye="http://test/path"===e.href}catch(e){Ye=!1}return Ye}())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}et.prototype={notify:function(e,t){var r=this.callbacks[e];r&&u(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]=h(r.callbacks[e],(function(e){return e!==t}))}}}};var nt=navigator.userAgent.toLowerCase(),ot=function(){return/iphone os/.test(nt)};var it;function st(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 at(e){return function(e,t){var r=e.match("(?:^|;)\\s*"+t+"\\s*=\\s*([^;]+)");return r?r[1]:void 0}(document.cookie,e)}var ut,ct,ft=/^\s+|\s+$/g;function lt(e){return e.replace(ft,"")}function dt(e){return e.lastIndexOf("/")===e.length-1?lt(e)+"v1/write/logging":lt(e)+"/v1/write/logging"}function pt(e){var t,r,n;if(void 0===e.sampleRate||(t=e.sampleRate,_(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){re.error(n,e)}}),cookieOptions:vt(e),sampleRate:z(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},function(e){var t=function(e){return!1};"isIntakeUrl"in e&&p(e.isIntakeUrl)&&w(e.isIntakeUrl())&&(t=e.isIntakeUrl);var r,n=function(e){return!1};return"isServerError"in e&&p(e.isServerError)&&w(e.isServerError())&&(n=e.isServerError),{datakitUrl:(r=e.datakitUrl||e.datakitOrigin,r.lastIndexOf("/")===r.length-1?lt(r)+"v1/write/rum":lt(r)+"/v1/write/rum"),logsEndpoint:dt(e.datakitOrigin),isIntakeUrl:t,isServerError:n}}(e));re.error("Sample Rate should be a number between 0 and 100")}function vt(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===it){for(var e="dd_site_test_".concat(O()),t=window.location.hostname.split("."),r=t.pop();t.length&&!at(e);)r=t.pop()+"."+r,st(e,"test",L,{domain:r});it=r}return it}()),t}function ht(){var e;return ut||(e=new Qe((function(){if(window.fetch){var t=_e(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=tt("object"==typeof t&&t.url||t),i=U(),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="complete",n.duration=P(n.startClocks.timeStamp,A()),"stack"in t||t instanceof Error?(n.status=0,n.isAborted=t instanceof DOMException&&t.code===DOMException.ABORT_ERR,n.error=t,e.notify(n)):"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}})),ut=e),ut}var gt={};function bt(){var e;return ct||(e=new Qe((function(){var t=xe(XMLHttpRequest.prototype,"open",{before:yt}),r=xe(XMLHttpRequest.prototype,"send",{before:function(){mt.call(this,e)}}),n=xe(XMLHttpRequest.prototype,"abort",{before:_t});return function(){t.stop(),r.stop(),n.stop()}})),ct=e),ct}function yt(e,t){var r=this._DATAFLUX_REQUEST_UUID||O();this._DATAFLUX_REQUEST_UUID=r,gt[r]={state:"open",method:e,url:tt(String(t))}}function mt(e){var t=gt[this._DATAFLUX_REQUEST_UUID];if(t){var r=t;r.state="start",r.startTime=R(),r.startClocks=U(),r.isAborted=!1,r.xhr=this;var n=!1,o=xe(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=t;s.state="complete",s.duration=P(r.startClocks.timeStamp,A()),s.status=this.status,e.notify(c({},s)),wt.call(this)}};this.addEventListener("loadend",i),e.notify(r)}}function wt(){delete gt[this._DATAFLUX_REQUEST_UUID],delete this._DATAFLUX_REQUEST_UUID}function _t(){var e=gt[this._DATAFLUX_REQUEST_UUID];e&&(e.isAborted=!0)}var xt={action_id:"action.id",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",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_path_group:"view.path_group",view_url_query:"view.url_query"},Ot={view:{type:ge,tags:{view_loading_type:"view.loading_type",view_apdex_level:"view.apdex_level",is_active:"view.is_active"},fields:{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"}},resource:{type:be,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_first_byte:"resource.firstbyte"}},error:{type:ve,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:he,tags:{long_task_id:"long_task.id"},fields:{duration:"long_task.duration"}},action:{type:pe,tags:{action_name:"action.target.name",action_type:"action.type"},fields:{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:ye,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 St,Et=144e5,kt=9e5,Ct=/^([a-z]+)=([a-z0-9-]+)$/,Tt="&",$t="_dataflux_s",Lt=[];function Bt(e,t){if(void 0===t&&(t=0),St||(St=e),e===St)if(t>=100)Ut();else{var r,n=It();if(Mt()){if(n.lock)return void Rt(e,t);if(r=O(),n.lock=r,At(n,e.options),(n=It()).lock!==r)return void Rt(e,t)}var o=e.process(n);if(Mt()&&(n=It()).lock!==r)Rt(e,t);else{if(o&&function(e,t){if(Pt(e))return void function(e){st($t,"",0,e)}(t);e.expire=String(I()+kt),At(e,t)}(o,e.options),Mt()&&(!o||!Pt(o))){if((n=It()).lock!==r)return void Rt(e,t);delete n.lock,At(n,e.options),o=n}e.after&&e.after(o||n),Ut()}}else Lt.push(e)}function Mt(){return!!window.chrome||/HeadlessChrome/.test(window.navigator.userAgent)}function Rt(e,t){setTimeout((function(){Bt(e,t+1)}),10)}function Ut(){St=void 0;var e=Lt.shift();e&&Bt(e)}function At(e,t){st($t,function(e){return g((t=e,r=[],u(t,(function(e,t){r.push([t,e])})),r),(function(e){return e[0]+"="+e[1]})).join(Tt);var t,r}(e),kt,t)}function It(){var e=at($t),t={};return function(e){return void 0!==e&&(-1!==e.indexOf(Tt)||Ct.test(e))}(e)&&u(e.split(Tt),(function(e){var r=Ct.exec(e);if(null!==r){var n=r[1],o=r[2];t[n]=o}})),t}function Pt(e){return y(e)}function Ft(e,t,r){var n=new Qe,o=new Qe,i=setInterval((function(){Bt({options:e,process:function(e){return c(e)?void 0:{}},after:a})}),1e3),s=function(){var e=It();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||I()-Number(e.created)<Et)&&(void 0===e.expire||I()<Number(e.expire))}return{expandOrRenewSession:x((function(){var o;Bt({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=O(),e.created=String(I()));return i}(n),n},after:function(e){o&&!u()&&function(e){s=e,n.notify()}(e),s=e}})}),1e3),expandSession:function(){Bt({options:e,process:function(e){return u()?a(e):void 0}})},getSession:function(){return s},renewObservable:n,expireObservable:o,stop:function(){clearInterval(i)}}}var Dt=[],jt=function(e,t,r){var n=Ft(e,t,r);Dt.push((function(){return n.stop()}));var o,i=new ee(144e5);function s(){return{id:n.getSession().id,trackingType:n.getSession()[t]}}return Dt.push((function(){return i.stop()})),n.renewObservable.subscribe((function(){i.add(s(),R())})),n.expireObservable.subscribe((function(){i.closeActive(R())})),n.expandOrRenewSession(),i.add(s(),[0,F()][0]),o=Q(window,[ae,fe,ue,ce],(function(){return n.expandOrRenewSession()}),{capture:!0,passive:!0}),Dt.push(o.stop),function(e){var t=function(){"visible"===document.visibilityState&&e()},r=q(document,le,t);Dt.push(r.stop);var n=setInterval(t,6e4);Dt.push((function(){clearInterval(n)}))}((function(){return n.expandSession()})),{findActiveSession:function(e){return i.find(e)},renewObservable:n.renewObservable,expireObservable:n.expireObservable}};var qt=3145728,Qt="UP",Vt="FAILURE_DETECTED",Wt="DOWN",Nt="AFTER_SUCCESS",Gt="AFTER_RESUME";function Ht(e,t,r,n){t.transportStatus===Qt&&0===t.queuedPayloads.size()&&t.bandwidthMonitor.canHandle(e)?Kt(e,t,r,{onSuccess:function(){return zt(Nt,t,r,n)},onFailure:function(){t.queuedPayloads.enqueue(e),Xt(t,r,n)}}):t.queuedPayloads.enqueue(e)}function Xt(e,t,r){e.transportStatus===Wt&&setTimeout((function(){Kt(e.queuedPayloads.first(),e,t,{onSuccess:function(){e.queuedPayloads.dequeue(),e.currentBackoffTime=1e3,zt(Gt,e,t,r)},onFailure:function(){e.currentBackoffTime=Math.min(256e3,2*e.currentBackoffTime),Xt(e,t,r)}})}),e.currentBackoffTime)}function Kt(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 0!==e.status&&e.status<500}(r)?(t.transportStatus=t.bandwidthMonitor.ongoingRequestCount>0?Vt:Wt,t.lastFailureStatus=r.status,i()):(t.transportStatus=Qt,o())}))}function zt(e,t,r,n){e===Nt&&t.queuedPayloads.isFull()&&!t.queueFullReported&&(n({message:"Reached max events size queued for upload: 3MiB",source:Ae.AGENT,startClocks:U()}),t.queueFullReported=!0);var o=t.queuedPayloads;for(t.queuedPayloads=Yt();o.size()>0;)Ht(o.dequeue(),t,r,n)}function Yt(){var e=[];return{bytesCount:0,enqueue:function(t){this.isFull()||(e.push(t),this.bytesCount+=t.bytesCount)},first:()=>e[0],dequeue(){var t=e.shift();return t&&(this.bytesCount-=t.bytesCount),t},size:()=>e.length,isFull(){return this.bytesCount>=qt}}}function Jt(e){return e?e+(-1===e.indexOf("?")?"?":"&")+"precision=ms":e}function Zt(e,t,r){var n={transportStatus:Qt,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:Yt(),queueFullReported:!1},o=function(r,n){return function(e,t,r,n){var o=r.data,i=r.bytesCount,s=Jt(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}).then((function(e){"function"==typeof n&&n({status:e.status})}),(function(){er(s,o,n)})):er(s,o,n)}(e,t,r,n)};return{send:function(e){Ht(e,n,o,r)},sendOnExit:function(r){!function(e,t,r){var n=r.data,o=r.bytesCount,i=Jt(e);if(navigator.sendBeacon&&o<t)try{if(navigator.sendBeacon(i,n))return}catch(e){}er(i,n)}(e,t,r)}}}function er(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 tr=/[^\u0000-\u007F]/,rr="custom_keys",nr=function(e){if(!e||!e.type)return{rowStr:"",rowData:void 0};var t={tags:{},fields:{}},r=!1,n="";return u(Ot,(function(o,i){if(o.type===e.type){n+=i+",",t.measurement=i;var s=[],a=f({},xt,o.tags),c=["date","type",rr];u(a,(function(r,n){var o=D(e,r);c.push(n),(o||_(o))&&(t.tags[n]=function(e){return m(e)?e:k(e)}(o),s.push(H(n)+"="+H(o)))}));var l=[];if(u(o.fields,(function(r,n){if(d(r)&&2===r.length){r[0];var o=r[1],i=D(e,o);c.push(n),(i||_(i))&&(t.fields[n]=i,l.push(H(n)+"="+K(i)))}else if(m(r)){i=D(e,r);c.push(n),(i||_(i))&&(t.fields[n]=i,l.push(H(n)+"="+K(i)))}})),e.tags&&b(e.tags)&&!y(e.tags)){var p=[];u(e.tags,(function(e,r){c.indexOf(r)>-1||(c.push(r),(e||_(e))&&(p.push(r),t.fields[r]=e,l.push(H(r)+"="+K(e))))})),p.length&&(t.fields.custom_keys=K(p),l.push(H(rr)+"="+K(p)))}e.type===ye&&u(e,(function(e,r){-1===c.indexOf(r)&&(_(e)||m(e)||w(e))&&(t.fields[r]=e,l.push(H(r)+"="+K(e)))})),s.length&&(n+=s.join(",")),l.length&&(n+=" ",n+=l.join(","),r=!0),n=n+" "+e.date,t.time=(v=e.date,_(v)?M(1e6*v,0):v)}var v})),{rowStr:r?n:"",rowData:r?t:void 0}},or=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,this.beforeUnloadCallback="function"==typeof i?i:T,this.setupFlushOnExit(),this.flushPeriodically()};or.prototype.add=function(e){this.addOrUpdate(e)},or.prototype.upsert=function(e,t){this.addOrUpdate(e,t)},or.prototype.flush=function(e){if("function"!=typeof e&&(e=this.request.send),0!==this.bufferMessagesCount){var t=this.pushOnlyBuffer.concat(v(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})}},or.prototype.flushOnExit=function(){this.flush(this.request.sendOnExit)},or.prototype.computeBytesCount=function(e){return tr.test(e)?void 0!==window.TextEncoder?(new TextEncoder).encode(e).length:new Blob([e]).size:e.length},or.prototype.addOrUpdate=function(e,t){var r=this.process(e),n=r.processedMessage,o=r.messageBytesCount;o>=this.messageBytesLimit?re.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())},or.prototype.process=function(e){var t=nr(e).rowStr;return{processedMessage:t,messageBytesCount:this.computeBytesCount(t)}},or.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},or.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)},or.prototype.hasMessageFor=function(e){return void 0!==e&&void 0!==this.upsertBuffer[e]},or.prototype.willReachedBytesLimitWith=function(e){return this.bufferBytesCount+e+1>=this.batchBytesLimit},or.prototype.isFull=function(){return this.bufferMessagesCount===this.batchMessagesLimit||this.bufferBytesCount>=this.batchBytesLimit},or.prototype.flushPeriodically=function(){var e=this;setTimeout((function(){e.flush(),e.flushPeriodically()}),this.flushTimeout)},or.prototype.setupFlushOnExit=function(){var e=this;navigator.sendBeacon&&(q(window,se,this.beforeUnloadCallback),q(document,le,(function(){"hidden"===document.visibilityState&&e.flushOnExit()})),q(window,se,(function(){return e.flushOnExit()})))};var ir=or;var sr={sdkVersion:"1.2.0",sdkName:"df_web_logs_sdk"};function ar(e,t,r){return void 0===e?[]:"all"===e||d(e)&&function(e,t,r){if(e.every)return e.every(t);for(var n=!0,o=0;o<e.length;o++)if(i.call(e,o)){var s=e[o];if(!t.call(r,s,o,e)){n=!1;break}}return n}(e,(function(e){return V(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 re.error(r+' should be "all" or an array with allowed values "'+t.join('", "')+'"')}var ur,cr,fr={debug:"debug",error:"error",info:"info",warn:"warn",critical:"critical"},lr="console",dr="http",pr=(cr=[],null===(ur=fr)||u(ur,(function(e,t){cr[cr.length]=t})),cr);function vr(e,t,r,n,o){this.contextManager=W(),void 0===r&&(r=dr),void 0===n&&(n=fr.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))}vr.prototype={log:function(e,t,r){void 0===r&&(r=fr.info),this.handleLogStrategy({message:e,context:E(t),status:r},this)},debug:function(e,t){this.log(e,t,fr.debug)},info:function(e,t){this.log(e,t,fr.info)},warn:function(e,t){this.log(e,t,fr.warn)},critical:function(e,t){this.log(e,t,fr.critical)},error:function(e,t){var r={error:{origin:Ae.LOGGER}};this.log(e,l(r,t),fr.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 hr="0",gr="1";function br(e){var t=jt(e.cookieOptions,"logs",(function(t){return function(e,t){var r=function(e){return e===hr||e===gr}(t)?t:function(e){if(t=e.sampleRate,!(0!==t&&100*Math.random()<=t))return hr;var t;return gr}(e);return{trackingType:r,isTracked:r===gr}}(e,t)}));return{findTrackedSession:function(e){var r=t.findActiveSession(e);return r&&r.trackingType===gr?{id:r.id}:void 0}}}var yr={[fr.debug]:0,[fr.info]:1,[fr.warn]:2,[fr.error]:3};function mr(e,t,r){var n=r.getHandler(),o=d(n)?n:[n];return yr[e]>=yr[r.getLevel()]&&V(o,t)}function wr(e,t,r,n,o,i){var s=pr.concat(["custom"]),a={};u(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}),B),(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:Ae.AGENT,startClocks:U()})}finally{u=!1}}return!0}})})),r.subscribe(Je,(function(i){var s=i.rawLogsEvent,u=i.messageContext||void 0,c=i.messageContext||void 0,f=i.logger||o,d=s.date-F(),p=e.findTrackedSession(d);if(p){var v=c||n(),h=l({service:t.service||"browser",env:t.env||"",version:t.version||"",_dd:{sdkName:t.sdkName,sdkVersion:t.sdkVersion},session:{id:p.id},view:v.view,device:ie,type:ye},v.context,function(e){return t(window.DATAFLUX_RUM);function t(t){if(t&&t.getInternalContext)return t.getInternalContext(e)}}(d),s,f.getContext(),u);!mr(s.status,dr,f)||t.beforeSend&&!1===t.beforeSend(h)||h.error&&h.error.origin!==Ae.AGENT&&z(a[h.status],a.custom).isLimitReached()||r.notify(Ze,N(h))}}))}var _r={[te.log]:fr.info,[te.debug]:fr.debug,[te.info]:fr.info,[te.warn]:fr.warn,[te.error]:fr.error};var xr={[He.cspViolation]:fr.error,[He.intervention]:fr.error,[He.deprecation]:fr.warn};function Or(e,t){if(!e.forwardErrorsToLogs)return{stop:T};var r=bt().subscribe((function(e){"complete"===e.state&&o(me.XHR,e)})),n=ht().subscribe((function(e){"complete"===e.state&&o(me.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(Je,{rawLogsEvent:{message:Er(r)+" error "+n.method+" "+n.url,date:n.startClocks.timeStamp,error:{origin:Ae.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:fr.error,origin:Ae.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(Sr(e.response,t)):r(e.response)}(n.xhr,e,o):n.response?function(e,t,r){window.TextDecoder?e.body?function(e,t,r){!function(e,t,r){var n=e.getReader(),o=[],i=0;function s(){n.read().then((function(e){e.done?a():(o.push(e.value),(i+=e.value.length)>t?a():s())}),(function(e){return r(e)}))}function a(){var e;if(n.cancel().catch(T),1===o.length)e=o[0];else{e=new Uint8Array(i);var s=0;u(o,(function(t){e.set(t,s),s+=t.length}))}r(void 0,e.slice(0,t),e.length>t)}s()}(e,t,(function(e,t,n){if(e)r(e);else{var o=(new TextDecoder).decode(t);n&&(o+="..."),r(void 0,o)}}))}(e.clone().body,t.requestErrorResponseLengthLimit,(function(e,t){r(e?"Unable to retrieve response: "+e:t)})):r():e.clone().text().then((function(e){return r(Sr(e,t))}),(function(e){return r("Unable to retrieve response: "+e)}))}(n.response,e,o):n.error&&function(e,t,r){r(Sr(Pe(Se(e)),t))}(n.error,e,o))}return{stop:function(){r.unsubscribe(),n.unsubscribe()}}}function Sr(e,t){return e.length>t.requestErrorResponseLengthLimit?e.substring(0,t.requestErrorResponseLengthLimit)+"...":e}function Er(e){return me.XHR===e?"XHR":"Fetch"}function kr(e,t,r){var n=function(e,t,r){var n=function(t){return new ir(Zt(t,e.batchBytesLimit,r),e.batchMessagesLimit,e.batchBytesLimit,e.messageBytesLimit,e.flushTimeout)}(t);return{add:function(e){n.add(e)}}}(e,e.logsEndpoint,r);t.subscribe(Ze,(function(e){n.add(e)}))}const Cr=function(e){var t,r,n=!1,o=W(),i={},s=function(){},a=new J,u=function(e,t,r,n){void 0===r&&(r=E(p())),void 0===n&&(n=A()),a.add((function(){return u(e,t,r,n)}))},l=function(){},d=new vr((function(){return u.apply(this,arguments)}));function p(){return{view:{referrer:document.referrer,url:window.location.href},context:o.get()}}return t={logger:d,init:function(t){if(function(e){return n?(e.silentMultipleInit||re.error("DD_LOGS is already initialized."),!1):!(!e.datakitUrl&&!e.datakitOrigin)||(re.error("datakitOrigin is not configured, no RUM data will be collected."),!1)}(t)){var r=function(e){var t=pt(e),r=ar(e.forwardConsoleLogs,v(te),"Forward Console Logs"),n=ar(e.forwardReports,v(He),"Forward Reports");if(t&&r&&n)return e.forwardErrorsToLogs&&!V(r,te.error)&&r.push(te.error),c({forwardErrorsToLogs:!1!==e.forwardErrorsToLogs,forwardConsoleLogs:r,forwardReports:n,requestErrorResponseLengthLimit:32768},t,sr)}(t);if(r){var o=e(r,p,d);u=o.handleLog,s=o.getInternalContext,l=function(){return E(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 vr((function(){return u(this.arguments)}),e,t.handler,t.level,t.context),i[e]},getLogger:function(e){return i[e]},getInitConfiguration:function(){return l()},getInternalContext:function(e){return s(e)}},r=f({},t,{onReady:function(e){e()}}),Object.defineProperty(r,"_setDebug",{get:function(){return setDebugMode},enumerable:!1}),r}((function(e,t,r){var n=new et;const o=function(e){n.notify(Je,{rawLogsEvent:{message:e.message,date:e.startClocks.timeStamp,error:{origin:Ae.AGENT},origin:Ae.AGENT,status:fr.error}})};Or(e,n),function(e,t){if(!e.forwardErrorsToLogs)return{stop:T};var r=new Qe,n=je(r),o=r.subscribe((function(e){t.notify(Je,{rawLogsEvent:{message:e.message,date:e.startClocks.timeStamp,error:{kind:e.type,origin:Ae.SOURCE,stack:e.stack},origin:Ae.SOURCE,status:fr.error}})}))}(e,n),function(e,t){var r=Ne(e.forwardConsoleLogs).subscribe((function(e){t.notify(Je,{rawLogsEvent:{date:A(),message:e.message,origin:Ae.CONSOLE,error:e.api===te.error?{origin:Ae.CONSOLE,stack:e.stack}:void 0,status:_r[e.api]}})}))}(e,n),function(e,t){var r=Xe(e.forwardReports).subscribe((function(e){var r,n,o,i=e.message,s=xr[e.type];s===fr.error?r={kind:e.subtype,origin:Ae.REPORT,stack:e.stack}:e.stack&&(i+=" Found in "+(n=e.stack,(o=/@ (.+)/.exec(n))&&o[1])),t.notify(Je,{rawLogsEvent:{date:A(),message:i,origin:Ae.REPORT,error:r,status:s}})}))}(e,n);var i=function(e){return{handleLog:function(t,r,n,o){var i=t.context;mr(t.status,lr,r)&&re(t.status,t.message,l(r.getContext(),i)),e.notify(Je,{rawLogsEvent:{date:o||A(),message:t.message,status:t.status,origin:Ae.LOGGER},messageContext:i,savedCommonContext:n,logger:r})}}}(n),s=br(e);wr(s,e,n,t,r,o),kr(e,n,o);var a,u=(a=s,{get:function(e){var t=a.findTrackedSession(e);if(t)return{session:{id:t.id}}}});return{handleLog:i.handleLog,getInternalContext:u.get}}));var Tr,$r,Lr,Br;Tr=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}(),Lr=Cr,Br=Tr[$r="DATAFLUX_LOGS"],Tr[$r]=Lr,Br&&Br.q&&u(Br.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: '1.1.23',
8
+ sdkVersion: '1.2.0',
9
9
  sdkName: 'df_web_logs_sdk'
10
10
  };
11
11
  exports.buildEnv = buildEnv;
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.makeLogsPublicApi = makeLogsPublicApi;
7
+
8
+ var _browserCore = require("@cloudcare/browser-core");
9
+
10
+ var _configuration = require("../domain/configuration");
11
+
12
+ var _logger = require("../domain/logger");
13
+
14
+ function makeLogsPublicApi(startLogsImpl) {
15
+ var isAlreadyInitialized = false;
16
+ var globalContextManager = (0, _browserCore.createContextManager)();
17
+ var customLoggers = {};
18
+
19
+ var getInternalContextStrategy = function getInternalContextStrategy() {
20
+ return undefined;
21
+ };
22
+
23
+ var beforeInitLoggerLog = new _browserCore.BoundedBuffer();
24
+
25
+ var _handleLogStrategy = function handleLogStrategy(logsMessage, logger, savedCommonContext, date) {
26
+ if (typeof savedCommonContext === 'undefined') {
27
+ savedCommonContext = (0, _browserCore.deepClone)(getCommonContext());
28
+ }
29
+
30
+ if (typeof date === 'undefined') {
31
+ date = (0, _browserCore.timeStampNow)();
32
+ }
33
+
34
+ beforeInitLoggerLog.add(function () {
35
+ return _handleLogStrategy(logsMessage, logger, savedCommonContext, date);
36
+ });
37
+ };
38
+
39
+ var getInitConfigurationStrategy = function getInitConfigurationStrategy() {
40
+ return undefined;
41
+ };
42
+
43
+ var mainLogger = new _logger.Logger(function () {
44
+ return _handleLogStrategy.apply(this, arguments);
45
+ });
46
+
47
+ function getCommonContext() {
48
+ return {
49
+ view: {
50
+ referrer: document.referrer,
51
+ url: window.location.href
52
+ },
53
+ context: globalContextManager.get()
54
+ };
55
+ }
56
+
57
+ return (0, _browserCore.makePublicApi)({
58
+ logger: mainLogger,
59
+ init: function init(initConfiguration) {
60
+ if (!canInitLogs(initConfiguration)) {
61
+ return;
62
+ }
63
+
64
+ var configuration = (0, _configuration.validateAndBuildLogsConfiguration)(initConfiguration);
65
+
66
+ if (!configuration) {
67
+ return;
68
+ }
69
+
70
+ var _startLogsImpl = startLogsImpl(configuration, getCommonContext, mainLogger);
71
+
72
+ _handleLogStrategy = _startLogsImpl.handleLog;
73
+ getInternalContextStrategy = _startLogsImpl.getInternalContext;
74
+
75
+ getInitConfigurationStrategy = function getInitConfigurationStrategy() {
76
+ return (0, _browserCore.deepClone)(initConfiguration);
77
+ };
78
+
79
+ beforeInitLoggerLog.drain();
80
+ isAlreadyInitialized = true;
81
+ },
82
+
83
+ /** @deprecated: use getGlobalContext instead */
84
+ getGlobalContext: globalContextManager.getContext,
85
+
86
+ /** @deprecated: use setGlobalContext instead */
87
+ setGlobalContext: globalContextManager.setContext,
88
+
89
+ /** @deprecated: use setGlobalContextProperty instead */
90
+ setGlobalContextProperty: globalContextManager.setContextProperty,
91
+
92
+ /** @deprecated: use removeGlobalContextProperty instead */
93
+ removeGlobalContextProperty: globalContextManager.removeContextProperty,
94
+ clearGlobalContext: globalContextManager.clearContext,
95
+ createLogger: function createLogger(name, conf) {
96
+ if (typeof conf == 'undefined') {
97
+ conf = {};
98
+ }
99
+
100
+ customLoggers[name] = new _logger.Logger(function () {
101
+ return _handleLogStrategy(this.arguments);
102
+ }, name, conf.handler, conf.level, conf.context);
103
+ return customLoggers[name];
104
+ },
105
+ getLogger: function getLogger(name) {
106
+ return customLoggers[name];
107
+ },
108
+ getInitConfiguration: function getInitConfiguration() {
109
+ return getInitConfigurationStrategy();
110
+ },
111
+ getInternalContext: function getInternalContext(startTime) {
112
+ return getInternalContextStrategy(startTime);
113
+ }
114
+ });
115
+
116
+ function canInitLogs(initConfiguration) {
117
+ if (isAlreadyInitialized) {
118
+ if (!initConfiguration.silentMultipleInit) {
119
+ _browserCore.display.error('DD_LOGS is already initialized.');
120
+ }
121
+
122
+ return false;
123
+ }
124
+
125
+ if (!initConfiguration.datakitUrl && !initConfiguration.datakitOrigin) {
126
+ _browserCore.display.error('datakitOrigin is not configured, no RUM data will be collected.');
127
+
128
+ return false;
129
+ }
130
+
131
+ return true;
132
+ }
133
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.startLogs = startLogs;
7
+
8
+ var _browserCore = require("@cloudcare/browser-core");
9
+
10
+ var _logsSessionManager = require("../domain/logsSessionManager");
11
+
12
+ var _assembly = require("../domain/assembly");
13
+
14
+ var _consoleCollection = require("../domain/logsCollection/console/consoleCollection");
15
+
16
+ var _reportCollection = require("../domain/logsCollection/report/reportCollection");
17
+
18
+ var _networkErrorCollection = require("../domain/logsCollection/networkError/networkErrorCollection");
19
+
20
+ var _runtimeErrorCollection = require("../domain/logsCollection/rumtimeError/runtimeErrorCollection");
21
+
22
+ var _loggerCollection = require("../domain/logsCollection/logger/loggerCollection");
23
+
24
+ var _startLogsBatch = require("../transport/startLogsBatch");
25
+
26
+ var _logger = require("../domain/logger");
27
+
28
+ var _internalContext = require("../domain/internalContext");
29
+
30
+ function startLogs(configuration, getCommonContext, mainLogger) {
31
+ var lifeCycle = new _browserCore.LifeCycle();
32
+
33
+ var reportError = function reportError(error) {
34
+ lifeCycle.notify(_browserCore.LifeCycleEventType.RAW_LOG_COLLECTED, {
35
+ rawLogsEvent: {
36
+ message: error.message,
37
+ date: error.startClocks.timeStamp,
38
+ error: {
39
+ origin: _browserCore.ErrorSource.AGENT // Todo: Remove in the next major release
40
+
41
+ },
42
+ origin: _browserCore.ErrorSource.AGENT,
43
+ status: _logger.StatusType.error
44
+ }
45
+ });
46
+ };
47
+
48
+ (0, _networkErrorCollection.startNetworkErrorCollection)(configuration, lifeCycle);
49
+ (0, _runtimeErrorCollection.startRuntimeErrorCollection)(configuration, lifeCycle);
50
+ (0, _consoleCollection.startConsoleCollection)(configuration, lifeCycle);
51
+ (0, _reportCollection.startReportCollection)(configuration, lifeCycle);
52
+
53
+ var _startLoggerCollection = (0, _loggerCollection.startLoggerCollection)(lifeCycle);
54
+
55
+ var session = (0, _logsSessionManager.startLogsSessionManager)(configuration);
56
+ (0, _assembly.startLogsAssembly)(session, configuration, lifeCycle, getCommonContext, mainLogger, reportError);
57
+ (0, _startLogsBatch.startLogsBatch)(configuration, lifeCycle, reportError);
58
+ var internalContext = (0, _internalContext.startInternalContext)(session);
59
+ return {
60
+ handleLog: _startLoggerCollection.handleLog,
61
+ getInternalContext: internalContext.get
62
+ };
63
+ }
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getRUMInternalContext = getRUMInternalContext;
7
+ exports.resetRUMInternalContext = resetRUMInternalContext;
8
+ exports.startLogsAssembly = startLogsAssembly;
9
+
10
+ var _browserCore = require("@cloudcare/browser-core");
11
+
12
+ var _logger = require("./logger");
13
+
14
+ var _loggerCollection = require("./logsCollection/logger/loggerCollection");
15
+
16
+ function startLogsAssembly(sessionManager, configuration, lifeCycle, getCommonContext, mainLogger, reportError) {
17
+ var statusWithCustom = _logger.STATUSES.concat(['custom']);
18
+
19
+ var logRateLimiters = {};
20
+ (0, _browserCore.each)(statusWithCustom, function (status) {
21
+ logRateLimiters[status] = (0, _browserCore.createEventRateLimiter)(status, configuration.eventRateLimiterThreshold, reportError);
22
+ });
23
+ lifeCycle.subscribe(_browserCore.LifeCycleEventType.RAW_LOG_COLLECTED, function (data) {
24
+ // { rawLogsEvent, messageContext = undefined, savedCommonContext = undefined, logger = mainLogger }
25
+ var rawLogsEvent = data.rawLogsEvent;
26
+ var messageContext = data.messageContext || undefined;
27
+ var savedCommonContext = data.messageContext || undefined;
28
+ var logger = data.logger || mainLogger;
29
+ var startTime = (0, _browserCore.getRelativeTime)(rawLogsEvent.date);
30
+ var session = sessionManager.findTrackedSession(startTime);
31
+
32
+ if (!session) {
33
+ return;
34
+ }
35
+
36
+ var commonContext = savedCommonContext || getCommonContext();
37
+ var log = (0, _browserCore.extend2Lev)({
38
+ service: configuration.service || 'browser',
39
+ env: configuration.env || '',
40
+ version: configuration.version || '',
41
+ _dd: {
42
+ sdkName: configuration.sdkName,
43
+ sdkVersion: configuration.sdkVersion
44
+ },
45
+ session: {
46
+ id: session.id
47
+ },
48
+ view: commonContext.view,
49
+ device: _browserCore.deviceInfo,
50
+ type: _browserCore.RumEventType.LOGGER
51
+ }, commonContext.context, getRUMInternalContext(startTime), rawLogsEvent, logger.getContext(), messageContext);
52
+
53
+ if ( // Todo: [RUMF-1230] Move this check to the logger collection in the next major release
54
+ !(0, _loggerCollection.isAuthorized)(rawLogsEvent.status, _logger.HandlerType.http, logger) || configuration.beforeSend && configuration.beforeSend(log) === false || log.error && log.error.origin !== _browserCore.ErrorSource.AGENT && (0, _browserCore.isNullUndefinedDefaultValue)(logRateLimiters[log.status], logRateLimiters['custom']).isLimitReached()) {
55
+ return;
56
+ }
57
+
58
+ lifeCycle.notify(_browserCore.LifeCycleEventType.LOG_COLLECTED, (0, _browserCore.withSnakeCaseKeys)(log));
59
+ });
60
+ }
61
+
62
+ function getRUMInternalContext(startTime) {
63
+ return getInternalContextFromRumGlobal(window.DATAFLUX_RUM);
64
+
65
+ function getInternalContextFromRumGlobal(rumGlobal) {
66
+ if (rumGlobal && rumGlobal.getInternalContext) {
67
+ return rumGlobal.getInternalContext(startTime);
68
+ }
69
+ }
70
+ }
71
+
72
+ function resetRUMInternalContext() {
73
+ logsSentBeforeRumInjectionTelemetryAdded = false;
74
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DEFAULT_REQUEST_ERROR_RESPONSE_LENGTH_LIMIT = void 0;
7
+ exports.validateAndBuildForwardOption = validateAndBuildForwardOption;
8
+ exports.validateAndBuildLogsConfiguration = validateAndBuildLogsConfiguration;
9
+
10
+ var _browserCore = require("@cloudcare/browser-core");
11
+
12
+ var _buildEnv = require("../boot/buildEnv");
13
+
14
+ /**
15
+ * arbitrary value, byte precision not needed
16
+ */
17
+ var DEFAULT_REQUEST_ERROR_RESPONSE_LENGTH_LIMIT = 32 * _browserCore.ONE_KIBI_BYTE;
18
+ exports.DEFAULT_REQUEST_ERROR_RESPONSE_LENGTH_LIMIT = DEFAULT_REQUEST_ERROR_RESPONSE_LENGTH_LIMIT;
19
+
20
+ function validateAndBuildLogsConfiguration(initConfiguration) {
21
+ var baseConfiguration = (0, _browserCore.validateAndBuildConfiguration)(initConfiguration);
22
+ var forwardConsoleLogs = validateAndBuildForwardOption(initConfiguration.forwardConsoleLogs, (0, _browserCore.values)(_browserCore.ConsoleApiName), 'Forward Console Logs');
23
+ var forwardReports = validateAndBuildForwardOption(initConfiguration.forwardReports, (0, _browserCore.values)(_browserCore.RawReportType), 'Forward Reports');
24
+
25
+ if (!baseConfiguration || !forwardConsoleLogs || !forwardReports) {
26
+ return;
27
+ }
28
+
29
+ if (initConfiguration.forwardErrorsToLogs && !(0, _browserCore.includes)(forwardConsoleLogs, _browserCore.ConsoleApiName.error)) {
30
+ forwardConsoleLogs.push(_browserCore.ConsoleApiName.error);
31
+ }
32
+
33
+ return (0, _browserCore.assign)({
34
+ forwardErrorsToLogs: initConfiguration.forwardErrorsToLogs !== false,
35
+ forwardConsoleLogs: forwardConsoleLogs,
36
+ forwardReports: forwardReports,
37
+ requestErrorResponseLengthLimit: DEFAULT_REQUEST_ERROR_RESPONSE_LENGTH_LIMIT
38
+ }, baseConfiguration, _buildEnv.buildEnv);
39
+ }
40
+
41
+ function validateAndBuildForwardOption(option, allowedValues, label) {
42
+ if (option === undefined) {
43
+ return [];
44
+ }
45
+
46
+ if (!(option === 'all' || (0, _browserCore.isArray)(option) && (0, _browserCore.every)(option, function (api) {
47
+ return (0, _browserCore.includes)(allowedValues, api);
48
+ }))) {
49
+ _browserCore.display.error(label + ' should be "all" or an array with allowed values "' + allowedValues.join('", "') + '"');
50
+
51
+ return;
52
+ }
53
+
54
+ return option === 'all' ? allowedValues : (0, _browserCore.unique)(option);
55
+ }