@igo2/core 17.0.0-next.9 → 17.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/config/version.mjs +3 -3
- package/esm2022/monitoring/sentry/sentry.interface.mjs +1 -1
- package/esm2022/monitoring/sentry/sentry.mjs +9 -15
- package/esm2022/monitoring/sentry/sentry.provider.mjs +2 -2
- package/esm2022/monitoring/sentry/sentry.utils.mjs +4 -5
- package/fesm2022/igo2-core-config.mjs +2 -2
- package/fesm2022/igo2-core-config.mjs.map +1 -1
- package/fesm2022/igo2-core-monitoring.mjs +10 -17
- package/fesm2022/igo2-core-monitoring.mjs.map +1 -1
- package/monitoring/sentry/sentry.d.ts +2 -2
- package/monitoring/sentry/sentry.interface.d.ts +1 -2
- package/monitoring/sentry/sentry.utils.d.ts +1 -0
- package/package.json +3 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export const version = {
|
|
2
|
-
lib: '17.0.0
|
|
3
|
-
releaseDate:
|
|
2
|
+
lib: '17.0.0',
|
|
3
|
+
releaseDate: 1724343367841
|
|
4
4
|
};
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvY29uZmlnL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBWTtJQUM5QixHQUFHLEVBQUUsUUFBUTtJQUNiLFdBQVcsRUFBRSxhQUFhO0NBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFZlcnNpb24ge1xyXG4gIGFwcD86IHN0cmluZztcclxuICBsaWI/OiBzdHJpbmc7XHJcbiAgcmVsZWFzZURhdGVBcHA/OiBudW1iZXI7XHJcbiAgcmVsZWFzZURhdGU/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB2ZXJzaW9uOiBWZXJzaW9uID0ge1xyXG4gIGxpYjogJzE3LjAuMCcsXHJcbiAgcmVsZWFzZURhdGU6IDE3MjQzNDMzNjc4NDFcclxufTtcclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudHJ5LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvbW9uaXRvcmluZy9zcmMvc2VudHJ5L3NlbnRyeS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJyb3dzZXJPcHRpb25zLCBFcnJvckhhbmRsZXJPcHRpb25zIH0gZnJvbSAnQHNlbnRyeS9hbmd1bGFyJztcblxuaW1wb3J0IHsgTW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuLi9zaGFyZWQvbW9uaXRvcmluZy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgdHlwZSBTZW50cnlNb25pdG9yaW5nT3B0aW9ucyA9IEJyb3dzZXJPcHRpb25zICZcbiAgTW9uaXRvcmluZ09wdGlvbnMgJiB7XG4gICAgcHJvdmlkZXI6ICdzZW50cnknO1xuICAgIGVycm9ySGFuZGxlck9wdGlvbnM/OiBFcnJvckhhbmRsZXJPcHRpb25zO1xuICB9O1xuIl19
|
|
@@ -1,29 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { isTracingEnabled } from './sentry.utils';
|
|
1
|
+
import { browserTracingIntegration, createErrorHandler, getClient, init, replayIntegration } from '@sentry/angular';
|
|
2
|
+
import { isReplayEnabled, isTracingEnabled } from './sentry.utils';
|
|
3
3
|
export const createSentryErrorHandler = (options) => {
|
|
4
4
|
return createErrorHandler({
|
|
5
5
|
logErrors: options.logErrors,
|
|
6
6
|
...(options.errorHandlerOptions ?? {})
|
|
7
7
|
});
|
|
8
8
|
};
|
|
9
|
-
export const initSentry = (options) => {
|
|
10
|
-
const client =
|
|
11
|
-
if (client) {
|
|
9
|
+
export const initSentry = (options, force) => {
|
|
10
|
+
const client = getClient();
|
|
11
|
+
if (!force && client) {
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
14
|
-
const tracingEnabled = isTracingEnabled(options);
|
|
15
14
|
const baseConfig = {
|
|
16
|
-
|
|
17
|
-
environment: options.environment,
|
|
18
|
-
release: options.release,
|
|
15
|
+
...options,
|
|
19
16
|
integrations: [
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
routingInstrumentation: instrumentAngularRouting
|
|
23
|
-
}),
|
|
24
|
-
options.enableReplay && new Replay()
|
|
17
|
+
isTracingEnabled(options) && browserTracingIntegration(),
|
|
18
|
+
isReplayEnabled(options) && replayIntegration()
|
|
25
19
|
].filter(Boolean)
|
|
26
20
|
};
|
|
27
21
|
init(baseConfig);
|
|
28
22
|
};
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudHJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9tb25pdG9yaW5nL3NyYy9zZW50cnkvc2VudHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCx5QkFBeUIsRUFDekIsa0JBQWtCLEVBQ2xCLFNBQVMsRUFDVCxJQUFJLEVBQ0osaUJBQWlCLEVBQ2xCLE1BQU0saUJBQWlCLENBQUM7QUFHekIsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5FLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLENBQ3RDLE9BQWdDLEVBQ1osRUFBRTtJQUN0QixPQUFPLGtCQUFrQixDQUFDO1FBQ3hCLFNBQVMsRUFBRSxPQUFPLENBQUMsU0FBUztRQUM1QixHQUFHLENBQUMsT0FBTyxDQUFDLG1CQUFtQixJQUFJLEVBQUUsQ0FBQztLQUN2QyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FDeEIsT0FBZ0MsRUFDaEMsS0FBZSxFQUNULEVBQUU7SUFDUixNQUFNLE1BQU0sR0FBRyxTQUFTLEVBQUUsQ0FBQztJQUMzQixJQUFJLENBQUMsS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3JCLE9BQU87SUFDVCxDQUFDO0lBRUQsTUFBTSxVQUFVLEdBQW1CO1FBQ2pDLEdBQUcsT0FBTztRQUNWLFlBQVksRUFBRTtZQUNaLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLHlCQUF5QixFQUFFO1lBQ3hELGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxpQkFBaUIsRUFBRTtTQUNoRCxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7S0FDbEIsQ0FBQztJQUVGLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUNuQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCcm93c2VyT3B0aW9ucyxcbiAgU2VudHJ5RXJyb3JIYW5kbGVyLFxuICBicm93c2VyVHJhY2luZ0ludGVncmF0aW9uLFxuICBjcmVhdGVFcnJvckhhbmRsZXIsXG4gIGdldENsaWVudCxcbiAgaW5pdCxcbiAgcmVwbGF5SW50ZWdyYXRpb25cbn0gZnJvbSAnQHNlbnRyeS9hbmd1bGFyJztcblxuaW1wb3J0IHsgU2VudHJ5TW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuL3NlbnRyeS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgaXNSZXBsYXlFbmFibGVkLCBpc1RyYWNpbmdFbmFibGVkIH0gZnJvbSAnLi9zZW50cnkudXRpbHMnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlU2VudHJ5RXJyb3JIYW5kbGVyID0gKFxuICBvcHRpb25zOiBTZW50cnlNb25pdG9yaW5nT3B0aW9uc1xuKTogU2VudHJ5RXJyb3JIYW5kbGVyID0+IHtcbiAgcmV0dXJuIGNyZWF0ZUVycm9ySGFuZGxlcih7XG4gICAgbG9nRXJyb3JzOiBvcHRpb25zLmxvZ0Vycm9ycyxcbiAgICAuLi4ob3B0aW9ucy5lcnJvckhhbmRsZXJPcHRpb25zID8/IHt9KVxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBpbml0U2VudHJ5ID0gKFxuICBvcHRpb25zOiBTZW50cnlNb25pdG9yaW5nT3B0aW9ucyxcbiAgZm9yY2U/OiBib29sZWFuXG4pOiB2b2lkID0+IHtcbiAgY29uc3QgY2xpZW50ID0gZ2V0Q2xpZW50KCk7XG4gIGlmICghZm9yY2UgJiYgY2xpZW50KSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgYmFzZUNvbmZpZzogQnJvd3Nlck9wdGlvbnMgPSB7XG4gICAgLi4ub3B0aW9ucyxcbiAgICBpbnRlZ3JhdGlvbnM6IFtcbiAgICAgIGlzVHJhY2luZ0VuYWJsZWQob3B0aW9ucykgJiYgYnJvd3NlclRyYWNpbmdJbnRlZ3JhdGlvbigpLFxuICAgICAgaXNSZXBsYXlFbmFibGVkKG9wdGlvbnMpICYmIHJlcGxheUludGVncmF0aW9uKClcbiAgICBdLmZpbHRlcihCb29sZWFuKVxuICB9O1xuXG4gIGluaXQoYmFzZUNvbmZpZyk7XG59O1xuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { APP_INITIALIZER, ErrorHandler } from '@angular/core';
|
|
2
2
|
import { Router } from '@angular/router';
|
|
3
|
-
import { TraceService } from '@sentry/angular
|
|
3
|
+
import { TraceService } from '@sentry/angular';
|
|
4
4
|
import { createSentryErrorHandler, initSentry } from './sentry';
|
|
5
5
|
import { isTracingEnabled } from './sentry.utils';
|
|
6
6
|
export const provideSentryMonitoring = (options) => {
|
|
@@ -28,4 +28,4 @@ export const provideSentryMonitoring = (options) => {
|
|
|
28
28
|
}
|
|
29
29
|
].filter(Boolean);
|
|
30
30
|
};
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudHJ5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9tb25pdG9yaW5nL3NyYy9zZW50cnkvc2VudHJ5LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxlQUFlLEVBRWYsWUFBWSxFQUViLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUNyQyxPQUFnQyxFQUNXLEVBQUU7SUFDN0MsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUN6RSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDZixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFcEIsTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFakQsT0FBTztRQUNMO1lBQ0UsT0FBTyxFQUFFLFlBQVk7WUFDckIsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQztTQUNwRDtRQUNELGNBQWMsSUFBSTtZQUNoQixPQUFPLEVBQUUsWUFBWTtZQUNyQixJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7U0FDZjtRQUNELHlFQUF5RTtRQUN6RSxjQUFjLElBQUk7WUFDaEIsT0FBTyxFQUFFLGVBQWU7WUFDeEIsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUM7WUFDMUIsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDO1lBQ3BCLEtBQUssRUFBRSxJQUFJO1NBQ1o7S0FDRixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNwQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBUFBfSU5JVElBTElaRVIsXG4gIENvbnN0cnVjdG9yUHJvdmlkZXIsXG4gIEVycm9ySGFuZGxlcixcbiAgRmFjdG9yeVByb3ZpZGVyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgVHJhY2VTZXJ2aWNlIH0gZnJvbSAnQHNlbnRyeS9hbmd1bGFyJztcblxuaW1wb3J0IHsgY3JlYXRlU2VudHJ5RXJyb3JIYW5kbGVyLCBpbml0U2VudHJ5IH0gZnJvbSAnLi9zZW50cnknO1xuaW1wb3J0IHsgU2VudHJ5TW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuL3NlbnRyeS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgaXNUcmFjaW5nRW5hYmxlZCB9IGZyb20gJy4vc2VudHJ5LnV0aWxzJztcblxuZXhwb3J0IGNvbnN0IHByb3ZpZGVTZW50cnlNb25pdG9yaW5nID0gKFxuICBvcHRpb25zOiBTZW50cnlNb25pdG9yaW5nT3B0aW9uc1xuKTogKEZhY3RvcnlQcm92aWRlciB8IENvbnN0cnVjdG9yUHJvdmlkZXIpW10gPT4ge1xuICBjb25zdCBpc0VuYWJsZWQgPSBvcHRpb25zLmVuYWJsZWQgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMuZW5hYmxlZCA6IHRydWU7XG4gIGlmICghaXNFbmFibGVkKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgaW5pdFNlbnRyeShvcHRpb25zKTtcblxuICBjb25zdCB0cmFjaW5nRW5hYmxlZCA9IGlzVHJhY2luZ0VuYWJsZWQob3B0aW9ucyk7XG5cbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBFcnJvckhhbmRsZXIsXG4gICAgICB1c2VGYWN0b3J5OiAoKSA9PiBjcmVhdGVTZW50cnlFcnJvckhhbmRsZXIob3B0aW9ucylcbiAgICB9LFxuICAgIHRyYWNpbmdFbmFibGVkICYmIHtcbiAgICAgIHByb3ZpZGU6IFRyYWNlU2VydmljZSxcbiAgICAgIGRlcHM6IFtSb3V0ZXJdXG4gICAgfSxcbiAgICAvLyBGb3JjZSBpbnN0YW50aWF0ZSBUcmFjZVNlcnZpY2UgdG8gYXZvaWQgcmVxdWlyZSBpdCBpbiBhbnkgY29uc3RydWN0b3IuXG4gICAgdHJhY2luZ0VuYWJsZWQgJiYge1xuICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4gKCkgPT4ge30sXG4gICAgICBkZXBzOiBbVHJhY2VTZXJ2aWNlXSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLmZpbHRlcihCb29sZWFuKTtcbn07XG4iXX0=
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { setUser } from '@sentry/angular
|
|
2
|
-
export const isTracingEnabled = (options) => options.
|
|
3
|
-
|
|
4
|
-
!!options.tracesSampler;
|
|
1
|
+
import { setUser } from '@sentry/angular';
|
|
2
|
+
export const isTracingEnabled = (options) => !!options.tracesSampleRate || !!options.tracesSampler;
|
|
3
|
+
export const isReplayEnabled = (options) => !!options.replaysSessionSampleRate || !!options.replaysOnErrorSampleRate;
|
|
5
4
|
export const identifySentryUser = (user) => {
|
|
6
5
|
setUser(user
|
|
7
6
|
? {
|
|
@@ -11,4 +10,4 @@ export const identifySentryUser = (user) => {
|
|
|
11
10
|
}
|
|
12
11
|
: null);
|
|
13
12
|
};
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudHJ5LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9tb25pdG9yaW5nL3NyYy9zZW50cnkvc2VudHJ5LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUkxQyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLE9BQWdDLEVBQVcsRUFBRSxDQUM1RSxDQUFDLENBQUMsT0FBTyxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDO0FBRXhELE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLE9BQWdDLEVBQVcsRUFBRSxDQUMzRSxDQUFDLENBQUMsT0FBTyxDQUFDLHdCQUF3QixJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUM7QUFFM0UsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxJQUFxQixFQUFRLEVBQUU7SUFDaEUsT0FBTyxDQUNMLElBQUk7UUFDRixDQUFDLENBQUM7WUFDRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDOUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1NBQ2xCO1FBQ0gsQ0FBQyxDQUFDLElBQUksQ0FDVCxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVVzZXIgfSBmcm9tICdAaWdvMi9jb3JlL3VzZXInO1xuXG5pbXBvcnQgeyBzZXRVc2VyIH0gZnJvbSAnQHNlbnRyeS9hbmd1bGFyJztcblxuaW1wb3J0IHsgU2VudHJ5TW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuL3NlbnRyeS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3QgaXNUcmFjaW5nRW5hYmxlZCA9IChvcHRpb25zOiBTZW50cnlNb25pdG9yaW5nT3B0aW9ucyk6IGJvb2xlYW4gPT5cbiAgISFvcHRpb25zLnRyYWNlc1NhbXBsZVJhdGUgfHwgISFvcHRpb25zLnRyYWNlc1NhbXBsZXI7XG5cbmV4cG9ydCBjb25zdCBpc1JlcGxheUVuYWJsZWQgPSAob3B0aW9uczogU2VudHJ5TW9uaXRvcmluZ09wdGlvbnMpOiBib29sZWFuID0+XG4gICEhb3B0aW9ucy5yZXBsYXlzU2Vzc2lvblNhbXBsZVJhdGUgfHwgISFvcHRpb25zLnJlcGxheXNPbkVycm9yU2FtcGxlUmF0ZTtcblxuZXhwb3J0IGNvbnN0IGlkZW50aWZ5U2VudHJ5VXNlciA9ICh1c2VyOiBCYXNlVXNlciB8IG51bGwpOiB2b2lkID0+IHtcbiAgc2V0VXNlcihcbiAgICB1c2VyXG4gICAgICA/IHtcbiAgICAgICAgICBpZDogdXNlci5pZCxcbiAgICAgICAgICB1c2VybmFtZTogYCR7dXNlci5maXJzdE5hbWV9ICR7dXNlci5sYXN0TmFtZX1gLFxuICAgICAgICAgIGVtYWlsOiB1c2VyLmVtYWlsXG4gICAgICAgIH1cbiAgICAgIDogbnVsbFxuICApO1xufTtcbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"igo2-core-config.mjs","sources":["../../../packages/core/config/src/config-deprecated.ts","../../../packages/core/config/src/version.ts","../../../packages/core/config/src/config.service.ts","../../../packages/core/config/src/config.provider.ts","../../../packages/core/config/src/config.module.ts","../../../packages/core/config/src/igo2-core-config.ts"],"sourcesContent":["import { AlternateConfigOptions, DeprecatedOptions } from './config.interface';\n\nexport const CONFIG_DEPRECATED: { [key: string]: DeprecatedOptions } = {\n showMenuButton: {\n alternativeKey: 'menu.button.visible',\n mayBeRemoveIn: new Date('2024-06-06')\n },\n menuButtonReverseColor: {\n alternativeKey: 'menu.button.useThemeColor',\n mayBeRemoveIn: new Date('2024-06-06')\n },\n importWithStyle: {\n alternativeKey: 'importExport.importWithStyle',\n mayBeRemoveIn: new Date('2024-06-06')\n },\n hasGeolocateButton: {\n alternativeKey: 'geolocate.button.visible',\n mayBeRemoveIn: new Date('2024-06-06')\n }\n};\n\nexport const ALTERNATE_CONFIG_FROM_DEPRECATION = new Map<\n string,\n AlternateConfigOptions\n>(\n Object.entries(CONFIG_DEPRECATED)\n .filter(([_, options]) => options.alternativeKey)\n .map(([key, options]) => [\n options.alternativeKey,\n {\n deprecatedKey: key\n } satisfies AlternateConfigOptions\n ])\n);\n","export interface Version {\r\n app?: string;\r\n lib?: string;\r\n releaseDateApp?: number;\r\n releaseDate?: number;\r\n}\r\n\r\nexport const version: Version = {\r\n lib: '17.0.0-next.9',\r\n releaseDate: 1717102429661\r\n};\r\n","import { HttpBackend, HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\nimport { ObjectUtils } from '@igo2/utils';\n\nimport { BehaviorSubject, throwError } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport {\n ALTERNATE_CONFIG_FROM_DEPRECATION,\n CONFIG_DEPRECATED\n} from './config-deprecated';\nimport { ConfigOptions } from './config.interface';\nimport { version } from './version';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConfigService<T extends object = { [key: string]: any }> {\n private config: T | null;\n private httpClient: HttpClient;\n private configDeprecated = new Map(Object.entries(CONFIG_DEPRECATED));\n\n private _isLoaded$ = new BehaviorSubject<boolean>(null);\n isLoaded$ = this._isLoaded$.asObservable();\n\n constructor(handler: HttpBackend) {\n this.httpClient = new HttpClient(handler);\n }\n\n /**\n * Use to get the all config file (merge from environnement.ts and config.json)\n */\n public getConfigs(): any {\n Array.from(this.configDeprecated.keys()).map((deprecatedKey) => {\n const deprecatedValue = ObjectUtils.resolve(this.config, deprecatedKey);\n if (deprecatedValue !== undefined) {\n this.handleDeprecatedConfig(deprecatedKey);\n }\n });\n return this.config;\n }\n\n /**\n * Use to get the data found in config file\n */\n public getConfig<T = any>(key: string, defaultValue?: unknown): T {\n let value = ObjectUtils.resolve(this.config, key);\n\n const isDeprecated = this.configDeprecated.get(key);\n if (isDeprecated && value !== undefined) {\n this.handleDeprecatedConfig(key);\n } else if (value === undefined) {\n value = this.handleDeprecationPossibility(key);\n }\n\n return value ?? defaultValue;\n }\n\n private handleDeprecatedConfig(key: string): void {\n const options = this.configDeprecated.get(key);\n\n let message = `This config (${key}) is deprecated and will be removed shortly`;\n if (options.alternativeKey) {\n message += ` You should use this key (${options.alternativeKey}) as an alternate solution`;\n }\n\n const currentDate = new Date();\n currentDate >= options.mayBeRemoveIn\n ? console.error(message)\n : console.warn(message);\n }\n\n private handleDeprecationPossibility(key: string): any {\n const options = ALTERNATE_CONFIG_FROM_DEPRECATION.get(key);\n if (!options) {\n return;\n }\n\n return this.getConfig(options.deprecatedKey);\n }\n\n /**\n * This method loads \"[path]\" to get all config's variables\n */\n public load(options: ConfigOptions<T>) {\n const baseConfig = options.default;\n if (!options.path) {\n this.config = baseConfig;\n this._isLoaded$.next(true);\n return true;\n }\n\n return new Promise((resolve, _reject) => {\n this.httpClient\n .get(options.path)\n .pipe(\n catchError((error: any): any => {\n console.log(`Configuration file ${options.path} could not be read`);\n this._isLoaded$.next(false);\n resolve(true);\n return throwError(error.error || 'Server error');\n })\n )\n .subscribe((configResponse: object) => {\n this.config = ObjectUtils.mergeDeep(\n ObjectUtils.mergeDeep({ version }, baseConfig),\n configResponse\n );\n this._isLoaded$.next(true);\n resolve(true);\n });\n });\n }\n}\n","import {\n APP_INITIALIZER,\n EnvironmentProviders,\n InjectionToken,\n makeEnvironmentProviders\n} from '@angular/core';\n\nimport { ConfigOptions } from './config.interface';\nimport { ConfigService } from './config.service';\n\nexport let CONFIG_OPTIONS = new InjectionToken<ConfigOptions>('configOptions');\n\nexport function provideConfig(options: ConfigOptions): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: CONFIG_OPTIONS,\n useValue: options\n },\n {\n provide: APP_INITIALIZER,\n useFactory: configFactory,\n multi: true,\n deps: [ConfigService, CONFIG_OPTIONS]\n }\n ]);\n}\n\nfunction configFactory(configService: ConfigService, options: ConfigOptions) {\n return () => configService.load(options);\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { provideConfig } from './config.provider';\n\n/**\n * @deprecated import the provideConfig directly\n */\n@NgModule({\n imports: [],\n declarations: [],\n exports: []\n})\nexport class IgoConfigModule {\n static forRoot(): ModuleWithProviders<IgoConfigModule> {\n return {\n ngModule: IgoConfigModule,\n providers: [provideConfig({})]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"igo2-core-config.mjs","sources":["../../../packages/core/config/src/config-deprecated.ts","../../../packages/core/config/src/version.ts","../../../packages/core/config/src/config.service.ts","../../../packages/core/config/src/config.provider.ts","../../../packages/core/config/src/config.module.ts","../../../packages/core/config/src/igo2-core-config.ts"],"sourcesContent":["import { AlternateConfigOptions, DeprecatedOptions } from './config.interface';\n\nexport const CONFIG_DEPRECATED: { [key: string]: DeprecatedOptions } = {\n showMenuButton: {\n alternativeKey: 'menu.button.visible',\n mayBeRemoveIn: new Date('2024-06-06')\n },\n menuButtonReverseColor: {\n alternativeKey: 'menu.button.useThemeColor',\n mayBeRemoveIn: new Date('2024-06-06')\n },\n importWithStyle: {\n alternativeKey: 'importExport.importWithStyle',\n mayBeRemoveIn: new Date('2024-06-06')\n },\n hasGeolocateButton: {\n alternativeKey: 'geolocate.button.visible',\n mayBeRemoveIn: new Date('2024-06-06')\n }\n};\n\nexport const ALTERNATE_CONFIG_FROM_DEPRECATION = new Map<\n string,\n AlternateConfigOptions\n>(\n Object.entries(CONFIG_DEPRECATED)\n .filter(([_, options]) => options.alternativeKey)\n .map(([key, options]) => [\n options.alternativeKey,\n {\n deprecatedKey: key\n } satisfies AlternateConfigOptions\n ])\n);\n","export interface Version {\r\n app?: string;\r\n lib?: string;\r\n releaseDateApp?: number;\r\n releaseDate?: number;\r\n}\r\n\r\nexport const version: Version = {\r\n lib: '17.0.0',\r\n releaseDate: 1724343367841\r\n};\r\n","import { HttpBackend, HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\nimport { ObjectUtils } from '@igo2/utils';\n\nimport { BehaviorSubject, throwError } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport {\n ALTERNATE_CONFIG_FROM_DEPRECATION,\n CONFIG_DEPRECATED\n} from './config-deprecated';\nimport { ConfigOptions } from './config.interface';\nimport { version } from './version';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConfigService<T extends object = { [key: string]: any }> {\n private config: T | null;\n private httpClient: HttpClient;\n private configDeprecated = new Map(Object.entries(CONFIG_DEPRECATED));\n\n private _isLoaded$ = new BehaviorSubject<boolean>(null);\n isLoaded$ = this._isLoaded$.asObservable();\n\n constructor(handler: HttpBackend) {\n this.httpClient = new HttpClient(handler);\n }\n\n /**\n * Use to get the all config file (merge from environnement.ts and config.json)\n */\n public getConfigs(): any {\n Array.from(this.configDeprecated.keys()).map((deprecatedKey) => {\n const deprecatedValue = ObjectUtils.resolve(this.config, deprecatedKey);\n if (deprecatedValue !== undefined) {\n this.handleDeprecatedConfig(deprecatedKey);\n }\n });\n return this.config;\n }\n\n /**\n * Use to get the data found in config file\n */\n public getConfig<T = any>(key: string, defaultValue?: unknown): T {\n let value = ObjectUtils.resolve(this.config, key);\n\n const isDeprecated = this.configDeprecated.get(key);\n if (isDeprecated && value !== undefined) {\n this.handleDeprecatedConfig(key);\n } else if (value === undefined) {\n value = this.handleDeprecationPossibility(key);\n }\n\n return value ?? defaultValue;\n }\n\n private handleDeprecatedConfig(key: string): void {\n const options = this.configDeprecated.get(key);\n\n let message = `This config (${key}) is deprecated and will be removed shortly`;\n if (options.alternativeKey) {\n message += ` You should use this key (${options.alternativeKey}) as an alternate solution`;\n }\n\n const currentDate = new Date();\n currentDate >= options.mayBeRemoveIn\n ? console.error(message)\n : console.warn(message);\n }\n\n private handleDeprecationPossibility(key: string): any {\n const options = ALTERNATE_CONFIG_FROM_DEPRECATION.get(key);\n if (!options) {\n return;\n }\n\n return this.getConfig(options.deprecatedKey);\n }\n\n /**\n * This method loads \"[path]\" to get all config's variables\n */\n public load(options: ConfigOptions<T>) {\n const baseConfig = options.default;\n if (!options.path) {\n this.config = baseConfig;\n this._isLoaded$.next(true);\n return true;\n }\n\n return new Promise((resolve, _reject) => {\n this.httpClient\n .get(options.path)\n .pipe(\n catchError((error: any): any => {\n console.log(`Configuration file ${options.path} could not be read`);\n this._isLoaded$.next(false);\n resolve(true);\n return throwError(error.error || 'Server error');\n })\n )\n .subscribe((configResponse: object) => {\n this.config = ObjectUtils.mergeDeep(\n ObjectUtils.mergeDeep({ version }, baseConfig),\n configResponse\n );\n this._isLoaded$.next(true);\n resolve(true);\n });\n });\n }\n}\n","import {\n APP_INITIALIZER,\n EnvironmentProviders,\n InjectionToken,\n makeEnvironmentProviders\n} from '@angular/core';\n\nimport { ConfigOptions } from './config.interface';\nimport { ConfigService } from './config.service';\n\nexport let CONFIG_OPTIONS = new InjectionToken<ConfigOptions>('configOptions');\n\nexport function provideConfig(options: ConfigOptions): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: CONFIG_OPTIONS,\n useValue: options\n },\n {\n provide: APP_INITIALIZER,\n useFactory: configFactory,\n multi: true,\n deps: [ConfigService, CONFIG_OPTIONS]\n }\n ]);\n}\n\nfunction configFactory(configService: ConfigService, options: ConfigOptions) {\n return () => configService.load(options);\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { provideConfig } from './config.provider';\n\n/**\n * @deprecated import the provideConfig directly\n */\n@NgModule({\n imports: [],\n declarations: [],\n exports: []\n})\nexport class IgoConfigModule {\n static forRoot(): ModuleWithProviders<IgoConfigModule> {\n return {\n ngModule: IgoConfigModule,\n providers: [provideConfig({})]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { ErrorHandler, APP_INITIALIZER, InjectionToken } from '@angular/core';
|
|
2
2
|
import { Router } from '@angular/router';
|
|
3
|
-
import { setUser, createErrorHandler,
|
|
3
|
+
import { setUser, createErrorHandler, getClient, browserTracingIntegration, replayIntegration, init, TraceService } from '@sentry/angular';
|
|
4
4
|
|
|
5
|
-
const isTracingEnabled = (options) => options.
|
|
6
|
-
|
|
7
|
-
!!options.tracesSampler;
|
|
5
|
+
const isTracingEnabled = (options) => !!options.tracesSampleRate || !!options.tracesSampler;
|
|
6
|
+
const isReplayEnabled = (options) => !!options.replaysSessionSampleRate || !!options.replaysOnErrorSampleRate;
|
|
8
7
|
const identifySentryUser = (user) => {
|
|
9
8
|
setUser(user
|
|
10
9
|
? {
|
|
@@ -21,22 +20,16 @@ const createSentryErrorHandler = (options) => {
|
|
|
21
20
|
...(options.errorHandlerOptions ?? {})
|
|
22
21
|
});
|
|
23
22
|
};
|
|
24
|
-
const initSentry = (options) => {
|
|
25
|
-
const client =
|
|
26
|
-
if (client) {
|
|
23
|
+
const initSentry = (options, force) => {
|
|
24
|
+
const client = getClient();
|
|
25
|
+
if (!force && client) {
|
|
27
26
|
return;
|
|
28
27
|
}
|
|
29
|
-
const tracingEnabled = isTracingEnabled(options);
|
|
30
28
|
const baseConfig = {
|
|
31
|
-
|
|
32
|
-
environment: options.environment,
|
|
33
|
-
release: options.release,
|
|
29
|
+
...options,
|
|
34
30
|
integrations: [
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
routingInstrumentation: instrumentAngularRouting
|
|
38
|
-
}),
|
|
39
|
-
options.enableReplay && new Replay()
|
|
31
|
+
isTracingEnabled(options) && browserTracingIntegration(),
|
|
32
|
+
isReplayEnabled(options) && replayIntegration()
|
|
40
33
|
].filter(Boolean)
|
|
41
34
|
};
|
|
42
35
|
init(baseConfig);
|
|
@@ -97,5 +90,5 @@ const MOCK_MONITORING_OPTIONS = MOCK_SENTRY_OPTIONS;
|
|
|
97
90
|
* Generated bundle index. Do not edit.
|
|
98
91
|
*/
|
|
99
92
|
|
|
100
|
-
export { MOCK_MONITORING_OPTIONS, MOCK_SENTRY_OPTIONS, MONITORING_OPTIONS, identifySentryUser, isTracingEnabled, provideMonitoring, provideSentryMonitoring };
|
|
93
|
+
export { MOCK_MONITORING_OPTIONS, MOCK_SENTRY_OPTIONS, MONITORING_OPTIONS, identifySentryUser, isReplayEnabled, isTracingEnabled, provideMonitoring, provideSentryMonitoring };
|
|
101
94
|
//# sourceMappingURL=igo2-core-monitoring.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"igo2-core-monitoring.mjs","sources":["../../../packages/core/monitoring/src/sentry/sentry.utils.ts","../../../packages/core/monitoring/src/sentry/sentry.ts","../../../packages/core/monitoring/src/sentry/sentry.provider.ts","../../../packages/core/monitoring/src/monitoring.provider.ts","../../../packages/core/monitoring/src/__mocks__/monitoring-mock.ts","../../../packages/core/monitoring/src/igo2-core-monitoring.ts"],"sourcesContent":["import { BaseUser } from '@igo2/core/user';\n\nimport { setUser } from '@sentry/angular
|
|
1
|
+
{"version":3,"file":"igo2-core-monitoring.mjs","sources":["../../../packages/core/monitoring/src/sentry/sentry.utils.ts","../../../packages/core/monitoring/src/sentry/sentry.ts","../../../packages/core/monitoring/src/sentry/sentry.provider.ts","../../../packages/core/monitoring/src/monitoring.provider.ts","../../../packages/core/monitoring/src/__mocks__/monitoring-mock.ts","../../../packages/core/monitoring/src/igo2-core-monitoring.ts"],"sourcesContent":["import { BaseUser } from '@igo2/core/user';\n\nimport { setUser } from '@sentry/angular';\n\nimport { SentryMonitoringOptions } from './sentry.interface';\n\nexport const isTracingEnabled = (options: SentryMonitoringOptions): boolean =>\n !!options.tracesSampleRate || !!options.tracesSampler;\n\nexport const isReplayEnabled = (options: SentryMonitoringOptions): boolean =>\n !!options.replaysSessionSampleRate || !!options.replaysOnErrorSampleRate;\n\nexport const identifySentryUser = (user: BaseUser | null): void => {\n setUser(\n user\n ? {\n id: user.id,\n username: `${user.firstName} ${user.lastName}`,\n email: user.email\n }\n : null\n );\n};\n","import {\n BrowserOptions,\n SentryErrorHandler,\n browserTracingIntegration,\n createErrorHandler,\n getClient,\n init,\n replayIntegration\n} from '@sentry/angular';\n\nimport { SentryMonitoringOptions } from './sentry.interface';\nimport { isReplayEnabled, isTracingEnabled } from './sentry.utils';\n\nexport const createSentryErrorHandler = (\n options: SentryMonitoringOptions\n): SentryErrorHandler => {\n return createErrorHandler({\n logErrors: options.logErrors,\n ...(options.errorHandlerOptions ?? {})\n });\n};\n\nexport const initSentry = (\n options: SentryMonitoringOptions,\n force?: boolean\n): void => {\n const client = getClient();\n if (!force && client) {\n return;\n }\n\n const baseConfig: BrowserOptions = {\n ...options,\n integrations: [\n isTracingEnabled(options) && browserTracingIntegration(),\n isReplayEnabled(options) && replayIntegration()\n ].filter(Boolean)\n };\n\n init(baseConfig);\n};\n","import {\n APP_INITIALIZER,\n ConstructorProvider,\n ErrorHandler,\n FactoryProvider\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { TraceService } from '@sentry/angular';\n\nimport { createSentryErrorHandler, initSentry } from './sentry';\nimport { SentryMonitoringOptions } from './sentry.interface';\nimport { isTracingEnabled } from './sentry.utils';\n\nexport const provideSentryMonitoring = (\n options: SentryMonitoringOptions\n): (FactoryProvider | ConstructorProvider)[] => {\n const isEnabled = options.enabled !== undefined ? options.enabled : true;\n if (!isEnabled) {\n return [];\n }\n\n initSentry(options);\n\n const tracingEnabled = isTracingEnabled(options);\n\n return [\n {\n provide: ErrorHandler,\n useFactory: () => createSentryErrorHandler(options)\n },\n tracingEnabled && {\n provide: TraceService,\n deps: [Router]\n },\n // Force instantiate TraceService to avoid require it in any constructor.\n tracingEnabled && {\n provide: APP_INITIALIZER,\n useFactory: () => () => {},\n deps: [TraceService],\n multi: true\n }\n ].filter(Boolean);\n};\n","import { InjectionToken, Provider } from '@angular/core';\n\nimport { provideSentryMonitoring } from './sentry/sentry.provider';\nimport { AnyMonitoringOptions, MonitoringOptions } from './shared';\n\nexport const MONITORING_OPTIONS = new InjectionToken<MonitoringOptions | null>(\n 'monitoring.options'\n);\n\nexport function provideMonitoring(\n options: AnyMonitoringOptions | null\n): Provider[] {\n if (!options) {\n return [];\n }\n\n const providers: Provider[] = [\n { provide: MONITORING_OPTIONS, useValue: options }\n ];\n\n switch (options.provider) {\n case 'sentry':\n providers.push(...provideSentryMonitoring(options));\n break;\n default:\n break;\n }\n\n return providers;\n}\n","import { SentryMonitoringOptions } from '../sentry';\nimport { AnyMonitoringOptions } from '../shared';\n\nexport const MOCK_SENTRY_OPTIONS: SentryMonitoringOptions = {\n provider: 'sentry',\n dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0',\n identifyUser: true\n};\n\nexport const MOCK_MONITORING_OPTIONS: AnyMonitoringOptions =\n MOCK_SENTRY_OPTIONS;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SentryErrorHandler } from '@sentry/angular
|
|
1
|
+
import { SentryErrorHandler } from '@sentry/angular';
|
|
2
2
|
import { SentryMonitoringOptions } from './sentry.interface';
|
|
3
3
|
export declare const createSentryErrorHandler: (options: SentryMonitoringOptions) => SentryErrorHandler;
|
|
4
|
-
export declare const initSentry: (options: SentryMonitoringOptions) => void;
|
|
4
|
+
export declare const initSentry: (options: SentryMonitoringOptions, force?: boolean) => void;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { BrowserOptions, ErrorHandlerOptions } from '@sentry/angular
|
|
1
|
+
import { BrowserOptions, ErrorHandlerOptions } from '@sentry/angular';
|
|
2
2
|
import { MonitoringOptions } from '../shared/monitoring.interface';
|
|
3
3
|
export type SentryMonitoringOptions = BrowserOptions & MonitoringOptions & {
|
|
4
4
|
provider: 'sentry';
|
|
5
5
|
errorHandlerOptions?: ErrorHandlerOptions;
|
|
6
|
-
enableReplay?: boolean;
|
|
7
6
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BaseUser } from '@igo2/core/user';
|
|
2
2
|
import { SentryMonitoringOptions } from './sentry.interface';
|
|
3
3
|
export declare const isTracingEnabled: (options: SentryMonitoringOptions) => boolean;
|
|
4
|
+
export declare const isReplayEnabled: (options: SentryMonitoringOptions) => boolean;
|
|
4
5
|
export declare const identifySentryUser: (user: BaseUser | null) => void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@igo2/core",
|
|
3
|
-
"version": "17.0.0
|
|
3
|
+
"version": "17.0.0",
|
|
4
4
|
"description": "IGO Library",
|
|
5
5
|
"author": "IGO Community",
|
|
6
6
|
"keywords": [
|
|
@@ -146,8 +146,8 @@
|
|
|
146
146
|
"@angular/core": "^17.0.6",
|
|
147
147
|
"@angular/platform-browser": "^17.0.6",
|
|
148
148
|
"@angular/router": "^17.0.6",
|
|
149
|
-
"@igo2/utils": "^17.0.0
|
|
150
|
-
"@sentry/angular
|
|
149
|
+
"@igo2/utils": "^17.0.0",
|
|
150
|
+
"@sentry/angular": "^8.26.0",
|
|
151
151
|
"ngx-indexed-db": "^11.0.2",
|
|
152
152
|
"ngx-toastr": "^18.0.0",
|
|
153
153
|
"@ngx-translate/core": "^15.0.0",
|