@multiplayer-app/session-recorder-react-native 0.0.1-alpha.1 → 0.0.1-alpha.10
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/RRWEB_INTEGRATION.md +336 -0
- package/VIEWSHOT_INTEGRATION_TEST.md +123 -0
- package/copy-react-native-dist.sh +38 -0
- package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.d.ts +6 -0
- package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js +1 -0
- package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js.map +1 -0
- package/dist/components/GestureCaptureWrapper/index.d.ts +1 -0
- package/dist/components/GestureCaptureWrapper/index.js +1 -0
- package/dist/components/GestureCaptureWrapper/index.js.map +1 -0
- package/dist/components/GestureCaptureWrapper.d.ts +6 -0
- package/dist/components/GestureCaptureWrapper.js +1 -0
- package/dist/components/GestureCaptureWrapper.js.map +1 -0
- package/dist/components/ScreenRecorderView/ScreenRecorderView.d.ts +5 -0
- package/dist/components/ScreenRecorderView/ScreenRecorderView.js +1 -0
- package/dist/components/ScreenRecorderView/ScreenRecorderView.js.map +1 -0
- package/dist/components/ScreenRecorderView/index.d.ts +1 -0
- package/dist/components/ScreenRecorderView/index.js +1 -0
- package/dist/components/ScreenRecorderView/index.js.map +1 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -0
- package/dist/config/constants.d.ts +18 -0
- package/dist/config/constants.js +1 -0
- package/dist/config/constants.js.map +1 -0
- package/dist/config/defaults.d.ts +4 -0
- package/dist/config/defaults.js +1 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/index.d.ts +5 -0
- package/dist/config/index.js +1 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/masking.d.ts +2 -30
- package/dist/config/masking.js +1 -1
- package/dist/config/masking.js.map +1 -1
- package/dist/config/session-recorder.d.ts +2 -0
- package/dist/config/session-recorder.js +1 -0
- package/dist/config/session-recorder.js.map +1 -0
- package/dist/config/validators.d.ts +10 -0
- package/dist/config/validators.js +1 -0
- package/dist/config/validators.js.map +1 -0
- package/dist/context/SessionRecorderContext.d.ts +12 -0
- package/dist/context/SessionRecorderContext.js +1 -0
- package/dist/context/SessionRecorderContext.js.map +1 -0
- package/dist/expo.d.ts +5 -9
- package/dist/expo.js +1 -1
- package/dist/expo.js.map +1 -1
- package/dist/index.d.ts +6 -10
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/otel/helpers.d.ts +45 -3
- package/dist/otel/helpers.js +1 -1
- package/dist/otel/helpers.js.map +1 -1
- package/dist/otel/index.d.ts +4 -25
- package/dist/otel/index.js +1 -1
- package/dist/otel/index.js.map +1 -1
- package/dist/otel/instrumentations/gestureInstrumentation.js +1 -1
- package/dist/otel/instrumentations/gestureInstrumentation.js.map +1 -1
- package/dist/otel/instrumentations/index.d.ts +3 -4
- package/dist/otel/instrumentations/index.js +1 -1
- package/dist/otel/instrumentations/index.js.map +1 -1
- package/dist/otel/instrumentations/reactNativeInstrumentation.js +1 -1
- package/dist/otel/instrumentations/reactNativeInstrumentation.js.map +1 -1
- package/dist/otel/instrumentations/reactNavigationInstrumentation.d.ts +1 -0
- package/dist/otel/instrumentations/reactNavigationInstrumentation.js +1 -1
- package/dist/otel/instrumentations/reactNavigationInstrumentation.js.map +1 -1
- package/dist/patch/index.d.ts +1 -0
- package/dist/patch/index.js +1 -0
- package/dist/patch/index.js.map +1 -0
- package/dist/patch/xhr.d.ts +2 -0
- package/dist/patch/xhr.js +1 -0
- package/dist/patch/xhr.js.map +1 -0
- package/dist/recorder/eventExporter.d.ts +21 -0
- package/dist/recorder/eventExporter.js +1 -0
- package/dist/recorder/eventExporter.js.map +1 -0
- package/dist/recorder/gestureHandlerRecorder.d.ts +19 -0
- package/dist/recorder/gestureHandlerRecorder.js +1 -0
- package/dist/recorder/gestureHandlerRecorder.js.map +1 -0
- package/dist/recorder/gestureRecorder.d.ts +68 -11
- package/dist/recorder/gestureRecorder.js +1 -1
- package/dist/recorder/gestureRecorder.js.map +1 -1
- package/dist/recorder/index.d.ts +60 -6
- package/dist/recorder/index.js +1 -1
- package/dist/recorder/index.js.map +1 -1
- package/dist/recorder/navigationTracker.js +1 -1
- package/dist/recorder/navigationTracker.js.map +1 -1
- package/dist/recorder/screenRecorder.d.ts +79 -10
- package/dist/recorder/screenRecorder.js +1 -1
- package/dist/recorder/screenRecorder.js.map +1 -1
- package/dist/services/api.service.d.ts +62 -10
- package/dist/services/api.service.js +1 -1
- package/dist/services/api.service.js.map +1 -1
- package/dist/services/storage.service.d.ts +23 -16
- package/dist/services/storage.service.js +1 -1
- package/dist/services/storage.service.js.map +1 -1
- package/dist/session-recorder.d.ts +166 -0
- package/dist/session-recorder.js +1 -0
- package/dist/session-recorder.js.map +1 -0
- package/dist/types/index.d.ts +15 -76
- package/dist/types/index.js +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/rrweb.d.ts +118 -0
- package/dist/types/rrweb.js +1 -0
- package/dist/types/rrweb.js.map +1 -0
- package/dist/types/session-recorder.d.ts +366 -0
- package/dist/types/session-recorder.js +1 -0
- package/dist/types/session-recorder.js.map +1 -0
- package/dist/types/session.d.ts +59 -0
- package/dist/types/session.js +1 -0
- package/dist/types/session.js.map +1 -0
- package/dist/utils/app-metadata.d.ts +16 -0
- package/dist/utils/app-metadata.js +1 -0
- package/dist/utils/app-metadata.js.map +1 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.d.ts +112 -0
- package/dist/utils/logger.js +1 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/platform.d.ts +37 -0
- package/dist/utils/platform.js +1 -1
- package/dist/utils/platform.js.map +1 -1
- package/dist/utils/request-utils.d.ts +21 -0
- package/dist/utils/request-utils.js +1 -0
- package/dist/utils/request-utils.js.map +1 -0
- package/dist/utils/rrweb-events.d.ts +65 -0
- package/dist/utils/rrweb-events.js +1 -0
- package/dist/utils/rrweb-events.js.map +1 -0
- package/dist/utils/session.d.ts +5 -0
- package/dist/utils/session.js +1 -0
- package/dist/utils/session.js.map +1 -0
- package/dist/utils/time.d.ts +4 -0
- package/dist/utils/time.js +1 -0
- package/dist/utils/time.js.map +1 -0
- package/dist/utils/type-utils.d.ts +16 -0
- package/dist/utils/type-utils.js +1 -0
- package/dist/utils/type-utils.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/docs/AUTO_METADATA_DETECTION.md +108 -0
- package/package.json +10 -9
- package/scripts/generate-app-metadata.js +173 -0
- package/src/components/GestureCaptureWrapper/GestureCaptureWrapper.tsx +86 -0
- package/src/components/GestureCaptureWrapper/index.ts +1 -0
- package/src/components/ScreenRecorderView/ScreenRecorderView.tsx +72 -0
- package/src/components/ScreenRecorderView/index.ts +1 -0
- package/src/components/index.ts +1 -0
- package/src/config/constants.ts +60 -0
- package/src/config/defaults.ts +82 -0
- package/src/config/index.ts +6 -0
- package/src/config/masking.ts +10 -61
- package/src/config/session-recorder.ts +55 -0
- package/src/config/validators.ts +31 -0
- package/src/context/SessionRecorderContext.tsx +75 -0
- package/src/expo.ts +7 -37
- package/src/index.ts +14 -17
- package/src/otel/helpers.ts +265 -11
- package/src/otel/index.ts +37 -247
- package/src/otel/instrumentations/index.ts +82 -53
- package/src/patch/index.ts +1 -0
- package/src/patch/xhr.ts +142 -0
- package/src/recorder/eventExporter.ts +141 -0
- package/src/recorder/gestureRecorder.ts +194 -125
- package/src/recorder/index.ts +132 -24
- package/src/recorder/navigationTracker.ts +12 -10
- package/src/recorder/screenRecorder.ts +242 -155
- package/src/services/api.service.ts +170 -45
- package/src/services/storage.service.ts +102 -74
- package/src/session-recorder.ts +600 -0
- package/src/types/index.ts +19 -79
- package/src/types/session-recorder.ts +423 -0
- package/src/types/session.ts +65 -0
- package/src/utils/app-metadata.ts +31 -0
- package/src/utils/index.ts +8 -0
- package/src/utils/logger.ts +225 -0
- package/src/utils/platform.ts +321 -6
- package/src/utils/request-utils.ts +61 -0
- package/src/utils/rrweb-events.ts +309 -0
- package/src/utils/session.ts +18 -0
- package/src/utils/time.ts +17 -0
- package/src/utils/type-utils.ts +75 -0
- package/src/version.ts +1 -1
- package/dist/sessionRecorder.d.ts +0 -54
- package/dist/sessionRecorder.js +0 -1
- package/dist/sessionRecorder.js.map +0 -1
- package/examples/sample-expo-app/README.md +0 -142
- package/examples/sample-expo-app/app/(tabs)/_layout.tsx +0 -60
- package/examples/sample-expo-app/app/(tabs)/explore.tsx +0 -110
- package/examples/sample-expo-app/app/(tabs)/index.tsx +0 -125
- package/examples/sample-expo-app/app/(tabs)/posts.tsx +0 -96
- package/examples/sample-expo-app/app/(tabs)/users.tsx +0 -131
- package/examples/sample-expo-app/app/+not-found.tsx +0 -32
- package/examples/sample-expo-app/app/_layout.tsx +0 -53
- package/examples/sample-expo-app/app/post/[id].tsx +0 -199
- package/examples/sample-expo-app/app/user/[id].tsx +0 -270
- package/examples/sample-expo-app/app.json +0 -42
- package/examples/sample-expo-app/assets/fonts/SpaceMono-Regular.ttf +0 -0
- package/examples/sample-expo-app/assets/images/adaptive-icon.png +0 -0
- package/examples/sample-expo-app/assets/images/favicon.png +0 -0
- package/examples/sample-expo-app/assets/images/icon.png +0 -0
- package/examples/sample-expo-app/assets/images/partial-react-logo.png +0 -0
- package/examples/sample-expo-app/assets/images/react-logo.png +0 -0
- package/examples/sample-expo-app/assets/images/react-logo@2x.png +0 -0
- package/examples/sample-expo-app/assets/images/react-logo@3x.png +0 -0
- package/examples/sample-expo-app/assets/images/splash-icon.png +0 -0
- package/examples/sample-expo-app/components/Collapsible.tsx +0 -45
- package/examples/sample-expo-app/components/ErrorView.tsx +0 -52
- package/examples/sample-expo-app/components/ExternalLink.tsx +0 -24
- package/examples/sample-expo-app/components/HapticTab.tsx +0 -18
- package/examples/sample-expo-app/components/HelloWave.tsx +0 -40
- package/examples/sample-expo-app/components/LoadingSpinner.tsx +0 -34
- package/examples/sample-expo-app/components/ParallaxScrollView.tsx +0 -82
- package/examples/sample-expo-app/components/ThemedText.tsx +0 -60
- package/examples/sample-expo-app/components/ThemedView.tsx +0 -14
- package/examples/sample-expo-app/components/ui/IconSymbol.ios.tsx +0 -32
- package/examples/sample-expo-app/components/ui/IconSymbol.tsx +0 -41
- package/examples/sample-expo-app/components/ui/TabBarBackground.ios.tsx +0 -19
- package/examples/sample-expo-app/components/ui/TabBarBackground.tsx +0 -6
- package/examples/sample-expo-app/constants/Colors.ts +0 -26
- package/examples/sample-expo-app/eslint.config.js +0 -10
- package/examples/sample-expo-app/hooks/useApi.ts +0 -41
- package/examples/sample-expo-app/hooks/useColorScheme.ts +0 -1
- package/examples/sample-expo-app/hooks/useColorScheme.web.ts +0 -21
- package/examples/sample-expo-app/hooks/useThemeColor.ts +0 -21
- package/examples/sample-expo-app/metro.config.js +0 -26
- package/examples/sample-expo-app/package-lock.json +0 -26296
- package/examples/sample-expo-app/package.json +0 -59
- package/examples/sample-expo-app/scripts/reset-project.js +0 -112
- package/examples/sample-expo-app/services/api.ts +0 -98
- package/examples/sample-expo-app/tsconfig.json +0 -17
- package/examples/sample-expo-app/utils/navigation.ts +0 -19
- package/src/otel/instrumentations/gestureInstrumentation.ts +0 -141
- package/src/otel/instrumentations/reactNativeInstrumentation.ts +0 -164
- package/src/otel/instrumentations/reactNavigationInstrumentation.ts +0 -114
- package/src/sessionRecorder.ts +0 -367
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,iDAAiD,GAClD,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAGL,qBAAqB,GAEtB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,0BAA0B,EAC1B,uCAAuC,GACxC,MAAM,aAAa,CAAA;AACpB,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,sBAAsB,GAAkB;IACnD,uBAAuB,EAAE,IAAI;IAC7B,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC;IAC/B,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC;IACnC,kBAAkB,EAAE,eAAe;IACnC,eAAe,EAAE,gBAAgB;IACjC,gBAAgB,EAAE,EAAE;IACpB,gBAAgB,EAAE,EAAE;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAA8B;IACnE,0BAA0B,EAAE,uBAAuB;IACnD,6BAA6B,EAAE,uBAAuB;IACtD,gCAAgC,EAAE,kEAAkE;IACpG,mCAAmC,EAAE,kEAAkE;IACvG,wBAAwB,EAAE,sBAAsB;IAChD,wBAAwB,EAAE,iBAAiB;IAC3C,UAAU,EAAE,iBAAiB;IAC7B,gBAAgB,EAAE,0FAA0F;IAC5G,kBAAkB,EAAE,kBAAkB;IACtC,cAAc,EAAE,kBAAkB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,mCAAmC;IAC3D,4BAA4B,EAAE,mOAAmO;IACjQ,0BAA0B,EAAE,gBAAgB;IAC5C,iBAAiB,EAAE,gBAAgB;IACnC,oBAAoB,EAAE,iJAAiJ;IACvK,wBAAwB,EAAE,+CAA+C;IACzE,8BAA8B,EAAE,kBAAkB;IAClD,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,QAAQ;CACjC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAqC;IAC3D,MAAM,EAAE,EAAE;IAEV,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,EAAE;IACf,WAAW,EAAE,EAAE;IAEf,UAAU,EAAE,IAAI;IAChB,uBAAuB,EAAE,IAAI;IAC7B,qBAAqB,EAAE,qBAAqB,CAAC,WAAW;IAExD,sBAAsB,EAAE,KAAK;IAC7B,UAAU,EAAE,wBAAwB;IACpC,gBAAgB,EAAE,iDAAiD;IAEnE,sBAAsB,EAAE,IAAI;IAE5B,UAAU,EAAE,EAAE;IACd,4BAA4B,EAAE,EAAE;IAEhC,gBAAgB,EAAE,0BAA0B;IAC5C,2BAA2B,EAAE,uCAAuC;IAEpE,WAAW,EAAE,IAAI;IACjB,cAAc,EAAE,IAAI;IACpB,OAAO,EAAE,sBAAsB;IAC/B,mBAAmB,EAAE,0BAA0B;IAE/C,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,IAAI;CACvB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});var _constants=require("./constants");Object.keys(_constants).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_constants[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _constants[key];}});});var _defaults=require("./defaults");Object.keys(_defaults).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_defaults[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _defaults[key];}});});var _validators=require("./validators");Object.keys(_validators).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_validators[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _validators[key];}});});var _masking=require("./masking");Object.keys(_masking).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_masking[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _masking[key];}});});var _sessionRecorder=require("./session-recorder");Object.keys(_sessionRecorder).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_sessionRecorder[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _sessionRecorder[key];}});});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,oBAAoB,CAAA"}
|
package/dist/config/masking.d.ts
CHANGED
|
@@ -1,30 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* Focused only on HTTP request/response masking for OpenTelemetry traces
|
|
4
|
-
*/
|
|
5
|
-
export interface HttpMaskingConfig {
|
|
6
|
-
/** If true, enables masking for debug span payload in traces */
|
|
7
|
-
isContentMaskingEnabled?: boolean;
|
|
8
|
-
/** Custom function for masking body in traces */
|
|
9
|
-
maskBody?: (payload: any, span: any) => any;
|
|
10
|
-
/** Custom function for masking headers in traces */
|
|
11
|
-
maskHeaders?: (headers: any, span: any) => any;
|
|
12
|
-
/** List of body fields to mask in traces */
|
|
13
|
-
maskBodyFieldsList?: string[];
|
|
14
|
-
/** List of headers to mask in traces */
|
|
15
|
-
maskHeadersList?: string[];
|
|
16
|
-
/** List of headers to include in traces (if specified, only these headers will be captured) */
|
|
17
|
-
headersToInclude?: string[];
|
|
18
|
-
/** List of headers to exclude from traces */
|
|
19
|
-
headersToExclude?: string[];
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Default HTTP masking configuration
|
|
23
|
-
*/
|
|
24
|
-
export declare const DEFAULT_HTTP_MASKING_CONFIG: HttpMaskingConfig;
|
|
25
|
-
/**
|
|
26
|
-
* Get HTTP masking configuration
|
|
27
|
-
* @param masking Optional masking configuration
|
|
28
|
-
* @returns Processed HTTP masking configuration
|
|
29
|
-
*/
|
|
30
|
-
export declare const getHttpMaskingConfig: (masking?: HttpMaskingConfig) => HttpMaskingConfig;
|
|
1
|
+
import { MaskingConfig } from '../types';
|
|
2
|
+
export declare const getMaskingConfig: (masking?: MaskingConfig) => MaskingConfig;
|
package/dist/config/masking.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.getMaskingConfig=void 0;var _typeof2=_interopRequireDefault(require("@babel/runtime/helpers/typeof"));var _defaults=require("./defaults");var _validators=require("./validators");var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var mask=_sessionRecorderCommon.SessionRecorderSdk.mask,sensitiveFields=_sessionRecorderCommon.SessionRecorderSdk.sensitiveFields,sensitiveHeaders=_sessionRecorderCommon.SessionRecorderSdk.sensitiveHeaders;var getMaskingConfig=exports.getMaskingConfig=function getMaskingConfig(masking){var _a,_b,_c;var baseMasking=_defaults.DEFAULT_MASKING_CONFIG;if((0,_typeof2["default"])(masking)!=='object'){return baseMasking;}var maskHeadersList=(0,_validators.isValidArray)(masking.maskHeadersList,sensitiveHeaders);var maskBodyFieldsList=(0,_validators.isValidArray)(masking.maskBodyFieldsList,sensitiveFields);return{maskHeadersList:maskHeadersList,maskBodyFieldsList:maskBodyFieldsList,headersToInclude:(0,_validators.isValidArray)(masking.headersToInclude,(_a=baseMasking.headersToInclude)!==null&&_a!==void 0?_a:[]),headersToExclude:(0,_validators.isValidArray)(masking.headersToExclude,(_b=baseMasking.headersToExclude)!==null&&_b!==void 0?_b:[]),isContentMaskingEnabled:(0,_validators.isValidBoolean)(masking.isContentMaskingEnabled,(_c=baseMasking.isContentMaskingEnabled)!==null&&_c!==void 0?_c:true),maskBody:(0,_validators.isValidFunction)(masking.maskBody,mask(maskBodyFieldsList)),maskHeaders:(0,_validators.isValidFunction)(masking.maskHeaders,mask(maskHeadersList))};};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masking.js","sourceRoot":"","sources":["../../src/config/masking.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"masking.js","sourceRoot":"","sources":["../../src/config/masking.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAA;AAE7E,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAiB,EAAE;;IACzE,MAAM,WAAW,GAAG,sBAAsB,CAAA;IAE1C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAA;IAC/E,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAA;IAEpF,OAAO;QACL,eAAe;QACf,kBAAkB;QAClB,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAA,WAAW,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QAC5F,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAA,WAAW,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QAC5F,uBAAuB,EAAE,cAAc,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAA,WAAW,CAAC,uBAAuB,mCAAI,IAAI,CAAC;QACrH,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACrE,WAAW,EAAE,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;KACzE,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.getSessionRecorderConfig=void 0;var _typeof2=_interopRequireDefault(require("@babel/runtime/helpers/typeof"));var _types=require("../types");var _defaults=require("./defaults");var _masking=require("./masking");var _validators=require("./validators");var getWidgetTextOverridesConfig=function getWidgetTextOverridesConfig(config,defaultConfig){if(!config||(0,_typeof2["default"])(config)!=='object'){return defaultConfig;}return Object.keys(defaultConfig).reduce(function(acc,key){acc[key]=(0,_validators.isValidString)(config[key],defaultConfig[key]);return acc;},{});};var getSessionRecorderConfig=exports.getSessionRecorderConfig=function getSessionRecorderConfig(c){if(!c){return _defaults.BASE_CONFIG;}return{apiKey:(0,_validators.isValidString)(c.apiKey,_defaults.BASE_CONFIG.apiKey),version:(0,_validators.isValidString)(c.version,_defaults.BASE_CONFIG.version),application:(0,_validators.isValidString)(c.application,_defaults.BASE_CONFIG.application),environment:(0,_validators.isValidString)(c.environment,_defaults.BASE_CONFIG.environment),exporterEndpoint:(0,_validators.isValidString)(c.exporterEndpoint,_defaults.BASE_CONFIG.exporterEndpoint),apiBaseUrl:(0,_validators.isValidString)(c.apiBaseUrl,_defaults.BASE_CONFIG.apiBaseUrl),usePostMessageFallback:(0,_validators.isValidBoolean)(c.usePostMessageFallback,_defaults.BASE_CONFIG.usePostMessageFallback),showWidget:(0,_validators.isValidBoolean)(c.showWidget,_defaults.BASE_CONFIG.showWidget),showContinuousRecording:(0,_validators.isValidBoolean)(c.showContinuousRecording,_defaults.BASE_CONFIG.showContinuousRecording),widgetButtonPlacement:(0,_validators.isValidEnum)(c.widgetButtonPlacement,_defaults.BASE_CONFIG.widgetButtonPlacement,Object.values(_types.WidgetButtonPlacement)),ignoreUrls:(0,_validators.isValidArray)(c.ignoreUrls,_defaults.BASE_CONFIG.ignoreUrls),sampleTraceRatio:(0,_validators.isValidNumber)(c.sampleTraceRatio,_defaults.BASE_CONFIG.sampleTraceRatio),propagateTraceHeaderCorsUrls:c.propagateTraceHeaderCorsUrls||_defaults.BASE_CONFIG.propagateTraceHeaderCorsUrls,schemifyDocSpanPayload:(0,_validators.isValidBoolean)(c.schemifyDocSpanPayload,_defaults.BASE_CONFIG.schemifyDocSpanPayload),maxCapturingHttpPayloadSize:(0,_validators.isValidNumber)(c.maxCapturingHttpPayloadSize,_defaults.BASE_CONFIG.maxCapturingHttpPayloadSize),masking:(0,_masking.getMaskingConfig)(c.masking),captureBody:(0,_validators.isValidBoolean)(c.captureBody,_defaults.BASE_CONFIG.captureBody),captureHeaders:(0,_validators.isValidBoolean)(c.captureHeaders,_defaults.BASE_CONFIG.captureHeaders),widgetTextOverrides:getWidgetTextOverridesConfig(c.widgetTextOverrides,_defaults.BASE_CONFIG.widgetTextOverrides),recordScreen:(0,_validators.isValidBoolean)(c.recordScreen,_defaults.BASE_CONFIG.recordScreen),recordGestures:(0,_validators.isValidBoolean)(c.recordGestures,_defaults.BASE_CONFIG.recordGestures),recordNavigation:(0,_validators.isValidBoolean)(c.recordNavigation,_defaults.BASE_CONFIG.recordNavigation)};};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-recorder.js","sourceRoot":"","sources":["../../src/config/session-recorder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation helper functions for configuration objects
|
|
3
|
+
*/
|
|
4
|
+
export declare const isValidStringOrRegExp: (value: string | RegExp | undefined, defaultValue: string | RegExp) => string | RegExp;
|
|
5
|
+
export declare const isValidString: <T extends string>(value: string | undefined | T, defaultValue: string) => string;
|
|
6
|
+
export declare const isValidNumber: (value: number | undefined, defaultValue: number) => number;
|
|
7
|
+
export declare const isValidBoolean: (value: boolean | undefined, defaultValue: boolean) => boolean;
|
|
8
|
+
export declare const isValidArray: (value: any[] | undefined, defaultValue: any[]) => any[];
|
|
9
|
+
export declare const isValidEnum: <T>(value: any | T, defaultValue: T, enumValues: T[]) => T;
|
|
10
|
+
export declare const isValidFunction: (value: any, defaultValue: any) => any;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.isValidStringOrRegExp=exports.isValidString=exports.isValidNumber=exports.isValidFunction=exports.isValidEnum=exports.isValidBoolean=exports.isValidArray=void 0;var isValidStringOrRegExp=exports.isValidStringOrRegExp=function isValidStringOrRegExp(value,defaultValue){return typeof value==='string'||value instanceof RegExp?value:defaultValue;};var isValidString=exports.isValidString=function isValidString(value,defaultValue){return typeof value==='string'?value.trim():defaultValue;};var isValidNumber=exports.isValidNumber=function isValidNumber(value,defaultValue){return typeof value==='number'?value:defaultValue;};var isValidBoolean=exports.isValidBoolean=function isValidBoolean(value,defaultValue){return typeof value==='boolean'?value:defaultValue;};var isValidArray=exports.isValidArray=function isValidArray(value,defaultValue){return Array.isArray(value)?value:defaultValue;};var isValidEnum=exports.isValidEnum=function isValidEnum(value,defaultValue,enumValues){return enumValues.includes(value)?value:defaultValue;};var isValidFunction=exports.isValidFunction=function isValidFunction(value,defaultValue){return typeof value==='function'?value:defaultValue;};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/config/validators.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAkC,EAAE,YAA6B,EAAE,EAAE;IACzG,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAA;AACpF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAmB,KAA6B,EAAE,YAAoB,EAAE,EAAE;IACrG,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,CAAA;AAChE,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAyB,EAAE,YAAoB,EAAE,EAAE;IAC/E,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAE,YAAqB,EAAE,EAAE;IAClF,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAA;AAC1D,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAwB,EAAE,YAAmB,EAAE,EAAE;IAC5E,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAA;AACpD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,KAAc,EAAE,YAAe,EAAE,UAAe,EAAK,EAAE;IACpF,OAAO,UAAU,CAAC,QAAQ,CAAC,KAAU,CAAC,CAAC,CAAC,CAAC,KAAU,CAAC,CAAC,CAAC,YAAY,CAAA;AACpE,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAU,EAAE,YAAiB,EAAE,EAAE;IAC/D,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAA;AAC3D,CAAC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React, { PropsWithChildren } from 'react';
|
|
2
|
+
import { SessionRecorderOptions } from '../types';
|
|
3
|
+
import SessionRecorder from '../session-recorder';
|
|
4
|
+
interface SessionRecorderContextType {
|
|
5
|
+
instance: typeof SessionRecorder;
|
|
6
|
+
}
|
|
7
|
+
export interface SessionRecorderProviderProps extends PropsWithChildren {
|
|
8
|
+
options: SessionRecorderOptions;
|
|
9
|
+
}
|
|
10
|
+
export declare const SessionRecorderProvider: React.FC<SessionRecorderProviderProps>;
|
|
11
|
+
export declare const useSessionRecorder: () => SessionRecorderContextType;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.useSessionRecorder=exports.SessionRecorderProvider=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _types=require("../types");var _sessionRecorder=_interopRequireDefault(require("../session-recorder"));var _ScreenRecorderView=require("../components/ScreenRecorderView");var _jsxRuntime=require("react/jsx-runtime");var _this=void 0,_jsxFileName="/Users/gegham/www/multiplayer-debugger-javascript/packages/session-recorder-react-native/dist/context/SessionRecorderContext.js";function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,"default":e};if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}var SessionRecorderContext=(0,_react.createContext)(null);var SessionRecorderProvider=exports.SessionRecorderProvider=function SessionRecorderProvider(_ref){var children=_ref.children,options=_ref.options;var _useState=(0,_react.useState)(null),_useState2=(0,_slicedToArray2["default"])(_useState,2),sessionState=_useState2[0],setSessionState=_useState2[1];var optionsRef=(0,_react.useRef)();(0,_react.useEffect)(function(){var newOptions=JSON.stringify(options);if(optionsRef.current===JSON.stringify(options))return;optionsRef.current=newOptions;_sessionRecorder["default"].init(options);},[options]);(0,_react.useEffect)(function(){setSessionState(_sessionRecorder["default"].sessionState);_sessionRecorder["default"].on('state-change',function(state){setSessionState(state);});},[]);var onToggleSession=function onToggleSession(){if(_sessionRecorder["default"].sessionState===_types.SessionState.started){_sessionRecorder["default"].stop();}else{_sessionRecorder["default"].start();}};return(0,_jsxRuntime.jsxs)(SessionRecorderContext.Provider,{value:{instance:_sessionRecorder["default"]},children:[(0,_jsxRuntime.jsx)(_ScreenRecorderView.ScreenRecorderView,{children:children}),(0,_jsxRuntime.jsx)(_reactNative.Pressable,{onPress:onToggleSession,children:(0,_jsxRuntime.jsx)(_reactNative.View,{style:{position:'absolute',right:0,bottom:100,width:48,height:48,paddingTop:16,paddingLeft:10,backgroundColor:'red',borderTopLeftRadius:24,borderBottomLeftRadius:24},children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:{color:'white'},children:sessionState===_types.SessionState.started?'Stop':'Start'})})})]});};var useSessionRecorder=exports.useSessionRecorder=function useSessionRecorder(){var context=(0,_react.useContext)(SessionRecorderContext);if(!context){throw new Error('useSessionRecorder must be used within a SessionRecorderProvider');}return context;};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionRecorderContext.js","sourceRoot":"","sources":["../../src/context/SessionRecorderContext.tsx"],"names":[],"mappings":"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"}
|
package/dist/expo.d.ts
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
export default SessionRecorderExpoInstance;
|
|
4
|
-
export * from './types';
|
|
5
|
-
export { SessionRecorder } from './sessionRecorder';
|
|
6
|
-
export { TracerReactNativeSDK } from './otel';
|
|
7
|
-
export { RecorderReactNativeSDK } from './recorder';
|
|
8
|
-
export { ApiService } from './services/api.service';
|
|
9
|
-
export { StorageService } from './services/storage.service';
|
|
1
|
+
import './patch';
|
|
2
|
+
import SessionRecorder from './session-recorder';
|
|
10
3
|
export * from '@multiplayer-app/session-recorder-common';
|
|
4
|
+
export * from './context/SessionRecorderContext';
|
|
5
|
+
export { SessionRecorder };
|
|
6
|
+
export default SessionRecorder;
|
|
11
7
|
export { isExpoEnvironment, getPlatformAttributes } from './utils/platform';
|
package/dist/expo.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={SessionRecorder:true,isExpoEnvironment:true,getPlatformAttributes:true
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={SessionRecorder:true,isExpoEnvironment:true,getPlatformAttributes:true};Object.defineProperty(exports,"SessionRecorder",{enumerable:true,get:function get(){return _sessionRecorder["default"];}});exports["default"]=void 0;Object.defineProperty(exports,"getPlatformAttributes",{enumerable:true,get:function get(){return _platform.getPlatformAttributes;}});Object.defineProperty(exports,"isExpoEnvironment",{enumerable:true,get:function get(){return _platform.isExpoEnvironment;}});require("./patch");var _sessionRecorder=_interopRequireDefault(require("./session-recorder"));var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");Object.keys(_sessionRecorderCommon).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_sessionRecorderCommon[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _sessionRecorderCommon[key];}});});var _SessionRecorderContext=require("./context/SessionRecorderContext");Object.keys(_SessionRecorderContext).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_SessionRecorderContext[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _SessionRecorderContext[key];}});});var _platform=require("./utils/platform");var _default=exports["default"]=_sessionRecorder["default"];
|
package/dist/expo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expo.js","sourceRoot":"","sources":["../src/expo.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"expo.js","sourceRoot":"","sources":["../src/expo.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAChB,OAAO,eAAe,MAAM,oBAAoB,CAAA;AAChD,cAAc,0CAA0C,CAAA;AACxD,cAAc,kCAAkC,CAAA;AAEhD,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,iCAAiC;AACjC,eAAe,eAAe,CAAA;AAE9B,iCAAiC;AACjC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
export default SessionRecorderInstance;
|
|
4
|
-
export * from './types';
|
|
5
|
-
export { SessionRecorder } from './sessionRecorder';
|
|
6
|
-
export { TracerReactNativeSDK } from './otel';
|
|
7
|
-
export { RecorderReactNativeSDK } from './recorder';
|
|
8
|
-
export { ApiService } from './services/api.service';
|
|
9
|
-
export { StorageService } from './services/storage.service';
|
|
1
|
+
import './patch';
|
|
2
|
+
import SessionRecorder from './session-recorder';
|
|
10
3
|
export * from '@multiplayer-app/session-recorder-common';
|
|
11
|
-
export
|
|
4
|
+
export * from './context/SessionRecorderContext';
|
|
5
|
+
export { detectPlatform, isExpoEnvironment, configureAppMetadata, getPlatformAttributes, getConfiguredAppMetadata, } from './utils/platform';
|
|
6
|
+
export { SessionRecorder };
|
|
7
|
+
export default SessionRecorder;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={SessionRecorder:true,
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={SessionRecorder:true,detectPlatform:true,isExpoEnvironment:true,configureAppMetadata:true,getPlatformAttributes:true,getConfiguredAppMetadata:true};Object.defineProperty(exports,"SessionRecorder",{enumerable:true,get:function get(){return _sessionRecorder["default"];}});Object.defineProperty(exports,"configureAppMetadata",{enumerable:true,get:function get(){return _platform.configureAppMetadata;}});exports["default"]=void 0;Object.defineProperty(exports,"detectPlatform",{enumerable:true,get:function get(){return _platform.detectPlatform;}});Object.defineProperty(exports,"getConfiguredAppMetadata",{enumerable:true,get:function get(){return _platform.getConfiguredAppMetadata;}});Object.defineProperty(exports,"getPlatformAttributes",{enumerable:true,get:function get(){return _platform.getPlatformAttributes;}});Object.defineProperty(exports,"isExpoEnvironment",{enumerable:true,get:function get(){return _platform.isExpoEnvironment;}});require("./patch");var _sessionRecorder=_interopRequireDefault(require("./session-recorder"));var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");Object.keys(_sessionRecorderCommon).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_sessionRecorderCommon[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _sessionRecorderCommon[key];}});});var _SessionRecorderContext=require("./context/SessionRecorderContext");Object.keys(_SessionRecorderContext).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_SessionRecorderContext[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _SessionRecorderContext[key];}});});var _platform=require("./utils/platform");var _default=exports["default"]=_sessionRecorder["default"];
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAChB,OAAO,eAAe,MAAM,oBAAoB,CAAA;AAChD,cAAc,0CAA0C,CAAA;AACxD,cAAc,kCAAkC,CAAA;AAEhD,iEAAiE;AACjE,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,iCAAiC;AACjC,eAAe,eAAe,CAAA"}
|
package/dist/otel/helpers.d.ts
CHANGED
|
@@ -1,3 +1,45 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export
|
|
1
|
+
import { Span } from '@opentelemetry/api';
|
|
2
|
+
import { TracerReactNativeConfig } from '../types';
|
|
3
|
+
export interface HttpPayloadData {
|
|
4
|
+
requestBody?: any;
|
|
5
|
+
responseBody?: any;
|
|
6
|
+
requestHeaders?: Record<string, string>;
|
|
7
|
+
responseHeaders?: Record<string, string>;
|
|
8
|
+
}
|
|
9
|
+
export interface ProcessedHttpPayload {
|
|
10
|
+
requestBody?: string;
|
|
11
|
+
responseBody?: string;
|
|
12
|
+
requestHeaders?: string;
|
|
13
|
+
responseHeaders?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Checks if the trace should be processed based on trace ID prefixes
|
|
17
|
+
*/
|
|
18
|
+
export declare function shouldProcessTrace(traceId: string): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Processes request and response body based on trace type and configuration
|
|
21
|
+
*/
|
|
22
|
+
export declare function processBody(payload: HttpPayloadData, config: TracerReactNativeConfig, span: Span): {
|
|
23
|
+
requestBody?: string;
|
|
24
|
+
responseBody?: string;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Processes request and response headers based on configuration
|
|
28
|
+
*/
|
|
29
|
+
export declare function processHeaders(payload: HttpPayloadData, config: TracerReactNativeConfig, span: Span): {
|
|
30
|
+
requestHeaders?: string;
|
|
31
|
+
responseHeaders?: string;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Processes HTTP payload (body and headers) and sets span attributes
|
|
35
|
+
*/
|
|
36
|
+
export declare function processHttpPayload(payload: HttpPayloadData, config: TracerReactNativeConfig, span: Span): void;
|
|
37
|
+
/**
|
|
38
|
+
* Converts Headers object to plain object
|
|
39
|
+
*/
|
|
40
|
+
export declare function headersToObject(headers: Headers | Record<string, string> | Record<string, string | string[]> | string[][] | undefined): Record<string, string>;
|
|
41
|
+
/**
|
|
42
|
+
* Extracts response body as string from Response object
|
|
43
|
+
*/
|
|
44
|
+
export declare function extractResponseBody(response: Response): Promise<string | null>;
|
|
45
|
+
export declare const getExporterEndpoint: (exporterEndpoint: string) => string;
|
package/dist/otel/helpers.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.getExporterEndpoint=
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.extractResponseBody=extractResponseBody;exports.getExporterEndpoint=void 0;exports.headersToObject=headersToObject;exports.processBody=processBody;exports.processHeaders=processHeaders;exports.processHttpPayload=processHttpPayload;exports.shouldProcessTrace=shouldProcessTrace;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _typeof2=_interopRequireDefault(require("@babel/runtime/helpers/typeof"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _utils=require("../utils");function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n=0,F=function F(){};return{s:F,n:function n(){return _n>=r.length?{done:!0}:{done:!1,value:r[_n++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}var schemify=_sessionRecorderCommon.SessionRecorderSdk.schemify;function shouldProcessTrace(traceId){return traceId.startsWith(_sessionRecorderCommon.MULTIPLAYER_TRACE_DEBUG_PREFIX)||traceId.startsWith(_sessionRecorderCommon.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX);}function processBody(payload,config,span){var _a,_b;var captureBody=config.captureBody,masking=config.masking;var traceId=span.spanContext().traceId;if(!captureBody){return{};}var requestBody=payload.requestBody,responseBody=payload.responseBody;if(requestBody!==undefined&&requestBody!==null){requestBody=JSON.parse(JSON.stringify(requestBody));}if(responseBody!==undefined&&responseBody!==null){responseBody=JSON.parse(JSON.stringify(responseBody));}if(traceId.startsWith(_sessionRecorderCommon.MULTIPLAYER_TRACE_DEBUG_PREFIX)||traceId.startsWith(_sessionRecorderCommon.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)){if(masking.isContentMaskingEnabled){requestBody=requestBody&&((_a=masking.maskBody)===null||_a===void 0?void 0:_a.call(masking,requestBody,span));responseBody=responseBody&&((_b=masking.maskBody)===null||_b===void 0?void 0:_b.call(masking,responseBody,span));}}if(typeof requestBody!=='string'){requestBody=JSON.stringify(requestBody);}if(typeof responseBody!=='string'){responseBody=JSON.stringify(responseBody);}return{requestBody:(requestBody===null||requestBody===void 0?void 0:requestBody.length)?requestBody:undefined,responseBody:(responseBody===null||responseBody===void 0?void 0:responseBody.length)?responseBody:undefined};}function processHeaders(payload,config,span){var _a,_b,_c,_d,_e;var captureHeaders=config.captureHeaders,masking=config.masking;if(!captureHeaders){return{};}var _payload$requestHeade=payload.requestHeaders,requestHeaders=_payload$requestHeade===void 0?{}:_payload$requestHeade,_payload$responseHead=payload.responseHeaders,responseHeaders=_payload$responseHead===void 0?{}:_payload$responseHead;if(!((_a=masking.headersToInclude)===null||_a===void 0?void 0:_a.length)&&!((_b=masking.headersToExclude)===null||_b===void 0?void 0:_b.length)){if(requestHeaders!==undefined&&requestHeaders!==null){requestHeaders=JSON.parse(JSON.stringify(requestHeaders));}if(responseHeaders!==undefined&&responseHeaders!==null){responseHeaders=JSON.parse(JSON.stringify(responseHeaders));}}else{if(masking.headersToInclude){var _requestHeaders={};var _responseHeaders={};var _iterator=_createForOfIteratorHelper(masking.headersToInclude),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var headerName=_step.value;if(requestHeaders[headerName]){_requestHeaders[headerName]=requestHeaders[headerName];}if(responseHeaders[headerName]){_responseHeaders[headerName]=responseHeaders[headerName];}}}catch(err){_iterator.e(err);}finally{_iterator.f();}requestHeaders=_requestHeaders;responseHeaders=_responseHeaders;}if((_c=masking.headersToExclude)===null||_c===void 0?void 0:_c.length){var _iterator2=_createForOfIteratorHelper(masking.headersToExclude),_step2;try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){var _headerName=_step2.value;delete requestHeaders[_headerName];delete responseHeaders[_headerName];}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}}}var maskedRequestHeaders=((_d=masking.maskHeaders)===null||_d===void 0?void 0:_d.call(masking,requestHeaders,span))||requestHeaders;var maskedResponseHeaders=((_e=masking.maskHeaders)===null||_e===void 0?void 0:_e.call(masking,responseHeaders,span))||responseHeaders;var requestHeadersStr=typeof maskedRequestHeaders==='string'?maskedRequestHeaders:JSON.stringify(maskedRequestHeaders);var responseHeadersStr=typeof maskedResponseHeaders==='string'?maskedResponseHeaders:JSON.stringify(maskedResponseHeaders);return{requestHeaders:(requestHeadersStr===null||requestHeadersStr===void 0?void 0:requestHeadersStr.length)?requestHeadersStr:undefined,responseHeaders:(responseHeadersStr===null||responseHeadersStr===void 0?void 0:responseHeadersStr.length)?responseHeadersStr:undefined};}function processHttpPayload(payload,config,span){var traceId=span.spanContext().traceId;if(!shouldProcessTrace(traceId)){return;}var _processBody=processBody(payload,config,span),requestBody=_processBody.requestBody,responseBody=_processBody.responseBody;var _processHeaders=processHeaders(payload,config,span),requestHeaders=_processHeaders.requestHeaders,responseHeaders=_processHeaders.responseHeaders;if(requestBody){span.setAttribute(_sessionRecorderCommon.ATTR_MULTIPLAYER_HTTP_REQUEST_BODY,requestBody);}if(responseBody){span.setAttribute(_sessionRecorderCommon.ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY,responseBody);}if(requestHeaders){span.setAttribute(_sessionRecorderCommon.ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS,requestHeaders);}if(responseHeaders){span.setAttribute(_sessionRecorderCommon.ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS,responseHeaders);}}function headersToObject(headers){var result={};if(!headers){return result;}if(headers instanceof Headers){headers.forEach(function(value,key){result[key]=value;});}else if(Array.isArray(headers)){var _iterator3=_createForOfIteratorHelper(headers),_step3;try{for(_iterator3.s();!(_step3=_iterator3.n()).done;){var _step3$value=(0,_slicedToArray2["default"])(_step3.value,2),key=_step3$value[0],value=_step3$value[1];if(typeof key==='string'&&typeof value==='string'){result[key]=value;}}}catch(err){_iterator3.e(err);}finally{_iterator3.f();}}else if((0,_typeof2["default"])(headers)==='object'&&!Array.isArray(headers)){for(var _i=0,_Object$entries=Object.entries(headers);_i<_Object$entries.length;_i++){var _Object$entries$_i=(0,_slicedToArray2["default"])(_Object$entries[_i],2),_key=_Object$entries$_i[0],_value=_Object$entries$_i[1];if(typeof _key==='string'&&typeof _value==='string'){result[_key]=_value;}}}return result;}function extractResponseBody(_x){return _extractResponseBody.apply(this,arguments);}function _extractResponseBody(){_extractResponseBody=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(response){var responseClone,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(response.body){_context.next=1;break;}return _context.abrupt("return",null);case 1:_context.prev=1;if(!(response.body instanceof ReadableStream)){_context.next=3;break;}if(!response.bodyUsed){_context.next=2;break;}return _context.abrupt("return",null);case 2:responseClone=response.clone();return _context.abrupt("return",responseClone.text());case 3:return _context.abrupt("return",JSON.stringify(response.body));case 4:_context.next=6;break;case 5:_context.prev=5;_t=_context["catch"](1);_utils.logger.warn('DEBUGGER_LIB','Failed to extract response body',_t);return _context.abrupt("return",null);case 6:case"end":return _context.stop();}},_callee,null,[[1,5]]);}));return _extractResponseBody.apply(this,arguments);}var getExporterEndpoint=exports.getExporterEndpoint=function getExporterEndpoint(exporterEndpoint){var hasPath=exporterEndpoint&&function(){try{var url=new URL(exporterEndpoint);return url.pathname!=='/'&&url.pathname!=='';}catch(_a){return false;}}();if(hasPath){return exporterEndpoint;}var trimmedExporterEndpoint=new URL(exporterEndpoint).origin;return"".concat(trimmedExporterEndpoint,"/v1/traces");};
|
package/dist/otel/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/otel/helpers.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/otel/helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/otel/index.d.ts
CHANGED
|
@@ -3,38 +3,17 @@ import { TracerReactNativeConfig } from '../types';
|
|
|
3
3
|
export declare class TracerReactNativeSDK {
|
|
4
4
|
private tracerProvider?;
|
|
5
5
|
private config?;
|
|
6
|
-
private httpMaskingConfig;
|
|
7
6
|
private sessionId;
|
|
8
|
-
private idGenerator
|
|
7
|
+
private idGenerator?;
|
|
9
8
|
private exporter?;
|
|
10
|
-
private navigationInstrumentation;
|
|
11
|
-
private gestureInstrumentation;
|
|
12
9
|
private isInitialized;
|
|
13
10
|
constructor();
|
|
14
11
|
private _setSessionId;
|
|
15
12
|
init(options: TracerReactNativeConfig): void;
|
|
16
13
|
private _getSpanSessionIdProcessor;
|
|
14
|
+
start(sessionId: string, sessionType: SessionType): void;
|
|
15
|
+
stop(): void;
|
|
16
|
+
setApiKey(apiKey: string): void;
|
|
17
17
|
setSessionId(sessionId: string, sessionType: SessionType): void;
|
|
18
|
-
setNavigationRef(ref: any): void;
|
|
19
|
-
recordNavigate(routeName: string, params?: Record<string, any>): void;
|
|
20
|
-
recordGoBack(): void;
|
|
21
|
-
recordReset(routes: any[]): void;
|
|
22
|
-
enableGestureTracking(): void;
|
|
23
|
-
disableGestureTracking(): void;
|
|
24
|
-
recordTap(x: number, y: number, target?: string): void;
|
|
25
|
-
recordSwipe(direction: string, target?: string): void;
|
|
26
|
-
recordPinch(scale: number, target?: string): void;
|
|
27
|
-
recordPan(deltaX: number, deltaY: number, target?: string): void;
|
|
28
|
-
recordLongPress(duration: number, target?: string): void;
|
|
29
|
-
recordGestureError(error: Error, gestureType: string): void;
|
|
30
|
-
startTrace(name: string, attributes?: Record<string, any>): any;
|
|
31
|
-
endTrace(span: any, status?: any): void;
|
|
32
|
-
captureException(error: Error, context?: Record<string, any>): void;
|
|
33
|
-
recordNetworkRequest(url: string, method: string, statusCode: number, duration: number): void;
|
|
34
|
-
recordScreenLoad(screenName: string, loadTime: number): void;
|
|
35
|
-
recordMemoryUsage(usedMemory: number, totalMemory: number): void;
|
|
36
|
-
recordBatteryLevel(level: number, isCharging: boolean): void;
|
|
37
|
-
recordAppStateChange(state: string): void;
|
|
38
|
-
recordCustomEvent(eventName: string, attributes?: Record<string, any>): void;
|
|
39
18
|
shutdown(): Promise<void>;
|
|
40
19
|
}
|
package/dist/otel/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.TracerReactNativeSDK=void 0;var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _resources=require("@opentelemetry/resources");var _core=require("@opentelemetry/core");var _sdkTraceBase=require("@opentelemetry/sdk-trace-base");var SemanticAttributes=_interopRequireWildcard(require("@opentelemetry/semantic-conventions"));var _instrumentation=require("@opentelemetry/instrumentation");var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _instrumentations=require("./instrumentations");var _helpers=require("./helpers");var _reactNavigationInstrumentation=require("./instrumentations/reactNavigationInstrumentation");var _gestureInstrumentation=require("./instrumentations/gestureInstrumentation");var _masking=require("../config/masking");var _platform=require("../utils/platform");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,"default":e};if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var ReactNativeTracerProvider=function(){function ReactNativeTracerProvider(options){(0,_classCallCheck2["default"])(this,ReactNativeTracerProvider);this.resource=options.resource;this.idGenerator=options.idGenerator;this.sampler=options.sampler;this.spanProcessors=options.spanProcessors;this.propagator=options.propagator;}return(0,_createClass2["default"])(ReactNativeTracerProvider,[{key:"register",value:function register(options){console.log('ReactNativeTracerProvider registered');}},{key:"getTracer",value:function getTracer(name,version,options){return{startSpan:function startSpan(name,options){return{setAttribute:function setAttribute(key,value){},setStatus:function setStatus(status){},end:function end(){},recordException:function recordException(error){}};}};}}]);}();var TracerReactNativeSDK=exports.TracerReactNativeSDK=function(){function TracerReactNativeSDK(){(0,_classCallCheck2["default"])(this,TracerReactNativeSDK);this.sessionId='';this.isInitialized=false;this.idGenerator=new _sessionRecorderCommon.SessionRecorderIdGenerator();this.navigationInstrumentation=new _reactNavigationInstrumentation.ReactNavigationInstrumentation();this.gestureInstrumentation=new _gestureInstrumentation.GestureInstrumentation();}return(0,_createClass2["default"])(TracerReactNativeSDK,[{key:"_setSessionId",value:function _setSessionId(sessionId){var sessionType=arguments.length>1&&arguments[1]!==undefined?arguments[1]:_sessionRecorderCommon.SessionType.PLAIN;this.sessionId=sessionId;this.idGenerator.setSessionId(sessionId,sessionType);}},{key:"init",value:function init(options){if(this.isInitialized){console.warn('TracerReactNativeSDK already initialized');return;}this.config=options;this.httpMaskingConfig=(0,_masking.getHttpMaskingConfig)(options.httpMasking);var _this$config=this.config,application=_this$config.application,version=_this$config.version,environment=_this$config.environment;var _require=require('@opentelemetry/exporter-trace-otlp-http'),OTLPTraceExporter=_require.OTLPTraceExporter;this.exporter=new OTLPTraceExporter({url:(0,_helpers.getExporterEndpoint)(options.exporterEndpoint),headers:{'Authorization':"Bearer ".concat(options.apiKey)}});this.tracerProvider=new ReactNativeTracerProvider({resource:(0,_resources.resourceFromAttributes)(_objectSpread((0,_defineProperty2["default"])((0,_defineProperty2["default"])((0,_defineProperty2["default"])({},SemanticAttributes.SEMRESATTRS_SERVICE_NAME,application),SemanticAttributes.SEMRESATTRS_SERVICE_VERSION,version),SemanticAttributes.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT,environment),(0,_platform.getPlatformAttributes)())),idGenerator:this.idGenerator,sampler:new _sessionRecorderCommon.SessionRecorderTraceIdRatioBasedSampler(this.config.sampleTraceRatio||0.15),spanProcessors:[this._getSpanSessionIdProcessor(),new _sdkTraceBase.BatchSpanProcessor(this.exporter)]});this.tracerProvider.register({propagator:new _core.W3CTraceContextPropagator()});(0,_instrumentation.registerInstrumentations)({tracerProvider:this.tracerProvider,instrumentations:(0,_instrumentations.getInstrumentations)(this.config)});this.isInitialized=true;console.log('TracerReactNativeSDK initialized successfully');}},{key:"_getSpanSessionIdProcessor",value:function _getSpanSessionIdProcessor(){var _this=this;return{onStart:function onStart(span){if(_this.sessionId){span.setAttribute(_sessionRecorderCommon.ATTR_MULTIPLAYER_SESSION_ID,_this.sessionId);}span.setAttribute('platform','react-native');span.setAttribute('timestamp',Date.now());},onEnd:function onEnd(){},shutdown:function shutdown(){return Promise.resolve();},forceFlush:function forceFlush(){return Promise.resolve();}};}},{key:"setSessionId",value:function setSessionId(sessionId,sessionType){this._setSessionId(sessionId,sessionType);}},{key:"setNavigationRef",value:function setNavigationRef(ref){this.navigationInstrumentation.setNavigationRef(ref);}},{key:"recordNavigate",value:function recordNavigate(routeName,params){this.navigationInstrumentation.recordNavigate(routeName,params);}},{key:"recordGoBack",value:function recordGoBack(){this.navigationInstrumentation.recordGoBack();}},{key:"recordReset",value:function recordReset(routes){this.navigationInstrumentation.recordReset(routes);}},{key:"enableGestureTracking",value:function enableGestureTracking(){this.gestureInstrumentation.enable();}},{key:"disableGestureTracking",value:function disableGestureTracking(){this.gestureInstrumentation.disable();}},{key:"recordTap",value:function recordTap(x,y,target){this.gestureInstrumentation.recordTap(x,y,target);}},{key:"recordSwipe",value:function recordSwipe(direction,target){this.gestureInstrumentation.recordSwipe(direction,target);}},{key:"recordPinch",value:function recordPinch(scale,target){this.gestureInstrumentation.recordPinch(scale,target);}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target){this.gestureInstrumentation.recordPan(deltaX,deltaY,target);}},{key:"recordLongPress",value:function recordLongPress(duration,target){this.gestureInstrumentation.recordLongPress(duration,target);}},{key:"recordGestureError",value:function recordGestureError(error,gestureType){this.gestureInstrumentation.recordGestureError(error,gestureType);}},{key:"startTrace",value:function startTrace(name,attributes){if(!this.isInitialized){console.warn('TracerReactNativeSDK not initialized');return null;}var _require2=require('@opentelemetry/api'),trace=_require2.trace;var span=trace.startSpan(name,{attributes:_objectSpread({'trace.type':'performance','trace.name':name},attributes)});return span;}},{key:"endTrace",value:function endTrace(span,status){if(span){if(status){span.setStatus(status);}span.end();}}},{key:"captureException",value:function captureException(error,context){if(!this.isInitialized)return;var _require3=require('@opentelemetry/api'),trace=_require3.trace,SpanStatusCode=_require3.SpanStatusCode;var span=trace.startSpan('error.capture',{attributes:_objectSpread({'error.type':error.name,'error.message':error.message,'error.stack':error.stack},context)});span.setStatus({code:SpanStatusCode.ERROR,message:error.message});span.recordException(error);span.end();}},{key:"recordNetworkRequest",value:function recordNetworkRequest(url,method,statusCode,duration){if(!this.isInitialized)return;var _require4=require('@opentelemetry/api'),trace=_require4.trace;var span=trace.startSpan('network.request',{attributes:{'http.url':url,'http.method':method,'http.status_code':statusCode,'http.duration':duration,'network.type':'fetch'}});span.setStatus({code:statusCode>=400?2:1});span.end();}},{key:"recordScreenLoad",value:function recordScreenLoad(screenName,loadTime){if(!this.isInitialized)return;var _require5=require('@opentelemetry/api'),trace=_require5.trace;var span=trace.startSpan('screen.load',{attributes:{'screen.name':screenName,'screen.load_time':loadTime,'screen.type':'react_native'}});span.end();}},{key:"recordMemoryUsage",value:function recordMemoryUsage(usedMemory,totalMemory){if(!this.isInitialized)return;var _require6=require('@opentelemetry/api'),trace=_require6.trace;var span=trace.startSpan('memory.usage',{attributes:{'memory.used':usedMemory,'memory.total':totalMemory,'memory.percentage':usedMemory/totalMemory*100}});span.end();}},{key:"recordBatteryLevel",value:function recordBatteryLevel(level,isCharging){if(!this.isInitialized)return;var _require7=require('@opentelemetry/api'),trace=_require7.trace;var span=trace.startSpan('battery.status',{attributes:{'battery.level':level,'battery.charging':isCharging}});span.end();}},{key:"recordAppStateChange",value:function recordAppStateChange(state){if(!this.isInitialized)return;var _require8=require('@opentelemetry/api'),trace=_require8.trace;var span=trace.startSpan('app.state_change',{attributes:{'app.state':state,'app.timestamp':Date.now()}});span.end();}},{key:"recordCustomEvent",value:function recordCustomEvent(eventName,attributes){if(!this.isInitialized)return;var _require9=require('@opentelemetry/api'),trace=_require9.trace;var span=trace.startSpan("custom.".concat(eventName),{attributes:_objectSpread({'event.name':eventName,'event.type':'custom'},attributes)});span.end();}},{key:"shutdown",value:function shutdown(){this.isInitialized=false;console.log('TracerReactNativeSDK shutdown');return Promise.resolve();}}]);}();
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.TracerReactNativeSDK=void 0;var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _resources=require("@opentelemetry/resources");var _core=require("@opentelemetry/core");var _sdkTraceBase=require("@opentelemetry/sdk-trace-base");var SemanticAttributes=_interopRequireWildcard(require("@opentelemetry/semantic-conventions"));var _instrumentation=require("@opentelemetry/instrumentation");var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _instrumentations=require("./instrumentations");var _helpers=require("./helpers");var _platform=require("../utils/platform");var _sdkTraceWeb=require("@opentelemetry/sdk-trace-web");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,"default":e};if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var TracerReactNativeSDK=exports.TracerReactNativeSDK=function(){function TracerReactNativeSDK(){(0,_classCallCheck2["default"])(this,TracerReactNativeSDK);this.sessionId='';this.isInitialized=false;}return(0,_createClass2["default"])(TracerReactNativeSDK,[{key:"_setSessionId",value:function _setSessionId(sessionId){var sessionType=arguments.length>1&&arguments[1]!==undefined?arguments[1]:_sessionRecorderCommon.SessionType.PLAIN;var _a;this.sessionId=sessionId;(_a=this.idGenerator)===null||_a===void 0?void 0:_a.setSessionId(sessionId,sessionType);}},{key:"init",value:function init(options){this.config=options;var _this$config=this.config,application=_this$config.application,version=_this$config.version,environment=_this$config.environment;this.idGenerator=new _sessionRecorderCommon.SessionRecorderIdGenerator();this.exporter=new _sessionRecorderCommon.SessionRecorderBrowserTraceExporter({apiKey:options.apiKey,url:(0,_helpers.getExporterEndpoint)(options.exporterEndpoint),usePostMessageFallback:options.usePostMessageFallback});this.tracerProvider=new _sdkTraceWeb.WebTracerProvider({resource:(0,_resources.resourceFromAttributes)(_objectSpread((0,_defineProperty2["default"])((0,_defineProperty2["default"])((0,_defineProperty2["default"])({},SemanticAttributes.SEMRESATTRS_SERVICE_NAME,application),SemanticAttributes.SEMRESATTRS_SERVICE_VERSION,version),SemanticAttributes.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT,environment),(0,_platform.getPlatformAttributes)())),idGenerator:this.idGenerator,sampler:new _sessionRecorderCommon.SessionRecorderTraceIdRatioBasedSampler(this.config.sampleTraceRatio||0.15),spanProcessors:[this._getSpanSessionIdProcessor(),new _sdkTraceBase.BatchSpanProcessor(this.exporter)]});this.tracerProvider.register({propagator:new _core.W3CTraceContextPropagator()});(0,_instrumentation.registerInstrumentations)({tracerProvider:this.tracerProvider,instrumentations:(0,_instrumentations.getInstrumentations)(this.config)});this.isInitialized=true;}},{key:"_getSpanSessionIdProcessor",value:function _getSpanSessionIdProcessor(){var _this=this;return{onStart:function onStart(span){if(_this.sessionId){span.setAttribute(_sessionRecorderCommon.ATTR_MULTIPLAYER_SESSION_ID,_this.sessionId);}span.setAttribute('platform','react-native');span.setAttribute('timestamp',Date.now());},onEnd:function onEnd(){},shutdown:function shutdown(){return Promise.resolve();},forceFlush:function forceFlush(){return Promise.resolve();}};}},{key:"start",value:function start(sessionId,sessionType){if(!this.tracerProvider){throw new Error('Configuration not initialized. Call init() before start().');}this._setSessionId(sessionId,sessionType);}},{key:"stop",value:function stop(){if(!this.tracerProvider){throw new Error('Configuration not initialized. Call init() before start().');}this._setSessionId('');}},{key:"setApiKey",value:function setApiKey(apiKey){var _a,_b;if(!this.exporter){throw new Error('Configuration not initialized. Call init() before setApiKey().');}(_b=(_a=this.exporter).setApiKey)===null||_b===void 0?void 0:_b.call(_a,apiKey);}},{key:"setSessionId",value:function setSessionId(sessionId,sessionType){this._setSessionId(sessionId,sessionType);}},{key:"shutdown",value:function shutdown(){this.isInitialized=false;return Promise.resolve();}}]);}();
|
package/dist/otel/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAClE,OAAO,KAAK,kBAAkB,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAA;AACzE,OAAO,EACL,WAAW,EACX,2BAA2B,EAC3B,0BAA0B,EAC1B,uCAAuC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureInstrumentation=void 0;var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _instrumentation=require("@opentelemetry/instrumentation");var _api=require("@opentelemetry/api");function _callSuper(t,o,e){return o=(0,_getPrototypeOf2["default"])(o),(0,_possibleConstructorReturn2["default"])(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],(0,_getPrototypeOf2["default"])(t).constructor):o.apply(t,e));}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}var GestureInstrumentation=exports.GestureInstrumentation=function(_InstrumentationBase){function GestureInstrumentation(){var _this;(0,_classCallCheck2["default"])(this,GestureInstrumentation);_this=_callSuper(this,GestureInstrumentation,['react-native-gesture','1.0.0',{}]);_this._isEnabled=false;return _this;}(0,_inherits2["default"])(GestureInstrumentation,_InstrumentationBase);return(0,_createClass2["default"])(GestureInstrumentation,[{key:"init",value:function init(){}},{key:"enable",value:function enable(){this._isEnabled=true;}},{key:"disable",value:function disable(){this._isEnabled=false;}},{key:"isEnabled",value:function isEnabled(){return this._isEnabled;}},{key:"recordTap",value:function recordTap(x,y,target){if(!this._isEnabled)return;var span=_api.trace.getTracer(
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureInstrumentation=void 0;var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _instrumentation=require("@opentelemetry/instrumentation");var _api=require("@opentelemetry/api");function _callSuper(t,o,e){return o=(0,_getPrototypeOf2["default"])(o),(0,_possibleConstructorReturn2["default"])(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],(0,_getPrototypeOf2["default"])(t).constructor):o.apply(t,e));}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}var scopeName="@opentelemetry/instrumentation-user-interaction";var GestureInstrumentation=exports.GestureInstrumentation=function(_InstrumentationBase){function GestureInstrumentation(){var _this;(0,_classCallCheck2["default"])(this,GestureInstrumentation);_this=_callSuper(this,GestureInstrumentation,['react-native-gesture','1.0.0',{}]);_this._isEnabled=false;return _this;}(0,_inherits2["default"])(GestureInstrumentation,_InstrumentationBase);return(0,_createClass2["default"])(GestureInstrumentation,[{key:"init",value:function init(){}},{key:"enable",value:function enable(){this._isEnabled=true;}},{key:"disable",value:function disable(){this._isEnabled=false;}},{key:"isEnabled",value:function isEnabled(){return this._isEnabled;}},{key:"recordTap",value:function recordTap(x,y,target){if(!this._isEnabled)return;var span=_api.trace.getTracer(scopeName).startSpan('Gesture.tap',{attributes:{'gesture.type':'tap','gesture.coordinates.x':x,'gesture.coordinates.y':y,'gesture.timestamp':Date.now()}});if(target){span.setAttribute('gesture.target',target);}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}},{key:"recordSwipe",value:function recordSwipe(direction,target){if(!this._isEnabled)return;var span=_api.trace.getTracer(scopeName).startSpan('Gesture.swipe',{attributes:{'gesture.type':'swipe','gesture.direction':direction,'gesture.timestamp':Date.now()}});if(target){span.setAttribute('gesture.target',target);}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}},{key:"recordPinch",value:function recordPinch(scale,target){if(!this._isEnabled)return;var span=_api.trace.getTracer(scopeName).startSpan('Gesture.pinch',{attributes:{'gesture.type':'pinch','gesture.scale':scale,'gesture.timestamp':Date.now()}});if(target){span.setAttribute('gesture.target',target);}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target){if(!this._isEnabled)return;var span=_api.trace.getTracer(scopeName).startSpan('Gesture.pan',{attributes:{'gesture.type':'pan','gesture.delta_x':deltaX,'gesture.delta_y':deltaY,'gesture.timestamp':Date.now()}});if(target){span.setAttribute('gesture.target',target);}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}},{key:"recordLongPress",value:function recordLongPress(duration,target){if(!this._isEnabled)return;var span=_api.trace.getTracer(scopeName).startSpan('Gesture.longPress',{attributes:{'gesture.type':'longPress','gesture.duration':duration,'gesture.timestamp':Date.now()}});if(target){span.setAttribute('gesture.target',target);}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}},{key:"recordGestureError",value:function recordGestureError(error,gestureType){if(!this._isEnabled)return;var span=_api.trace.getTracer(scopeName).startSpan("Gesture.".concat(gestureType,".error"),{attributes:{'gesture.type':gestureType,'gesture.error':true,'gesture.timestamp':Date.now()}});span.setStatus({code:_api.SpanStatusCode.ERROR,message:error.message});span.recordException(error);span.end();}}]);}(_instrumentation.InstrumentationBase);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gestureInstrumentation.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/gestureInstrumentation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gestureInstrumentation.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/gestureInstrumentation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
+
import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch';
|
|
2
|
+
import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request';
|
|
1
3
|
import { TracerReactNativeConfig } from '../../types';
|
|
2
|
-
export declare function getInstrumentations(config: TracerReactNativeConfig):
|
|
3
|
-
export { ReactNativeInstrumentation } from './reactNativeInstrumentation';
|
|
4
|
-
export { ReactNavigationInstrumentation } from './reactNavigationInstrumentation';
|
|
5
|
-
export { GestureInstrumentation } from './gestureInstrumentation';
|
|
4
|
+
export declare function getInstrumentations(config: TracerReactNativeConfig): (FetchInstrumentation | XMLHttpRequestInstrumentation)[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.getInstrumentations=getInstrumentations;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _instrumentationFetch=require("@opentelemetry/instrumentation-fetch");var _instrumentationXmlHttpRequest=require("@opentelemetry/instrumentation-xml-http-request");var _utils=require("../../utils");var _config=require("../../config");var _helpers=require("../helpers");function getInstrumentations(config){var instrumentations=[];try{instrumentations.push(new _instrumentationFetch.FetchInstrumentation({clearTimingResources:false,ignoreUrls:[].concat((0,_toConsumableArray2["default"])(_config.OTEL_IGNORE_URLS),(0,_toConsumableArray2["default"])(config.ignoreUrls||[])),propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls,applyCustomAttributesOnSpan:function(){var _applyCustomAttributesOnSpan=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(span,request,response){var captureBody,captureHeaders,requestBody,requestHeaders,responseHeaders,responseBody,payload,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(config){_context.next=1;break;}return _context.abrupt("return");case 1:captureBody=config.captureBody,captureHeaders=config.captureHeaders;_context.prev=2;if(!(!captureBody&&!captureHeaders)){_context.next=3;break;}return _context.abrupt("return");case 3:requestBody=request.body;requestHeaders=(0,_helpers.headersToObject)(request.headers);responseHeaders=(0,_helpers.headersToObject)(response instanceof Response?response.headers:undefined);responseBody=null;if(!(response instanceof Response&&response.body)){_context.next=5;break;}_context.next=4;return(0,_helpers.extractResponseBody)(response);case 4:responseBody=_context.sent;case 5:payload={requestBody:requestBody,responseBody:responseBody,requestHeaders:requestHeaders,responseHeaders:responseHeaders};(0,_helpers.processHttpPayload)(payload,config,span);_context.next=7;break;case 6:_context.prev=6;_t=_context["catch"](2);_utils.logger.error('DEBUGGER_LIB','Failed to capture fetch payload',_t);case 7:case"end":return _context.stop();}},_callee,null,[[2,6]]);}));function applyCustomAttributesOnSpan(_x,_x2,_x3){return _applyCustomAttributesOnSpan.apply(this,arguments);}return applyCustomAttributesOnSpan;}()}));}catch(error){_utils.logger.warn('DEBUGGER_LIB','Fetch instrumentation not available',error);}try{instrumentations.push(new _instrumentationXmlHttpRequest.XMLHttpRequestInstrumentation({clearTimingResources:false,ignoreUrls:[].concat((0,_toConsumableArray2["default"])(_config.OTEL_IGNORE_URLS),(0,_toConsumableArray2["default"])(config.ignoreUrls||[])),propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls,applyCustomAttributesOnSpan:function applyCustomAttributesOnSpan(span,xhr){if(!config)return;var captureBody=config.captureBody,captureHeaders=config.captureHeaders;try{if(!captureBody&&!captureHeaders){return;}var requestBody=xhr.networkRequest.requestBody;var responseBody=xhr.networkRequest.responseBody;var requestHeaders=xhr.networkRequest.requestHeaders||{};var responseHeaders=xhr.networkRequest.responseHeaders||{};var payload={requestBody:requestBody,responseBody:responseBody,requestHeaders:requestHeaders,responseHeaders:responseHeaders};(0,_helpers.processHttpPayload)(payload,config,span);}catch(error){_utils.logger.error('DEBUGGER_LIB','Failed to capture xml-http payload',error);}}}));}catch(error){_utils.logger.warn('DEBUGGER_LIB','XMLHttpRequest instrumentation not available',error);}return instrumentations;}
|