sentry-uniapp 1.0.11 → 1.0.12
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/README.md +107 -140
- package/dist/backend.d.ts.map +1 -1
- package/dist/backend.js.map +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +3 -0
- package/dist/client.js.map +1 -1
- package/dist/package.json +52 -0
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +0 -1
- package/dist/sdk.js.map +1 -1
- package/dist/sentry-uniapp.min.js +2 -16
- package/dist/sentry-uniapp.min.js.LICENSE.txt +14 -0
- package/dist/sentry-uniapp.min.js.map +1 -1
- package/dist/src/backend.d.ts +41 -0
- package/dist/src/backend.d.ts.map +1 -0
- package/dist/src/backend.js +68 -0
- package/dist/src/backend.js.map +1 -0
- package/dist/src/client.d.ts +55 -0
- package/dist/src/client.d.ts.map +1 -0
- package/dist/src/client.js +51 -0
- package/dist/src/client.js.map +1 -0
- package/dist/src/crossPlatform.d.ts +18 -0
- package/dist/src/crossPlatform.d.ts.map +1 -0
- package/dist/src/crossPlatform.js +80 -0
- package/dist/src/crossPlatform.js.map +1 -0
- package/dist/src/eventbuilder.d.ts +11 -0
- package/dist/src/eventbuilder.d.ts.map +1 -0
- package/dist/src/eventbuilder.js +79 -0
- package/dist/src/eventbuilder.js.map +1 -0
- package/dist/src/flags.d.ts +3 -0
- package/dist/src/flags.d.ts.map +1 -0
- package/dist/src/flags.js +18 -0
- package/dist/src/flags.js.map +1 -0
- package/dist/src/helpers.d.ts +35 -0
- package/dist/src/helpers.d.ts.map +1 -0
- package/dist/src/helpers.js +236 -0
- package/dist/src/helpers.js.map +1 -0
- package/dist/src/index.d.ts +10 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +40 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/integrations/globalhandlers.d.ts +47 -0
- package/dist/src/integrations/globalhandlers.d.ts.map +1 -0
- package/dist/src/integrations/globalhandlers.js +153 -0
- package/dist/src/integrations/globalhandlers.js.map +1 -0
- package/dist/src/integrations/ignoreMpcrawlerErrors.d.ts +21 -0
- package/dist/src/integrations/ignoreMpcrawlerErrors.d.ts.map +1 -0
- package/dist/src/integrations/ignoreMpcrawlerErrors.js +40 -0
- package/dist/src/integrations/ignoreMpcrawlerErrors.js.map +1 -0
- package/dist/src/integrations/index.d.ts +7 -0
- package/dist/src/integrations/index.d.ts.map +1 -0
- package/dist/src/integrations/index.js +14 -0
- package/dist/src/integrations/index.js.map +1 -0
- package/dist/src/integrations/linkederrors.d.ts +40 -0
- package/dist/src/integrations/linkederrors.d.ts.map +1 -0
- package/dist/src/integrations/linkederrors.js +65 -0
- package/dist/src/integrations/linkederrors.js.map +1 -0
- package/dist/src/integrations/router.d.ts +28 -0
- package/dist/src/integrations/router.d.ts.map +1 -0
- package/dist/src/integrations/router.js +47 -0
- package/dist/src/integrations/router.js.map +1 -0
- package/dist/src/integrations/system.d.ts +17 -0
- package/dist/src/integrations/system.d.ts.map +1 -0
- package/dist/src/integrations/system.js +65 -0
- package/dist/src/integrations/system.js.map +1 -0
- package/dist/src/integrations/trycatch.d.ts +26 -0
- package/dist/src/integrations/trycatch.d.ts.map +1 -0
- package/dist/src/integrations/trycatch.js +166 -0
- package/dist/src/integrations/trycatch.js.map +1 -0
- package/dist/src/parsers.d.ts +21 -0
- package/dist/src/parsers.d.ts.map +1 -0
- package/dist/src/parsers.js +97 -0
- package/dist/src/parsers.js.map +1 -0
- package/dist/src/sdk.d.ts +99 -0
- package/dist/src/sdk.d.ts.map +1 -0
- package/dist/src/sdk.js +155 -0
- package/dist/src/sdk.js.map +1 -0
- package/dist/src/tracekit.d.ts +38 -0
- package/dist/src/tracekit.d.ts.map +1 -0
- package/dist/src/tracekit.js +222 -0
- package/dist/src/tracekit.js.map +1 -0
- package/dist/src/transports/base.d.ts +22 -0
- package/dist/src/transports/base.d.ts.map +1 -0
- package/dist/src/transports/base.js +28 -0
- package/dist/src/transports/base.js.map +1 -0
- package/dist/src/transports/index.d.ts +3 -0
- package/dist/src/transports/index.d.ts.map +1 -0
- package/dist/src/transports/index.js +6 -0
- package/dist/src/transports/index.js.map +1 -0
- package/dist/src/transports/xhr.d.ts +10 -0
- package/dist/src/transports/xhr.d.ts.map +1 -0
- package/dist/src/transports/xhr.js +42 -0
- package/dist/src/transports/xhr.js.map +1 -0
- package/dist/src/version.d.ts +3 -0
- package/dist/src/version.d.ts.map +1 -0
- package/dist/src/version.js +6 -0
- package/dist/src/version.js.map +1 -0
- package/dist/utils/debug-build.d.ts +7 -0
- package/dist/utils/debug-build.d.ts.map +1 -0
- package/dist/utils/debug-build.js +9 -0
- package/dist/utils/debug-build.js.map +1 -0
- package/dist/utils/logger.d.ts +16 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +50 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +2 -1
- package/dist/version.js.map +1 -1
- package/esm/backend.d.ts.map +1 -1
- package/esm/backend.js.map +1 -1
- package/esm/client.d.ts.map +1 -1
- package/esm/client.js +3 -0
- package/esm/client.js.map +1 -1
- package/esm/package.json +52 -0
- package/esm/sdk.d.ts.map +1 -1
- package/esm/sdk.js +0 -1
- package/esm/sdk.js.map +1 -1
- package/esm/src/backend.d.ts +41 -0
- package/esm/src/backend.d.ts.map +1 -0
- package/esm/src/backend.js +66 -0
- package/esm/src/backend.js.map +1 -0
- package/esm/src/client.d.ts +55 -0
- package/esm/src/client.d.ts.map +1 -0
- package/esm/src/client.js +49 -0
- package/esm/src/client.js.map +1 -0
- package/esm/src/crossPlatform.d.ts +18 -0
- package/esm/src/crossPlatform.d.ts.map +1 -0
- package/esm/src/crossPlatform.js +77 -0
- package/esm/src/crossPlatform.js.map +1 -0
- package/esm/src/eventbuilder.d.ts +11 -0
- package/esm/src/eventbuilder.d.ts.map +1 -0
- package/esm/src/eventbuilder.js +75 -0
- package/esm/src/eventbuilder.js.map +1 -0
- package/esm/src/flags.d.ts +3 -0
- package/esm/src/flags.d.ts.map +1 -0
- package/esm/src/flags.js +16 -0
- package/esm/src/flags.js.map +1 -0
- package/esm/src/helpers.d.ts +35 -0
- package/esm/src/helpers.d.ts.map +1 -0
- package/esm/src/helpers.js +229 -0
- package/esm/src/helpers.js.map +1 -0
- package/esm/src/index.d.ts +10 -0
- package/esm/src/index.d.ts.map +1 -0
- package/esm/src/index.js +9 -0
- package/esm/src/index.js.map +1 -0
- package/esm/src/integrations/globalhandlers.d.ts +47 -0
- package/esm/src/integrations/globalhandlers.d.ts.map +1 -0
- package/esm/src/integrations/globalhandlers.js +151 -0
- package/esm/src/integrations/globalhandlers.js.map +1 -0
- package/esm/src/integrations/ignoreMpcrawlerErrors.d.ts +21 -0
- package/esm/src/integrations/ignoreMpcrawlerErrors.d.ts.map +1 -0
- package/esm/src/integrations/ignoreMpcrawlerErrors.js +38 -0
- package/esm/src/integrations/ignoreMpcrawlerErrors.js.map +1 -0
- package/esm/src/integrations/index.d.ts +7 -0
- package/esm/src/integrations/index.d.ts.map +1 -0
- package/esm/src/integrations/index.js +7 -0
- package/esm/src/integrations/index.js.map +1 -0
- package/esm/src/integrations/linkederrors.d.ts +40 -0
- package/esm/src/integrations/linkederrors.d.ts.map +1 -0
- package/esm/src/integrations/linkederrors.js +63 -0
- package/esm/src/integrations/linkederrors.js.map +1 -0
- package/esm/src/integrations/router.d.ts +28 -0
- package/esm/src/integrations/router.d.ts.map +1 -0
- package/esm/src/integrations/router.js +45 -0
- package/esm/src/integrations/router.js.map +1 -0
- package/esm/src/integrations/system.d.ts +17 -0
- package/esm/src/integrations/system.d.ts.map +1 -0
- package/esm/src/integrations/system.js +63 -0
- package/esm/src/integrations/system.js.map +1 -0
- package/esm/src/integrations/trycatch.d.ts +26 -0
- package/esm/src/integrations/trycatch.d.ts.map +1 -0
- package/esm/src/integrations/trycatch.js +164 -0
- package/esm/src/integrations/trycatch.js.map +1 -0
- package/esm/src/parsers.d.ts +21 -0
- package/esm/src/parsers.d.ts.map +1 -0
- package/esm/src/parsers.js +91 -0
- package/esm/src/parsers.js.map +1 -0
- package/esm/src/sdk.d.ts +99 -0
- package/esm/src/sdk.d.ts.map +1 -0
- package/esm/src/sdk.js +147 -0
- package/esm/src/sdk.js.map +1 -0
- package/esm/src/tracekit.d.ts +38 -0
- package/esm/src/tracekit.d.ts.map +1 -0
- package/esm/src/tracekit.js +219 -0
- package/esm/src/tracekit.js.map +1 -0
- package/esm/src/transports/base.d.ts +22 -0
- package/esm/src/transports/base.d.ts.map +1 -0
- package/esm/src/transports/base.js +26 -0
- package/esm/src/transports/base.js.map +1 -0
- package/esm/src/transports/index.d.ts +3 -0
- package/esm/src/transports/index.d.ts.map +1 -0
- package/esm/src/transports/index.js +3 -0
- package/esm/src/transports/index.js.map +1 -0
- package/esm/src/transports/xhr.d.ts +10 -0
- package/esm/src/transports/xhr.d.ts.map +1 -0
- package/esm/src/transports/xhr.js +40 -0
- package/esm/src/transports/xhr.js.map +1 -0
- package/esm/src/version.d.ts +3 -0
- package/esm/src/version.d.ts.map +1 -0
- package/esm/src/version.js +4 -0
- package/esm/src/version.js.map +1 -0
- package/esm/utils/debug-build.d.ts +7 -0
- package/esm/utils/debug-build.d.ts.map +1 -0
- package/esm/utils/debug-build.js +7 -0
- package/esm/utils/debug-build.js.map +1 -0
- package/esm/utils/logger.d.ts +25 -0
- package/esm/utils/logger.d.ts.map +1 -0
- package/esm/utils/logger.js +42 -0
- package/esm/utils/logger.js.map +1 -0
- package/esm/version.d.ts +1 -1
- package/esm/version.d.ts.map +1 -1
- package/esm/version.js +2 -1
- package/esm/version.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
var globalhandlers_1 = require("./globalhandlers");
|
|
3
|
+
Object.defineProperty(exports, "GlobalHandlers", { enumerable: true, get: function () { return globalhandlers_1.GlobalHandlers; } });
|
|
4
|
+
var trycatch_1 = require("./trycatch");
|
|
5
|
+
Object.defineProperty(exports, "TryCatch", { enumerable: true, get: function () { return trycatch_1.TryCatch; } });
|
|
6
|
+
var linkederrors_1 = require("./linkederrors");
|
|
7
|
+
Object.defineProperty(exports, "LinkedErrors", { enumerable: true, get: function () { return linkederrors_1.LinkedErrors; } });
|
|
8
|
+
var system_1 = require("./system");
|
|
9
|
+
Object.defineProperty(exports, "System", { enumerable: true, get: function () { return system_1.System; } });
|
|
10
|
+
var router_1 = require("./router");
|
|
11
|
+
Object.defineProperty(exports, "Router", { enumerable: true, get: function () { return router_1.Router; } });
|
|
12
|
+
var ignoreMpcrawlerErrors_1 = require("./ignoreMpcrawlerErrors");
|
|
13
|
+
Object.defineProperty(exports, "IgnoreMpcrawlerErrors", { enumerable: true, get: function () { return ignoreMpcrawlerErrors_1.IgnoreMpcrawlerErrors; } });
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/index.ts"],"names":[],"mappings":";AAAA,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AAErB,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA","sourcesContent":["export { GlobalHandlers } from \"./globalhandlers\";\nexport { TryCatch } from \"./trycatch\";\nexport { LinkedErrors } from \"./linkederrors\";\n\nexport { System } from \"./system\";\nexport { Router } from \"./router\";\nexport { IgnoreMpcrawlerErrors } from \"./ignoreMpcrawlerErrors\";\n"]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Integration } from '@sentry/types';
|
|
2
|
+
/** Adds SDK info to an event. */
|
|
3
|
+
export declare class LinkedErrors implements Integration {
|
|
4
|
+
/**
|
|
5
|
+
* @inheritDoc
|
|
6
|
+
*/
|
|
7
|
+
readonly name: string;
|
|
8
|
+
/**
|
|
9
|
+
* @inheritDoc
|
|
10
|
+
*/
|
|
11
|
+
static id: string;
|
|
12
|
+
/**
|
|
13
|
+
* @inheritDoc
|
|
14
|
+
*/
|
|
15
|
+
private readonly _key;
|
|
16
|
+
/**
|
|
17
|
+
* @inheritDoc
|
|
18
|
+
*/
|
|
19
|
+
private readonly _limit;
|
|
20
|
+
/**
|
|
21
|
+
* @inheritDoc
|
|
22
|
+
*/
|
|
23
|
+
constructor(options?: {
|
|
24
|
+
key?: string;
|
|
25
|
+
limit?: number;
|
|
26
|
+
});
|
|
27
|
+
/**
|
|
28
|
+
* @inheritDoc
|
|
29
|
+
*/
|
|
30
|
+
setupOnce(): void;
|
|
31
|
+
/**
|
|
32
|
+
* @inheritDoc
|
|
33
|
+
*/
|
|
34
|
+
private _handler;
|
|
35
|
+
/**
|
|
36
|
+
* @inheritDoc
|
|
37
|
+
*/
|
|
38
|
+
private _walkErrorTree;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=linkederrors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linkederrors.d.ts","sourceRoot":"","sources":["../../../src/integrations/linkederrors.ts"],"names":[],"mappings":"AACA,OAAO,EAA8C,WAAW,EAAE,MAAM,eAAe,CAAC;AAQxF,iCAAiC;AACjC,qBAAa,YAAa,YAAW,WAAW;IAC9C;;OAEG;IACH,SAAgB,IAAI,EAAE,MAAM,CAAmB;IAE/C;;OAEG;IACH,OAAc,EAAE,EAAE,MAAM,CAAkB;IAE1C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAE9B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC;;OAEG;gBACgB,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO;IAKjE;;OAEG;IACI,SAAS,IAAI,IAAI;IAUxB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAShB;;OAEG;IACH,OAAO,CAAC,cAAc;CAQvB"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
exports.LinkedErrors = void 0;
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var core_1 = require("@sentry/core");
|
|
5
|
+
var parsers_1 = require("../parsers");
|
|
6
|
+
var tracekit_1 = require("../tracekit");
|
|
7
|
+
var DEFAULT_KEY = 'cause';
|
|
8
|
+
var DEFAULT_LIMIT = 5;
|
|
9
|
+
/** Adds SDK info to an event. */
|
|
10
|
+
var LinkedErrors = /** @class */ (function () {
|
|
11
|
+
/**
|
|
12
|
+
* @inheritDoc
|
|
13
|
+
*/
|
|
14
|
+
function LinkedErrors(options) {
|
|
15
|
+
if (options === void 0) { options = {}; }
|
|
16
|
+
/**
|
|
17
|
+
* @inheritDoc
|
|
18
|
+
*/
|
|
19
|
+
this.name = LinkedErrors.id;
|
|
20
|
+
this._key = options.key || DEFAULT_KEY;
|
|
21
|
+
this._limit = options.limit || DEFAULT_LIMIT;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* @inheritDoc
|
|
25
|
+
*/
|
|
26
|
+
LinkedErrors.prototype.setupOnce = function () {
|
|
27
|
+
core_1.addGlobalEventProcessor(function (event, hint) {
|
|
28
|
+
var self = core_1.getCurrentHub().getIntegration(LinkedErrors);
|
|
29
|
+
if (self) {
|
|
30
|
+
return self._handler(event, hint);
|
|
31
|
+
}
|
|
32
|
+
return event;
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* @inheritDoc
|
|
37
|
+
*/
|
|
38
|
+
LinkedErrors.prototype._handler = function (event, hint) {
|
|
39
|
+
if (!event.exception || !event.exception.values || !hint || !(hint.originalException instanceof Error)) {
|
|
40
|
+
return event;
|
|
41
|
+
}
|
|
42
|
+
var linkedErrors = this._walkErrorTree(hint.originalException, this._key);
|
|
43
|
+
event.exception.values = tslib_1.__spread(linkedErrors, event.exception.values);
|
|
44
|
+
return event;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* @inheritDoc
|
|
48
|
+
*/
|
|
49
|
+
LinkedErrors.prototype._walkErrorTree = function (error, key, stack) {
|
|
50
|
+
if (stack === void 0) { stack = []; }
|
|
51
|
+
if (!(error[key] instanceof Error) || stack.length + 1 >= this._limit) {
|
|
52
|
+
return stack;
|
|
53
|
+
}
|
|
54
|
+
var stacktrace = tracekit_1.computeStackTrace(error[key]);
|
|
55
|
+
var exception = parsers_1.exceptionFromStacktrace(stacktrace);
|
|
56
|
+
return this._walkErrorTree(error[key], key, tslib_1.__spread([exception], stack));
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* @inheritDoc
|
|
60
|
+
*/
|
|
61
|
+
LinkedErrors.id = 'LinkedErrors';
|
|
62
|
+
return LinkedErrors;
|
|
63
|
+
}());
|
|
64
|
+
exports.LinkedErrors = LinkedErrors;
|
|
65
|
+
//# sourceMappingURL=linkederrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linkederrors.js","sourceRoot":"","sources":["../../../src/integrations/linkederrors.ts"],"names":[],"mappings":";;;AAAA,qCAAsE;AAGtE,sCAAqD;AACrD,wCAAgD;AAEhD,IAAM,WAAW,GAAG,OAAO,CAAC;AAC5B,IAAM,aAAa,GAAG,CAAC,CAAC;AAExB,iCAAiC;AACjC;IAqBE;;OAEG;IACH,sBAAmB,OAA8C;QAA9C,wBAAA,EAAA,YAA8C;QAvBjE;;WAEG;QACa,SAAI,GAAW,YAAY,CAAC,EAAE,CAAC;QAqB7C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,WAAW,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC;IAC/C,CAAC;IAED;;OAEG;IACI,gCAAS,GAAhB;QACE,8BAAuB,CAAC,UAAC,KAAY,EAAE,IAAgB;YACrD,IAAM,IAAI,GAAG,oBAAa,EAAE,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC1D,IAAI,IAAI,EAAE;gBACR,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACnC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,+BAAQ,GAAhB,UAAiB,KAAY,EAAE,IAAgB;QAC7C,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,YAAY,KAAK,CAAC,EAAE;YACtG,OAAO,KAAK,CAAC;SACd;QACD,IAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,KAAK,CAAC,SAAS,CAAC,MAAM,oBAAO,YAAY,EAAK,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,qCAAc,GAAtB,UAAuB,KAAoB,EAAE,GAAW,EAAE,KAAuB;QAAvB,sBAAA,EAAA,UAAuB;QAC/E,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE;YACrE,OAAO,KAAK,CAAC;SACd;QACD,IAAM,UAAU,GAAG,4BAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACjD,IAAM,SAAS,GAAG,iCAAuB,CAAC,UAAU,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,oBAAG,SAAS,GAAK,KAAK,EAAE,CAAC;IACrE,CAAC;IA1DD;;OAEG;IACW,eAAE,GAAW,cAAc,CAAC;IAwD5C,mBAAC;CAAA,AAjED,IAiEC;AAjEY,oCAAY","sourcesContent":["import { addGlobalEventProcessor, getCurrentHub } from '@sentry/core';\nimport { Event, EventHint, Exception, ExtendedError, Integration } from '@sentry/types';\n\nimport { exceptionFromStacktrace } from '../parsers';\nimport { computeStackTrace } from '../tracekit';\n\nconst DEFAULT_KEY = 'cause';\nconst DEFAULT_LIMIT = 5;\n\n/** Adds SDK info to an event. */\nexport class LinkedErrors implements Integration {\n /**\n * @inheritDoc\n */\n public readonly name: string = LinkedErrors.id;\n\n /**\n * @inheritDoc\n */\n public static id: string = 'LinkedErrors';\n\n /**\n * @inheritDoc\n */\n private readonly _key: string;\n\n /**\n * @inheritDoc\n */\n private readonly _limit: number;\n\n /**\n * @inheritDoc\n */\n public constructor(options: { key?: string; limit?: number } = {}) {\n this._key = options.key || DEFAULT_KEY;\n this._limit = options.limit || DEFAULT_LIMIT;\n }\n\n /**\n * @inheritDoc\n */\n public setupOnce(): void {\n addGlobalEventProcessor((event: Event, hint?: EventHint) => {\n const self = getCurrentHub().getIntegration(LinkedErrors);\n if (self) {\n return self._handler(event, hint);\n }\n return event;\n });\n }\n\n /**\n * @inheritDoc\n */\n private _handler(event: Event, hint?: EventHint): Event | null {\n if (!event.exception || !event.exception.values || !hint || !(hint.originalException instanceof Error)) {\n return event;\n }\n const linkedErrors = this._walkErrorTree(hint.originalException, this._key);\n event.exception.values = [...linkedErrors, ...event.exception.values];\n return event;\n }\n\n /**\n * @inheritDoc\n */\n private _walkErrorTree(error: ExtendedError, key: string, stack: Exception[] = []): Exception[] {\n if (!(error[key] instanceof Error) || stack.length + 1 >= this._limit) {\n return stack;\n }\n const stacktrace = computeStackTrace(error[key]);\n const exception = exceptionFromStacktrace(stacktrace);\n return this._walkErrorTree(error[key], key, [exception, ...stack]);\n }\n}\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Integration } from "@sentry/types";
|
|
2
|
+
/** JSDoc */
|
|
3
|
+
interface RouterIntegrations {
|
|
4
|
+
enable?: boolean;
|
|
5
|
+
}
|
|
6
|
+
/** UserAgent */
|
|
7
|
+
export declare class Router implements Integration {
|
|
8
|
+
/**
|
|
9
|
+
* @inheritDoc
|
|
10
|
+
*/
|
|
11
|
+
name: string;
|
|
12
|
+
/**
|
|
13
|
+
* @inheritDoc
|
|
14
|
+
*/
|
|
15
|
+
static id: string;
|
|
16
|
+
/** JSDoc */
|
|
17
|
+
private readonly _options;
|
|
18
|
+
/**
|
|
19
|
+
* @inheritDoc
|
|
20
|
+
*/
|
|
21
|
+
constructor(options?: RouterIntegrations);
|
|
22
|
+
/**
|
|
23
|
+
* @inheritDoc
|
|
24
|
+
*/
|
|
25
|
+
setupOnce(): void;
|
|
26
|
+
}
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/integrations/router.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,WAAW,EAAE,MAAM,eAAe,CAAC;AAInD,YAAY;AACZ,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,gBAAgB;AAChB,qBAAa,MAAO,YAAW,WAAW;IACxC;;OAEG;IACI,IAAI,EAAE,MAAM,CAAa;IAEhC;;OAEG;IACH,OAAc,EAAE,EAAE,MAAM,CAAY;IAEpC,YAAY;IACZ,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAE9C;;OAEG;gBACgB,OAAO,CAAC,EAAE,kBAAkB;IAO/C;;OAEG;IACI,SAAS,IAAI,IAAI;CA4BzB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
exports.Router = void 0;
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var core_1 = require("@sentry/core");
|
|
5
|
+
/** UserAgent */
|
|
6
|
+
var Router = /** @class */ (function () {
|
|
7
|
+
/**
|
|
8
|
+
* @inheritDoc
|
|
9
|
+
*/
|
|
10
|
+
function Router(options) {
|
|
11
|
+
/**
|
|
12
|
+
* @inheritDoc
|
|
13
|
+
*/
|
|
14
|
+
this.name = Router.id;
|
|
15
|
+
this._options = tslib_1.__assign({ enable: true }, options);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @inheritDoc
|
|
19
|
+
*/
|
|
20
|
+
Router.prototype.setupOnce = function () {
|
|
21
|
+
var _this = this;
|
|
22
|
+
core_1.addGlobalEventProcessor(function (event) {
|
|
23
|
+
if (core_1.getCurrentHub().getIntegration(Router)) {
|
|
24
|
+
if (_this._options.enable) {
|
|
25
|
+
try {
|
|
26
|
+
var routers = getCurrentPages().map(function (route) { return ({
|
|
27
|
+
route: route.route,
|
|
28
|
+
options: route.options,
|
|
29
|
+
}); });
|
|
30
|
+
return tslib_1.__assign(tslib_1.__assign({}, event), { extra: tslib_1.__assign(tslib_1.__assign({}, event.extra), { routers: routers }) });
|
|
31
|
+
}
|
|
32
|
+
catch (e) {
|
|
33
|
+
console.warn("sentry-uniapp get router info fail: " + e);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return event;
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* @inheritDoc
|
|
42
|
+
*/
|
|
43
|
+
Router.id = "Router";
|
|
44
|
+
return Router;
|
|
45
|
+
}());
|
|
46
|
+
exports.Router = Router;
|
|
47
|
+
//# sourceMappingURL=router.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/integrations/router.ts"],"names":[],"mappings":";;;AAAA,qCAAsE;AAUtE,gBAAgB;AAChB;IAcE;;OAEG;IACH,gBAAmB,OAA4B;QAhB/C;;WAEG;QACI,SAAI,GAAW,MAAM,CAAC,EAAE,CAAC;QAc9B,IAAI,CAAC,QAAQ,sBACX,MAAM,EAAE,IAAI,IACT,OAAO,CACX,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,0BAAS,GAAhB;QAAA,iBA2BC;QA1BC,8BAAuB,CAAC,UAAC,KAAY;YACnC,IAAI,oBAAa,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;gBAC1C,IAAI,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;oBACxB,IAAI;wBACF,IAAM,OAAO,GAAG,eAAe,EAAE,CAAC,GAAG,CACnC,UAAC,KAAyC,IAAK,OAAA,CAAC;4BAC9C,KAAK,EAAE,KAAK,CAAC,KAAK;4BAClB,OAAO,EAAE,KAAK,CAAC,OAAO;yBACvB,CAAC,EAH6C,CAG7C,CACH,CAAC;wBAEF,6CACK,KAAK,KACR,KAAK,wCACA,KAAK,CAAC,KAAK,KACd,OAAO,SAAA,OAET;qBACH;oBAAC,OAAO,CAAC,EAAE;wBACV,OAAO,CAAC,IAAI,CAAC,yCAAuC,CAAG,CAAC,CAAC;qBAC1D;iBACF;aACF;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAhDD;;OAEG;IACW,SAAE,GAAW,QAAQ,CAAC;IA8CtC,aAAC;CAAA,AAvDD,IAuDC;AAvDY,wBAAM","sourcesContent":["import { addGlobalEventProcessor, getCurrentHub } from \"@sentry/core\";\nimport { Event, Integration } from \"@sentry/types\";\n\ndeclare const getCurrentPages: any;\n\n/** JSDoc */\ninterface RouterIntegrations {\n enable?: boolean;\n}\n\n/** UserAgent */\nexport class Router implements Integration {\n /**\n * @inheritDoc\n */\n public name: string = Router.id;\n\n /**\n * @inheritDoc\n */\n public static id: string = \"Router\";\n\n /** JSDoc */\n private readonly _options: RouterIntegrations;\n\n /**\n * @inheritDoc\n */\n public constructor(options?: RouterIntegrations) {\n this._options = {\n enable: true,\n ...options,\n };\n }\n\n /**\n * @inheritDoc\n */\n public setupOnce(): void {\n addGlobalEventProcessor((event: Event) => {\n if (getCurrentHub().getIntegration(Router)) {\n if (this._options.enable) {\n try {\n const routers = getCurrentPages().map(\n (route: { route: string; options: object }) => ({\n route: route.route,\n options: route.options,\n })\n );\n\n return {\n ...event,\n extra: {\n ...event.extra,\n routers,\n },\n };\n } catch (e) {\n console.warn(`sentry-uniapp get router info fail: ${e}`);\n }\n }\n }\n\n return event;\n });\n }\n}\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Integration } from "@sentry/types";
|
|
2
|
+
/** UserAgent */
|
|
3
|
+
export declare class System implements Integration {
|
|
4
|
+
/**
|
|
5
|
+
* @inheritDoc
|
|
6
|
+
*/
|
|
7
|
+
name: string;
|
|
8
|
+
/**
|
|
9
|
+
* @inheritDoc
|
|
10
|
+
*/
|
|
11
|
+
static id: string;
|
|
12
|
+
/**
|
|
13
|
+
* @inheritDoc
|
|
14
|
+
*/
|
|
15
|
+
setupOnce(): void;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=system.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../../src/integrations/system.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,WAAW,EAAE,MAAM,eAAe,CAAC;AAKnD,gBAAgB;AAChB,qBAAa,MAAO,YAAW,WAAW;IACxC;;OAEG;IACI,IAAI,EAAE,MAAM,CAAa;IAEhC;;OAEG;IACH,OAAc,EAAE,EAAE,MAAM,CAAY;IAEpC;;OAEG;IACI,SAAS,IAAI,IAAI;CAqEzB"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
exports.System = void 0;
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var core_1 = require("@sentry/core");
|
|
5
|
+
var crossPlatform_1 = require("../crossPlatform");
|
|
6
|
+
var version_1 = require("../version");
|
|
7
|
+
/** UserAgent */
|
|
8
|
+
var System = /** @class */ (function () {
|
|
9
|
+
function System() {
|
|
10
|
+
/**
|
|
11
|
+
* @inheritDoc
|
|
12
|
+
*/
|
|
13
|
+
this.name = System.id;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @inheritDoc
|
|
17
|
+
*/
|
|
18
|
+
System.prototype.setupOnce = function () {
|
|
19
|
+
core_1.addGlobalEventProcessor(function (event) {
|
|
20
|
+
if (core_1.getCurrentHub().getIntegration(System)) {
|
|
21
|
+
try {
|
|
22
|
+
var systemInfo = crossPlatform_1.sdk.getSystemInfoSync();
|
|
23
|
+
var batteryLevel = systemInfo.batteryLevel, // 微信小程序
|
|
24
|
+
currentBattery = systemInfo.currentBattery, // 支付宝小程序、 钉钉小程序
|
|
25
|
+
battery = systemInfo.battery, // 字节跳动小程序
|
|
26
|
+
brand = systemInfo.brand, language = systemInfo.language, model = systemInfo.model, pixelRatio = systemInfo.pixelRatio, platform = systemInfo.platform, screenHeight = systemInfo.screenHeight, screenWidth = systemInfo.screenWidth, statusBarHeight = systemInfo.statusBarHeight, system = systemInfo.system, version = systemInfo.version, windowHeight = systemInfo.windowHeight, windowWidth = systemInfo.windowWidth, app = systemInfo.app, // 支付宝小程序
|
|
27
|
+
appName = systemInfo.appName, // 字节跳动小程序
|
|
28
|
+
fontSizeSetting = systemInfo.fontSizeSetting;
|
|
29
|
+
// tslint:disable-next-line:variable-name
|
|
30
|
+
var SDKVersion = version_1.SDK_VERSION;
|
|
31
|
+
var _a = tslib_1.__read(system.split(" "), 2), systemName = _a[0], systemVersion = _a[1];
|
|
32
|
+
return tslib_1.__assign(tslib_1.__assign({}, event), { contexts: tslib_1.__assign(tslib_1.__assign({}, event.contexts), { device: {
|
|
33
|
+
brand: brand,
|
|
34
|
+
battery_level: batteryLevel || currentBattery || battery,
|
|
35
|
+
model: model,
|
|
36
|
+
screen_dpi: pixelRatio
|
|
37
|
+
}, os: {
|
|
38
|
+
name: systemName || system,
|
|
39
|
+
version: systemVersion || system
|
|
40
|
+
}, extra: tslib_1.__assign({ SDKVersion: SDKVersion,
|
|
41
|
+
language: language,
|
|
42
|
+
platform: platform,
|
|
43
|
+
screenHeight: screenHeight,
|
|
44
|
+
screenWidth: screenWidth,
|
|
45
|
+
statusBarHeight: statusBarHeight,
|
|
46
|
+
version: version,
|
|
47
|
+
windowHeight: windowHeight,
|
|
48
|
+
windowWidth: windowWidth,
|
|
49
|
+
fontSizeSetting: fontSizeSetting, app: app || appName || crossPlatform_1.appName }, systemInfo) }) });
|
|
50
|
+
}
|
|
51
|
+
catch (e) {
|
|
52
|
+
console.warn("sentry-uniapp get system info fail: " + e);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return event;
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* @inheritDoc
|
|
60
|
+
*/
|
|
61
|
+
System.id = "System";
|
|
62
|
+
return System;
|
|
63
|
+
}());
|
|
64
|
+
exports.System = System;
|
|
65
|
+
//# sourceMappingURL=system.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../../src/integrations/system.ts"],"names":[],"mappings":";;;AAAA,qCAAsE;AAGtE,kDAAkE;AAClE,sCAAyC;AAEzC,gBAAgB;AAChB;IAAA;QACE;;WAEG;QACI,SAAI,GAAW,MAAM,CAAC,EAAE,CAAC;IA+ElC,CAAC;IAxEC;;OAEG;IACI,0BAAS,GAAhB;QACE,8BAAuB,CAAC,UAAC,KAAY;YACnC,IAAI,oBAAa,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;gBAC1C,IAAI;oBACF,IAAM,UAAU,GAAG,mBAAG,CAAC,iBAAiB,EAAE,CAAA;oBAGxC,IAAA,YAAY,GAkBV,UAAU,aAlBA,EAAE,QAAQ;oBACtB,cAAc,GAiBZ,UAAU,eAjBE,EAAE,gBAAgB;oBAChC,OAAO,GAgBL,UAAU,QAhBL,EAAE,UAAU;oBACnB,KAAK,GAeH,UAAU,MAfP,EACL,QAAQ,GAcN,UAAU,SAdJ,EACR,KAAK,GAaH,UAAU,MAbP,EACL,UAAU,GAYR,UAAU,WAZF,EACV,QAAQ,GAWN,UAAU,SAXJ,EACR,YAAY,GAUV,UAAU,aAVA,EACZ,WAAW,GAST,UAAU,YATD,EACX,eAAe,GAQb,UAAU,gBARG,EACf,MAAM,GAOJ,UAAU,OAPN,EACN,OAAO,GAML,UAAU,QANL,EACP,YAAY,GAKV,UAAU,aALA,EACZ,WAAW,GAIT,UAAU,YAJD,EACX,GAAG,GAGD,UAAU,IAHT,EAAE,SAAS;oBACd,OAAO,GAEL,UAAU,QAFL,EAAE,UAAU;oBACnB,eAAe,GACb,UAAU,gBADG,CACF;oBAEf,yCAAyC;oBACzC,IAAM,UAAU,GAAG,qBAAW,CAAC;oBACzB,IAAA,KAAA,eAA8B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAA,EAA9C,UAAU,QAAA,EAAE,aAAa,QAAqB,CAAC;oBAEtD,6CACK,KAAK,KACR,QAAQ,wCACH,KAAK,CAAC,QAAQ,KACjB,MAAM,EAAE;gCACN,KAAK,OAAA;gCACL,aAAa,EAAE,YAAY,IAAI,cAAc,IAAI,OAAO;gCACxD,KAAK,OAAA;gCACL,UAAU,EAAE,UAAU;6BACvB,EACD,EAAE,EAAE;gCACF,IAAI,EAAE,UAAU,IAAI,MAAM;gCAC1B,OAAO,EAAE,aAAa,IAAI,MAAM;6BACjC,EACD,KAAK,qBACH,UAAU,YAAA;gCACV,QAAQ,UAAA;gCACR,QAAQ,UAAA;gCACR,YAAY,cAAA;gCACZ,WAAW,aAAA;gCACX,eAAe,iBAAA;gCACf,OAAO,SAAA;gCACP,YAAY,cAAA;gCACZ,WAAW,aAAA;gCACX,eAAe,iBAAA,EACf,GAAG,EAAE,GAAG,IAAI,OAAO,IAAI,uBAAc,IAClC,UAAU,QAGjB;iBACH;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO,CAAC,IAAI,CAAC,yCAAuC,CAAG,CAAC,CAAC;iBAC1D;aACF;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IA5ED;;OAEG;IACW,SAAE,GAAW,QAAQ,CAAC;IA0EtC,aAAC;CAAA,AAnFD,IAmFC;AAnFY,wBAAM","sourcesContent":["import { addGlobalEventProcessor, getCurrentHub } from \"@sentry/core\";\nimport { Event, Integration } from \"@sentry/types\";\n\nimport { appName as currentAppName, sdk } from \"../crossPlatform\";\nimport { SDK_VERSION } from \"../version\";\n\n/** UserAgent */\nexport class System implements Integration {\n /**\n * @inheritDoc\n */\n public name: string = System.id;\n\n /**\n * @inheritDoc\n */\n public static id: string = \"System\";\n\n /**\n * @inheritDoc\n */\n public setupOnce(): void {\n addGlobalEventProcessor((event: Event) => {\n if (getCurrentHub().getIntegration(System)) {\n try {\n const systemInfo = sdk.getSystemInfoSync()\n\n const {\n batteryLevel, // 微信小程序\n currentBattery, // 支付宝小程序、 钉钉小程序\n battery, // 字节跳动小程序\n brand,\n language,\n model,\n pixelRatio,\n platform,\n screenHeight,\n screenWidth,\n statusBarHeight,\n system,\n version,\n windowHeight,\n windowWidth,\n app, // 支付宝小程序\n appName, // 字节跳动小程序\n fontSizeSetting, // 支付宝小程序、 钉钉小程序、微信小程序\n } = systemInfo;\n\n // tslint:disable-next-line:variable-name\n const SDKVersion = SDK_VERSION;\n const [systemName, systemVersion] = system.split(\" \");\n\n return {\n ...event,\n contexts: {\n ...event.contexts,\n device: {\n brand,\n battery_level: batteryLevel || currentBattery || battery,\n model,\n screen_dpi: pixelRatio\n },\n os: {\n name: systemName || system,\n version: systemVersion || system\n },\n extra: {\n SDKVersion,\n language,\n platform,\n screenHeight,\n screenWidth,\n statusBarHeight,\n version,\n windowHeight,\n windowWidth,\n fontSizeSetting,\n app: app || appName || currentAppName,\n ...systemInfo,\n }\n }\n };\n } catch (e) {\n console.warn(`sentry-uniapp get system info fail: ${e}`);\n }\n }\n\n return event;\n });\n }\n}\n"]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Integration } from "@sentry/types";
|
|
2
|
+
/** Wrap timer functions and event targets to catch errors and provide better meta data */
|
|
3
|
+
export declare class TryCatch implements Integration {
|
|
4
|
+
/** JSDoc */
|
|
5
|
+
private _ignoreOnError;
|
|
6
|
+
/**
|
|
7
|
+
* @inheritDoc
|
|
8
|
+
*/
|
|
9
|
+
name: string;
|
|
10
|
+
/**
|
|
11
|
+
* @inheritDoc
|
|
12
|
+
*/
|
|
13
|
+
static id: string;
|
|
14
|
+
/** JSDoc */
|
|
15
|
+
private _wrapTimeFunction;
|
|
16
|
+
/** JSDoc */
|
|
17
|
+
private _wrapRAF;
|
|
18
|
+
/** JSDoc */
|
|
19
|
+
private _wrapEventTarget;
|
|
20
|
+
/**
|
|
21
|
+
* Wrap timer functions and event targets to catch errors
|
|
22
|
+
* and provide better metadata.
|
|
23
|
+
*/
|
|
24
|
+
setupOnce(): void;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=trycatch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trycatch.d.ts","sourceRoot":"","sources":["../../../src/integrations/trycatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAmB,MAAM,eAAe,CAAC;AAK7D,0FAA0F;AAC1F,qBAAa,QAAS,YAAW,WAAW;IAC1C,YAAY;IACZ,OAAO,CAAC,cAAc,CAAa;IAEnC;;OAEG;IACI,IAAI,EAAE,MAAM,CAAe;IAElC;;OAEG;IACH,OAAc,EAAE,EAAE,MAAM,CAAc;IAEtC,YAAY;IACZ,OAAO,CAAC,iBAAiB;IAczB,YAAY;IACZ,OAAO,CAAC,QAAQ;IAiBhB,YAAY;IACZ,OAAO,CAAC,gBAAgB;IA6FxB;;;OAGG;IACI,SAAS,IAAI,IAAI;CAyCzB"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
exports.TryCatch = void 0;
|
|
3
|
+
var utils_1 = require("@sentry/utils");
|
|
4
|
+
var helpers_1 = require("../helpers");
|
|
5
|
+
/** Wrap timer functions and event targets to catch errors and provide better meta data */
|
|
6
|
+
var TryCatch = /** @class */ (function () {
|
|
7
|
+
function TryCatch() {
|
|
8
|
+
/** JSDoc */
|
|
9
|
+
this._ignoreOnError = 0;
|
|
10
|
+
/**
|
|
11
|
+
* @inheritDoc
|
|
12
|
+
*/
|
|
13
|
+
this.name = TryCatch.id;
|
|
14
|
+
}
|
|
15
|
+
/** JSDoc */
|
|
16
|
+
TryCatch.prototype._wrapTimeFunction = function (original) {
|
|
17
|
+
return function () {
|
|
18
|
+
var args = [];
|
|
19
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
20
|
+
args[_i] = arguments[_i];
|
|
21
|
+
}
|
|
22
|
+
var originalCallback = args[0];
|
|
23
|
+
args[0] = helpers_1.wrap(originalCallback, {
|
|
24
|
+
mechanism: {
|
|
25
|
+
data: { function: getFunctionName(original) },
|
|
26
|
+
handled: true,
|
|
27
|
+
type: "instrument"
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
return original.apply(this, args);
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
/** JSDoc */
|
|
34
|
+
TryCatch.prototype._wrapRAF = function (original) {
|
|
35
|
+
return function (callback) {
|
|
36
|
+
return original(helpers_1.wrap(callback, {
|
|
37
|
+
mechanism: {
|
|
38
|
+
data: {
|
|
39
|
+
function: "requestAnimationFrame",
|
|
40
|
+
handler: getFunctionName(original)
|
|
41
|
+
},
|
|
42
|
+
handled: true,
|
|
43
|
+
type: "instrument"
|
|
44
|
+
}
|
|
45
|
+
}));
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
/** JSDoc */
|
|
49
|
+
TryCatch.prototype._wrapEventTarget = function (target) {
|
|
50
|
+
var global = utils_1.getGlobalObject();
|
|
51
|
+
var proto = global[target] && global[target].prototype;
|
|
52
|
+
if (!proto ||
|
|
53
|
+
!proto.hasOwnProperty ||
|
|
54
|
+
!proto.hasOwnProperty("addEventListener")) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
utils_1.fill(proto, "addEventListener", function (original) {
|
|
58
|
+
return function (eventName, fn, options) {
|
|
59
|
+
try {
|
|
60
|
+
// tslint:disable-next-line:no-unbound-method strict-type-predicates
|
|
61
|
+
if (typeof fn.handleEvent === "function") {
|
|
62
|
+
fn.handleEvent = helpers_1.wrap(fn.handleEvent.bind(fn), {
|
|
63
|
+
mechanism: {
|
|
64
|
+
data: {
|
|
65
|
+
function: "handleEvent",
|
|
66
|
+
handler: getFunctionName(fn),
|
|
67
|
+
target: target
|
|
68
|
+
},
|
|
69
|
+
handled: true,
|
|
70
|
+
type: "instrument"
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
catch (err) {
|
|
76
|
+
// can sometimes get 'Permission denied to access property "handle Event'
|
|
77
|
+
}
|
|
78
|
+
return original.call(this, eventName, helpers_1.wrap(fn, {
|
|
79
|
+
mechanism: {
|
|
80
|
+
data: {
|
|
81
|
+
function: "addEventListener",
|
|
82
|
+
handler: getFunctionName(fn),
|
|
83
|
+
target: target
|
|
84
|
+
},
|
|
85
|
+
handled: true,
|
|
86
|
+
type: "instrument"
|
|
87
|
+
}
|
|
88
|
+
}), options);
|
|
89
|
+
};
|
|
90
|
+
});
|
|
91
|
+
utils_1.fill(proto, "removeEventListener", function (original) {
|
|
92
|
+
return function (eventName, fn, options) {
|
|
93
|
+
var callback = fn;
|
|
94
|
+
try {
|
|
95
|
+
callback = callback && (callback.__sentry_wrapped__ || callback);
|
|
96
|
+
}
|
|
97
|
+
catch (e) {
|
|
98
|
+
// ignore, accessing __sentry_wrapped__ will throw in some Selenium environments
|
|
99
|
+
}
|
|
100
|
+
return original.call(this, eventName, callback, options);
|
|
101
|
+
};
|
|
102
|
+
});
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Wrap timer functions and event targets to catch errors
|
|
106
|
+
* and provide better metadata.
|
|
107
|
+
*/
|
|
108
|
+
TryCatch.prototype.setupOnce = function () {
|
|
109
|
+
this._ignoreOnError = this._ignoreOnError;
|
|
110
|
+
var global = utils_1.getGlobalObject();
|
|
111
|
+
utils_1.fill(global, "setTimeout", this._wrapTimeFunction.bind(this));
|
|
112
|
+
utils_1.fill(global, "setInterval", this._wrapTimeFunction.bind(this));
|
|
113
|
+
utils_1.fill(global, "requestAnimationFrame", this._wrapRAF.bind(this));
|
|
114
|
+
[
|
|
115
|
+
"EventTarget",
|
|
116
|
+
"Window",
|
|
117
|
+
"Node",
|
|
118
|
+
"ApplicationCache",
|
|
119
|
+
"AudioTrackList",
|
|
120
|
+
"ChannelMergerNode",
|
|
121
|
+
"CryptoOperation",
|
|
122
|
+
"EventSource",
|
|
123
|
+
"FileReader",
|
|
124
|
+
"HTMLUnknownElement",
|
|
125
|
+
"IDBDatabase",
|
|
126
|
+
"IDBRequest",
|
|
127
|
+
"IDBTransaction",
|
|
128
|
+
"KeyOperation",
|
|
129
|
+
"MediaController",
|
|
130
|
+
"MessagePort",
|
|
131
|
+
"ModalWindow",
|
|
132
|
+
"Notification",
|
|
133
|
+
"SVGElementInstance",
|
|
134
|
+
"Screen",
|
|
135
|
+
"TextTrack",
|
|
136
|
+
"TextTrackCue",
|
|
137
|
+
"TextTrackList",
|
|
138
|
+
"WebSocket",
|
|
139
|
+
"WebSocketWorker",
|
|
140
|
+
"Worker",
|
|
141
|
+
"XMLHttpRequest",
|
|
142
|
+
"XMLHttpRequestEventTarget",
|
|
143
|
+
"XMLHttpRequestUpload"
|
|
144
|
+
].forEach(this._wrapEventTarget.bind(this));
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* @inheritDoc
|
|
148
|
+
*/
|
|
149
|
+
TryCatch.id = "TryCatch";
|
|
150
|
+
return TryCatch;
|
|
151
|
+
}());
|
|
152
|
+
exports.TryCatch = TryCatch;
|
|
153
|
+
/**
|
|
154
|
+
* Safely extract function name from itself
|
|
155
|
+
*/
|
|
156
|
+
function getFunctionName(fn) {
|
|
157
|
+
try {
|
|
158
|
+
return (fn && fn.name) || "<anonymous>";
|
|
159
|
+
}
|
|
160
|
+
catch (e) {
|
|
161
|
+
// Just accessing custom props in some Selenium environments
|
|
162
|
+
// can cause a "Permission denied" exception (see raven-js#495).
|
|
163
|
+
return "<anonymous>";
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=trycatch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trycatch.js","sourceRoot":"","sources":["../../../src/integrations/trycatch.ts"],"names":[],"mappings":";;AACA,uCAAsD;AAEtD,sCAAkC;AAElC,0FAA0F;AAC1F;IAAA;QACE,YAAY;QACJ,mBAAc,GAAW,CAAC,CAAC;QAEnC;;WAEG;QACI,SAAI,GAAW,QAAQ,CAAC,EAAE,CAAC;IAmLpC,CAAC;IA5KC,YAAY;IACJ,oCAAiB,GAAzB,UAA0B,QAAoB;QAC5C,OAAO;YAAoB,cAAc;iBAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;gBAAd,yBAAc;;YACvC,IAAM,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,CAAC,CAAC,GAAG,cAAI,CAAC,gBAAgB,EAAE;gBAC/B,SAAS,EAAE;oBACT,IAAI,EAAE,EAAE,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE;oBAC7C,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,YAAY;iBACnB;aACF,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC;IAED,YAAY;IACJ,2BAAQ,GAAhB,UAAiB,QAAa;QAC5B,OAAO,UAAoB,QAAoB;YAC7C,OAAO,QAAQ,CACb,cAAI,CAAC,QAAQ,EAAE;gBACb,SAAS,EAAE;oBACT,IAAI,EAAE;wBACJ,QAAQ,EAAE,uBAAuB;wBACjC,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC;qBACnC;oBACD,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,YAAY;iBACnB;aACF,CAAC,CACH,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IAED,YAAY;IACJ,mCAAgB,GAAxB,UAAyB,MAAc;QACrC,IAAM,MAAM,GAAG,uBAAe,EAA4B,CAAC;QAC3D,IAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC;QAEzD,IACE,CAAC,KAAK;YACN,CAAC,KAAK,CAAC,cAAc;YACrB,CAAC,KAAK,CAAC,cAAc,CAAC,kBAAkB,CAAC,EACzC;YACA,OAAO;SACR;QAED,YAAI,CAAC,KAAK,EAAE,kBAAkB,EAAE,UAC9B,QAAoB;YAMpB,OAAO,UAEL,SAAiB,EACjB,EAAuB,EACvB,OAA2C;gBAO3C,IAAI;oBACF,oEAAoE;oBACpE,IAAI,OAAO,EAAE,CAAC,WAAW,KAAK,UAAU,EAAE;wBACxC,EAAE,CAAC,WAAW,GAAG,cAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;4BAC7C,SAAS,EAAE;gCACT,IAAI,EAAE;oCACJ,QAAQ,EAAE,aAAa;oCACvB,OAAO,EAAE,eAAe,CAAC,EAAE,CAAC;oCAC5B,MAAM,QAAA;iCACP;gCACD,OAAO,EAAE,IAAI;gCACb,IAAI,EAAE,YAAY;6BACnB;yBACF,CAAC,CAAC;qBACJ;iBACF;gBAAC,OAAO,GAAG,EAAE;oBACZ,yEAAyE;iBAC1E;gBAED,OAAO,QAAQ,CAAC,IAAI,CAClB,IAAI,EACJ,SAAS,EACT,cAAI,CAAE,EAA6B,EAAE;oBACnC,SAAS,EAAE;wBACT,IAAI,EAAE;4BACJ,QAAQ,EAAE,kBAAkB;4BAC5B,OAAO,EAAE,eAAe,CAAC,EAAE,CAAC;4BAC5B,MAAM,QAAA;yBACP;wBACD,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,YAAY;qBACnB;iBACF,CAAC,EACF,OAAO,CACR,CAAC;YACJ,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,YAAI,CAAC,KAAK,EAAE,qBAAqB,EAAE,UACjC,QAAoB;YAOpB,OAAO,UAEL,SAAiB,EACjB,EAAuB,EACvB,OAAwC;gBAExC,IAAI,QAAQ,GAAI,EAA6B,CAAC;gBAC9C,IAAI;oBACF,QAAQ,GAAG,QAAQ,IAAI,CAAC,QAAQ,CAAC,kBAAkB,IAAI,QAAQ,CAAC,CAAC;iBAClE;gBAAC,OAAO,CAAC,EAAE;oBACV,gFAAgF;iBACjF;gBACD,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACI,4BAAS,GAAhB;QACE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAE1C,IAAM,MAAM,GAAG,uBAAe,EAAE,CAAC;QAEjC,YAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,YAAI,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,YAAI,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhE;YACE,aAAa;YACb,QAAQ;YACR,MAAM;YACN,kBAAkB;YAClB,gBAAgB;YAChB,mBAAmB;YACnB,iBAAiB;YACjB,aAAa;YACb,YAAY;YACZ,oBAAoB;YACpB,aAAa;YACb,YAAY;YACZ,gBAAgB;YAChB,cAAc;YACd,iBAAiB;YACjB,aAAa;YACb,aAAa;YACb,cAAc;YACd,oBAAoB;YACpB,QAAQ;YACR,WAAW;YACX,cAAc;YACd,eAAe;YACf,WAAW;YACX,iBAAiB;YACjB,QAAQ;YACR,gBAAgB;YAChB,2BAA2B;YAC3B,sBAAsB;SACvB,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAhLD;;OAEG;IACW,WAAE,GAAW,UAAU,CAAC;IA8KxC,eAAC;CAAA,AA1LD,IA0LC;AA1LY,4BAAQ;AA4LrB;;GAEG;AACH,SAAS,eAAe,CAAC,EAAO;IAC9B,IAAI;QACF,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC;KACzC;IAAC,OAAO,CAAC,EAAE;QACV,4DAA4D;QAC5D,gEAAgE;QAChE,OAAO,aAAa,CAAC;KACtB;AACH,CAAC","sourcesContent":["import { Integration, WrappedFunction } from \"@sentry/types\";\nimport { fill, getGlobalObject } from \"@sentry/utils\";\n\nimport { wrap } from \"../helpers\";\n\n/** Wrap timer functions and event targets to catch errors and provide better meta data */\nexport class TryCatch implements Integration {\n /** JSDoc */\n private _ignoreOnError: number = 0;\n\n /**\n * @inheritDoc\n */\n public name: string = TryCatch.id;\n\n /**\n * @inheritDoc\n */\n public static id: string = \"TryCatch\";\n\n /** JSDoc */\n private _wrapTimeFunction(original: () => void): () => number {\n return function(this: any, ...args: any[]): number {\n const originalCallback = args[0];\n args[0] = wrap(originalCallback, {\n mechanism: {\n data: { function: getFunctionName(original) },\n handled: true,\n type: \"instrument\"\n }\n });\n return original.apply(this, args);\n };\n }\n\n /** JSDoc */\n private _wrapRAF(original: any): (callback: () => void) => any {\n return function(this: any, callback: () => void): () => void {\n return original(\n wrap(callback, {\n mechanism: {\n data: {\n function: \"requestAnimationFrame\",\n handler: getFunctionName(original)\n },\n handled: true,\n type: \"instrument\"\n }\n })\n );\n };\n }\n\n /** JSDoc */\n private _wrapEventTarget(target: string): void {\n const global = getGlobalObject() as { [key: string]: any };\n const proto = global[target] && global[target].prototype;\n\n if (\n !proto ||\n !proto.hasOwnProperty ||\n !proto.hasOwnProperty(\"addEventListener\")\n ) {\n return;\n }\n\n fill(proto, \"addEventListener\", function(\n original: () => void\n ): (\n eventName: string,\n fn: EventListenerObject,\n options?: boolean | AddEventListenerOptions\n ) => void {\n return function(\n this: any,\n eventName: string,\n fn: EventListenerObject,\n options?: boolean | AddEventListenerOptions\n ): (\n eventName: string,\n fn: EventListenerObject,\n capture?: boolean,\n secure?: boolean\n ) => void {\n try {\n // tslint:disable-next-line:no-unbound-method strict-type-predicates\n if (typeof fn.handleEvent === \"function\") {\n fn.handleEvent = wrap(fn.handleEvent.bind(fn), {\n mechanism: {\n data: {\n function: \"handleEvent\",\n handler: getFunctionName(fn),\n target\n },\n handled: true,\n type: \"instrument\"\n }\n });\n }\n } catch (err) {\n // can sometimes get 'Permission denied to access property \"handle Event'\n }\n\n return original.call(\n this,\n eventName,\n wrap((fn as any) as WrappedFunction, {\n mechanism: {\n data: {\n function: \"addEventListener\",\n handler: getFunctionName(fn),\n target\n },\n handled: true,\n type: \"instrument\"\n }\n }),\n options\n );\n };\n });\n\n fill(proto, \"removeEventListener\", function(\n original: () => void\n ): (\n this: any,\n eventName: string,\n fn: EventListenerObject,\n options?: boolean | EventListenerOptions\n ) => () => void {\n return function(\n this: any,\n eventName: string,\n fn: EventListenerObject,\n options?: boolean | EventListenerOptions\n ): () => void {\n let callback = (fn as any) as WrappedFunction;\n try {\n callback = callback && (callback.__sentry_wrapped__ || callback);\n } catch (e) {\n // ignore, accessing __sentry_wrapped__ will throw in some Selenium environments\n }\n return original.call(this, eventName, callback, options);\n };\n });\n }\n\n /**\n * Wrap timer functions and event targets to catch errors\n * and provide better metadata.\n */\n public setupOnce(): void {\n this._ignoreOnError = this._ignoreOnError;\n\n const global = getGlobalObject();\n\n fill(global, \"setTimeout\", this._wrapTimeFunction.bind(this));\n fill(global, \"setInterval\", this._wrapTimeFunction.bind(this));\n fill(global, \"requestAnimationFrame\", this._wrapRAF.bind(this));\n\n [\n \"EventTarget\",\n \"Window\",\n \"Node\",\n \"ApplicationCache\",\n \"AudioTrackList\",\n \"ChannelMergerNode\",\n \"CryptoOperation\",\n \"EventSource\",\n \"FileReader\",\n \"HTMLUnknownElement\",\n \"IDBDatabase\",\n \"IDBRequest\",\n \"IDBTransaction\",\n \"KeyOperation\",\n \"MediaController\",\n \"MessagePort\",\n \"ModalWindow\",\n \"Notification\",\n \"SVGElementInstance\",\n \"Screen\",\n \"TextTrack\",\n \"TextTrackCue\",\n \"TextTrackList\",\n \"WebSocket\",\n \"WebSocketWorker\",\n \"Worker\",\n \"XMLHttpRequest\",\n \"XMLHttpRequestEventTarget\",\n \"XMLHttpRequestUpload\"\n ].forEach(this._wrapEventTarget.bind(this));\n }\n}\n\n/**\n * Safely extract function name from itself\n */\nfunction getFunctionName(fn: any): string {\n try {\n return (fn && fn.name) || \"<anonymous>\";\n } catch (e) {\n // Just accessing custom props in some Selenium environments\n // can cause a \"Permission denied\" exception (see raven-js#495).\n return \"<anonymous>\";\n }\n}\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Event, Exception, StackFrame } from '@sentry/types';
|
|
2
|
+
import { StackFrame as TraceKitStackFrame, StackTrace as TraceKitStackTrace } from './tracekit';
|
|
3
|
+
/**
|
|
4
|
+
* This function creates an exception from an TraceKitStackTrace
|
|
5
|
+
* @param stacktrace TraceKitStackTrace that will be converted to an exception
|
|
6
|
+
* @hidden
|
|
7
|
+
*/
|
|
8
|
+
export declare function exceptionFromStacktrace(stacktrace: TraceKitStackTrace): Exception;
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
export declare function eventFromPlainObject(exception: {}, syntheticException?: Error, rejection?: boolean): Event;
|
|
13
|
+
/**
|
|
14
|
+
* @hidden
|
|
15
|
+
*/
|
|
16
|
+
export declare function eventFromStacktrace(stacktrace: TraceKitStackTrace): Event;
|
|
17
|
+
/**
|
|
18
|
+
* @hidden
|
|
19
|
+
*/
|
|
20
|
+
export declare function prepareFramesForEvent(stack: TraceKitStackFrame[]): StackFrame[];
|
|
21
|
+
//# sourceMappingURL=parsers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/parsers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG7D,OAAO,EAAqB,UAAU,IAAI,kBAAkB,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAInH;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,CAkBjF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,KAAK,CAyB1G;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,kBAAkB,GAAG,KAAK,CAQzE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,kBAAkB,EAAE,GAAG,UAAU,EAAE,CAiC/E"}
|