scout-error 0.2.7 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/node.cjs +1 -1
- package/dist/node.js +1 -1
- package/dist/react.cjs +1 -1
- package/dist/react.js +1 -1
- package/dist/scout.iife.js +1 -2
- package/dist/vue.cjs +1 -1
- package/dist/vue.js +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var h=Object.defineProperty,V=Object.defineProperties,q=Object.getOwnPropertyDescriptor,z=Object.getOwnPropertyDescriptors,J=Object.getOwnPropertyNames,T=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;var x=(e,r,t)=>r in e?h(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,l=(e,r)=>{for(var t in r||(r={}))U.call(r,t)&&x(e,t,r[t]);if(T)for(var t of T(r))G.call(r,t)&&x(e,t,r[t]);return e},P=(e,r)=>V(e,z(r));var K=(e,r)=>{for(var t in r)h(e,t,{get:r[t],enumerable:!0})},Z=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of J(r))!U.call(e,a)&&a!==t&&h(e,a,{get:()=>r[a],enumerable:!(s=q(r,a))||s.enumerable});return e};var Q=e=>Z(h({},"__esModule",{value:!0}),e);var S=(e,r,t)=>new Promise((s,a)=>{var n=c=>{try{u(t.next(c))}catch(f){a(f)}},o=c=>{try{u(t.throw(c))}catch(f){a(f)}},u=c=>c.done?s(c.value):Promise.resolve(c.value).then(n,o);u((t=t.apply(e,r)).next())});var ce={};K(ce,{addBreadcrumb:()=>ae,captureError:()=>H,init:()=>X,setContext:()=>B,setTag:()=>W,setUser:()=>F});module.exports=Q(ce);var Y={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},Y),$,p={environment:typeof window!="undefined"&&(($=window.location)==null?void 0:$.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.
|
|
1
|
+
var h=Object.defineProperty,V=Object.defineProperties,q=Object.getOwnPropertyDescriptor,z=Object.getOwnPropertyDescriptors,J=Object.getOwnPropertyNames,T=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;var x=(e,r,t)=>r in e?h(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,l=(e,r)=>{for(var t in r||(r={}))U.call(r,t)&&x(e,t,r[t]);if(T)for(var t of T(r))G.call(r,t)&&x(e,t,r[t]);return e},P=(e,r)=>V(e,z(r));var K=(e,r)=>{for(var t in r)h(e,t,{get:r[t],enumerable:!0})},Z=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of J(r))!U.call(e,a)&&a!==t&&h(e,a,{get:()=>r[a],enumerable:!(s=q(r,a))||s.enumerable});return e};var Q=e=>Z(h({},"__esModule",{value:!0}),e);var S=(e,r,t)=>new Promise((s,a)=>{var n=c=>{try{u(t.next(c))}catch(f){a(f)}},o=c=>{try{u(t.throw(c))}catch(f){a(f)}},u=c=>c.done?s(c.value):Promise.resolve(c.value).then(n,o);u((t=t.apply(e,r)).next())});var ce={};K(ce,{addBreadcrumb:()=>ae,captureError:()=>H,init:()=>X,setContext:()=>B,setTag:()=>W,setUser:()=>F});module.exports=Q(ce);var Y={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},Y),$,p={environment:typeof window!="undefined"&&(($=window.location)==null?void 0:$.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.8",project:null,release:null,version:null,app:null},M={clicks:0,scrolls:0},R=null,D=!1,k=null,w={},_=[],ee=30;var v=console.warn;var A=console.log;function C(e){return`${e}_${Math.random().toString(36).substr(2,9)}`}function ne(){let e=localStorage.getItem("__scoutUserId")||(localStorage.setItem("__scoutUserId",C("user")),localStorage.getItem("__scoutUserId")),r=sessionStorage.getItem("__scoutSessionId")||(sessionStorage.setItem("__scoutSessionId",C("session")),sessionStorage.getItem("__scoutSessionId"));return R=R||C("pageload"),{pageloadId:R,userId:e,sessionId:r}}function re(){var t,s,a;if((s=(t=window._uaParserResult)==null?void 0:t.browser)!=null&&s.name)return window._uaParserResult.browser.name;let e=navigator.userAgent;return((a=[{p:/Chrome.*Mobile/,n:"Chrome Mobile"},{p:/Chrome/,n:"Chrome"},{p:/Firefox.*Mobile/,n:"Firefox Mobile"},{p:/Firefox/,n:"Firefox"},{p:/Safari.*Mobile/,n:"Safari Mobile"},{p:/Safari/,n:"Safari"},{p:/MSIE|Trident/,n:"Internet Explorer"},{p:/Edge/,n:"Edge"}].find(n=>e.match(n.p)))==null?void 0:a.n)||"Unknown"}function te(){var t,s,a;if((s=(t=window._uaParserResult)==null?void 0:t.os)!=null&&s.name)return window._uaParserResult.os.name;let e=navigator.userAgent;return((a=[{p:/Win/,n:"Windows"},{p:/Mac/,n:"Mac OS"},{p:/X11|Linux/,n:"Linux"},{p:/Android/,n:"Android"},{p:/iPhone|iPad/,n:"iOS"}].find(n=>e.match(n.p)))==null?void 0:a.n)||"Unknown"}function oe(){var r,t,s,a,n,o,u,c,f,d;let e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return{connectionType:e?e.effectiveType:"unknown",userAgent:navigator.userAgent,width:window.innerWidth,height:window.innerHeight,screenWidth:screen.width,screenHeight:screen.height,errorTimestamp:Date.now(),timeLocale:Intl.DateTimeFormat().resolvedOptions().timeZone,browserLocale:navigator.language||navigator.userLanguage,sessionTime:Math.round(performance.now()/1e3),deviceMemory:navigator.deviceMemory||"unknown",timezoneOffset:new Date().getTimezoneOffset(),cookiesEnabled:navigator.cookieEnabled,url:window.location.href,host:window.location.host,referrer:document.referrer,browser:re(),browserVersion:((t=(r=window._uaParserResult)==null?void 0:r.browser)==null?void 0:t.version)||null,os:te(),osVersion:((a=(s=window._uaParserResult)==null?void 0:s.os)==null?void 0:a.version)||null,deviceType:((o=(n=window._uaParserResult)==null?void 0:n.device)==null?void 0:o.type)||null,deviceModel:((c=(u=window._uaParserResult)==null?void 0:u.device)==null?void 0:c.model)||null,deviceVendor:((d=(f=window._uaParserResult)==null?void 0:f.device)==null?void 0:d.vendor)||null,loadTime:Math.max(0,performance.timing.loadEventEnd-performance.timing.navigationStart),userClicks:M.clicks,userScrolls:M.scrolls}}function y(e){return!i.ignoreErrors||!Array.isArray(i.ignoreErrors)?!1:i.ignoreErrors.some(r=>typeof r=="string"?e.includes(r):r instanceof RegExp?r.test(e):!1)}function N(e,r){let t=new AbortController,s=setTimeout(()=>t.abort(),5e3),a={"Content-Type":"application/json"};return i.token&&(a["X-Ingest-Token"]=i.token),fetch(e,{method:"POST",headers:a,body:JSON.stringify(r),signal:t.signal}).then(n=>(clearTimeout(s),n)).catch(()=>{clearTimeout(s)})}function E(e){let r=(e[0]||"")+"",t=[...e];return r.replace(/%[sdj]/g,s=>{let a=t.shift();return s==="%s"?String(a):s==="%d"?Number(a):s==="%j"?JSON.stringify(a):s})}function O(e,r){let t=document.createElement("script");t.src=e,t.async=!0,r&&(t.onload=r),document.head.appendChild(t)}function se(e,r,t){return S(this,null,function*(){var s;try{let a=yield fetch(e);if(!a.ok)return null;let n=yield a.text(),o=n.match(/\/\/# sourceMappingURL=data:application\/json;base64,([^\s]+)/),u=n.match(/\/\/# sourceMappingURL=(?!data:)([^\s]+)/),c;if(o)c=JSON.parse(atob(o[1]));else if(u){let j=new URL(u[1],e).href,I=yield fetch(j);if(!I.ok)return null;c=yield I.json()}else return null;if(!((s=window.sourceMap)!=null&&s.SourceMapConsumer))return null;let d=new window.sourceMap.SourceMapConsumer(c).originalPositionFor({line:r,column:t});if(!d.source)return null;let L=c.sources.indexOf(d.source),b=null;return c.sourcesContent&&c.sourcesContent[L]&&(b=c.sourcesContent[L]),{originalSource:d.source,originalLine:d.line,originalColumn:d.column,originalName:d.name,snippet:b}}catch(a){return null}})}function g(e){_.push(l({timestamp:Date.now()},e)),_.length>ee&&_.shift()}function m(e){return S(this,null,function*(){let r=i.browserDetails?oe():{},t=Object.assign(e,r,p,ne());if(k&&(t.user=k),Object.keys(w).length&&(t.context=l({},w)),t.breadcrumbs=_.slice(),i.sampleRate&&Math.random()<1-parseFloat(i.sampleRate)){i.debug&&A("[Scout] Suppressed by sampling");return}if(i.attachStacktrace||(e.errorTrace=null),e.errorTrace)try{let s=e.errorTrace.split(`
|
|
2
2
|
`),a=[s[0]];for(let n=1;n<s.length;n++)!s[n].includes("/scout")&&!s[n].includes("scout.js")&&!s[n].includes("scout-error")&&a.push(s[n]);a.length>1&&(e.errorTrace=a.join(`
|
|
3
3
|
`))}catch(s){}if((e.errorTrace||e.stack)&&!e.source)try{let s=e.errorTrace||e.stack,a=s?s.split(`
|
|
4
4
|
`):[];for(let n=1;n<a.length;n++){let o=a[n].trim().match(/(http.*?):(\d+):(\d+)/);if(o){e.source=o[1],e.lineno=parseInt(o[2],10),e.colno=parseInt(o[3],10);break}}}catch(s){}if(i.debug&&A("[Scout] Sending:",t),i.endpoint&&N(i.endpoint,t),i.handleSourceMaps&&e.source&&e.lineno)try{let s=yield se(e.source,e.lineno,e.colno||0);if(s){let a=P(l({},t),{originalSource:s.originalSource,originalLine:s.originalLine,originalColumn:s.originalColumn,originalName:s.originalName,highlightLineNumber:s.originalLine});s.snippet&&(a.snippet=s.snippet),i.endpoint&&N(i.endpoint,a)}}catch(s){}})}function H(e){i.enabled&&m(e)}function F(e){k=e}function B(e){w=l(l({},w),e)}function W(e,r){w[e]=r}function ae(e){g(e)}function ie(){if(i.trackUserInteractions){document.addEventListener("click",o=>{M.clicks++;let u=o.target,c=u.tagName?u.tagName.toLowerCase():"",f=(u.textContent||"").trim().slice(0,50);g({category:"click",message:c+(f?": "+f:"")})});let n=0;window.addEventListener("scroll",()=>{let o=Date.now();o-n>100&&(M.scrolls++,n=o)})}let e=history.pushState;history.pushState=function(){e.apply(this,arguments),g({category:"navigation",message:window.location.href})},window.addEventListener("popstate",()=>{g({category:"navigation",message:window.location.href})});let r=window.fetch;window.fetch=function(n,o){let u=typeof n=="string"?n:(n==null?void 0:n.url)||"",c=(o==null?void 0:o.method)||"GET",f=Date.now();return r.apply(this,arguments).then(d=>(g({category:"fetch",message:`${c} ${u}`,data:{status:d.status,duration:Date.now()-f}}),d)).catch(d=>{throw g({category:"fetch",message:`${c} ${u}`,data:{error:d.message,duration:Date.now()-f}}),d})};let t=XMLHttpRequest.prototype.open,s=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.open=function(n,o){return this._scoutMethod=n,this._scoutUrl=o,t.apply(this,arguments)},XMLHttpRequest.prototype.send=function(){let n=this,o=Date.now();return n.addEventListener("loadend",()=>{g({category:"xhr",message:`${n._scoutMethod||"GET"} ${n._scoutUrl||""}`,data:{status:n.status,duration:Date.now()-o}})}),s.apply(this,arguments)},i.addErrorEventListener&&window.addEventListener("error",n=>S(this,null,function*(){if(i.enabled){try{let o=n.error?n.error.stack:"No stack trace available";if(y(n.message))return;i.sendErrors&&m({type:"window.onerror",message:n.message,source:n.filename,lineno:n.lineno,colno:n.colno,errorTrace:o})}catch(o){v("[Scout] Error handler failure:",o)}i.selfHealingErrors&&n.preventDefault()}})),i.addUnhandledRejectionEventListener&&window.addEventListener("unhandledrejection",n=>{if(i.enabled){try{let o=n.reason,u=(o==null?void 0:o.stack)||"No stack trace available";if(y((o==null?void 0:o.message)||""))return;i.sendErrors&&m({type:"Unhandled Promise Rejection",message:(o==null?void 0:o.message)||"Unhandled Promise Rejection",reason:n.reason,errorTrace:u})}catch(o){v("[Scout] Rejection handler failure:",o)}i.selfHealingErrors&&n.preventDefault()}}),i.overrideConsoleError&&(console.error=function(...n){if(i.enabled)try{let o=new Error().stack;if(y(E(n)))return;i.sendErrors&&m({type:"console.error",errorTrace:o,args:E(n)})}catch(o){v("[Scout] console.error override failure:",o)}}),i.overrideConsoleWarn&&(console.warn=function(...n){if(i.enabled)try{let o=new Error().stack;if(y(E(n)))return;i.sendErrors&&m({type:"console.warn",errorTrace:o,args:E(n)})}catch(o){v("[Scout] console.warn override failure:",o)}});let a=i.endpoint?new URL(i.endpoint).origin:"";i.loadUAParser&&i.browserDetails&&a&&O(`${a}/vendor/ua-parser.min.js`,()=>{typeof UAParser!="undefined"&&(window._uaParserResult=new UAParser().getResult())}),i.handleSourceMaps&&a&&O(`${a}/vendor/source-map.min.js`)}function X(e={},r={}){if(e.user&&(k=e.user,delete e.user),D){p=l(l({},p),e),i=l(l({},i),r);return}p=l(l({},p),e),i=l(l({},i),r),D=!0,typeof window!="undefined"&&ie()}typeof window!="undefined"&&(window.Scout={init:X,setScope:e=>{p=l(l({},p),e)},setConfig:e=>{i=l(l({},i),e)},setUser:F,setContext:B,setTag:W,addBreadcrumb:g,error:H});
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var $=Object.defineProperty,H=Object.defineProperties;var F=Object.getOwnPropertyDescriptors;var I=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable;var T=(e,s,t)=>s in e?$(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,l=(e,s)=>{for(var t in s||(s={}))B.call(s,t)&&T(e,t,s[t]);if(I)for(var t of I(s))W.call(s,t)&&T(e,t,s[t]);return e},x=(e,s)=>H(e,F(s));var h=(e,s,t)=>new Promise((o,i)=>{var n=c=>{try{u(t.next(c))}catch(f){i(f)}},r=c=>{try{u(t.throw(c))}catch(f){i(f)}},u=c=>c.done?o(c.value):Promise.resolve(c.value).then(n,r);u((t=t.apply(e,s)).next())});var X={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},a=l({},X),N,p={environment:typeof window!="undefined"&&((N=window.location)==null?void 0:N.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.
|
|
1
|
+
var $=Object.defineProperty,H=Object.defineProperties;var F=Object.getOwnPropertyDescriptors;var I=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable;var T=(e,s,t)=>s in e?$(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,l=(e,s)=>{for(var t in s||(s={}))B.call(s,t)&&T(e,t,s[t]);if(I)for(var t of I(s))W.call(s,t)&&T(e,t,s[t]);return e},x=(e,s)=>H(e,F(s));var h=(e,s,t)=>new Promise((o,i)=>{var n=c=>{try{u(t.next(c))}catch(f){i(f)}},r=c=>{try{u(t.throw(c))}catch(f){i(f)}},u=c=>c.done?o(c.value):Promise.resolve(c.value).then(n,r);u((t=t.apply(e,s)).next())});var X={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},a=l({},X),N,p={environment:typeof window!="undefined"&&((N=window.location)==null?void 0:N.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.8",project:null,release:null,version:null,app:null},_={clicks:0,scrolls:0},k=null,U=!1,M=null,w={},E=[],j=30;var S=console.warn;var P=console.log;function R(e){return`${e}_${Math.random().toString(36).substr(2,9)}`}function V(){let e=localStorage.getItem("__scoutUserId")||(localStorage.setItem("__scoutUserId",R("user")),localStorage.getItem("__scoutUserId")),s=sessionStorage.getItem("__scoutSessionId")||(sessionStorage.setItem("__scoutSessionId",R("session")),sessionStorage.getItem("__scoutSessionId"));return k=k||R("pageload"),{pageloadId:k,userId:e,sessionId:s}}function q(){var t,o,i;if((o=(t=window._uaParserResult)==null?void 0:t.browser)!=null&&o.name)return window._uaParserResult.browser.name;let e=navigator.userAgent;return((i=[{p:/Chrome.*Mobile/,n:"Chrome Mobile"},{p:/Chrome/,n:"Chrome"},{p:/Firefox.*Mobile/,n:"Firefox Mobile"},{p:/Firefox/,n:"Firefox"},{p:/Safari.*Mobile/,n:"Safari Mobile"},{p:/Safari/,n:"Safari"},{p:/MSIE|Trident/,n:"Internet Explorer"},{p:/Edge/,n:"Edge"}].find(n=>e.match(n.p)))==null?void 0:i.n)||"Unknown"}function z(){var t,o,i;if((o=(t=window._uaParserResult)==null?void 0:t.os)!=null&&o.name)return window._uaParserResult.os.name;let e=navigator.userAgent;return((i=[{p:/Win/,n:"Windows"},{p:/Mac/,n:"Mac OS"},{p:/X11|Linux/,n:"Linux"},{p:/Android/,n:"Android"},{p:/iPhone|iPad/,n:"iOS"}].find(n=>e.match(n.p)))==null?void 0:i.n)||"Unknown"}function J(){var s,t,o,i,n,r,u,c,f,d;let e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return{connectionType:e?e.effectiveType:"unknown",userAgent:navigator.userAgent,width:window.innerWidth,height:window.innerHeight,screenWidth:screen.width,screenHeight:screen.height,errorTimestamp:Date.now(),timeLocale:Intl.DateTimeFormat().resolvedOptions().timeZone,browserLocale:navigator.language||navigator.userLanguage,sessionTime:Math.round(performance.now()/1e3),deviceMemory:navigator.deviceMemory||"unknown",timezoneOffset:new Date().getTimezoneOffset(),cookiesEnabled:navigator.cookieEnabled,url:window.location.href,host:window.location.host,referrer:document.referrer,browser:q(),browserVersion:((t=(s=window._uaParserResult)==null?void 0:s.browser)==null?void 0:t.version)||null,os:z(),osVersion:((i=(o=window._uaParserResult)==null?void 0:o.os)==null?void 0:i.version)||null,deviceType:((r=(n=window._uaParserResult)==null?void 0:n.device)==null?void 0:r.type)||null,deviceModel:((c=(u=window._uaParserResult)==null?void 0:u.device)==null?void 0:c.model)||null,deviceVendor:((d=(f=window._uaParserResult)==null?void 0:f.device)==null?void 0:d.vendor)||null,loadTime:Math.max(0,performance.timing.loadEventEnd-performance.timing.navigationStart),userClicks:_.clicks,userScrolls:_.scrolls}}function v(e){return!a.ignoreErrors||!Array.isArray(a.ignoreErrors)?!1:a.ignoreErrors.some(s=>typeof s=="string"?e.includes(s):s instanceof RegExp?s.test(e):!1)}function D(e,s){let t=new AbortController,o=setTimeout(()=>t.abort(),5e3),i={"Content-Type":"application/json"};return a.token&&(i["X-Ingest-Token"]=a.token),fetch(e,{method:"POST",headers:i,body:JSON.stringify(s),signal:t.signal}).then(n=>(clearTimeout(o),n)).catch(()=>{clearTimeout(o)})}function y(e){let s=(e[0]||"")+"",t=[...e];return s.replace(/%[sdj]/g,o=>{let i=t.shift();return o==="%s"?String(i):o==="%d"?Number(i):o==="%j"?JSON.stringify(i):o})}function A(e,s){let t=document.createElement("script");t.src=e,t.async=!0,s&&(t.onload=s),document.head.appendChild(t)}function G(e,s,t){return h(this,null,function*(){var o;try{let i=yield fetch(e);if(!i.ok)return null;let n=yield i.text(),r=n.match(/\/\/# sourceMappingURL=data:application\/json;base64,([^\s]+)/),u=n.match(/\/\/# sourceMappingURL=(?!data:)([^\s]+)/),c;if(r)c=JSON.parse(atob(r[1]));else if(u){let O=new URL(u[1],e).href,b=yield fetch(O);if(!b.ok)return null;c=yield b.json()}else return null;if(!((o=window.sourceMap)!=null&&o.SourceMapConsumer))return null;let d=new window.sourceMap.SourceMapConsumer(c).originalPositionFor({line:s,column:t});if(!d.source)return null;let C=c.sources.indexOf(d.source),L=null;return c.sourcesContent&&c.sourcesContent[C]&&(L=c.sourcesContent[C]),{originalSource:d.source,originalLine:d.line,originalColumn:d.column,originalName:d.name,snippet:L}}catch(i){return null}})}function g(e){E.push(l({timestamp:Date.now()},e)),E.length>j&&E.shift()}function m(e){return h(this,null,function*(){let s=a.browserDetails?J():{},t=Object.assign(e,s,p,V());if(M&&(t.user=M),Object.keys(w).length&&(t.context=l({},w)),t.breadcrumbs=E.slice(),a.sampleRate&&Math.random()<1-parseFloat(a.sampleRate)){a.debug&&P("[Scout] Suppressed by sampling");return}if(a.attachStacktrace||(e.errorTrace=null),e.errorTrace)try{let o=e.errorTrace.split(`
|
|
2
2
|
`),i=[o[0]];for(let n=1;n<o.length;n++)!o[n].includes("/scout")&&!o[n].includes("scout.js")&&!o[n].includes("scout-error")&&i.push(o[n]);i.length>1&&(e.errorTrace=i.join(`
|
|
3
3
|
`))}catch(o){}if((e.errorTrace||e.stack)&&!e.source)try{let o=e.errorTrace||e.stack,i=o?o.split(`
|
|
4
4
|
`):[];for(let n=1;n<i.length;n++){let r=i[n].trim().match(/(http.*?):(\d+):(\d+)/);if(r){e.source=r[1],e.lineno=parseInt(r[2],10),e.colno=parseInt(r[3],10);break}}}catch(o){}if(a.debug&&P("[Scout] Sending:",t),a.endpoint&&D(a.endpoint,t),a.handleSourceMaps&&e.source&&e.lineno)try{let o=yield G(e.source,e.lineno,e.colno||0);if(o){let i=x(l({},t),{originalSource:o.originalSource,originalLine:o.originalLine,originalColumn:o.originalColumn,originalName:o.originalName,highlightLineNumber:o.originalLine});o.snippet&&(i.snippet=o.snippet),a.endpoint&&D(a.endpoint,i)}}catch(o){}})}function K(e){a.enabled&&m(e)}function Z(e){M=e}function Q(e){w=l(l({},w),e)}function Y(e,s){w[e]=s}function te(e){g(e)}function ee(){if(a.trackUserInteractions){document.addEventListener("click",r=>{_.clicks++;let u=r.target,c=u.tagName?u.tagName.toLowerCase():"",f=(u.textContent||"").trim().slice(0,50);g({category:"click",message:c+(f?": "+f:"")})});let n=0;window.addEventListener("scroll",()=>{let r=Date.now();r-n>100&&(_.scrolls++,n=r)})}let e=history.pushState;history.pushState=function(){e.apply(this,arguments),g({category:"navigation",message:window.location.href})},window.addEventListener("popstate",()=>{g({category:"navigation",message:window.location.href})});let s=window.fetch;window.fetch=function(n,r){let u=typeof n=="string"?n:(n==null?void 0:n.url)||"",c=(r==null?void 0:r.method)||"GET",f=Date.now();return s.apply(this,arguments).then(d=>(g({category:"fetch",message:`${c} ${u}`,data:{status:d.status,duration:Date.now()-f}}),d)).catch(d=>{throw g({category:"fetch",message:`${c} ${u}`,data:{error:d.message,duration:Date.now()-f}}),d})};let t=XMLHttpRequest.prototype.open,o=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.open=function(n,r){return this._scoutMethod=n,this._scoutUrl=r,t.apply(this,arguments)},XMLHttpRequest.prototype.send=function(){let n=this,r=Date.now();return n.addEventListener("loadend",()=>{g({category:"xhr",message:`${n._scoutMethod||"GET"} ${n._scoutUrl||""}`,data:{status:n.status,duration:Date.now()-r}})}),o.apply(this,arguments)},a.addErrorEventListener&&window.addEventListener("error",n=>h(this,null,function*(){if(a.enabled){try{let r=n.error?n.error.stack:"No stack trace available";if(v(n.message))return;a.sendErrors&&m({type:"window.onerror",message:n.message,source:n.filename,lineno:n.lineno,colno:n.colno,errorTrace:r})}catch(r){S("[Scout] Error handler failure:",r)}a.selfHealingErrors&&n.preventDefault()}})),a.addUnhandledRejectionEventListener&&window.addEventListener("unhandledrejection",n=>{if(a.enabled){try{let r=n.reason,u=(r==null?void 0:r.stack)||"No stack trace available";if(v((r==null?void 0:r.message)||""))return;a.sendErrors&&m({type:"Unhandled Promise Rejection",message:(r==null?void 0:r.message)||"Unhandled Promise Rejection",reason:n.reason,errorTrace:u})}catch(r){S("[Scout] Rejection handler failure:",r)}a.selfHealingErrors&&n.preventDefault()}}),a.overrideConsoleError&&(console.error=function(...n){if(a.enabled)try{let r=new Error().stack;if(v(y(n)))return;a.sendErrors&&m({type:"console.error",errorTrace:r,args:y(n)})}catch(r){S("[Scout] console.error override failure:",r)}}),a.overrideConsoleWarn&&(console.warn=function(...n){if(a.enabled)try{let r=new Error().stack;if(v(y(n)))return;a.sendErrors&&m({type:"console.warn",errorTrace:r,args:y(n)})}catch(r){S("[Scout] console.warn override failure:",r)}});let i=a.endpoint?new URL(a.endpoint).origin:"";a.loadUAParser&&a.browserDetails&&i&&A(`${i}/vendor/ua-parser.min.js`,()=>{typeof UAParser!="undefined"&&(window._uaParserResult=new UAParser().getResult())}),a.handleSourceMaps&&i&&A(`${i}/vendor/source-map.min.js`)}function ne(e={},s={}){if(e.user&&(M=e.user,delete e.user),U){p=l(l({},p),e),a=l(l({},a),s);return}p=l(l({},p),e),a=l(l({},a),s),U=!0,typeof window!="undefined"&&ee()}typeof window!="undefined"&&(window.Scout={init:ne,setScope:e=>{p=l(l({},p),e)},setConfig:e=>{a=l(l({},a),e)},setUser:Z,setContext:Q,setTag:Y,addBreadcrumb:g,error:K});export{te as addBreadcrumb,K as captureError,ne as init,Q as setContext,Y as setTag,Z as setUser};
|
package/dist/node.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var p=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var f=(e,t)=>{for(var s in t)p(e,s,{get:t[s],enumerable:!0})},k=(e,t,s,u)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of m(t))!g.call(e,r)&&r!==s&&p(e,r,{get:()=>t[r],enumerable:!(u=l(t,r))||u.enumerable});return e};var h=e=>k(p({},"__esModule",{value:!0}),e);var j={};f(j,{addBreadcrumb:()=>b,captureError:()=>O,errorHandlingMiddleware:()=>D,initTracker:()=>x,setContext:()=>T,setTag:()=>y,setUser:()=>E});module.exports=h(j);var n={debug:!1,endpoint:"",token:null,sendErrors:!0,captureUserDetails:!1,captureRequestDetails:!0,captureStackTrace:!0},a={environment:process.env.NODE_ENV||"production",project:null,release:null,version:null,sdk:"node",sdkVersion:"0.2.
|
|
1
|
+
var p=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var f=(e,t)=>{for(var s in t)p(e,s,{get:t[s],enumerable:!0})},k=(e,t,s,u)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of m(t))!g.call(e,r)&&r!==s&&p(e,r,{get:()=>t[r],enumerable:!(u=l(t,r))||u.enumerable});return e};var h=e=>k(p({},"__esModule",{value:!0}),e);var j={};f(j,{addBreadcrumb:()=>b,captureError:()=>O,errorHandlingMiddleware:()=>D,initTracker:()=>x,setContext:()=>T,setTag:()=>y,setUser:()=>E});module.exports=h(j);var n={debug:!1,endpoint:"",token:null,sendErrors:!0,captureUserDetails:!1,captureRequestDetails:!0,captureStackTrace:!0},a={environment:process.env.NODE_ENV||"production",project:null,release:null,version:null,sdk:"node",sdkVersion:"0.2.8",nodeVersion:process.version,platform:process.platform,arch:process.arch},d=null,o={},c=[],S=30;function i(e){if(n.debug&&console.error("[Scout]:",e),d&&(e.user=d),Object.keys(o).length&&(e.context={...o}),e.breadcrumbs=c.slice(),n.endpoint&&n.sendErrors){let t={"Content-Type":"application/json"};n.token&&(t["X-Ingest-Token"]=n.token),fetch(n.endpoint,{method:"POST",headers:t,body:JSON.stringify(e)}).catch(s=>{console.error("[Scout] Failed to send error:",s.message)})}}function x(e={},t={}){a={...a,...e},n={...n,...t},process.on("uncaughtException",s=>{i({type:"uncaughtException",message:s.message,stack:s.stack,errorTrace:s.stack,timestamp:new Date().toISOString(),...a})}),process.on("unhandledRejection",s=>{i({type:"unhandledRejection",message:s?.message||"Unhandled Promise Rejection",stack:s?.stack||"No stack trace",errorTrace:s?.stack||"No stack trace",timestamp:new Date().toISOString(),...a})})}function D(e,t,s,u){let r={type:"expressError",message:e.message,stack:n.captureStackTrace?e.stack:void 0,errorTrace:n.captureStackTrace?e.stack:void 0,path:t.originalUrl,method:t.method,params:t.params,query:t.query,headers:n.captureRequestDetails?t.headers:void 0,timestamp:new Date().toISOString(),...a};n.captureUserDetails&&t.user&&(r.user={id:t.user.id||t.user._id,email:t.user.email,name:t.user.name||t.user.username}),i(r),s.status(500).json({error:"Internal Server Error"})}function E(e){d=e}function T(e){o={...o,...e}}function y(e,t){o[e]=t}function b(e){c.push({timestamp:Date.now(),...e}),c.length>S&&c.shift()}function O(e,t={}){let s={type:"manual",message:e?.message||String(e),stack:e?.stack,errorTrace:e?.stack,timestamp:new Date().toISOString(),...a};Object.keys(t).length&&(s.context={...o,...t}),i(s)}0&&(module.exports={addBreadcrumb,captureError,errorHandlingMiddleware,initTracker,setContext,setTag,setUser});
|
|
2
2
|
//# sourceMappingURL=node.cjs.map
|
package/dist/node.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var n={debug:!1,endpoint:"",token:null,sendErrors:!0,captureUserDetails:!1,captureRequestDetails:!0,captureStackTrace:!0},r={environment:process.env.NODE_ENV||"production",project:null,release:null,version:null,sdk:"node",sdkVersion:"0.2.
|
|
1
|
+
var n={debug:!1,endpoint:"",token:null,sendErrors:!0,captureUserDetails:!1,captureRequestDetails:!0,captureStackTrace:!0},r={environment:process.env.NODE_ENV||"production",project:null,release:null,version:null,sdk:"node",sdkVersion:"0.2.8",nodeVersion:process.version,platform:process.platform,arch:process.arch},i=null,a={},o=[],p=30;function c(e){if(n.debug&&console.error("[Scout]:",e),i&&(e.user=i),Object.keys(a).length&&(e.context={...a}),e.breadcrumbs=o.slice(),n.endpoint&&n.sendErrors){let t={"Content-Type":"application/json"};n.token&&(t["X-Ingest-Token"]=n.token),fetch(n.endpoint,{method:"POST",headers:t,body:JSON.stringify(e)}).catch(s=>{console.error("[Scout] Failed to send error:",s.message)})}}function l(e={},t={}){r={...r,...e},n={...n,...t},process.on("uncaughtException",s=>{c({type:"uncaughtException",message:s.message,stack:s.stack,errorTrace:s.stack,timestamp:new Date().toISOString(),...r})}),process.on("unhandledRejection",s=>{c({type:"unhandledRejection",message:s?.message||"Unhandled Promise Rejection",stack:s?.stack||"No stack trace",errorTrace:s?.stack||"No stack trace",timestamp:new Date().toISOString(),...r})})}function m(e,t,s,d){let u={type:"expressError",message:e.message,stack:n.captureStackTrace?e.stack:void 0,errorTrace:n.captureStackTrace?e.stack:void 0,path:t.originalUrl,method:t.method,params:t.params,query:t.query,headers:n.captureRequestDetails?t.headers:void 0,timestamp:new Date().toISOString(),...r};n.captureUserDetails&&t.user&&(u.user={id:t.user.id||t.user._id,email:t.user.email,name:t.user.name||t.user.username}),c(u),s.status(500).json({error:"Internal Server Error"})}function g(e){i=e}function f(e){a={...a,...e}}function k(e,t){a[e]=t}function h(e){o.push({timestamp:Date.now(),...e}),o.length>p&&o.shift()}function S(e,t={}){let s={type:"manual",message:e?.message||String(e),stack:e?.stack,errorTrace:e?.stack,timestamp:new Date().toISOString(),...r};Object.keys(t).length&&(s.context={...a,...t}),c(s)}export{h as addBreadcrumb,S as captureError,m as errorHandlingMiddleware,l as initTracker,f as setContext,k as setTag,g as setUser};
|
|
2
2
|
//# sourceMappingURL=node.js.map
|
package/dist/react.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var j=Object.create;var m=Object.defineProperty,V=Object.defineProperties,q=Object.getOwnPropertyDescriptor,z=Object.getOwnPropertyDescriptors,J=Object.getOwnPropertyNames,U=Object.getOwnPropertySymbols,G=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable;var D=(e,r,t)=>r in e?m(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,l=(e,r)=>{for(var t in r||(r={}))P.call(r,t)&&D(e,t,r[t]);if(U)for(var t of U(r))K.call(r,t)&&D(e,t,r[t]);return e},A=(e,r)=>V(e,z(r));var Z=(e,r)=>{for(var t in r)m(e,t,{get:r[t],enumerable:!0})},N=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of J(r))!P.call(e,a)&&a!==t&&m(e,a,{get:()=>r[a],enumerable:!(s=q(r,a))||s.enumerable});return e};var Q=(e,r,t)=>(t=e!=null?j(G(e)):{},N(r||!e||!e.__esModule?m(t,"default",{value:e,enumerable:!0}):t,e)),Y=e=>N(m({},"__esModule",{value:!0}),e);var S=(e,r,t)=>new Promise((s,a)=>{var n=c=>{try{u(t.next(c))}catch(f){a(f)}},o=c=>{try{u(t.throw(c))}catch(f){a(f)}},u=c=>c.done?s(c.value):Promise.resolve(c.value).then(n,o);u((t=t.apply(e,r)).next())});var fe={};Z(fe,{ScoutErrorBoundary:()=>L});module.exports=Y(fe);var X=Q(require("react"),1);var ee={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},ee),W,g={environment:typeof window!="undefined"&&((W=window.location)==null?void 0:W.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.
|
|
1
|
+
var j=Object.create;var m=Object.defineProperty,V=Object.defineProperties,q=Object.getOwnPropertyDescriptor,z=Object.getOwnPropertyDescriptors,J=Object.getOwnPropertyNames,U=Object.getOwnPropertySymbols,G=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable;var D=(e,r,t)=>r in e?m(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,l=(e,r)=>{for(var t in r||(r={}))P.call(r,t)&&D(e,t,r[t]);if(U)for(var t of U(r))K.call(r,t)&&D(e,t,r[t]);return e},A=(e,r)=>V(e,z(r));var Z=(e,r)=>{for(var t in r)m(e,t,{get:r[t],enumerable:!0})},N=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of J(r))!P.call(e,a)&&a!==t&&m(e,a,{get:()=>r[a],enumerable:!(s=q(r,a))||s.enumerable});return e};var Q=(e,r,t)=>(t=e!=null?j(G(e)):{},N(r||!e||!e.__esModule?m(t,"default",{value:e,enumerable:!0}):t,e)),Y=e=>N(m({},"__esModule",{value:!0}),e);var S=(e,r,t)=>new Promise((s,a)=>{var n=c=>{try{u(t.next(c))}catch(f){a(f)}},o=c=>{try{u(t.throw(c))}catch(f){a(f)}},u=c=>c.done?s(c.value):Promise.resolve(c.value).then(n,o);u((t=t.apply(e,r)).next())});var fe={};Z(fe,{ScoutErrorBoundary:()=>L});module.exports=Y(fe);var X=Q(require("react"),1);var ee={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},ee),W,g={environment:typeof window!="undefined"&&((W=window.location)==null?void 0:W.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.8",project:null,release:null,version:null,app:null},_={clicks:0,scrolls:0},C=null,O=!1,M=null,w={},k=[],re=30;var v=console.warn;var $=console.log;function R(e){return`${e}_${Math.random().toString(36).substr(2,9)}`}function ne(){let e=localStorage.getItem("__scoutUserId")||(localStorage.setItem("__scoutUserId",R("user")),localStorage.getItem("__scoutUserId")),r=sessionStorage.getItem("__scoutSessionId")||(sessionStorage.setItem("__scoutSessionId",R("session")),sessionStorage.getItem("__scoutSessionId"));return C=C||R("pageload"),{pageloadId:C,userId:e,sessionId:r}}function te(){var t,s,a;if((s=(t=window._uaParserResult)==null?void 0:t.browser)!=null&&s.name)return window._uaParserResult.browser.name;let e=navigator.userAgent;return((a=[{p:/Chrome.*Mobile/,n:"Chrome Mobile"},{p:/Chrome/,n:"Chrome"},{p:/Firefox.*Mobile/,n:"Firefox Mobile"},{p:/Firefox/,n:"Firefox"},{p:/Safari.*Mobile/,n:"Safari Mobile"},{p:/Safari/,n:"Safari"},{p:/MSIE|Trident/,n:"Internet Explorer"},{p:/Edge/,n:"Edge"}].find(n=>e.match(n.p)))==null?void 0:a.n)||"Unknown"}function oe(){var t,s,a;if((s=(t=window._uaParserResult)==null?void 0:t.os)!=null&&s.name)return window._uaParserResult.os.name;let e=navigator.userAgent;return((a=[{p:/Win/,n:"Windows"},{p:/Mac/,n:"Mac OS"},{p:/X11|Linux/,n:"Linux"},{p:/Android/,n:"Android"},{p:/iPhone|iPad/,n:"iOS"}].find(n=>e.match(n.p)))==null?void 0:a.n)||"Unknown"}function se(){var r,t,s,a,n,o,u,c,f,d;let e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return{connectionType:e?e.effectiveType:"unknown",userAgent:navigator.userAgent,width:window.innerWidth,height:window.innerHeight,screenWidth:screen.width,screenHeight:screen.height,errorTimestamp:Date.now(),timeLocale:Intl.DateTimeFormat().resolvedOptions().timeZone,browserLocale:navigator.language||navigator.userLanguage,sessionTime:Math.round(performance.now()/1e3),deviceMemory:navigator.deviceMemory||"unknown",timezoneOffset:new Date().getTimezoneOffset(),cookiesEnabled:navigator.cookieEnabled,url:window.location.href,host:window.location.host,referrer:document.referrer,browser:te(),browserVersion:((t=(r=window._uaParserResult)==null?void 0:r.browser)==null?void 0:t.version)||null,os:oe(),osVersion:((a=(s=window._uaParserResult)==null?void 0:s.os)==null?void 0:a.version)||null,deviceType:((o=(n=window._uaParserResult)==null?void 0:n.device)==null?void 0:o.type)||null,deviceModel:((c=(u=window._uaParserResult)==null?void 0:u.device)==null?void 0:c.model)||null,deviceVendor:((d=(f=window._uaParserResult)==null?void 0:f.device)==null?void 0:d.vendor)||null,loadTime:Math.max(0,performance.timing.loadEventEnd-performance.timing.navigationStart),userClicks:_.clicks,userScrolls:_.scrolls}}function y(e){return!i.ignoreErrors||!Array.isArray(i.ignoreErrors)?!1:i.ignoreErrors.some(r=>typeof r=="string"?e.includes(r):r instanceof RegExp?r.test(e):!1)}function F(e,r){let t=new AbortController,s=setTimeout(()=>t.abort(),5e3),a={"Content-Type":"application/json"};return i.token&&(a["X-Ingest-Token"]=i.token),fetch(e,{method:"POST",headers:a,body:JSON.stringify(r),signal:t.signal}).then(n=>(clearTimeout(s),n)).catch(()=>{clearTimeout(s)})}function E(e){let r=(e[0]||"")+"",t=[...e];return r.replace(/%[sdj]/g,s=>{let a=t.shift();return s==="%s"?String(a):s==="%d"?Number(a):s==="%j"?JSON.stringify(a):s})}function H(e,r){let t=document.createElement("script");t.src=e,t.async=!0,r&&(t.onload=r),document.head.appendChild(t)}function ae(e,r,t){return S(this,null,function*(){var s;try{let a=yield fetch(e);if(!a.ok)return null;let n=yield a.text(),o=n.match(/\/\/# sourceMappingURL=data:application\/json;base64,([^\s]+)/),u=n.match(/\/\/# sourceMappingURL=(?!data:)([^\s]+)/),c;if(o)c=JSON.parse(atob(o[1]));else if(u){let B=new URL(u[1],e).href,I=yield fetch(B);if(!I.ok)return null;c=yield I.json()}else return null;if(!((s=window.sourceMap)!=null&&s.SourceMapConsumer))return null;let d=new window.sourceMap.SourceMapConsumer(c).originalPositionFor({line:r,column:t});if(!d.source)return null;let T=c.sources.indexOf(d.source),x=null;return c.sourcesContent&&c.sourcesContent[T]&&(x=c.sourcesContent[T]),{originalSource:d.source,originalLine:d.line,originalColumn:d.column,originalName:d.name,snippet:x}}catch(a){return null}})}function p(e){k.push(l({timestamp:Date.now()},e)),k.length>re&&k.shift()}function h(e){return S(this,null,function*(){let r=i.browserDetails?se():{},t=Object.assign(e,r,g,ne());if(M&&(t.user=M),Object.keys(w).length&&(t.context=l({},w)),t.breadcrumbs=k.slice(),i.sampleRate&&Math.random()<1-parseFloat(i.sampleRate)){i.debug&&$("[Scout] Suppressed by sampling");return}if(i.attachStacktrace||(e.errorTrace=null),e.errorTrace)try{let s=e.errorTrace.split(`
|
|
2
2
|
`),a=[s[0]];for(let n=1;n<s.length;n++)!s[n].includes("/scout")&&!s[n].includes("scout.js")&&!s[n].includes("scout-error")&&a.push(s[n]);a.length>1&&(e.errorTrace=a.join(`
|
|
3
3
|
`))}catch(s){}if((e.errorTrace||e.stack)&&!e.source)try{let s=e.errorTrace||e.stack,a=s?s.split(`
|
|
4
4
|
`):[];for(let n=1;n<a.length;n++){let o=a[n].trim().match(/(http.*?):(\d+):(\d+)/);if(o){e.source=o[1],e.lineno=parseInt(o[2],10),e.colno=parseInt(o[3],10);break}}}catch(s){}if(i.debug&&$("[Scout] Sending:",t),i.endpoint&&F(i.endpoint,t),i.handleSourceMaps&&e.source&&e.lineno)try{let s=yield ae(e.source,e.lineno,e.colno||0);if(s){let a=A(l({},t),{originalSource:s.originalSource,originalLine:s.originalLine,originalColumn:s.originalColumn,originalName:s.originalName,highlightLineNumber:s.originalLine});s.snippet&&(a.snippet=s.snippet),i.endpoint&&F(i.endpoint,a)}}catch(s){}})}function b(e){i.enabled&&h(e)}function ie(e){M=e}function ce(e){w=l(l({},w),e)}function le(e,r){w[e]=r}function ue(){if(i.trackUserInteractions){document.addEventListener("click",o=>{_.clicks++;let u=o.target,c=u.tagName?u.tagName.toLowerCase():"",f=(u.textContent||"").trim().slice(0,50);p({category:"click",message:c+(f?": "+f:"")})});let n=0;window.addEventListener("scroll",()=>{let o=Date.now();o-n>100&&(_.scrolls++,n=o)})}let e=history.pushState;history.pushState=function(){e.apply(this,arguments),p({category:"navigation",message:window.location.href})},window.addEventListener("popstate",()=>{p({category:"navigation",message:window.location.href})});let r=window.fetch;window.fetch=function(n,o){let u=typeof n=="string"?n:(n==null?void 0:n.url)||"",c=(o==null?void 0:o.method)||"GET",f=Date.now();return r.apply(this,arguments).then(d=>(p({category:"fetch",message:`${c} ${u}`,data:{status:d.status,duration:Date.now()-f}}),d)).catch(d=>{throw p({category:"fetch",message:`${c} ${u}`,data:{error:d.message,duration:Date.now()-f}}),d})};let t=XMLHttpRequest.prototype.open,s=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.open=function(n,o){return this._scoutMethod=n,this._scoutUrl=o,t.apply(this,arguments)},XMLHttpRequest.prototype.send=function(){let n=this,o=Date.now();return n.addEventListener("loadend",()=>{p({category:"xhr",message:`${n._scoutMethod||"GET"} ${n._scoutUrl||""}`,data:{status:n.status,duration:Date.now()-o}})}),s.apply(this,arguments)},i.addErrorEventListener&&window.addEventListener("error",n=>S(this,null,function*(){if(i.enabled){try{let o=n.error?n.error.stack:"No stack trace available";if(y(n.message))return;i.sendErrors&&h({type:"window.onerror",message:n.message,source:n.filename,lineno:n.lineno,colno:n.colno,errorTrace:o})}catch(o){v("[Scout] Error handler failure:",o)}i.selfHealingErrors&&n.preventDefault()}})),i.addUnhandledRejectionEventListener&&window.addEventListener("unhandledrejection",n=>{if(i.enabled){try{let o=n.reason,u=(o==null?void 0:o.stack)||"No stack trace available";if(y((o==null?void 0:o.message)||""))return;i.sendErrors&&h({type:"Unhandled Promise Rejection",message:(o==null?void 0:o.message)||"Unhandled Promise Rejection",reason:n.reason,errorTrace:u})}catch(o){v("[Scout] Rejection handler failure:",o)}i.selfHealingErrors&&n.preventDefault()}}),i.overrideConsoleError&&(console.error=function(...n){if(i.enabled)try{let o=new Error().stack;if(y(E(n)))return;i.sendErrors&&h({type:"console.error",errorTrace:o,args:E(n)})}catch(o){v("[Scout] console.error override failure:",o)}}),i.overrideConsoleWarn&&(console.warn=function(...n){if(i.enabled)try{let o=new Error().stack;if(y(E(n)))return;i.sendErrors&&h({type:"console.warn",errorTrace:o,args:E(n)})}catch(o){v("[Scout] console.warn override failure:",o)}});let a=i.endpoint?new URL(i.endpoint).origin:"";i.loadUAParser&&i.browserDetails&&a&&H(`${a}/vendor/ua-parser.min.js`,()=>{typeof UAParser!="undefined"&&(window._uaParserResult=new UAParser().getResult())}),i.handleSourceMaps&&a&&H(`${a}/vendor/source-map.min.js`)}function de(e={},r={}){if(e.user&&(M=e.user,delete e.user),O){g=l(l({},g),e),i=l(l({},i),r);return}g=l(l({},g),e),i=l(l({},i),r),O=!0,typeof window!="undefined"&&ue()}typeof window!="undefined"&&(window.Scout={init:de,setScope:e=>{g=l(l({},g),e)},setConfig:e=>{i=l(l({},i),e)},setUser:ie,setContext:ce,setTag:le,addBreadcrumb:p,error:b});var L=class extends X.default.Component{constructor(r){super(r),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(r,t){b({message:r.message,stack:r.stack,errorTrace:r.stack,component:(t==null?void 0:t.componentStack)||"",type:"react-error-boundary"})}render(){return this.state.hasError?this.props.fallback||null:this.props.children}};
|
package/dist/react.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var H=Object.defineProperty,W=Object.defineProperties;var X=Object.getOwnPropertyDescriptors;var x=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var I=(e,n,t)=>n in e?H(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,l=(e,n)=>{for(var t in n||(n={}))B.call(n,t)&&I(e,t,n[t]);if(x)for(var t of x(n))j.call(n,t)&&I(e,t,n[t]);return e},U=(e,n)=>W(e,X(n));var w=(e,n,t)=>new Promise((s,i)=>{var r=c=>{try{u(t.next(c))}catch(f){i(f)}},o=c=>{try{u(t.throw(c))}catch(f){i(f)}},u=c=>c.done?s(c.value):Promise.resolve(c.value).then(r,o);u((t=t.apply(e,n)).next())});import te from"react";var V={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},a=l({},V),O,g={environment:typeof window!="undefined"&&((O=window.location)==null?void 0:O.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.
|
|
1
|
+
var H=Object.defineProperty,W=Object.defineProperties;var X=Object.getOwnPropertyDescriptors;var x=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var I=(e,n,t)=>n in e?H(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,l=(e,n)=>{for(var t in n||(n={}))B.call(n,t)&&I(e,t,n[t]);if(x)for(var t of x(n))j.call(n,t)&&I(e,t,n[t]);return e},U=(e,n)=>W(e,X(n));var w=(e,n,t)=>new Promise((s,i)=>{var r=c=>{try{u(t.next(c))}catch(f){i(f)}},o=c=>{try{u(t.throw(c))}catch(f){i(f)}},u=c=>c.done?s(c.value):Promise.resolve(c.value).then(r,o);u((t=t.apply(e,n)).next())});import te from"react";var V={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},a=l({},V),O,g={environment:typeof window!="undefined"&&((O=window.location)==null?void 0:O.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.8",project:null,release:null,version:null,app:null},k={clicks:0,scrolls:0},M=null,D=!1,_=null,h={},E=[],q=30;var S=console.warn;var P=console.log;function C(e){return`${e}_${Math.random().toString(36).substr(2,9)}`}function z(){let e=localStorage.getItem("__scoutUserId")||(localStorage.setItem("__scoutUserId",C("user")),localStorage.getItem("__scoutUserId")),n=sessionStorage.getItem("__scoutSessionId")||(sessionStorage.setItem("__scoutSessionId",C("session")),sessionStorage.getItem("__scoutSessionId"));return M=M||C("pageload"),{pageloadId:M,userId:e,sessionId:n}}function J(){var t,s,i;if((s=(t=window._uaParserResult)==null?void 0:t.browser)!=null&&s.name)return window._uaParserResult.browser.name;let e=navigator.userAgent;return((i=[{p:/Chrome.*Mobile/,n:"Chrome Mobile"},{p:/Chrome/,n:"Chrome"},{p:/Firefox.*Mobile/,n:"Firefox Mobile"},{p:/Firefox/,n:"Firefox"},{p:/Safari.*Mobile/,n:"Safari Mobile"},{p:/Safari/,n:"Safari"},{p:/MSIE|Trident/,n:"Internet Explorer"},{p:/Edge/,n:"Edge"}].find(r=>e.match(r.p)))==null?void 0:i.n)||"Unknown"}function G(){var t,s,i;if((s=(t=window._uaParserResult)==null?void 0:t.os)!=null&&s.name)return window._uaParserResult.os.name;let e=navigator.userAgent;return((i=[{p:/Win/,n:"Windows"},{p:/Mac/,n:"Mac OS"},{p:/X11|Linux/,n:"Linux"},{p:/Android/,n:"Android"},{p:/iPhone|iPad/,n:"iOS"}].find(r=>e.match(r.p)))==null?void 0:i.n)||"Unknown"}function K(){var n,t,s,i,r,o,u,c,f,d;let e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return{connectionType:e?e.effectiveType:"unknown",userAgent:navigator.userAgent,width:window.innerWidth,height:window.innerHeight,screenWidth:screen.width,screenHeight:screen.height,errorTimestamp:Date.now(),timeLocale:Intl.DateTimeFormat().resolvedOptions().timeZone,browserLocale:navigator.language||navigator.userLanguage,sessionTime:Math.round(performance.now()/1e3),deviceMemory:navigator.deviceMemory||"unknown",timezoneOffset:new Date().getTimezoneOffset(),cookiesEnabled:navigator.cookieEnabled,url:window.location.href,host:window.location.host,referrer:document.referrer,browser:J(),browserVersion:((t=(n=window._uaParserResult)==null?void 0:n.browser)==null?void 0:t.version)||null,os:G(),osVersion:((i=(s=window._uaParserResult)==null?void 0:s.os)==null?void 0:i.version)||null,deviceType:((o=(r=window._uaParserResult)==null?void 0:r.device)==null?void 0:o.type)||null,deviceModel:((c=(u=window._uaParserResult)==null?void 0:u.device)==null?void 0:c.model)||null,deviceVendor:((d=(f=window._uaParserResult)==null?void 0:f.device)==null?void 0:d.vendor)||null,loadTime:Math.max(0,performance.timing.loadEventEnd-performance.timing.navigationStart),userClicks:k.clicks,userScrolls:k.scrolls}}function v(e){return!a.ignoreErrors||!Array.isArray(a.ignoreErrors)?!1:a.ignoreErrors.some(n=>typeof n=="string"?e.includes(n):n instanceof RegExp?n.test(e):!1)}function A(e,n){let t=new AbortController,s=setTimeout(()=>t.abort(),5e3),i={"Content-Type":"application/json"};return a.token&&(i["X-Ingest-Token"]=a.token),fetch(e,{method:"POST",headers:i,body:JSON.stringify(n),signal:t.signal}).then(r=>(clearTimeout(s),r)).catch(()=>{clearTimeout(s)})}function y(e){let n=(e[0]||"")+"",t=[...e];return n.replace(/%[sdj]/g,s=>{let i=t.shift();return s==="%s"?String(i):s==="%d"?Number(i):s==="%j"?JSON.stringify(i):s})}function N(e,n){let t=document.createElement("script");t.src=e,t.async=!0,n&&(t.onload=n),document.head.appendChild(t)}function Z(e,n,t){return w(this,null,function*(){var s;try{let i=yield fetch(e);if(!i.ok)return null;let r=yield i.text(),o=r.match(/\/\/# sourceMappingURL=data:application\/json;base64,([^\s]+)/),u=r.match(/\/\/# sourceMappingURL=(?!data:)([^\s]+)/),c;if(o)c=JSON.parse(atob(o[1]));else if(u){let F=new URL(u[1],e).href,T=yield fetch(F);if(!T.ok)return null;c=yield T.json()}else return null;if(!((s=window.sourceMap)!=null&&s.SourceMapConsumer))return null;let d=new window.sourceMap.SourceMapConsumer(c).originalPositionFor({line:n,column:t});if(!d.source)return null;let b=c.sources.indexOf(d.source),L=null;return c.sourcesContent&&c.sourcesContent[b]&&(L=c.sourcesContent[b]),{originalSource:d.source,originalLine:d.line,originalColumn:d.column,originalName:d.name,snippet:L}}catch(i){return null}})}function p(e){E.push(l({timestamp:Date.now()},e)),E.length>q&&E.shift()}function m(e){return w(this,null,function*(){let n=a.browserDetails?K():{},t=Object.assign(e,n,g,z());if(_&&(t.user=_),Object.keys(h).length&&(t.context=l({},h)),t.breadcrumbs=E.slice(),a.sampleRate&&Math.random()<1-parseFloat(a.sampleRate)){a.debug&&P("[Scout] Suppressed by sampling");return}if(a.attachStacktrace||(e.errorTrace=null),e.errorTrace)try{let s=e.errorTrace.split(`
|
|
2
2
|
`),i=[s[0]];for(let r=1;r<s.length;r++)!s[r].includes("/scout")&&!s[r].includes("scout.js")&&!s[r].includes("scout-error")&&i.push(s[r]);i.length>1&&(e.errorTrace=i.join(`
|
|
3
3
|
`))}catch(s){}if((e.errorTrace||e.stack)&&!e.source)try{let s=e.errorTrace||e.stack,i=s?s.split(`
|
|
4
4
|
`):[];for(let r=1;r<i.length;r++){let o=i[r].trim().match(/(http.*?):(\d+):(\d+)/);if(o){e.source=o[1],e.lineno=parseInt(o[2],10),e.colno=parseInt(o[3],10);break}}}catch(s){}if(a.debug&&P("[Scout] Sending:",t),a.endpoint&&A(a.endpoint,t),a.handleSourceMaps&&e.source&&e.lineno)try{let s=yield Z(e.source,e.lineno,e.colno||0);if(s){let i=U(l({},t),{originalSource:s.originalSource,originalLine:s.originalLine,originalColumn:s.originalColumn,originalName:s.originalName,highlightLineNumber:s.originalLine});s.snippet&&(i.snippet=s.snippet),a.endpoint&&A(a.endpoint,i)}}catch(s){}})}function R(e){a.enabled&&m(e)}function Q(e){_=e}function Y(e){h=l(l({},h),e)}function ee(e,n){h[e]=n}function re(){if(a.trackUserInteractions){document.addEventListener("click",o=>{k.clicks++;let u=o.target,c=u.tagName?u.tagName.toLowerCase():"",f=(u.textContent||"").trim().slice(0,50);p({category:"click",message:c+(f?": "+f:"")})});let r=0;window.addEventListener("scroll",()=>{let o=Date.now();o-r>100&&(k.scrolls++,r=o)})}let e=history.pushState;history.pushState=function(){e.apply(this,arguments),p({category:"navigation",message:window.location.href})},window.addEventListener("popstate",()=>{p({category:"navigation",message:window.location.href})});let n=window.fetch;window.fetch=function(r,o){let u=typeof r=="string"?r:(r==null?void 0:r.url)||"",c=(o==null?void 0:o.method)||"GET",f=Date.now();return n.apply(this,arguments).then(d=>(p({category:"fetch",message:`${c} ${u}`,data:{status:d.status,duration:Date.now()-f}}),d)).catch(d=>{throw p({category:"fetch",message:`${c} ${u}`,data:{error:d.message,duration:Date.now()-f}}),d})};let t=XMLHttpRequest.prototype.open,s=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.open=function(r,o){return this._scoutMethod=r,this._scoutUrl=o,t.apply(this,arguments)},XMLHttpRequest.prototype.send=function(){let r=this,o=Date.now();return r.addEventListener("loadend",()=>{p({category:"xhr",message:`${r._scoutMethod||"GET"} ${r._scoutUrl||""}`,data:{status:r.status,duration:Date.now()-o}})}),s.apply(this,arguments)},a.addErrorEventListener&&window.addEventListener("error",r=>w(this,null,function*(){if(a.enabled){try{let o=r.error?r.error.stack:"No stack trace available";if(v(r.message))return;a.sendErrors&&m({type:"window.onerror",message:r.message,source:r.filename,lineno:r.lineno,colno:r.colno,errorTrace:o})}catch(o){S("[Scout] Error handler failure:",o)}a.selfHealingErrors&&r.preventDefault()}})),a.addUnhandledRejectionEventListener&&window.addEventListener("unhandledrejection",r=>{if(a.enabled){try{let o=r.reason,u=(o==null?void 0:o.stack)||"No stack trace available";if(v((o==null?void 0:o.message)||""))return;a.sendErrors&&m({type:"Unhandled Promise Rejection",message:(o==null?void 0:o.message)||"Unhandled Promise Rejection",reason:r.reason,errorTrace:u})}catch(o){S("[Scout] Rejection handler failure:",o)}a.selfHealingErrors&&r.preventDefault()}}),a.overrideConsoleError&&(console.error=function(...r){if(a.enabled)try{let o=new Error().stack;if(v(y(r)))return;a.sendErrors&&m({type:"console.error",errorTrace:o,args:y(r)})}catch(o){S("[Scout] console.error override failure:",o)}}),a.overrideConsoleWarn&&(console.warn=function(...r){if(a.enabled)try{let o=new Error().stack;if(v(y(r)))return;a.sendErrors&&m({type:"console.warn",errorTrace:o,args:y(r)})}catch(o){S("[Scout] console.warn override failure:",o)}});let i=a.endpoint?new URL(a.endpoint).origin:"";a.loadUAParser&&a.browserDetails&&i&&N(`${i}/vendor/ua-parser.min.js`,()=>{typeof UAParser!="undefined"&&(window._uaParserResult=new UAParser().getResult())}),a.handleSourceMaps&&i&&N(`${i}/vendor/source-map.min.js`)}function ne(e={},n={}){if(e.user&&(_=e.user,delete e.user),D){g=l(l({},g),e),a=l(l({},a),n);return}g=l(l({},g),e),a=l(l({},a),n),D=!0,typeof window!="undefined"&&re()}typeof window!="undefined"&&(window.Scout={init:ne,setScope:e=>{g=l(l({},g),e)},setConfig:e=>{a=l(l({},a),e)},setUser:Q,setContext:Y,setTag:ee,addBreadcrumb:p,error:R});var $=class extends te.Component{constructor(n){super(n),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(n,t){R({message:n.message,stack:n.stack,errorTrace:n.stack,component:(t==null?void 0:t.componentStack)||"",type:"react-error-boundary"})}render(){return this.state.hasError?this.props.fallback||null:this.props.children}};export{$ as ScoutErrorBoundary};
|
package/dist/scout.iife.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
(()=>{var $=Object.defineProperty,H=Object.defineProperties;var F=Object.getOwnPropertyDescriptors;var I=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable;var T=(e,s,t)=>s in e?$(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,l=(e,s)=>{for(var t in s||(s={}))B.call(s,t)&&T(e,t,s[t]);if(I)for(var t of I(s))W.call(s,t)&&T(e,t,s[t]);return e},x=(e,s)=>H(e,F(s));var h=(e,s,t)=>new Promise((o,i)=>{var n=c=>{try{u(t.next(c))}catch(f){i(f)}},r=c=>{try{u(t.throw(c))}catch(f){i(f)}},u=c=>c.done?o(c.value):Promise.resolve(c.value).then(n,r);u((t=t.apply(e,s)).next())});var X={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},a=l({},X),N,p={environment:typeof window!="undefined"&&((N=window.location)==null?void 0:N.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.
|
|
1
|
+
(()=>{var $=Object.defineProperty,H=Object.defineProperties;var F=Object.getOwnPropertyDescriptors;var I=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable;var T=(e,s,t)=>s in e?$(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,l=(e,s)=>{for(var t in s||(s={}))B.call(s,t)&&T(e,t,s[t]);if(I)for(var t of I(s))W.call(s,t)&&T(e,t,s[t]);return e},x=(e,s)=>H(e,F(s));var h=(e,s,t)=>new Promise((o,i)=>{var n=c=>{try{u(t.next(c))}catch(f){i(f)}},r=c=>{try{u(t.throw(c))}catch(f){i(f)}},u=c=>c.done?o(c.value):Promise.resolve(c.value).then(n,r);u((t=t.apply(e,s)).next())});var X={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},a=l({},X),N,p={environment:typeof window!="undefined"&&((N=window.location)==null?void 0:N.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.8",project:null,release:null,version:null,app:null},_={clicks:0,scrolls:0},k=null,U=!1,M=null,w={},E=[],j=30;var S=console.warn;var P=console.log;function R(e){return`${e}_${Math.random().toString(36).substr(2,9)}`}function V(){let e=localStorage.getItem("__scoutUserId")||(localStorage.setItem("__scoutUserId",R("user")),localStorage.getItem("__scoutUserId")),s=sessionStorage.getItem("__scoutSessionId")||(sessionStorage.setItem("__scoutSessionId",R("session")),sessionStorage.getItem("__scoutSessionId"));return k=k||R("pageload"),{pageloadId:k,userId:e,sessionId:s}}function q(){var t,o,i;if((o=(t=window._uaParserResult)==null?void 0:t.browser)!=null&&o.name)return window._uaParserResult.browser.name;let e=navigator.userAgent;return((i=[{p:/Chrome.*Mobile/,n:"Chrome Mobile"},{p:/Chrome/,n:"Chrome"},{p:/Firefox.*Mobile/,n:"Firefox Mobile"},{p:/Firefox/,n:"Firefox"},{p:/Safari.*Mobile/,n:"Safari Mobile"},{p:/Safari/,n:"Safari"},{p:/MSIE|Trident/,n:"Internet Explorer"},{p:/Edge/,n:"Edge"}].find(n=>e.match(n.p)))==null?void 0:i.n)||"Unknown"}function z(){var t,o,i;if((o=(t=window._uaParserResult)==null?void 0:t.os)!=null&&o.name)return window._uaParserResult.os.name;let e=navigator.userAgent;return((i=[{p:/Win/,n:"Windows"},{p:/Mac/,n:"Mac OS"},{p:/X11|Linux/,n:"Linux"},{p:/Android/,n:"Android"},{p:/iPhone|iPad/,n:"iOS"}].find(n=>e.match(n.p)))==null?void 0:i.n)||"Unknown"}function J(){var s,t,o,i,n,r,u,c,f,d;let e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return{connectionType:e?e.effectiveType:"unknown",userAgent:navigator.userAgent,width:window.innerWidth,height:window.innerHeight,screenWidth:screen.width,screenHeight:screen.height,errorTimestamp:Date.now(),timeLocale:Intl.DateTimeFormat().resolvedOptions().timeZone,browserLocale:navigator.language||navigator.userLanguage,sessionTime:Math.round(performance.now()/1e3),deviceMemory:navigator.deviceMemory||"unknown",timezoneOffset:new Date().getTimezoneOffset(),cookiesEnabled:navigator.cookieEnabled,url:window.location.href,host:window.location.host,referrer:document.referrer,browser:q(),browserVersion:((t=(s=window._uaParserResult)==null?void 0:s.browser)==null?void 0:t.version)||null,os:z(),osVersion:((i=(o=window._uaParserResult)==null?void 0:o.os)==null?void 0:i.version)||null,deviceType:((r=(n=window._uaParserResult)==null?void 0:n.device)==null?void 0:r.type)||null,deviceModel:((c=(u=window._uaParserResult)==null?void 0:u.device)==null?void 0:c.model)||null,deviceVendor:((d=(f=window._uaParserResult)==null?void 0:f.device)==null?void 0:d.vendor)||null,loadTime:Math.max(0,performance.timing.loadEventEnd-performance.timing.navigationStart),userClicks:_.clicks,userScrolls:_.scrolls}}function v(e){return!a.ignoreErrors||!Array.isArray(a.ignoreErrors)?!1:a.ignoreErrors.some(s=>typeof s=="string"?e.includes(s):s instanceof RegExp?s.test(e):!1)}function D(e,s){let t=new AbortController,o=setTimeout(()=>t.abort(),5e3),i={"Content-Type":"application/json"};return a.token&&(i["X-Ingest-Token"]=a.token),fetch(e,{method:"POST",headers:i,body:JSON.stringify(s),signal:t.signal}).then(n=>(clearTimeout(o),n)).catch(()=>{clearTimeout(o)})}function y(e){let s=(e[0]||"")+"",t=[...e];return s.replace(/%[sdj]/g,o=>{let i=t.shift();return o==="%s"?String(i):o==="%d"?Number(i):o==="%j"?JSON.stringify(i):o})}function A(e,s){let t=document.createElement("script");t.src=e,t.async=!0,s&&(t.onload=s),document.head.appendChild(t)}function G(e,s,t){return h(this,null,function*(){var o;try{let i=yield fetch(e);if(!i.ok)return null;let n=yield i.text(),r=n.match(/\/\/# sourceMappingURL=data:application\/json;base64,([^\s]+)/),u=n.match(/\/\/# sourceMappingURL=(?!data:)([^\s]+)/),c;if(r)c=JSON.parse(atob(r[1]));else if(u){let O=new URL(u[1],e).href,b=yield fetch(O);if(!b.ok)return null;c=yield b.json()}else return null;if(!((o=window.sourceMap)!=null&&o.SourceMapConsumer))return null;let d=new window.sourceMap.SourceMapConsumer(c).originalPositionFor({line:s,column:t});if(!d.source)return null;let C=c.sources.indexOf(d.source),L=null;return c.sourcesContent&&c.sourcesContent[C]&&(L=c.sourcesContent[C]),{originalSource:d.source,originalLine:d.line,originalColumn:d.column,originalName:d.name,snippet:L}}catch(i){return null}})}function g(e){E.push(l({timestamp:Date.now()},e)),E.length>j&&E.shift()}function m(e){return h(this,null,function*(){let s=a.browserDetails?J():{},t=Object.assign(e,s,p,V());if(M&&(t.user=M),Object.keys(w).length&&(t.context=l({},w)),t.breadcrumbs=E.slice(),a.sampleRate&&Math.random()<1-parseFloat(a.sampleRate)){a.debug&&P("[Scout] Suppressed by sampling");return}if(a.attachStacktrace||(e.errorTrace=null),e.errorTrace)try{let o=e.errorTrace.split(`
|
|
2
2
|
`),i=[o[0]];for(let n=1;n<o.length;n++)!o[n].includes("/scout")&&!o[n].includes("scout.js")&&!o[n].includes("scout-error")&&i.push(o[n]);i.length>1&&(e.errorTrace=i.join(`
|
|
3
3
|
`))}catch(o){}if((e.errorTrace||e.stack)&&!e.source)try{let o=e.errorTrace||e.stack,i=o?o.split(`
|
|
4
4
|
`):[];for(let n=1;n<i.length;n++){let r=i[n].trim().match(/(http.*?):(\d+):(\d+)/);if(r){e.source=r[1],e.lineno=parseInt(r[2],10),e.colno=parseInt(r[3],10);break}}}catch(o){}if(a.debug&&P("[Scout] Sending:",t),a.endpoint&&D(a.endpoint,t),a.handleSourceMaps&&e.source&&e.lineno)try{let o=yield G(e.source,e.lineno,e.colno||0);if(o){let i=x(l({},t),{originalSource:o.originalSource,originalLine:o.originalLine,originalColumn:o.originalColumn,originalName:o.originalName,highlightLineNumber:o.originalLine});o.snippet&&(i.snippet=o.snippet),a.endpoint&&D(a.endpoint,i)}}catch(o){}})}function K(e){a.enabled&&m(e)}function Z(e){M=e}function Q(e){w=l(l({},w),e)}function Y(e,s){w[e]=s}function te(e){g(e)}function ee(){if(a.trackUserInteractions){document.addEventListener("click",r=>{_.clicks++;let u=r.target,c=u.tagName?u.tagName.toLowerCase():"",f=(u.textContent||"").trim().slice(0,50);g({category:"click",message:c+(f?": "+f:"")})});let n=0;window.addEventListener("scroll",()=>{let r=Date.now();r-n>100&&(_.scrolls++,n=r)})}let e=history.pushState;history.pushState=function(){e.apply(this,arguments),g({category:"navigation",message:window.location.href})},window.addEventListener("popstate",()=>{g({category:"navigation",message:window.location.href})});let s=window.fetch;window.fetch=function(n,r){let u=typeof n=="string"?n:(n==null?void 0:n.url)||"",c=(r==null?void 0:r.method)||"GET",f=Date.now();return s.apply(this,arguments).then(d=>(g({category:"fetch",message:`${c} ${u}`,data:{status:d.status,duration:Date.now()-f}}),d)).catch(d=>{throw g({category:"fetch",message:`${c} ${u}`,data:{error:d.message,duration:Date.now()-f}}),d})};let t=XMLHttpRequest.prototype.open,o=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.open=function(n,r){return this._scoutMethod=n,this._scoutUrl=r,t.apply(this,arguments)},XMLHttpRequest.prototype.send=function(){let n=this,r=Date.now();return n.addEventListener("loadend",()=>{g({category:"xhr",message:`${n._scoutMethod||"GET"} ${n._scoutUrl||""}`,data:{status:n.status,duration:Date.now()-r}})}),o.apply(this,arguments)},a.addErrorEventListener&&window.addEventListener("error",n=>h(this,null,function*(){if(a.enabled){try{let r=n.error?n.error.stack:"No stack trace available";if(v(n.message))return;a.sendErrors&&m({type:"window.onerror",message:n.message,source:n.filename,lineno:n.lineno,colno:n.colno,errorTrace:r})}catch(r){S("[Scout] Error handler failure:",r)}a.selfHealingErrors&&n.preventDefault()}})),a.addUnhandledRejectionEventListener&&window.addEventListener("unhandledrejection",n=>{if(a.enabled){try{let r=n.reason,u=(r==null?void 0:r.stack)||"No stack trace available";if(v((r==null?void 0:r.message)||""))return;a.sendErrors&&m({type:"Unhandled Promise Rejection",message:(r==null?void 0:r.message)||"Unhandled Promise Rejection",reason:n.reason,errorTrace:u})}catch(r){S("[Scout] Rejection handler failure:",r)}a.selfHealingErrors&&n.preventDefault()}}),a.overrideConsoleError&&(console.error=function(...n){if(a.enabled)try{let r=new Error().stack;if(v(y(n)))return;a.sendErrors&&m({type:"console.error",errorTrace:r,args:y(n)})}catch(r){S("[Scout] console.error override failure:",r)}}),a.overrideConsoleWarn&&(console.warn=function(...n){if(a.enabled)try{let r=new Error().stack;if(v(y(n)))return;a.sendErrors&&m({type:"console.warn",errorTrace:r,args:y(n)})}catch(r){S("[Scout] console.warn override failure:",r)}});let i=a.endpoint?new URL(a.endpoint).origin:"";a.loadUAParser&&a.browserDetails&&i&&A(`${i}/vendor/ua-parser.min.js`,()=>{typeof UAParser!="undefined"&&(window._uaParserResult=new UAParser().getResult())}),a.handleSourceMaps&&i&&A(`${i}/vendor/source-map.min.js`)}function ne(e={},s={}){if(e.user&&(M=e.user,delete e.user),U){p=l(l({},p),e),a=l(l({},a),s);return}p=l(l({},p),e),a=l(l({},a),s),U=!0,typeof window!="undefined"&&ee()}typeof window!="undefined"&&(window.Scout={init:ne,setScope:e=>{p=l(l({},p),e)},setConfig:e=>{a=l(l({},a),e)},setUser:Z,setContext:Q,setTag:Y,addBreadcrumb:g,error:K});})();
|
|
5
|
-
//# sourceMappingURL=scout.iife.js.map
|
package/dist/vue.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var h=Object.defineProperty,B=Object.defineProperties,W=Object.getOwnPropertyDescriptor,X=Object.getOwnPropertyDescriptors,V=Object.getOwnPropertyNames,x=Object.getOwnPropertySymbols;var P=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var U=(e,o,r)=>o in e?h(e,o,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[o]=r,l=(e,o)=>{for(var r in o||(o={}))P.call(o,r)&&U(e,r,o[r]);if(x)for(var r of x(o))j.call(o,r)&&U(e,r,o[r]);return e},D=(e,o)=>B(e,X(o));var q=(e,o)=>{for(var r in o)h(e,r,{get:o[r],enumerable:!0})},z=(e,o,r,t)=>{if(o&&typeof o=="object"||typeof o=="function")for(let s of V(o))!P.call(e,s)&&s!==r&&h(e,s,{get:()=>o[s],enumerable:!(t=W(o,s))||t.enumerable});return e};var J=e=>z(h({},"__esModule",{value:!0}),e);var S=(e,o,r)=>new Promise((t,s)=>{var n=c=>{try{u(r.next(c))}catch(f){s(f)}},a=c=>{try{u(r.throw(c))}catch(f){s(f)}},u=c=>c.done?t(c.value):Promise.resolve(c.value).then(n,a);u((r=r.apply(e,o)).next())});var ce={};q(ce,{ScoutVue:()=>ie});module.exports=J(ce);var G={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},G),H,g={environment:typeof window!="undefined"&&((H=window.location)==null?void 0:H.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.
|
|
1
|
+
var h=Object.defineProperty,B=Object.defineProperties,W=Object.getOwnPropertyDescriptor,X=Object.getOwnPropertyDescriptors,V=Object.getOwnPropertyNames,x=Object.getOwnPropertySymbols;var P=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var U=(e,o,r)=>o in e?h(e,o,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[o]=r,l=(e,o)=>{for(var r in o||(o={}))P.call(o,r)&&U(e,r,o[r]);if(x)for(var r of x(o))j.call(o,r)&&U(e,r,o[r]);return e},D=(e,o)=>B(e,X(o));var q=(e,o)=>{for(var r in o)h(e,r,{get:o[r],enumerable:!0})},z=(e,o,r,t)=>{if(o&&typeof o=="object"||typeof o=="function")for(let s of V(o))!P.call(e,s)&&s!==r&&h(e,s,{get:()=>o[s],enumerable:!(t=W(o,s))||t.enumerable});return e};var J=e=>z(h({},"__esModule",{value:!0}),e);var S=(e,o,r)=>new Promise((t,s)=>{var n=c=>{try{u(r.next(c))}catch(f){s(f)}},a=c=>{try{u(r.throw(c))}catch(f){s(f)}},u=c=>c.done?t(c.value):Promise.resolve(c.value).then(n,a);u((r=r.apply(e,o)).next())});var ce={};q(ce,{ScoutVue:()=>ie});module.exports=J(ce);var G={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},G),H,g={environment:typeof window!="undefined"&&((H=window.location)==null?void 0:H.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.8",project:null,release:null,version:null,app:null},v={clicks:0,scrolls:0},C=null,A=!1,M=null,m={},k=[],K=30;var y=console.warn;var $=console.log;function L(e){return`${e}_${Math.random().toString(36).substr(2,9)}`}function Z(){let e=localStorage.getItem("__scoutUserId")||(localStorage.setItem("__scoutUserId",L("user")),localStorage.getItem("__scoutUserId")),o=sessionStorage.getItem("__scoutSessionId")||(sessionStorage.setItem("__scoutSessionId",L("session")),sessionStorage.getItem("__scoutSessionId"));return C=C||L("pageload"),{pageloadId:C,userId:e,sessionId:o}}function Q(){var r,t,s;if((t=(r=window._uaParserResult)==null?void 0:r.browser)!=null&&t.name)return window._uaParserResult.browser.name;let e=navigator.userAgent;return((s=[{p:/Chrome.*Mobile/,n:"Chrome Mobile"},{p:/Chrome/,n:"Chrome"},{p:/Firefox.*Mobile/,n:"Firefox Mobile"},{p:/Firefox/,n:"Firefox"},{p:/Safari.*Mobile/,n:"Safari Mobile"},{p:/Safari/,n:"Safari"},{p:/MSIE|Trident/,n:"Internet Explorer"},{p:/Edge/,n:"Edge"}].find(n=>e.match(n.p)))==null?void 0:s.n)||"Unknown"}function Y(){var r,t,s;if((t=(r=window._uaParserResult)==null?void 0:r.os)!=null&&t.name)return window._uaParserResult.os.name;let e=navigator.userAgent;return((s=[{p:/Win/,n:"Windows"},{p:/Mac/,n:"Mac OS"},{p:/X11|Linux/,n:"Linux"},{p:/Android/,n:"Android"},{p:/iPhone|iPad/,n:"iOS"}].find(n=>e.match(n.p)))==null?void 0:s.n)||"Unknown"}function ee(){var o,r,t,s,n,a,u,c,f,d;let e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return{connectionType:e?e.effectiveType:"unknown",userAgent:navigator.userAgent,width:window.innerWidth,height:window.innerHeight,screenWidth:screen.width,screenHeight:screen.height,errorTimestamp:Date.now(),timeLocale:Intl.DateTimeFormat().resolvedOptions().timeZone,browserLocale:navigator.language||navigator.userLanguage,sessionTime:Math.round(performance.now()/1e3),deviceMemory:navigator.deviceMemory||"unknown",timezoneOffset:new Date().getTimezoneOffset(),cookiesEnabled:navigator.cookieEnabled,url:window.location.href,host:window.location.host,referrer:document.referrer,browser:Q(),browserVersion:((r=(o=window._uaParserResult)==null?void 0:o.browser)==null?void 0:r.version)||null,os:Y(),osVersion:((s=(t=window._uaParserResult)==null?void 0:t.os)==null?void 0:s.version)||null,deviceType:((a=(n=window._uaParserResult)==null?void 0:n.device)==null?void 0:a.type)||null,deviceModel:((c=(u=window._uaParserResult)==null?void 0:u.device)==null?void 0:c.model)||null,deviceVendor:((d=(f=window._uaParserResult)==null?void 0:f.device)==null?void 0:d.vendor)||null,loadTime:Math.max(0,performance.timing.loadEventEnd-performance.timing.navigationStart),userClicks:v.clicks,userScrolls:v.scrolls}}function E(e){return!i.ignoreErrors||!Array.isArray(i.ignoreErrors)?!1:i.ignoreErrors.some(o=>typeof o=="string"?e.includes(o):o instanceof RegExp?o.test(e):!1)}function N(e,o){let r=new AbortController,t=setTimeout(()=>r.abort(),5e3),s={"Content-Type":"application/json"};return i.token&&(s["X-Ingest-Token"]=i.token),fetch(e,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal}).then(n=>(clearTimeout(t),n)).catch(()=>{clearTimeout(t)})}function _(e){let o=(e[0]||"")+"",r=[...e];return o.replace(/%[sdj]/g,t=>{let s=r.shift();return t==="%s"?String(s):t==="%d"?Number(s):t==="%j"?JSON.stringify(s):t})}function O(e,o){let r=document.createElement("script");r.src=e,r.async=!0,o&&(r.onload=o),document.head.appendChild(r)}function ne(e,o,r){return S(this,null,function*(){var t;try{let s=yield fetch(e);if(!s.ok)return null;let n=yield s.text(),a=n.match(/\/\/# sourceMappingURL=data:application\/json;base64,([^\s]+)/),u=n.match(/\/\/# sourceMappingURL=(?!data:)([^\s]+)/),c;if(a)c=JSON.parse(atob(a[1]));else if(u){let F=new URL(u[1],e).href,T=yield fetch(F);if(!T.ok)return null;c=yield T.json()}else return null;if(!((t=window.sourceMap)!=null&&t.SourceMapConsumer))return null;let d=new window.sourceMap.SourceMapConsumer(c).originalPositionFor({line:o,column:r});if(!d.source)return null;let b=c.sources.indexOf(d.source),I=null;return c.sourcesContent&&c.sourcesContent[b]&&(I=c.sourcesContent[b]),{originalSource:d.source,originalLine:d.line,originalColumn:d.column,originalName:d.name,snippet:I}}catch(s){return null}})}function p(e){k.push(l({timestamp:Date.now()},e)),k.length>K&&k.shift()}function w(e){return S(this,null,function*(){let o=i.browserDetails?ee():{},r=Object.assign(e,o,g,Z());if(M&&(r.user=M),Object.keys(m).length&&(r.context=l({},m)),r.breadcrumbs=k.slice(),i.sampleRate&&Math.random()<1-parseFloat(i.sampleRate)){i.debug&&$("[Scout] Suppressed by sampling");return}if(i.attachStacktrace||(e.errorTrace=null),e.errorTrace)try{let t=e.errorTrace.split(`
|
|
2
2
|
`),s=[t[0]];for(let n=1;n<t.length;n++)!t[n].includes("/scout")&&!t[n].includes("scout.js")&&!t[n].includes("scout-error")&&s.push(t[n]);s.length>1&&(e.errorTrace=s.join(`
|
|
3
3
|
`))}catch(t){}if((e.errorTrace||e.stack)&&!e.source)try{let t=e.errorTrace||e.stack,s=t?t.split(`
|
|
4
4
|
`):[];for(let n=1;n<s.length;n++){let a=s[n].trim().match(/(http.*?):(\d+):(\d+)/);if(a){e.source=a[1],e.lineno=parseInt(a[2],10),e.colno=parseInt(a[3],10);break}}}catch(t){}if(i.debug&&$("[Scout] Sending:",r),i.endpoint&&N(i.endpoint,r),i.handleSourceMaps&&e.source&&e.lineno)try{let t=yield ne(e.source,e.lineno,e.colno||0);if(t){let s=D(l({},r),{originalSource:t.originalSource,originalLine:t.originalLine,originalColumn:t.originalColumn,originalName:t.originalName,highlightLineNumber:t.originalLine});t.snippet&&(s.snippet=t.snippet),i.endpoint&&N(i.endpoint,s)}}catch(t){}})}function R(e){i.enabled&&w(e)}function re(e){M=e}function oe(e){m=l(l({},m),e)}function te(e,o){m[e]=o}function se(){if(i.trackUserInteractions){document.addEventListener("click",a=>{v.clicks++;let u=a.target,c=u.tagName?u.tagName.toLowerCase():"",f=(u.textContent||"").trim().slice(0,50);p({category:"click",message:c+(f?": "+f:"")})});let n=0;window.addEventListener("scroll",()=>{let a=Date.now();a-n>100&&(v.scrolls++,n=a)})}let e=history.pushState;history.pushState=function(){e.apply(this,arguments),p({category:"navigation",message:window.location.href})},window.addEventListener("popstate",()=>{p({category:"navigation",message:window.location.href})});let o=window.fetch;window.fetch=function(n,a){let u=typeof n=="string"?n:(n==null?void 0:n.url)||"",c=(a==null?void 0:a.method)||"GET",f=Date.now();return o.apply(this,arguments).then(d=>(p({category:"fetch",message:`${c} ${u}`,data:{status:d.status,duration:Date.now()-f}}),d)).catch(d=>{throw p({category:"fetch",message:`${c} ${u}`,data:{error:d.message,duration:Date.now()-f}}),d})};let r=XMLHttpRequest.prototype.open,t=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.open=function(n,a){return this._scoutMethod=n,this._scoutUrl=a,r.apply(this,arguments)},XMLHttpRequest.prototype.send=function(){let n=this,a=Date.now();return n.addEventListener("loadend",()=>{p({category:"xhr",message:`${n._scoutMethod||"GET"} ${n._scoutUrl||""}`,data:{status:n.status,duration:Date.now()-a}})}),t.apply(this,arguments)},i.addErrorEventListener&&window.addEventListener("error",n=>S(this,null,function*(){if(i.enabled){try{let a=n.error?n.error.stack:"No stack trace available";if(E(n.message))return;i.sendErrors&&w({type:"window.onerror",message:n.message,source:n.filename,lineno:n.lineno,colno:n.colno,errorTrace:a})}catch(a){y("[Scout] Error handler failure:",a)}i.selfHealingErrors&&n.preventDefault()}})),i.addUnhandledRejectionEventListener&&window.addEventListener("unhandledrejection",n=>{if(i.enabled){try{let a=n.reason,u=(a==null?void 0:a.stack)||"No stack trace available";if(E((a==null?void 0:a.message)||""))return;i.sendErrors&&w({type:"Unhandled Promise Rejection",message:(a==null?void 0:a.message)||"Unhandled Promise Rejection",reason:n.reason,errorTrace:u})}catch(a){y("[Scout] Rejection handler failure:",a)}i.selfHealingErrors&&n.preventDefault()}}),i.overrideConsoleError&&(console.error=function(...n){if(i.enabled)try{let a=new Error().stack;if(E(_(n)))return;i.sendErrors&&w({type:"console.error",errorTrace:a,args:_(n)})}catch(a){y("[Scout] console.error override failure:",a)}}),i.overrideConsoleWarn&&(console.warn=function(...n){if(i.enabled)try{let a=new Error().stack;if(E(_(n)))return;i.sendErrors&&w({type:"console.warn",errorTrace:a,args:_(n)})}catch(a){y("[Scout] console.warn override failure:",a)}});let s=i.endpoint?new URL(i.endpoint).origin:"";i.loadUAParser&&i.browserDetails&&s&&O(`${s}/vendor/ua-parser.min.js`,()=>{typeof UAParser!="undefined"&&(window._uaParserResult=new UAParser().getResult())}),i.handleSourceMaps&&s&&O(`${s}/vendor/source-map.min.js`)}function ae(e={},o={}){if(e.user&&(M=e.user,delete e.user),A){g=l(l({},g),e),i=l(l({},i),o);return}g=l(l({},g),e),i=l(l({},i),o),A=!0,typeof window!="undefined"&&se()}typeof window!="undefined"&&(window.Scout={init:ae,setScope:e=>{g=l(l({},g),e)},setConfig:e=>{i=l(l({},i),e)},setUser:re,setContext:oe,setTag:te,addBreadcrumb:p,error:R});var ie={install(e){e.config.errorHandler=(o,r,t)=>{var s,n;R({message:o.message,stack:o.stack,errorTrace:o.stack,component:((s=r==null?void 0:r.$options)==null?void 0:s.name)||((n=r==null?void 0:r.$options)==null?void 0:n.__name)||"Anonymous",type:"vue-error-handler",info:t})},e.config.warnHandler=(o,r,t)=>{var s,n;R({message:o,component:((s=r==null?void 0:r.$options)==null?void 0:s.name)||((n=r==null?void 0:r.$options)==null?void 0:n.__name)||"Anonymous",type:"vue-warn-handler",errorTrace:t})}}};
|
package/dist/vue.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var H=Object.defineProperty,F=Object.defineProperties;var B=Object.getOwnPropertyDescriptors;var T=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var x=(e,o,r)=>o in e?H(e,o,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[o]=r,l=(e,o)=>{for(var r in o||(o={}))W.call(o,r)&&x(e,r,o[r]);if(T)for(var r of T(o))X.call(o,r)&&x(e,r,o[r]);return e},U=(e,o)=>F(e,B(o));var h=(e,o,r)=>new Promise((t,a)=>{var n=c=>{try{u(r.next(c))}catch(f){a(f)}},s=c=>{try{u(r.throw(c))}catch(f){a(f)}},u=c=>c.done?t(c.value):Promise.resolve(c.value).then(n,s);u((r=r.apply(e,o)).next())});var V={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},V),N,g={environment:typeof window!="undefined"&&((N=window.location)==null?void 0:N.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.
|
|
1
|
+
var H=Object.defineProperty,F=Object.defineProperties;var B=Object.getOwnPropertyDescriptors;var T=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var x=(e,o,r)=>o in e?H(e,o,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[o]=r,l=(e,o)=>{for(var r in o||(o={}))W.call(o,r)&&x(e,r,o[r]);if(T)for(var r of T(o))X.call(o,r)&&x(e,r,o[r]);return e},U=(e,o)=>F(e,B(o));var h=(e,o,r)=>new Promise((t,a)=>{var n=c=>{try{u(r.next(c))}catch(f){a(f)}},s=c=>{try{u(r.throw(c))}catch(f){a(f)}},u=c=>c.done?t(c.value):Promise.resolve(c.value).then(n,s);u((r=r.apply(e,o)).next())});var V={trackUserInteractions:!0,selfHealingErrors:!1,attachStacktrace:!0,handleSourceMaps:!0,browserDetails:!0,warnOnCapture:!1,loadUAParser:!0,ignoreErrors:null,sendErrors:!0,sampleRate:1,enabled:!0,debug:!1,endpoint:"",token:null,overrideOnError:!1,overrideOnUnhandledRejection:!1,addErrorEventListener:!0,addUnhandledRejectionEventListener:!0,overrideConsoleLog:!1,overrideConsoleWarn:!1,overrideConsoleInfo:!1,overrideConsoleError:!0},i=l({},V),N,g={environment:typeof window!="undefined"&&((N=window.location)==null?void 0:N.hostname)==="localhost"?"development":"production",sdk:"javascript",sdkVersion:"0.2.8",project:null,release:null,version:null,app:null},k={clicks:0,scrolls:0},R=null,P=!1,v=null,m={},_=[],j=30;var S=console.warn;var D=console.log;function C(e){return`${e}_${Math.random().toString(36).substr(2,9)}`}function q(){let e=localStorage.getItem("__scoutUserId")||(localStorage.setItem("__scoutUserId",C("user")),localStorage.getItem("__scoutUserId")),o=sessionStorage.getItem("__scoutSessionId")||(sessionStorage.setItem("__scoutSessionId",C("session")),sessionStorage.getItem("__scoutSessionId"));return R=R||C("pageload"),{pageloadId:R,userId:e,sessionId:o}}function z(){var r,t,a;if((t=(r=window._uaParserResult)==null?void 0:r.browser)!=null&&t.name)return window._uaParserResult.browser.name;let e=navigator.userAgent;return((a=[{p:/Chrome.*Mobile/,n:"Chrome Mobile"},{p:/Chrome/,n:"Chrome"},{p:/Firefox.*Mobile/,n:"Firefox Mobile"},{p:/Firefox/,n:"Firefox"},{p:/Safari.*Mobile/,n:"Safari Mobile"},{p:/Safari/,n:"Safari"},{p:/MSIE|Trident/,n:"Internet Explorer"},{p:/Edge/,n:"Edge"}].find(n=>e.match(n.p)))==null?void 0:a.n)||"Unknown"}function J(){var r,t,a;if((t=(r=window._uaParserResult)==null?void 0:r.os)!=null&&t.name)return window._uaParserResult.os.name;let e=navigator.userAgent;return((a=[{p:/Win/,n:"Windows"},{p:/Mac/,n:"Mac OS"},{p:/X11|Linux/,n:"Linux"},{p:/Android/,n:"Android"},{p:/iPhone|iPad/,n:"iOS"}].find(n=>e.match(n.p)))==null?void 0:a.n)||"Unknown"}function G(){var o,r,t,a,n,s,u,c,f,d;let e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return{connectionType:e?e.effectiveType:"unknown",userAgent:navigator.userAgent,width:window.innerWidth,height:window.innerHeight,screenWidth:screen.width,screenHeight:screen.height,errorTimestamp:Date.now(),timeLocale:Intl.DateTimeFormat().resolvedOptions().timeZone,browserLocale:navigator.language||navigator.userLanguage,sessionTime:Math.round(performance.now()/1e3),deviceMemory:navigator.deviceMemory||"unknown",timezoneOffset:new Date().getTimezoneOffset(),cookiesEnabled:navigator.cookieEnabled,url:window.location.href,host:window.location.host,referrer:document.referrer,browser:z(),browserVersion:((r=(o=window._uaParserResult)==null?void 0:o.browser)==null?void 0:r.version)||null,os:J(),osVersion:((a=(t=window._uaParserResult)==null?void 0:t.os)==null?void 0:a.version)||null,deviceType:((s=(n=window._uaParserResult)==null?void 0:n.device)==null?void 0:s.type)||null,deviceModel:((c=(u=window._uaParserResult)==null?void 0:u.device)==null?void 0:c.model)||null,deviceVendor:((d=(f=window._uaParserResult)==null?void 0:f.device)==null?void 0:d.vendor)||null,loadTime:Math.max(0,performance.timing.loadEventEnd-performance.timing.navigationStart),userClicks:k.clicks,userScrolls:k.scrolls}}function y(e){return!i.ignoreErrors||!Array.isArray(i.ignoreErrors)?!1:i.ignoreErrors.some(o=>typeof o=="string"?e.includes(o):o instanceof RegExp?o.test(e):!1)}function A(e,o){let r=new AbortController,t=setTimeout(()=>r.abort(),5e3),a={"Content-Type":"application/json"};return i.token&&(a["X-Ingest-Token"]=i.token),fetch(e,{method:"POST",headers:a,body:JSON.stringify(o),signal:r.signal}).then(n=>(clearTimeout(t),n)).catch(()=>{clearTimeout(t)})}function E(e){let o=(e[0]||"")+"",r=[...e];return o.replace(/%[sdj]/g,t=>{let a=r.shift();return t==="%s"?String(a):t==="%d"?Number(a):t==="%j"?JSON.stringify(a):t})}function $(e,o){let r=document.createElement("script");r.src=e,r.async=!0,o&&(r.onload=o),document.head.appendChild(r)}function K(e,o,r){return h(this,null,function*(){var t;try{let a=yield fetch(e);if(!a.ok)return null;let n=yield a.text(),s=n.match(/\/\/# sourceMappingURL=data:application\/json;base64,([^\s]+)/),u=n.match(/\/\/# sourceMappingURL=(?!data:)([^\s]+)/),c;if(s)c=JSON.parse(atob(s[1]));else if(u){let O=new URL(u[1],e).href,I=yield fetch(O);if(!I.ok)return null;c=yield I.json()}else return null;if(!((t=window.sourceMap)!=null&&t.SourceMapConsumer))return null;let d=new window.sourceMap.SourceMapConsumer(c).originalPositionFor({line:o,column:r});if(!d.source)return null;let L=c.sources.indexOf(d.source),b=null;return c.sourcesContent&&c.sourcesContent[L]&&(b=c.sourcesContent[L]),{originalSource:d.source,originalLine:d.line,originalColumn:d.column,originalName:d.name,snippet:b}}catch(a){return null}})}function p(e){_.push(l({timestamp:Date.now()},e)),_.length>j&&_.shift()}function w(e){return h(this,null,function*(){let o=i.browserDetails?G():{},r=Object.assign(e,o,g,q());if(v&&(r.user=v),Object.keys(m).length&&(r.context=l({},m)),r.breadcrumbs=_.slice(),i.sampleRate&&Math.random()<1-parseFloat(i.sampleRate)){i.debug&&D("[Scout] Suppressed by sampling");return}if(i.attachStacktrace||(e.errorTrace=null),e.errorTrace)try{let t=e.errorTrace.split(`
|
|
2
2
|
`),a=[t[0]];for(let n=1;n<t.length;n++)!t[n].includes("/scout")&&!t[n].includes("scout.js")&&!t[n].includes("scout-error")&&a.push(t[n]);a.length>1&&(e.errorTrace=a.join(`
|
|
3
3
|
`))}catch(t){}if((e.errorTrace||e.stack)&&!e.source)try{let t=e.errorTrace||e.stack,a=t?t.split(`
|
|
4
4
|
`):[];for(let n=1;n<a.length;n++){let s=a[n].trim().match(/(http.*?):(\d+):(\d+)/);if(s){e.source=s[1],e.lineno=parseInt(s[2],10),e.colno=parseInt(s[3],10);break}}}catch(t){}if(i.debug&&D("[Scout] Sending:",r),i.endpoint&&A(i.endpoint,r),i.handleSourceMaps&&e.source&&e.lineno)try{let t=yield K(e.source,e.lineno,e.colno||0);if(t){let a=U(l({},r),{originalSource:t.originalSource,originalLine:t.originalLine,originalColumn:t.originalColumn,originalName:t.originalName,highlightLineNumber:t.originalLine});t.snippet&&(a.snippet=t.snippet),i.endpoint&&A(i.endpoint,a)}}catch(t){}})}function M(e){i.enabled&&w(e)}function Z(e){v=e}function Q(e){m=l(l({},m),e)}function Y(e,o){m[e]=o}function ee(){if(i.trackUserInteractions){document.addEventListener("click",s=>{k.clicks++;let u=s.target,c=u.tagName?u.tagName.toLowerCase():"",f=(u.textContent||"").trim().slice(0,50);p({category:"click",message:c+(f?": "+f:"")})});let n=0;window.addEventListener("scroll",()=>{let s=Date.now();s-n>100&&(k.scrolls++,n=s)})}let e=history.pushState;history.pushState=function(){e.apply(this,arguments),p({category:"navigation",message:window.location.href})},window.addEventListener("popstate",()=>{p({category:"navigation",message:window.location.href})});let o=window.fetch;window.fetch=function(n,s){let u=typeof n=="string"?n:(n==null?void 0:n.url)||"",c=(s==null?void 0:s.method)||"GET",f=Date.now();return o.apply(this,arguments).then(d=>(p({category:"fetch",message:`${c} ${u}`,data:{status:d.status,duration:Date.now()-f}}),d)).catch(d=>{throw p({category:"fetch",message:`${c} ${u}`,data:{error:d.message,duration:Date.now()-f}}),d})};let r=XMLHttpRequest.prototype.open,t=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.open=function(n,s){return this._scoutMethod=n,this._scoutUrl=s,r.apply(this,arguments)},XMLHttpRequest.prototype.send=function(){let n=this,s=Date.now();return n.addEventListener("loadend",()=>{p({category:"xhr",message:`${n._scoutMethod||"GET"} ${n._scoutUrl||""}`,data:{status:n.status,duration:Date.now()-s}})}),t.apply(this,arguments)},i.addErrorEventListener&&window.addEventListener("error",n=>h(this,null,function*(){if(i.enabled){try{let s=n.error?n.error.stack:"No stack trace available";if(y(n.message))return;i.sendErrors&&w({type:"window.onerror",message:n.message,source:n.filename,lineno:n.lineno,colno:n.colno,errorTrace:s})}catch(s){S("[Scout] Error handler failure:",s)}i.selfHealingErrors&&n.preventDefault()}})),i.addUnhandledRejectionEventListener&&window.addEventListener("unhandledrejection",n=>{if(i.enabled){try{let s=n.reason,u=(s==null?void 0:s.stack)||"No stack trace available";if(y((s==null?void 0:s.message)||""))return;i.sendErrors&&w({type:"Unhandled Promise Rejection",message:(s==null?void 0:s.message)||"Unhandled Promise Rejection",reason:n.reason,errorTrace:u})}catch(s){S("[Scout] Rejection handler failure:",s)}i.selfHealingErrors&&n.preventDefault()}}),i.overrideConsoleError&&(console.error=function(...n){if(i.enabled)try{let s=new Error().stack;if(y(E(n)))return;i.sendErrors&&w({type:"console.error",errorTrace:s,args:E(n)})}catch(s){S("[Scout] console.error override failure:",s)}}),i.overrideConsoleWarn&&(console.warn=function(...n){if(i.enabled)try{let s=new Error().stack;if(y(E(n)))return;i.sendErrors&&w({type:"console.warn",errorTrace:s,args:E(n)})}catch(s){S("[Scout] console.warn override failure:",s)}});let a=i.endpoint?new URL(i.endpoint).origin:"";i.loadUAParser&&i.browserDetails&&a&&$(`${a}/vendor/ua-parser.min.js`,()=>{typeof UAParser!="undefined"&&(window._uaParserResult=new UAParser().getResult())}),i.handleSourceMaps&&a&&$(`${a}/vendor/source-map.min.js`)}function ne(e={},o={}){if(e.user&&(v=e.user,delete e.user),P){g=l(l({},g),e),i=l(l({},i),o);return}g=l(l({},g),e),i=l(l({},i),o),P=!0,typeof window!="undefined"&&ee()}typeof window!="undefined"&&(window.Scout={init:ne,setScope:e=>{g=l(l({},g),e)},setConfig:e=>{i=l(l({},i),e)},setUser:Z,setContext:Q,setTag:Y,addBreadcrumb:p,error:M});var ae={install(e){e.config.errorHandler=(o,r,t)=>{var a,n;M({message:o.message,stack:o.stack,errorTrace:o.stack,component:((a=r==null?void 0:r.$options)==null?void 0:a.name)||((n=r==null?void 0:r.$options)==null?void 0:n.__name)||"Anonymous",type:"vue-error-handler",info:t})},e.config.warnHandler=(o,r,t)=>{var a,n;M({message:o,component:((a=r==null?void 0:r.$options)==null?void 0:a.name)||((n=r==null?void 0:r.$options)==null?void 0:n.__name)||"Anonymous",type:"vue-warn-handler",errorTrace:t})}}};export{ae as ScoutVue};
|