@goliapkg/sentori-react-native 0.5.3 → 0.5.4
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/lib/init.d.ts +4 -0
- package/lib/init.d.ts.map +1 -1
- package/lib/init.js +9 -0
- package/lib/init.js.map +1 -1
- package/package.json +1 -1
- package/src/init.ts +13 -0
package/lib/init.d.ts
CHANGED
|
@@ -12,6 +12,10 @@ export type InitOptions = {
|
|
|
12
12
|
globalErrors?: boolean;
|
|
13
13
|
promiseRejections?: boolean;
|
|
14
14
|
network?: boolean;
|
|
15
|
+
/** Session tracking: opens a session on init and on each
|
|
16
|
+
* foreground (`AppState` → `active`), ends it on background.
|
|
17
|
+
* Drives crash-free rate. Set `false` to opt out. */
|
|
18
|
+
sessions?: boolean;
|
|
15
19
|
};
|
|
16
20
|
};
|
|
17
21
|
export declare const init: (options: InitOptions) => void;
|
package/lib/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,WAAW,GAAG;IACxB,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,OAAO,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB;;8DAEsD;QACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;CACH,CAAC;AAIF,eAAO,MAAM,IAAI,GAAI,SAAS,WAAW,KAAG,IAyD3C,CAAC"}
|
package/lib/init.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { setConfig } from './config';
|
|
2
2
|
import { installGlobalHandler } from './handlers/global';
|
|
3
|
+
import { installLifecycleHandler } from './handlers/lifecycle';
|
|
3
4
|
import { installPromiseHandler } from './handlers/promise';
|
|
4
5
|
import { installNetworkHandler } from './handlers/network';
|
|
5
6
|
import { drainNativePending, setNativeConfig } from './native';
|
|
7
|
+
import { startSession } from './session-tracker';
|
|
6
8
|
import { drainOfflineQueue, enqueue, startTransport } from './transport';
|
|
7
9
|
const DEFAULT_INGEST_URL = 'https://ingest.sentori.golia.jp';
|
|
8
10
|
export const init = (options) => {
|
|
@@ -36,6 +38,13 @@ export const init = (options) => {
|
|
|
36
38
|
installPromiseHandler();
|
|
37
39
|
if (capture.network !== false)
|
|
38
40
|
installNetworkHandler();
|
|
41
|
+
if (capture.sessions !== false) {
|
|
42
|
+
// Open the cold-start session now (RN doesn't fire an AppState
|
|
43
|
+
// `change` for the initial `active` state), then bind AppState so
|
|
44
|
+
// background ends it and the next foreground opens a fresh one.
|
|
45
|
+
startSession();
|
|
46
|
+
installLifecycleHandler();
|
|
47
|
+
}
|
|
39
48
|
// Drain events persisted from previous session (best-effort):
|
|
40
49
|
// - native crashes from <Documents>/sentori/pending/*.json
|
|
41
50
|
// - JS transport offline queue from AsyncStorage
|
package/lib/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AA0BzE,MAAM,kBAAkB,GAAG,iCAAiC,CAAC;AAE7D,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,OAAoB,EAAQ,EAAE;IACjD,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,GAAG,GACP,OAAO,CAAC,WAAW;QACnB,CAAC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAE/D,SAAS,CAAC;QACR,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,kBAAkB;QAClD,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,uEAAuE;IACvE,iEAAiE;IACjE,eAAe,CAAC;QACd,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,GAAG;KACjB,CAAC,CAAC;IAEH,cAAc,EAAE,CAAC;IAEjB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;IACtC,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK;QAAE,oBAAoB,EAAE,CAAC;IAC3D,IAAI,OAAO,CAAC,iBAAiB,KAAK,KAAK;QAAE,qBAAqB,EAAE,CAAC;IACjE,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK;QAAE,qBAAqB,EAAE,CAAC;IACvD,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC/B,+DAA+D;QAC/D,kEAAkE;QAClE,gEAAgE;QAChE,YAAY,EAAE,CAAC;QACf,uBAAuB,EAAE,CAAC;IAC5B,CAAC;IAED,8DAA8D;IAC9D,2DAA2D;IAC3D,iDAAiD;IACjD,kBAAkB,EAAE;SACjB,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAU,CAAC,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACP,iBAAiB;YACnB,CAAC;QACH,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACnB,iBAAiB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@goliapkg/sentori-react-native",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.4",
|
|
4
4
|
"description": "Sentori SDK for React Native \u2014 JS-layer error capture, native crash handlers (iOS / Android), batched transport, fetch + react-navigation tracing.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://sentori.golia.jp",
|
package/src/init.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { setConfig } from './config';
|
|
2
2
|
import { installGlobalHandler } from './handlers/global';
|
|
3
|
+
import { installLifecycleHandler } from './handlers/lifecycle';
|
|
3
4
|
import { installPromiseHandler } from './handlers/promise';
|
|
4
5
|
import { installNetworkHandler } from './handlers/network';
|
|
5
6
|
import { drainNativePending, setNativeConfig } from './native';
|
|
7
|
+
import { startSession } from './session-tracker';
|
|
6
8
|
import { drainOfflineQueue, enqueue, startTransport } from './transport';
|
|
7
9
|
import type { Event } from './types';
|
|
8
10
|
|
|
@@ -22,6 +24,10 @@ export type InitOptions = {
|
|
|
22
24
|
globalErrors?: boolean;
|
|
23
25
|
promiseRejections?: boolean;
|
|
24
26
|
network?: boolean;
|
|
27
|
+
/** Session tracking: opens a session on init and on each
|
|
28
|
+
* foreground (`AppState` → `active`), ends it on background.
|
|
29
|
+
* Drives crash-free rate. Set `false` to opt out. */
|
|
30
|
+
sessions?: boolean;
|
|
25
31
|
};
|
|
26
32
|
};
|
|
27
33
|
|
|
@@ -61,6 +67,13 @@ export const init = (options: InitOptions): void => {
|
|
|
61
67
|
if (capture.globalErrors !== false) installGlobalHandler();
|
|
62
68
|
if (capture.promiseRejections !== false) installPromiseHandler();
|
|
63
69
|
if (capture.network !== false) installNetworkHandler();
|
|
70
|
+
if (capture.sessions !== false) {
|
|
71
|
+
// Open the cold-start session now (RN doesn't fire an AppState
|
|
72
|
+
// `change` for the initial `active` state), then bind AppState so
|
|
73
|
+
// background ends it and the next foreground opens a fresh one.
|
|
74
|
+
startSession();
|
|
75
|
+
installLifecycleHandler();
|
|
76
|
+
}
|
|
64
77
|
|
|
65
78
|
// Drain events persisted from previous session (best-effort):
|
|
66
79
|
// - native crashes from <Documents>/sentori/pending/*.json
|