From 0c60957e954d5a522454dc5269195b2910db867b Mon Sep 17 00:00:00 2001 From: Nimish Singhal Date: Thu, 16 Nov 2017 18:26:01 +0530 Subject: [PATCH] Use fetch api instead of XHR api --- README.md | 5 ++ dist/plugins/angular.js | 2 +- dist/plugins/angular.min.js | 2 +- dist/plugins/console.js | 2 +- dist/plugins/console.min.js | 2 +- dist/plugins/ember.js | 2 +- dist/plugins/ember.min.js | 2 +- dist/plugins/require.js | 2 +- dist/plugins/require.min.js | 2 +- dist/plugins/vue.js | 2 +- dist/plugins/vue.min.js | 2 +- dist/raven.js | 59 ++++----------- dist/raven.min.js | 4 +- dist/raven.min.js.map | 2 +- dist/sri.json | 12 +-- package.json | 5 +- src/raven.js | 143 ++++++++++++++---------------------- 17 files changed, 100 insertions(+), 150 deletions(-) diff --git a/README.md b/README.md index e95b4ee8eaba..d0ab019e791c 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,11 @@ [![Sauce Test Status](https://saucelabs.com/browser-matrix/sentryio.svg)](https://saucelabs.com/u/sentryio) +## Reason for forking repository + +* Raven JS uses XHR API's for pushing errors to sentry. Since service workers doesn't have an access to XHR APIs, therefore it cannot communicate with an outside world. We have modified makeRequest method so that we can use it with service workers. + + ## Requirements The latest version of Raven.js is guaranteed to work with [hosted Sentry](https://sentry.io). diff --git a/dist/plugins/angular.js b/dist/plugins/angular.js index d7966f49a8e7..96871c1935fb 100644 --- a/dist/plugins/angular.js +++ b/dist/plugins/angular.js @@ -1,4 +1,4 @@ -/*! Raven.js 3.20.0 (e6baafa) | github.com/getsentry/raven-js */ +/*! Raven.js 3.20.0 (c54bf6f) | github.com/getsentry/raven-js */ /* * Includes TraceKit diff --git a/dist/plugins/angular.min.js b/dist/plugins/angular.min.js index 2a3df2b91f2e..a492c8379dba 100644 --- a/dist/plugins/angular.min.js +++ b/dist/plugins/angular.min.js @@ -1,3 +1,3 @@ -/*! Raven.js 3.20.0 (e6baafa) | github.com/getsentry/raven-js */ +/*! Raven.js 3.20.0 (c54bf6f) | github.com/getsentry/raven-js */ !function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b=b.Raven||(b.Raven={}),b=b.Plugins||(b.Plugins={}),b.Angular=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g ",i=h.length;a&&f++1&&g+e.length*i+b.length>=d));)e.push(b),g+=b.length,a=a.parentNode;return e.reverse().join(h)}function v(a){var b,c,d,e,f,g=[];if(!a||!a.tagName)return"";if(g.push(a.tagName.toLowerCase()),a.id&&g.push("#"+a.id),b=a.className,b&&h(b))for(c=b.split(/\s+/),f=0;f":"anonymous component")+(a._isVue&&a.$options.__file?" at "+a.$options.__file:"")}function e(a,b){if(b=b||window.Vue,b&&b.config){var c=b.config.errorHandler;b.config.errorHandler=function(b,e,f){var g={};"[object Object]"===Object.prototype.toString.call(e)&&(g.componentName=d(e),g.propsData=e.$options.propsData),"undefined"!=typeof f&&(g.lifecycleHook=f),a.captureException(b,{extra:g}),"function"==typeof c&&c.call(this,b,e,f)}}}b.exports=e},{}]},{},[1])(1)}); //# sourceMappingURL=vue.min.js.map \ No newline at end of file diff --git a/dist/raven.js b/dist/raven.js index e93e3775b817..1be39c5a0866 100644 --- a/dist/raven.js +++ b/dist/raven.js @@ -1,4 +1,4 @@ -/*! Raven.js 3.20.0 (e6baafa) | github.com/getsentry/raven-js */ +/*! Raven.js 3.20.0 (c54bf6f) | github.com/getsentry/raven-js */ /* * Includes TraceKit @@ -1947,51 +1947,22 @@ Raven.prototype = { }, _makeRequest: function(opts) { - var request = _window.XMLHttpRequest && new _window.XMLHttpRequest(); - if (!request) return; - - // if browser doesn't support CORS (e.g. IE7), we are out of luck - var hasCORS = 'withCredentials' in request || typeof XDomainRequest !== 'undefined'; - - if (!hasCORS) return; - var url = opts.url; - if ('withCredentials' in request) { - request.onreadystatechange = function() { - if (request.readyState !== 4) { - return; - } else if (request.status === 200) { - opts.onSuccess && opts.onSuccess(); - } else if (opts.onError) { - var err = new Error('Sentry error code: ' + request.status); - err.request = request; - opts.onError(err); - } - }; - } else { - request = new XDomainRequest(); - // xdomainrequest cannot go http -> https (or vice versa), - // so always use protocol relative - url = url.replace(/^https?:/, ''); - - // onreadystatechange not supported by XDomainRequest - if (opts.onSuccess) { - request.onload = opts.onSuccess; - } - if (opts.onError) { - request.onerror = function() { - var err = new Error('Sentry error code: XDomainRequest'); - err.request = request; - opts.onError(err); - }; - } - } - - // NOTE: auth is intentionally sent as part of query string (NOT as custom - // HTTP header) so as to avoid preflight CORS requests - request.open('POST', url + '?' + urlencode(opts.auth)); - request.send(stringify(opts.data)); + /* eslint-disable dot-notation */ + fetch(url + '?' + urlencode(opts.auth), { + method: 'POST', + body: stringify(opts.data) + }) + .then(function(response) { + opts.onSuccess && opts.onSuccess(); + }) + .catch(function(response) { + var err = new Error('Sentry error code: ' + response.status); + err.response = response; + opts.onError(err); + }); + /* eslint-enable dot-notation */ }, _logDebug: function(level) { diff --git a/dist/raven.min.js b/dist/raven.min.js index 50081a2df2a3..c48339be12ac 100644 --- a/dist/raven.min.js +++ b/dist/raven.min.js @@ -1,3 +1,3 @@ -/*! Raven.js 3.20.0 (e6baafa) | github.com/getsentry/raven-js */ -!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.Raven=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;gthis.k.maxBreadcrumbs&&this.t.shift(),this},addPlugin:function(a){var b=[].slice.call(arguments,1);return this.q.push([a,b]),this.m&&this.D(),this},setUserContext:function(a){return this.j.user=a,this},setExtraContext:function(a){return this.S("extra",a),this},setTagsContext:function(a){return this.S("tags",a),this},clearContext:function(){return this.j={},this},getContext:function(){return JSON.parse(h(this.j))},setEnvironment:function(a){return this.k.environment=a,this},setRelease:function(a){return this.k.release=a,this},setDataCallback:function(a){var b=this.k.dataCallback;return this.k.dataCallback=e(b,a),this},setBreadcrumbCallback:function(a){var b=this.k.breadcrumbCallback;return this.k.breadcrumbCallback=e(b,a),this},setShouldSendCallback:function(a){var b=this.k.shouldSendCallback;return this.k.shouldSendCallback=e(b,a),this},setTransport:function(a){return this.k.transport=a,this},lastException:function(){return this.d},lastEventId:function(){return this.f},isSetup:function(){return!!this.a&&(!!this.g||(this.ravenNotConfiguredError||(this.ravenNotConfiguredError=!0,this.y("error","Error: Raven has not been configured.")),!1))},afterLoad:function(){var a=H.RavenConfig;a&&this.config(a.dsn,a.config).install()},showReportDialog:function(a){if(I){a=a||{};var b=a.eventId||this.lastEventId();if(!b)throw new i("Missing eventId");var c=a.dsn||this.F;if(!c)throw new i("Missing DSN");var d=encodeURIComponent,e="";e+="?eventId="+d(b),e+="&dsn="+d(c);var f=a.user||this.j.user;f&&(f.name&&(e+="&name="+d(f.name)),f.email&&(e+="&email="+d(f.email)));var g=this.H(this.E(c)),h=I.createElement("script");h.async=!0,h.src=g+"/api/embed/error-page/"+e,(I.head||I.body).appendChild(h)}},J:function(){var a=this;this.l+=1,setTimeout(function(){a.l-=1})},T:function(a,b){var c,d;if(this.b){b=b||{},a="raven"+a.substr(0,1).toUpperCase()+a.substr(1),I.createEvent?(c=I.createEvent("HTMLEvents"),c.initEvent(a,!0,!0)):(c=I.createEventObject(),c.eventType=a);for(d in b)v(b,d)&&(c[d]=b[d]);if(I.createEvent)I.dispatchEvent(c);else try{I.fireEvent("on"+c.eventType.toLowerCase(),c)}catch(e){}}},U:function(a){var b=this;return function(c){if(b.V=null,b.u!==c){b.u=c;var d;try{d=z(c.target)}catch(e){d=""}b.captureBreadcrumb({category:"ui."+a,message:d})}}},W:function(){var a=this,b=1e3;return function(c){var d;try{d=c.target}catch(e){return}var f=d&&d.tagName;if(f&&("INPUT"===f||"TEXTAREA"===f||d.isContentEditable)){var g=a.V;g||a.U("input")(c),clearTimeout(g),a.V=setTimeout(function(){a.V=null},b)}}},X:function(a,b){var c=C(this.v.href),d=C(b),e=C(a);this.w=b,c.protocol===d.protocol&&c.host===d.host&&(b=d.relative),c.protocol===e.protocol&&c.host===e.host&&(a=e.relative),this.captureBreadcrumb({category:"navigation",data:{to:b,from:a}})},A:function(){var a=this;a.Y=Function.prototype.toString,Function.prototype.toString=function(){return"function"==typeof this&&this.K?a.Y.apply(this.Z,arguments):a.Y.apply(this,arguments)}},N:function(){this.Y&&(Function.prototype.toString=this.Y)},B:function(){function a(a){return function(b,d){for(var e=new Array(arguments.length),f=0;f2?arguments[2]:void 0;return c&&b.X(b.w,c+""),a.apply(this,arguments)}};D(history,"pushState",j,d),D(history,"replaceState",j,d)}if(c.console&&"console"in H&&console.log){var k=function(a,c){b.captureBreadcrumb({message:a,level:c.level,category:"console"})};r(["debug","info","warn","error","log"],function(a,b){E(console,b,k)})}},O:function(){for(var a;this.s.length;){a=this.s.shift();var b=a[0],c=a[1],d=a[2];b[c]=d}},D:function(){var a=this;r(this.q,function(b,c){var d=c[0],e=c[1];d.apply(a,[a].concat(e))})},E:function(a){var b=G.exec(a),c={},d=7;try{for(;d--;)c[F[d]]=b[d]||""}catch(e){throw new i("Invalid DSN: "+a)}if(c.pass&&!this.k.allowSecretKey)throw new i("Do not specify your secret key in the DSN. See: http://bit.ly/raven-secret-key");return c},H:function(a){var b="//"+a.host+(a.port?":"+a.port:"");return a.protocol&&(b=a.protocol+":"+b),b},z:function(){this.l||this.P.apply(this,arguments)},P:function(a,b){var c=this.Q(a,b);this.T("handle",{stackInfo:a,options:b}),this._(a.name,a.message,a.url,a.lineno,c,b)},Q:function(a,b){var c=this,d=[];if(a.stack&&a.stack.length&&(r(a.stack,function(b,e){var f=c.aa(e,a.url);f&&d.push(f)}),b&&b.trimHeadFrames))for(var e=0;e0&&(a.breadcrumbs={values:[].slice.call(this.t,0)}),q(a.tags)&&delete a.tags,this.j.user&&(a.user=this.j.user),b.environment&&(a.environment=b.environment),b.release&&(a.release=b.release),b.serverName&&(a.server_name=b.serverName),o(b.dataCallback)&&(a=b.dataCallback(a)||a),a&&!q(a)&&(!o(b.shouldSendCallback)||b.shouldSendCallback(a)))return this.ga()?void this.y("warn","Raven dropped error due to backoff: ",a):void("number"==typeof b.sampleRate?Math.random() ",i=h.length;a&&f++1&&g+e.length*i+b.length>=d));)e.push(b),g+=b.length,a=a.parentNode;return e.reverse().join(h)}function v(a){var b,c,d,e,f,g=[];if(!a||!a.tagName)return"";if(g.push(a.tagName.toLowerCase()),a.id&&g.push("#"+a.id),b=a.className,b&&h(b))for(c=b.split(/\s+/),f=0;f=0;--b)s[b]===a&&s.splice(b,1)}function c(){n(),s=[]}function k(a,b){var c=null;if(!b||f.collectWindowErrors){for(var d in s)if(s.hasOwnProperty(d))try{s[d].apply(null,[a].concat(h.call(arguments,2)))}catch(e){c=e}if(c)throw c}}function l(a,b,c,g,h){var l=null;if(v)f.computeStackTrace.augmentStackTraceWithInitialElement(v,b,c,a),o();else if(h&&e.isError(h))l=f.computeStackTrace(h),k(l,!0);else{var m,n={url:b,line:c,column:g},p=void 0,r=a;if("[object String]"==={}.toString.call(a)){var m=a.match(j);m&&(p=m[1],r=m[2])}n.func=i,l={name:p,message:r,url:d(),stack:[n]},k(l,!0)}return!!q&&q.apply(this,arguments)}function m(){r||(q=g.onerror,g.onerror=l,r=!0)}function n(){r&&(g.onerror=q,r=!1,q=void 0)}function o(){var a=v,b=t;t=null,v=null,u=null,k.apply(null,[a,!1].concat(b))}function p(a,b){var c=h.call(arguments,1);if(v){if(u===a)return;o()}var d=f.computeStackTrace(a);if(v=d,u=a,t=c,setTimeout(function(){u===a&&o()},d.incomplete?2e3:0),b!==!1)throw a}var q,r,s=[],t=null,u=null,v=null;return p.subscribe=a,p.unsubscribe=b,p.uninstall=c,p}(),f.computeStackTrace=function(){function a(a){if("undefined"!=typeof a.stack&&a.stack){for(var b,c,e,f=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||[a-z]:|\/).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,g=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,h=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i,j=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,k=/\((\S*)(?::(\d+))(?::(\d+))\)/,l=a.stack.split("\n"),m=[],n=(/^(.*) is undefined$/.exec(a.message),0),o=l.length;n eval")>-1;q&&(b=j.exec(c[3]))?(c[3]=b[1],c[4]=b[2],c[5]=null):0!==n||c[5]||"undefined"==typeof a.columnNumber||(m[0].column=a.columnNumber+1),e={url:c[3],func:c[1]||i,args:c[2]?c[2].split(","):[],line:c[4]?+c[4]:null,column:c[5]?+c[5]:null}}!e.func&&e.line&&(e.func=i),m.push(e)}return m.length?{name:a.name,message:a.message,url:d(),stack:m}:null}}function b(a,b,c,d){var e={url:b,line:c};if(e.url&&e.line){if(a.incomplete=!1,e.func||(e.func=i),a.stack.length>0&&a.stack[0].url===e.url){if(a.stack[0].line===e.line)return!1;if(!a.stack[0].line&&a.stack[0].func===e.func)return a.stack[0].line=e.line,!1}return a.stack.unshift(e),a.partial=!0,!0}return a.incomplete=!0,!1}function c(a,g){for(var h,j,k=/function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,l=[],m={},n=!1,o=c.caller;o&&!n;o=o.caller)if(o!==e&&o!==f.report){if(j={url:null,func:i,line:null,column:null},o.name?j.func=o.name:(h=k.exec(o.toString()))&&(j.func=h[1]),"undefined"==typeof j.func)try{j.func=h.input.substring(0,h.input.indexOf("{"))}catch(p){}m[""+o]?n=!0:m[""+o]=!0,l.push(j)}g&&l.splice(0,g);var q={name:a.name,message:a.message,url:d(),stack:l};return b(q,a.sourceURL||a.fileName,a.line||a.lineNumber,a.message||a.description),q}function e(b,e){var g=null;e=null==e?0:+e;try{if(g=a(b))return g}catch(h){if(f.debug)throw h}try{if(g=c(b,e+1))return g}catch(h){if(f.debug)throw h}return{name:b.name,message:b.message,url:d()}}return e.augmentStackTraceWithInitialElement=b,e.computeStackTraceFromStackProp=a,e}(),b.exports=f}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{5:5}],7:[function(a,b,c){function d(a,b){for(var c=0;c0){var i=d(c,this);~i?c.splice(i+1):c.push(this),~i?e.splice(i,1/0,g):e.push(g),~d(c,h)&&(h=b.call(this,g,h))}else c.push(h);return null==a?h instanceof Error?f(h):h:a.call(this,g,h)}}c=b.exports=e,c.getSerialize=g},{}]},{},[4])(4)}); +/*! Raven.js 3.20.0 (c54bf6f) | github.com/getsentry/raven-js */ +!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.Raven=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;gthis.k.maxBreadcrumbs&&this.t.shift(),this},addPlugin:function(a){var b=[].slice.call(arguments,1);return this.q.push([a,b]),this.m&&this.D(),this},setUserContext:function(a){return this.j.user=a,this},setExtraContext:function(a){return this.S("extra",a),this},setTagsContext:function(a){return this.S("tags",a),this},clearContext:function(){return this.j={},this},getContext:function(){return JSON.parse(h(this.j))},setEnvironment:function(a){return this.k.environment=a,this},setRelease:function(a){return this.k.release=a,this},setDataCallback:function(a){var b=this.k.dataCallback;return this.k.dataCallback=e(b,a),this},setBreadcrumbCallback:function(a){var b=this.k.breadcrumbCallback;return this.k.breadcrumbCallback=e(b,a),this},setShouldSendCallback:function(a){var b=this.k.shouldSendCallback;return this.k.shouldSendCallback=e(b,a),this},setTransport:function(a){return this.k.transport=a,this},lastException:function(){return this.d},lastEventId:function(){return this.f},isSetup:function(){return!!this.a&&(!!this.g||(this.ravenNotConfiguredError||(this.ravenNotConfiguredError=!0,this.y("error","Error: Raven has not been configured.")),!1))},afterLoad:function(){var a=H.RavenConfig;a&&this.config(a.dsn,a.config).install()},showReportDialog:function(a){if(I){a=a||{};var b=a.eventId||this.lastEventId();if(!b)throw new i("Missing eventId");var c=a.dsn||this.F;if(!c)throw new i("Missing DSN");var d=encodeURIComponent,e="";e+="?eventId="+d(b),e+="&dsn="+d(c);var f=a.user||this.j.user;f&&(f.name&&(e+="&name="+d(f.name)),f.email&&(e+="&email="+d(f.email)));var g=this.H(this.E(c)),h=I.createElement("script");h.async=!0,h.src=g+"/api/embed/error-page/"+e,(I.head||I.body).appendChild(h)}},J:function(){var a=this;this.l+=1,setTimeout(function(){a.l-=1})},T:function(a,b){var c,d;if(this.b){b=b||{},a="raven"+a.substr(0,1).toUpperCase()+a.substr(1),I.createEvent?(c=I.createEvent("HTMLEvents"),c.initEvent(a,!0,!0)):(c=I.createEventObject(),c.eventType=a);for(d in b)v(b,d)&&(c[d]=b[d]);if(I.createEvent)I.dispatchEvent(c);else try{I.fireEvent("on"+c.eventType.toLowerCase(),c)}catch(e){}}},U:function(a){var b=this;return function(c){if(b.V=null,b.u!==c){b.u=c;var d;try{d=z(c.target)}catch(e){d=""}b.captureBreadcrumb({category:"ui."+a,message:d})}}},W:function(){var a=this,b=1e3;return function(c){var d;try{d=c.target}catch(e){return}var f=d&&d.tagName;if(f&&("INPUT"===f||"TEXTAREA"===f||d.isContentEditable)){var g=a.V;g||a.U("input")(c),clearTimeout(g),a.V=setTimeout(function(){a.V=null},b)}}},X:function(a,b){var c=C(this.v.href),d=C(b),e=C(a);this.w=b,c.protocol===d.protocol&&c.host===d.host&&(b=d.relative),c.protocol===e.protocol&&c.host===e.host&&(a=e.relative),this.captureBreadcrumb({category:"navigation",data:{to:b,from:a}})},A:function(){var a=this;a.Y=Function.prototype.toString,Function.prototype.toString=function(){return"function"==typeof this&&this.K?a.Y.apply(this.Z,arguments):a.Y.apply(this,arguments)}},N:function(){this.Y&&(Function.prototype.toString=this.Y)},B:function(){function a(a){return function(b,d){for(var e=new Array(arguments.length),f=0;f2?arguments[2]:void 0;return c&&b.X(b.w,c+""),a.apply(this,arguments)}};D(history,"pushState",j,d),D(history,"replaceState",j,d)}if(c.console&&"console"in H&&console.log){var k=function(a,c){b.captureBreadcrumb({message:a,level:c.level,category:"console"})};r(["debug","info","warn","error","log"],function(a,b){E(console,b,k)})}},O:function(){for(var a;this.s.length;){a=this.s.shift();var b=a[0],c=a[1],d=a[2];b[c]=d}},D:function(){var a=this;r(this.q,function(b,c){var d=c[0],e=c[1];d.apply(a,[a].concat(e))})},E:function(a){var b=G.exec(a),c={},d=7;try{for(;d--;)c[F[d]]=b[d]||""}catch(e){throw new i("Invalid DSN: "+a)}if(c.pass&&!this.k.allowSecretKey)throw new i("Do not specify your secret key in the DSN. See: http://bit.ly/raven-secret-key");return c},H:function(a){var b="//"+a.host+(a.port?":"+a.port:"");return a.protocol&&(b=a.protocol+":"+b),b},z:function(){this.l||this.P.apply(this,arguments)},P:function(a,b){var c=this.Q(a,b);this.T("handle",{stackInfo:a,options:b}),this._(a.name,a.message,a.url,a.lineno,c,b)},Q:function(a,b){var c=this,d=[];if(a.stack&&a.stack.length&&(r(a.stack,function(b,e){var f=c.aa(e,a.url);f&&d.push(f)}),b&&b.trimHeadFrames))for(var e=0;e0&&(a.breadcrumbs={values:[].slice.call(this.t,0)}),q(a.tags)&&delete a.tags,this.j.user&&(a.user=this.j.user),b.environment&&(a.environment=b.environment),b.release&&(a.release=b.release),b.serverName&&(a.server_name=b.serverName),o(b.dataCallback)&&(a=b.dataCallback(a)||a),a&&!q(a)&&(!o(b.shouldSendCallback)||b.shouldSendCallback(a)))return this.ga()?void this.y("warn","Raven dropped error due to backoff: ",a):void("number"==typeof b.sampleRate?Math.random() ",i=h.length;a&&f++1&&g+e.length*i+b.length>=d));)e.push(b),g+=b.length,a=a.parentNode;return e.reverse().join(h)}function v(a){var b,c,d,e,f,g=[];if(!a||!a.tagName)return"";if(g.push(a.tagName.toLowerCase()),a.id&&g.push("#"+a.id),b=a.className,b&&h(b))for(c=b.split(/\s+/),f=0;f=0;--b)s[b]===a&&s.splice(b,1)}function c(){n(),s=[]}function k(a,b){var c=null;if(!b||f.collectWindowErrors){for(var d in s)if(s.hasOwnProperty(d))try{s[d].apply(null,[a].concat(h.call(arguments,2)))}catch(e){c=e}if(c)throw c}}function l(a,b,c,g,h){var l=null;if(v)f.computeStackTrace.augmentStackTraceWithInitialElement(v,b,c,a),o();else if(h&&e.isError(h))l=f.computeStackTrace(h),k(l,!0);else{var m,n={url:b,line:c,column:g},p=void 0,r=a;if("[object String]"==={}.toString.call(a)){var m=a.match(j);m&&(p=m[1],r=m[2])}n.func=i,l={name:p,message:r,url:d(),stack:[n]},k(l,!0)}return!!q&&q.apply(this,arguments)}function m(){r||(q=g.onerror,g.onerror=l,r=!0)}function n(){r&&(g.onerror=q,r=!1,q=void 0)}function o(){var a=v,b=t;t=null,v=null,u=null,k.apply(null,[a,!1].concat(b))}function p(a,b){var c=h.call(arguments,1);if(v){if(u===a)return;o()}var d=f.computeStackTrace(a);if(v=d,u=a,t=c,setTimeout(function(){u===a&&o()},d.incomplete?2e3:0),b!==!1)throw a}var q,r,s=[],t=null,u=null,v=null;return p.subscribe=a,p.unsubscribe=b,p.uninstall=c,p}(),f.computeStackTrace=function(){function a(a){if("undefined"!=typeof a.stack&&a.stack){for(var b,c,e,f=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||[a-z]:|\/).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,g=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,h=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i,j=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,k=/\((\S*)(?::(\d+))(?::(\d+))\)/,l=a.stack.split("\n"),m=[],n=(/^(.*) is undefined$/.exec(a.message),0),o=l.length;n eval")>-1;q&&(b=j.exec(c[3]))?(c[3]=b[1],c[4]=b[2],c[5]=null):0!==n||c[5]||"undefined"==typeof a.columnNumber||(m[0].column=a.columnNumber+1),e={url:c[3],func:c[1]||i,args:c[2]?c[2].split(","):[],line:c[4]?+c[4]:null,column:c[5]?+c[5]:null}}!e.func&&e.line&&(e.func=i),m.push(e)}return m.length?{name:a.name,message:a.message,url:d(),stack:m}:null}}function b(a,b,c,d){var e={url:b,line:c};if(e.url&&e.line){if(a.incomplete=!1,e.func||(e.func=i),a.stack.length>0&&a.stack[0].url===e.url){if(a.stack[0].line===e.line)return!1;if(!a.stack[0].line&&a.stack[0].func===e.func)return a.stack[0].line=e.line,!1}return a.stack.unshift(e),a.partial=!0,!0}return a.incomplete=!0,!1}function c(a,g){for(var h,j,k=/function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,l=[],m={},n=!1,o=c.caller;o&&!n;o=o.caller)if(o!==e&&o!==f.report){if(j={url:null,func:i,line:null,column:null},o.name?j.func=o.name:(h=k.exec(o.toString()))&&(j.func=h[1]),"undefined"==typeof j.func)try{j.func=h.input.substring(0,h.input.indexOf("{"))}catch(p){}m[""+o]?n=!0:m[""+o]=!0,l.push(j)}g&&l.splice(0,g);var q={name:a.name,message:a.message,url:d(),stack:l};return b(q,a.sourceURL||a.fileName,a.line||a.lineNumber,a.message||a.description),q}function e(b,e){var g=null;e=null==e?0:+e;try{if(g=a(b))return g}catch(h){if(f.debug)throw h}try{if(g=c(b,e+1))return g}catch(h){if(f.debug)throw h}return{name:b.name,message:b.message,url:d()}}return e.augmentStackTraceWithInitialElement=b,e.computeStackTraceFromStackProp=a,e}(),b.exports=f}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{5:5}],7:[function(a,b,c){function d(a,b){for(var c=0;c0){var i=d(c,this);~i?c.splice(i+1):c.push(this),~i?e.splice(i,1/0,g):e.push(g),~d(c,h)&&(h=b.call(this,g,h))}else c.push(h);return null==a?h instanceof Error?f(h):h:a.call(this,g,h)}}c=b.exports=e,c.getSerialize=g},{}]},{},[4])(4)}); //# sourceMappingURL=raven.min.js.map \ No newline at end of file diff --git a/dist/raven.min.js.map b/dist/raven.min.js.map index 05384bfb70f3..0eb1f43c513f 100644 --- a/dist/raven.min.js.map +++ b/dist/raven.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["raven.js"],"names":["f","exports","module","define","amd","g","window","global","self","this","Raven","e","t","n","r","s","o","u","a","require","i","Error","code","l","call","length","1","_dereq_","RavenConfigError","message","name","prototype","constructor","2","wrapMethod","console","level","callback","originalConsoleLevel","originalConsole","sentryLevel","args","slice","arguments","msg","join","data","logger","extra","Function","apply","3","now","Date","keepOriginalCallback","original","isFunction","_hasJSON","JSON","stringify","_hasDocument","isUndefined","_document","_hasNavigator","_navigator","_lastCapturedException","_lastData","_lastEventId","_globalServer","_globalKey","_globalProject","_globalContext","_globalOptions","ignoreErrors","ignoreUrls","whitelistUrls","includePaths","collectWindowErrors","maxMessageLength","maxUrlLength","stackTraceLimit","autoBreadcrumbs","instrument","sampleRate","_ignoreOnError","_isRavenInstalled","_originalErrorStackTraceLimit","_originalConsole","_window","_originalConsoleMethods","_plugins","_startTime","_wrappedBuiltIns","_breadcrumbs","_lastCapturedEvent","_location","location","_lastHref","href","_resetBackoff","method","TraceKit","utils","isError","isObject","isErrorEvent","isString","isEmptyObject","each","objectMerge","truncate","objectFrozen","hasKey","joinRegExp","urlencode","uuid4","htmlTreeAsString","isSameException","isSameStacktrace","parseUrl","fill","wrapConsoleMethod","dsnKeys","split","dsnPattern","document","navigator","VERSION","debug","config","dsn","options","_logDebug","globalOptions","key","value","setDSN","push","maxBreadcrumbs","Math","max","min","autoBreadcrumbDefaults","xhr","dom","sentry","toString","instrumentDefaults","tryCatch","install","isSetup","report","subscribe","_handleOnErrorStackInfo","_patchFunctionToString","_instrumentTryCatch","_instrumentBreadcrumbs","_drainPlugins","uri","_parseDSN","lastSlash","path","lastIndexOf","substr","_dsn","user","_globalSecret","pass","_getGlobalServer","_globalEndpoint","context","func","undefined","wrap","_before","wrapped","deep","_ignoreNextOnError","captureException","__raven__","__raven_wrapper__","property","__inner__","uninstall","_unpatchFunctionToString","_restoreBuiltIns","ex","isNotError","isNotErrorEvent","isErrorEventWithoutError","error","captureMessage","trimHeadFrames","stacktrace","stack","computeStackTrace","_handleStackInfo","ex1","test","initialCall","fileurl","url","fingerprint","frames","_prepareFrames","reverse","_send","captureBreadcrumb","obj","crumb","timestamp","breadcrumbCallback","result","shift","addPlugin","plugin","pluginArgs","setUserContext","setExtraContext","_mergeContext","setTagsContext","tags","clearContext","getContext","parse","setEnvironment","environment","setRelease","release","setDataCallback","dataCallback","setBreadcrumbCallback","setShouldSendCallback","shouldSendCallback","setTransport","transport","lastException","lastEventId","ravenNotConfiguredError","afterLoad","RavenConfig","showReportDialog","eventId","encode","encodeURIComponent","qs","email","globalServer","script","createElement","async","src","head","body","appendChild","J","setTimeout","T","eventType","evt","toUpperCase","createEvent","initEvent","createEventObject","dispatchEvent","fireEvent","toLowerCase","U","evtName","_keypressTimeout","target","category","W","debounceDuration","tagName","isContentEditable","timeout","_breadcrumbEventHandler","clearTimeout","X","from","to","parsedLoc","parsedTo","parsedFrom","protocol","host","relative","A","_originalFunctionToString","__orig_method__","N","B","wrapTimeFn","orig","fn","Array","originalCallback","wrapEventTarget","proto","hasOwnProperty","capture","secure","handleEvent","err","before","clickHandler","keypressHandler","_keypressEventHandler","type","wrappedBuiltIns","requestAnimationFrame","cb","eventTargets","C","wrapProp","prop","xhrproto","XMLHttpRequest","origOpen","indexOf","__raven_xhr","status_code","origSend","onreadystatechangeHandler","readyState","status","props","j","onreadystatechange","origFetch","fetchInput","Request","fetchData","then","response","addEventListener","attachEvent","chrome","isChromePackagedApp","app","runtime","hasPushAndReplaceState","history","pushState","replaceState","oldOnPopState","onpopstate","currentHref","_captureUrlChange","historyReplacementFunction","origHistFunction","log","consoleMethodCallback","_","O","builtin","D","installer","concat","E","str","m","exec","allowSecretKey","H","port","z","P","stackInfo","_triggerEvent","_processException","lineno","Q","frame","_normalizeFrame","in_app","aa","stackInfoUrl","normalized","filename","line","colno","column","function","prefixedMessage","exception","values","culprit","ba","request","Referer","breadcrumbs","_trimBreadcrumbs","ca","urlProp","urlProps","da","httpData","userAgent","headers","User-Agent","referrer","x","_backoffDuration","_backoffStart","ga","ha","current","last","ia","_shouldBackoff","retry","getResponseHeader","parseInt","R","baseData","project","platform","_getHttpData","serverName","server_name","random","_sendProcessedPayload","ka","ja","_trimPacket","allowDuplicates","_isRepeatData","event_id","_getUuid","auth","sentry_version","sentry_client","sentry_key","sentry_secret","_makeRequest","onSuccess","onError","_setBackoffState","la","opts","hasCORS","XDomainRequest","replace","onload","onerror","open","send","y","S","setUser","setReleaseContext","5","6","7","4","RavenConstructor","_Raven","noConflict","what","supportsErrorEvent","Object","ErrorEvent","wrappedCallback","normalizedData","obj1","obj2","isFrozen","object","patterns","pattern","sources","len","source","RegExp","pairs","match","query","fragment","crypto","msCrypto","getRandomValues","arr","Uint16Array","pad","num","v","c","elem","nextStr","MAX_TRAVERSE_HEIGHT","MAX_OUTPUT_LEN","out","height","separator","sepLength","htmlElementAsString","parentNode","className","classes","attr","id","attrWhitelist","getAttribute","isOnlyOneTruthy","b","ex2","stack1","stack2","frames1","frames2","replacement","track","getLocationHref","_slice","UNKNOWN_FUNCTION","ERROR_TYPES_RE","handler","installGlobalHandler","handlers","unsubscribe","splice","unsubscribeAll","uninstallGlobalHandler","notifyHandlers","isWindowError","inner","traceKitWindowOnError","lineNo","colNo","lastExceptionStack","augmentStackTraceWithInitialElement","processLastException","groups","_oldOnerrorHandler","_onErrorHandlerInstalled","_lastExceptionStack","_lastArgs","lastArgs","rethrow","incomplete","computeStackTraceFromStackProp","submatch","parts","element","gecko","winjs","geckoEval","chromeEval","lines","isNative","isEval","columnNumber","initial","unshift","partial","computeStackTraceByWalkingCallerChain","depth","item","functionName","funcs","recursion","curr","caller","input","substring","sourceURL","fileName","lineNumber","description","haystack","needle","replacer","spaces","cycleReplacer","serializer","stringifyError","keys","thisPos","Infinity","getSerialize"],"mappings":"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","file":"raven.min.js"} \ No newline at end of file +{"version":3,"sources":["raven.js"],"names":["f","exports","module","define","amd","g","window","global","self","this","Raven","e","t","n","r","s","o","u","a","require","i","Error","code","l","call","length","1","_dereq_","RavenConfigError","message","name","prototype","constructor","2","wrapMethod","console","level","callback","originalConsoleLevel","originalConsole","sentryLevel","args","slice","arguments","msg","join","data","logger","extra","Function","apply","3","now","Date","keepOriginalCallback","original","isFunction","_hasJSON","JSON","stringify","_hasDocument","isUndefined","_document","_hasNavigator","_navigator","_lastCapturedException","_lastData","_lastEventId","_globalServer","_globalKey","_globalProject","_globalContext","_globalOptions","ignoreErrors","ignoreUrls","whitelistUrls","includePaths","collectWindowErrors","maxMessageLength","maxUrlLength","stackTraceLimit","autoBreadcrumbs","instrument","sampleRate","_ignoreOnError","_isRavenInstalled","_originalErrorStackTraceLimit","_originalConsole","_window","_originalConsoleMethods","_plugins","_startTime","_wrappedBuiltIns","_breadcrumbs","_lastCapturedEvent","_location","location","_lastHref","href","_resetBackoff","method","TraceKit","utils","isError","isObject","isErrorEvent","isString","isEmptyObject","each","objectMerge","truncate","objectFrozen","hasKey","joinRegExp","urlencode","uuid4","htmlTreeAsString","isSameException","isSameStacktrace","parseUrl","fill","wrapConsoleMethod","dsnKeys","split","dsnPattern","document","navigator","VERSION","debug","config","dsn","options","_logDebug","globalOptions","key","value","setDSN","push","maxBreadcrumbs","Math","max","min","autoBreadcrumbDefaults","xhr","dom","sentry","toString","instrumentDefaults","tryCatch","install","isSetup","report","subscribe","_handleOnErrorStackInfo","_patchFunctionToString","_instrumentTryCatch","_instrumentBreadcrumbs","_drainPlugins","uri","_parseDSN","lastSlash","path","lastIndexOf","substr","_dsn","user","_globalSecret","pass","_getGlobalServer","_globalEndpoint","context","func","undefined","wrap","_before","wrapped","deep","_ignoreNextOnError","captureException","__raven__","__raven_wrapper__","property","__inner__","uninstall","_unpatchFunctionToString","_restoreBuiltIns","ex","isNotError","isNotErrorEvent","isErrorEventWithoutError","error","captureMessage","trimHeadFrames","stacktrace","stack","computeStackTrace","_handleStackInfo","ex1","test","initialCall","fileurl","url","fingerprint","frames","_prepareFrames","reverse","_send","captureBreadcrumb","obj","crumb","timestamp","breadcrumbCallback","result","shift","addPlugin","plugin","pluginArgs","setUserContext","setExtraContext","_mergeContext","setTagsContext","tags","clearContext","getContext","parse","setEnvironment","environment","setRelease","release","setDataCallback","dataCallback","setBreadcrumbCallback","setShouldSendCallback","shouldSendCallback","setTransport","transport","lastException","lastEventId","ravenNotConfiguredError","afterLoad","RavenConfig","showReportDialog","eventId","encode","encodeURIComponent","qs","email","globalServer","script","createElement","async","src","head","body","appendChild","J","setTimeout","T","eventType","evt","toUpperCase","createEvent","initEvent","createEventObject","dispatchEvent","fireEvent","toLowerCase","U","evtName","_keypressTimeout","target","category","W","debounceDuration","tagName","isContentEditable","timeout","_breadcrumbEventHandler","clearTimeout","X","from","to","parsedLoc","parsedTo","parsedFrom","protocol","host","relative","A","_originalFunctionToString","__orig_method__","N","B","wrapTimeFn","orig","fn","Array","originalCallback","wrapEventTarget","proto","hasOwnProperty","capture","secure","handleEvent","err","before","clickHandler","keypressHandler","_keypressEventHandler","type","wrappedBuiltIns","requestAnimationFrame","cb","eventTargets","C","wrapProp","prop","xhrproto","XMLHttpRequest","origOpen","indexOf","__raven_xhr","status_code","origSend","onreadystatechangeHandler","readyState","status","props","j","onreadystatechange","origFetch","fetchInput","Request","fetchData","then","response","addEventListener","attachEvent","chrome","isChromePackagedApp","app","runtime","hasPushAndReplaceState","history","pushState","replaceState","oldOnPopState","onpopstate","currentHref","_captureUrlChange","historyReplacementFunction","origHistFunction","log","consoleMethodCallback","_","O","builtin","D","installer","concat","E","str","m","exec","allowSecretKey","H","port","z","P","stackInfo","_triggerEvent","_processException","lineno","Q","frame","_normalizeFrame","in_app","aa","stackInfoUrl","normalized","filename","line","colno","column","function","prefixedMessage","exception","values","culprit","ba","request","Referer","breadcrumbs","_trimBreadcrumbs","ca","urlProp","urlProps","da","httpData","userAgent","headers","User-Agent","referrer","x","_backoffDuration","_backoffStart","ga","ha","current","last","ia","_shouldBackoff","retry","getResponseHeader","parseInt","R","baseData","project","platform","_getHttpData","serverName","server_name","random","_sendProcessedPayload","ka","ja","_trimPacket","allowDuplicates","_isRepeatData","event_id","_getUuid","auth","sentry_version","sentry_client","sentry_key","sentry_secret","_makeRequest","onSuccess","onError","_setBackoffState","la","opts","fetch","y","S","setUser","setReleaseContext","5","6","7","4","RavenConstructor","_Raven","noConflict","what","supportsErrorEvent","Object","ErrorEvent","wrappedCallback","normalizedData","obj1","obj2","isFrozen","object","patterns","pattern","sources","len","replace","source","RegExp","pairs","match","query","fragment","crypto","msCrypto","getRandomValues","arr","Uint16Array","pad","num","v","c","elem","nextStr","MAX_TRAVERSE_HEIGHT","MAX_OUTPUT_LEN","out","height","separator","sepLength","htmlElementAsString","parentNode","className","classes","attr","id","attrWhitelist","getAttribute","isOnlyOneTruthy","b","ex2","stack1","stack2","frames1","frames2","replacement","track","getLocationHref","_slice","UNKNOWN_FUNCTION","ERROR_TYPES_RE","handler","installGlobalHandler","handlers","unsubscribe","splice","unsubscribeAll","uninstallGlobalHandler","notifyHandlers","isWindowError","inner","traceKitWindowOnError","lineNo","colNo","lastExceptionStack","augmentStackTraceWithInitialElement","processLastException","groups","_oldOnerrorHandler","_onErrorHandlerInstalled","onerror","_lastExceptionStack","_lastArgs","lastArgs","rethrow","incomplete","computeStackTraceFromStackProp","submatch","parts","element","gecko","winjs","geckoEval","chromeEval","lines","isNative","isEval","columnNumber","initial","unshift","partial","computeStackTraceByWalkingCallerChain","depth","item","functionName","funcs","recursion","curr","caller","input","substring","sourceURL","fileName","lineNumber","description","haystack","needle","replacer","spaces","cycleReplacer","serializer","stringifyError","keys","thisPos","Infinity","getSerialize"],"mappings":"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","file":"raven.min.js"} \ No newline at end of file diff --git a/dist/sri.json b/dist/sri.json index 89834306d1aa..cf5aca200827 100644 --- a/dist/sri.json +++ b/dist/sri.json @@ -1,20 +1,20 @@ { "@dist/raven.js": { "hashes": { - "sha256": "jYF4nOaEwqkTJLU1wOR0i8npVgKRwlqzOTb6l64UnnQ=", - "sha512": "Ub9vUbOIAuiyF0yE7dQZTldjWEMiwU3LuATVQZEo8B8gbwS/Urbkx15y2ScrF/eVSx1VaVY5fLWXZb3iqIonww==" + "sha256": "IVeJrM2u2qn5TdABNivlAs5ZHhwNSjnlPqXF52NFWXE=", + "sha512": "yH+bmw43vFPXeFmyRrxpadOj3MQzHK4ym8QIh6mRKEd++4d3upNqJJNVypcfS+27AuxCSgIF11zZpiyxtCAsgw==" }, "type": null, - "integrity": "sha256-jYF4nOaEwqkTJLU1wOR0i8npVgKRwlqzOTb6l64UnnQ= sha512-Ub9vUbOIAuiyF0yE7dQZTldjWEMiwU3LuATVQZEo8B8gbwS/Urbkx15y2ScrF/eVSx1VaVY5fLWXZb3iqIonww==", + "integrity": "sha256-IVeJrM2u2qn5TdABNivlAs5ZHhwNSjnlPqXF52NFWXE= sha512-yH+bmw43vFPXeFmyRrxpadOj3MQzHK4ym8QIh6mRKEd++4d3upNqJJNVypcfS+27AuxCSgIF11zZpiyxtCAsgw==", "path": "dist/raven.js" }, "@dist/raven.min.js": { "hashes": { - "sha256": "T6xp+8yRcwkUpnayYg/Q4ghOycPeh+ERquJRxW408QU=", - "sha512": "J6EJyBgq/iIJKrjme9c/NGQOcEa63VZDLLP8Zx/D3KcZoS2H65CijyRzRMtozBZjGJlJOEbK/AjYzJH+zzgiyg==" + "sha256": "1oktImFY/vID/TOpBz36pYsYeu3U4r5B+cS7wJAAUhA=", + "sha512": "f1zGSrHh6eLj7gUIJdfO9p9Y9y5SXV7pf4GuRweDplVOw3f3DYk6Tc4GX/dGsEP+HKUKY5cPteLY13LkDxC6Yg==" }, "type": null, - "integrity": "sha256-T6xp+8yRcwkUpnayYg/Q4ghOycPeh+ERquJRxW408QU= sha512-J6EJyBgq/iIJKrjme9c/NGQOcEa63VZDLLP8Zx/D3KcZoS2H65CijyRzRMtozBZjGJlJOEbK/AjYzJH+zzgiyg==", + "integrity": "sha256-1oktImFY/vID/TOpBz36pYsYeu3U4r5B+cS7wJAAUhA= sha512-f1zGSrHh6eLj7gUIJdfO9p9Y9y5SXV7pf4GuRweDplVOw3f3DYk6Tc4GX/dGsEP+HKUKY5cPteLY13LkDxC6Yg==", "path": "dist/raven.min.js" } } \ No newline at end of file diff --git a/package.json b/package.json index 712b8878369d..e1bdfdb3673a 100644 --- a/package.json +++ b/package.json @@ -98,5 +98,8 @@ "path": "./dist/raven.min.js", "maxSize": "10 kB" } - ] + ], + "dependencies": { + "whatwg-fetch": "^2.0.3" + } } diff --git a/src/raven.js b/src/raven.js index 6fe18c1ef289..9e39ee75a435 100644 --- a/src/raven.js +++ b/src/raven.js @@ -684,14 +684,14 @@ Raven.prototype = { }, /** - * Override the default HTTP transport mechanism that transmits data - * to the Sentry server. - * - * @param {function} transport Function invoked instead of the default - * `makeRequest` handler. - * - * @return {Raven} - */ + * Override the default HTTP transport mechanism that transmits data + * to the Sentry server. + * + * @param {function} transport Function invoked instead of the default + * `makeRequest` handler. + * + * @return {Raven} + */ setTransport: function(transport) { this._globalOptions.transport = transport; @@ -828,11 +828,11 @@ Raven.prototype = { }, /** - * Wraps addEventListener to capture UI breadcrumbs - * @param evtName the event name (e.g. "click") - * @returns {Function} - * @private - */ + * Wraps addEventListener to capture UI breadcrumbs + * @param evtName the event name (e.g. "click") + * @returns {Function} + * @private + */ _breadcrumbEventHandler: function(evtName) { var self = this; return function(evt) { @@ -867,10 +867,10 @@ Raven.prototype = { }, /** - * Wraps addEventListener to capture keypress UI events - * @returns {Function} - * @private - */ + * Wraps addEventListener to capture keypress UI events + * @returns {Function} + * @private + */ _keypressEventHandler: function() { var self = this, debounceDuration = 1000; // milliseconds @@ -912,11 +912,11 @@ Raven.prototype = { }, /** - * Captures a breadcrumb of type "navigation", normalizing input URLs - * @param to the originating URL - * @param from the target URL - * @private - */ + * Captures a breadcrumb of type "navigation", normalizing input URLs + * @param to the originating URL + * @param from the target URL + * @private + */ _captureUrlChange: function(from, to) { var parsedLoc = parseUrl(this._location.href); var parsedTo = parseUrl(to); @@ -963,9 +963,9 @@ Raven.prototype = { }, /** - * Wrap timer functions and event targets to catch errors and provide - * better metadata. - */ + * Wrap timer functions and event targets to catch errors and provide + * better metadata. + */ _instrumentTryCatch: function() { var self = this; @@ -1129,14 +1129,14 @@ Raven.prototype = { }, /** - * Instrument browser built-ins w/ breadcrumb capturing - * - XMLHttpRequests - * - DOM interactions (click/typing) - * - window.location changes - * - console - * - * Can be disabled or individually configured via the `autoBreadcrumbs` config option - */ + * Instrument browser built-ins w/ breadcrumb capturing + * - XMLHttpRequests + * - DOM interactions (click/typing) + * - window.location changes + * - console + * + * Can be disabled or individually configured via the `autoBreadcrumbs` config option + */ _instrumentBreadcrumbs: function() { var self = this; var autoBreadcrumbs = this._globalOptions.autoBreadcrumbs; @@ -1583,8 +1583,8 @@ Raven.prototype = { }, /** - * Truncate breadcrumb values (right now just URLs) - */ + * Truncate breadcrumb values (right now just URLs) + */ _trimBreadcrumbs: function(breadcrumbs) { // known breadcrumb properties with urls // TODO: also consider arbitrary prop values that start with (https?)?:// @@ -1646,14 +1646,14 @@ Raven.prototype = { }, /** - * Returns true if the in-process data payload matches the signature - * of the previously-sent data - * - * NOTE: This has to be done at this level because TraceKit can generate - * data from window.onerror WITHOUT an exception object (IE8, IE9, - * other old browsers). This can take the form of an "exception" - * data object with a single frame (derived from the onerror args). - */ + * Returns true if the in-process data payload matches the signature + * of the previously-sent data + * + * NOTE: This has to be done at this level because TraceKit can generate + * data from window.onerror WITHOUT an exception object (IE8, IE9, + * other old browsers). This can take the form of an "exception" + * data object with a single frame (derived from the onerror args). + */ _isRepeatData: function(current) { var last = this._lastData; @@ -1882,51 +1882,22 @@ Raven.prototype = { }, _makeRequest: function(opts) { - var request = _window.XMLHttpRequest && new _window.XMLHttpRequest(); - if (!request) return; - - // if browser doesn't support CORS (e.g. IE7), we are out of luck - var hasCORS = 'withCredentials' in request || typeof XDomainRequest !== 'undefined'; - - if (!hasCORS) return; - var url = opts.url; - if ('withCredentials' in request) { - request.onreadystatechange = function() { - if (request.readyState !== 4) { - return; - } else if (request.status === 200) { - opts.onSuccess && opts.onSuccess(); - } else if (opts.onError) { - var err = new Error('Sentry error code: ' + request.status); - err.request = request; - opts.onError(err); - } - }; - } else { - request = new XDomainRequest(); - // xdomainrequest cannot go http -> https (or vice versa), - // so always use protocol relative - url = url.replace(/^https?:/, ''); - - // onreadystatechange not supported by XDomainRequest - if (opts.onSuccess) { - request.onload = opts.onSuccess; - } - if (opts.onError) { - request.onerror = function() { - var err = new Error('Sentry error code: XDomainRequest'); - err.request = request; - opts.onError(err); - }; - } - } - - // NOTE: auth is intentionally sent as part of query string (NOT as custom - // HTTP header) so as to avoid preflight CORS requests - request.open('POST', url + '?' + urlencode(opts.auth)); - request.send(stringify(opts.data)); + /* eslint-disable dot-notation */ + fetch(url + '?' + urlencode(opts.auth), { + method: 'POST', + body: stringify(opts.data) + }) + .then(function(response) { + opts.onSuccess && opts.onSuccess(); + }) + .catch(function(response) { + var err = new Error('Sentry error code: ' + response.status); + err.response = response; + opts.onError(err); + }); + /* eslint-enable dot-notation */ }, _logDebug: function(level) {