@multiplayer-app/session-recorder-react-native 0.0.1-alpha.3 → 0.0.1-alpha.5
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/dist/context/SessionRecorderContext.d.ts +13 -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 +4 -3
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/otel/index.d.ts +0 -23
- package/dist/otel/index.js +1 -1
- package/dist/otel/index.js.map +1 -1
- package/dist/otel/instrumentations/index.d.ts +4 -1
- 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/recorder/gestureRecorder.js +1 -1
- package/dist/recorder/gestureRecorder.js.map +1 -1
- package/dist/recorder/screenRecorder.js +1 -1
- package/dist/recorder/screenRecorder.js.map +1 -1
- package/dist/session-recorder.d.ts +3 -9
- package/dist/session-recorder.js +1 -1
- package/dist/session-recorder.js.map +1 -1
- package/dist/utils/platform.js +1 -1
- package/dist/utils/platform.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +6 -7
- package/src/context/SessionRecorderContext.tsx +71 -0
- package/src/expo.ts +7 -17
- package/src/index.ts +4 -4
- package/src/otel/index.ts +1 -237
- package/src/otel/instrumentations/index.ts +3 -11
- package/src/otel/instrumentations/reactNativeInstrumentation.ts +8 -96
- package/src/recorder/gestureRecorder.ts +1 -3
- package/src/recorder/screenRecorder.ts +7 -29
- package/src/session-recorder.ts +3 -58
- package/src/utils/platform.ts +5 -6
- package/src/version.ts +1 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React, { PropsWithChildren } from 'react';
|
|
2
|
+
import { SessionRecorderOptions } from '../types';
|
|
3
|
+
import SessionRecorder from '../session-recorder';
|
|
4
|
+
interface SessionRecorderContextType {
|
|
5
|
+
client: typeof SessionRecorder;
|
|
6
|
+
}
|
|
7
|
+
export interface SessionRecorderProviderProps extends PropsWithChildren {
|
|
8
|
+
options: SessionRecorderOptions;
|
|
9
|
+
client?: typeof SessionRecorder;
|
|
10
|
+
}
|
|
11
|
+
export declare const SessionRecorderProvider: React.FC<SessionRecorderProviderProps>;
|
|
12
|
+
export declare const useSessionRecorder: () => SessionRecorderContextType;
|
|
13
|
+
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 _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _sessionRecorder=_interopRequireDefault(require("../session-recorder"));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,client=_ref.client,options=_ref.options;var sessionRecorder=(0,_react.useMemo)(function(){if(client)return client;_sessionRecorder["default"].init(options);return _sessionRecorder["default"];},[]);return(0,_jsxRuntime.jsx)(SessionRecorderContext.Provider,{value:{client:sessionRecorder},children:(0,_jsxRuntime.jsx)(TouchEventCapture,{children:children})});};var TouchEventCapture=function TouchEventCapture(_ref2){var children=_ref2.children;var context=(0,_react.useContext)(SessionRecorderContext);var handleTouchStart=function handleTouchStart(event){var _event$nativeEvent=event.nativeEvent,pageX=_event$nativeEvent.pageX,pageY=_event$nativeEvent.pageY,target=_event$nativeEvent.target;};var handleTouchMove=function handleTouchMove(event){var _event$nativeEvent2=event.nativeEvent,pageX=_event$nativeEvent2.pageX,pageY=_event$nativeEvent2.pageY,target=_event$nativeEvent2.target;};var handleTouchEnd=function handleTouchEnd(event){var _event$nativeEvent3=event.nativeEvent,pageX=_event$nativeEvent3.pageX,pageY=_event$nativeEvent3.pageY,target=_event$nativeEvent3.target;};return(0,_jsxRuntime.jsx)(_reactNative.View,{style:{flex:1},onTouchStart:handleTouchStart,onTouchMove:handleTouchMove,onTouchEnd:handleTouchEnd,children:children});};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":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAgC,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/F,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAEnC,OAAO,eAAe,MAAM,qBAAqB,CAAA;AAMjD,MAAM,sBAAsB,GAAG,aAAa,CAAoC,IAAI,CAAC,CAAA;AAOrF,MAAM,CAAC,MAAM,uBAAuB,GAA2C,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;IAC/G,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;QACzB,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC7B,OAAO,eAAe,CAAA;IACxB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,CACL,CAAC,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAClE;MAAA,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAClD;IAAA,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CACnC,CAAA;AACH,CAAC,CAAA;AAED,gCAAgC;AAChC,MAAM,iBAAiB,GAAsC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC5E,MAAM,OAAO,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAA;IAElD,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAE,EAAE;QACtC,oCAAoC;QAEpC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAA;QAClD,6DAA6D;IAC/D,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,CAAC,KAAU,EAAE,EAAE;QACrC,oCAAoC;QAEpC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAA;QAClD,qBAAqB;QACrB,sEAAsE;IACxE,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,CAAC,KAAU,EAAE,EAAE;QACpC,oCAAoC;QAEpC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAA;QAClD,iBAAiB;QACjB,sEAAsE;IACxE,CAAC,CAAA;IAED,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,gBAAgB,CAAC,CAAC,WAAW,CAAC,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CACjH;MAAA,CAAC,QAAQ,CACX;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAA+B,EAAE;IACjE,MAAM,OAAO,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAA;IAClD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;IACrF,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
|
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 './session-recorder';
|
|
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";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,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,5 +1,6 @@
|
|
|
1
1
|
import './patch';
|
|
2
|
-
import
|
|
2
|
+
import SessionRecorder from './session-recorder';
|
|
3
3
|
export * from '@multiplayer-app/session-recorder-common';
|
|
4
|
-
|
|
5
|
-
export
|
|
4
|
+
export * from './context/SessionRecorderContext';
|
|
5
|
+
export { SessionRecorder };
|
|
6
|
+
export default SessionRecorder;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports["default"]=void 0;require("./patch");var _sessionRecorder=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
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={SessionRecorder:true};Object.defineProperty(exports,"SessionRecorder",{enumerable:true,get:function get(){return _sessionRecorder["default"];}});exports["default"]=void 0;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 _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,SAAS,CAAA;AAChB,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,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,iCAAiC;AACjC,eAAe,eAAe,CAAA"}
|
package/dist/otel/index.d.ts
CHANGED
|
@@ -17,28 +17,5 @@ export declare class TracerReactNativeSDK {
|
|
|
17
17
|
stop(): void;
|
|
18
18
|
setApiKey(apiKey: string): void;
|
|
19
19
|
setSessionId(sessionId: string, sessionType: SessionType): void;
|
|
20
|
-
setNavigationRef(ref: any): void;
|
|
21
|
-
recordNavigate(routeName: string, params?: Record<string, any>): void;
|
|
22
|
-
recordGoBack(): void;
|
|
23
|
-
recordReset(routes: any[]): void;
|
|
24
|
-
enableGestureTracking(): void;
|
|
25
|
-
disableGestureTracking(): void;
|
|
26
|
-
recordTap(x: number, y: number, target?: string): void;
|
|
27
|
-
recordSwipe(direction: string, target?: string): void;
|
|
28
|
-
recordPinch(scale: number, target?: string): void;
|
|
29
|
-
recordPan(deltaX: number, deltaY: number, target?: string): void;
|
|
30
|
-
recordLongPress(duration: number, target?: string): void;
|
|
31
|
-
recordGestureError(error: Error, gestureType: string): void;
|
|
32
|
-
startTrace(name: string, attributes?: Record<string, any>): any;
|
|
33
|
-
endTrace(span: any, status?: any): void;
|
|
34
|
-
captureException(error: Error, context?: Record<string, any>): void;
|
|
35
|
-
recordNetworkRequest(url: string, method: string, statusCode: number, duration: number, payload?: any): void;
|
|
36
|
-
recordHttpRequest(url: string, method: string, requestHeaders?: Record<string, string>, requestBody?: any): any;
|
|
37
|
-
recordHttpResponse(span: any, statusCode: number, responseHeaders?: Record<string, string>, responseBody?: any): void;
|
|
38
|
-
recordScreenLoad(screenName: string, loadTime: number): void;
|
|
39
|
-
recordMemoryUsage(usedMemory: number, totalMemory: number): void;
|
|
40
|
-
recordBatteryLevel(level: number, isCharging: boolean): void;
|
|
41
|
-
recordAppStateChange(state: string): void;
|
|
42
|
-
recordCustomEvent(eventName: string, attributes?: Record<string, any>): void;
|
|
43
20
|
shutdown(): Promise<void>;
|
|
44
21
|
}
|
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 _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.navigationInstrumentation=new _reactNavigationInstrumentation.ReactNavigationInstrumentation();this.gestureInstrumentation=new _gestureInstrumentation.GestureInstrumentation();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:"setNavigationRef",value:function setNavigationRef(ref){var _a;(_a=this.navigationInstrumentation)===null||_a===void 0?void 0:_a.setNavigationRef(ref);}},{key:"recordNavigate",value:function recordNavigate(routeName,params){var _a;(_a=this.navigationInstrumentation)===null||_a===void 0?void 0:_a.recordNavigate(routeName,params);}},{key:"recordGoBack",value:function recordGoBack(){var _a;(_a=this.navigationInstrumentation)===null||_a===void 0?void 0:_a.recordGoBack();}},{key:"recordReset",value:function recordReset(routes){var _a;(_a=this.navigationInstrumentation)===null||_a===void 0?void 0:_a.recordReset(routes);}},{key:"enableGestureTracking",value:function enableGestureTracking(){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.enable();}},{key:"disableGestureTracking",value:function disableGestureTracking(){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.disable();}},{key:"recordTap",value:function recordTap(x,y,target){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.recordTap(x,y,target);}},{key:"recordSwipe",value:function recordSwipe(direction,target){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.recordSwipe(direction,target);}},{key:"recordPinch",value:function recordPinch(scale,target){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.recordPinch(scale,target);}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.recordPan(deltaX,deltaY,target);}},{key:"recordLongPress",value:function recordLongPress(duration,target){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.recordLongPress(duration,target);}},{key:"recordGestureError",value:function recordGestureError(error,gestureType){var _a;(_a=this.gestureInstrumentation)===null||_a===void 0?void 0:_a.recordGestureError(error,gestureType);}},{key:"startTrace",value:function startTrace(name,attributes){if(!this.isInitialized){return null;}var _require=require('@opentelemetry/api'),trace=_require.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 _require2=require('@opentelemetry/api'),trace=_require2.trace,SpanStatusCode=_require2.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,payload){if(!this.isInitialized)return;var _require3=require('@opentelemetry/api'),trace=_require3.trace;var span=trace.startSpan('network.request',{attributes:{'http.url':url,'http.method':method,'http.status_code':statusCode,'http.duration':duration,'network.type':'fetch'}});if(payload&&this.config){(0,_helpers.processHttpPayload)(payload,this.config,span);}span.setStatus({code:statusCode>=400?2:1});span.end();}},{key:"recordHttpRequest",value:function recordHttpRequest(url,method,requestHeaders,requestBody){if(!this.isInitialized)return null;var _require4=require('@opentelemetry/api'),trace=_require4.trace;var span=trace.startSpan('http.request',{attributes:{'http.url':url,'http.method':method,'http.request_headers':(0,_helpers.headersToObject)(requestHeaders)}});if(requestBody&&this.config){(0,_helpers.processHttpPayload)({requestBody:requestBody,requestHeaders:requestHeaders},this.config,span);}return span;}},{key:"recordHttpResponse",value:function recordHttpResponse(span,statusCode,responseHeaders,responseBody){if(!span||!this.isInitialized)return;span.setAttribute('http.status_code',statusCode);span.setAttribute('http.response_headers',(0,_helpers.headersToObject)(responseHeaders));if(responseBody&&this.config){(0,_helpers.processHttpPayload)({responseBody:responseBody,responseHeaders:responseHeaders},this.config,span);}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;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 _reactNavigationInstrumentation=require("./instrumentations/reactNavigationInstrumentation");var _gestureInstrumentation=require("./instrumentations/gestureInstrumentation");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.navigationInstrumentation=new _reactNavigationInstrumentation.ReactNavigationInstrumentation();this.gestureInstrumentation=new _gestureInstrumentation.GestureInstrumentation();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,EACvC,mCAAmC,GACpC,MAAM,0CAA0C,CAAA;AAEjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,
|
|
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,EACvC,mCAAmC,GACpC,MAAM,0CAA0C,CAAA;AAEjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,8BAA8B,EAAE,MAAM,mDAAmD,CAAA;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAA;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAKhE,MAAM,OAAO,oBAAoB;IAW/B;QAPQ,cAAS,GAAG,EAAE,CAAA;QAKd,kBAAa,GAAG,KAAK,CAAA;IAEb,CAAC;IAET,aAAa,CACnB,SAAiB,EACjB,cAA2B,WAAW,CAAC,KAAK;;QAE5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,MAAA,IAAI,CAAC,WAAW,0CAAE,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,CAAC,OAAgC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAA;QAErB,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAEzD,IAAI,CAAC,WAAW,GAAG,IAAI,0BAA0B,EAAE,CAAA;QAEnD,IAAI,CAAC,QAAQ,GAAG,IAAI,mCAAmC,CAAC;YACtD,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,GAAG,EAAE,mBAAmB,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAClD,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;SACvD,CAAC,CAAA;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,iBAAiB,CAAC;YAC1C,QAAQ,EAAE,sBAAsB,CAAC;gBAC/B,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,EAAE,WAAW;gBAC1D,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,EAAE,OAAO;gBACzD,CAAC,kBAAkB,CAAC,kCAAkC,CAAC,EAAE,WAAW;gBACpE,GAAG,qBAAqB,EAAE;aAC3B,CAAC;YACF,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,uCAAuC,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC;YAC1F,cAAc,EAAE;gBACd,IAAI,CAAC,0BAA0B,EAAE;gBACjC,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC;aACtC;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC3B,UAAU,EAAE,IAAI,yBAAyB,EAAE;SAC5C,CAAC,CAAA;QAEF,4BAA4B;QAC5B,wBAAwB,CAAC;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,gBAAgB,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC;SACnD,CAAC,CAAA;QAEF,oDAAoD;QACpD,IAAI,CAAC,yBAAyB,GAAG,IAAI,8BAA8B,EAAE,CAAA;QACrE,IAAI,CAAC,sBAAsB,GAAG,IAAI,sBAAsB,EAAE,CAAA;QAE1D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;IAC3B,CAAC;IAEO,0BAA0B;QAChC,OAAO;YACL,OAAO,EAAE,CAAC,IAAS,EAAE,EAAE;gBACrB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,IAAI,CAAC,YAAY,CAAC,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;gBAChE,CAAC;gBACD,uCAAuC;gBACvC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;gBAC7C,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;YAC5C,CAAC;YACD,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC;YAChB,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;YACjC,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;SACpC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,SAAiB,EAAE,WAAwB;QAC/C,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;QACH,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;QACH,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;IACxB,CAAC;IAED,SAAS,CAAC,MAAc;;QACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAA;QACH,CAAC;QAED,MAAA,MAAA,IAAI,CAAC,QAAQ,EAAC,SAAS,mDAAG,MAAM,CAAC,CAAA;IACnC,CAAC;IAED,YAAY,CAAC,SAAiB,EAAE,WAAwB;QACtD,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IAC5C,CAAC;IAED,mCAAmC;IACnC,QAAQ;QACN,IAAI,CAAC,aAAa,GAAG,KAAK,CAAA;QAC1B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;CACF"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { TracerReactNativeConfig } from '../../types';
|
|
2
|
-
|
|
2
|
+
import { ReactNativeInstrumentation } from './reactNativeInstrumentation';
|
|
3
|
+
import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch';
|
|
4
|
+
import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request';
|
|
5
|
+
export declare function getInstrumentations(config: TracerReactNativeConfig): (ReactNativeInstrumentation | FetchInstrumentation | XMLHttpRequestInstrumentation)[];
|
|
3
6
|
export { ReactNativeInstrumentation } from './reactNativeInstrumentation';
|
|
4
7
|
export { ReactNavigationInstrumentation } from './reactNavigationInstrumentation';
|
|
5
8
|
export { GestureInstrumentation } from './gestureInstrumentation';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"GestureInstrumentation",{enumerable:true,get:function get(){return _gestureInstrumentation.GestureInstrumentation;}});Object.defineProperty(exports,"ReactNativeInstrumentation",{enumerable:true,get:function get(){return _reactNativeInstrumentation.ReactNativeInstrumentation;}});Object.defineProperty(exports,"ReactNavigationInstrumentation",{enumerable:true,get:function get(){return _reactNavigationInstrumentation.ReactNavigationInstrumentation;}});exports.getInstrumentations=getInstrumentations;var _reactNativeInstrumentation=require("./reactNativeInstrumentation");var _masking=require("../../config/masking");var _reactNavigationInstrumentation=require("./reactNavigationInstrumentation");var _gestureInstrumentation=require("./gestureInstrumentation");function getInstrumentations(config){var masking=(0,_masking.getMaskingConfig)(config.masking);var instrumentations=[];try{
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"GestureInstrumentation",{enumerable:true,get:function get(){return _gestureInstrumentation.GestureInstrumentation;}});Object.defineProperty(exports,"ReactNativeInstrumentation",{enumerable:true,get:function get(){return _reactNativeInstrumentation.ReactNativeInstrumentation;}});Object.defineProperty(exports,"ReactNavigationInstrumentation",{enumerable:true,get:function get(){return _reactNavigationInstrumentation.ReactNavigationInstrumentation;}});exports.getInstrumentations=getInstrumentations;var _reactNativeInstrumentation=require("./reactNativeInstrumentation");var _masking=require("../../config/masking");var _instrumentationFetch=require("@opentelemetry/instrumentation-fetch");var _instrumentationXmlHttpRequest=require("@opentelemetry/instrumentation-xml-http-request");var _reactNavigationInstrumentation=require("./reactNavigationInstrumentation");var _gestureInstrumentation=require("./gestureInstrumentation");function getInstrumentations(config){var masking=(0,_masking.getMaskingConfig)(config.masking);var instrumentations=[];try{instrumentations.push(new _instrumentationFetch.FetchInstrumentation({ignoreUrls:config.ignoreUrls||[],propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls||[],applyCustomAttributesOnSpan:function applyCustomAttributesOnSpan(span,request){if(config.captureHeaders){var headers=request.headers;if(headers&&masking.maskHeaders){var maskedHeaders=masking.maskHeaders(headers,span);Object.keys(maskedHeaders).forEach(function(key){span.setAttribute("http.request.header.".concat(key),maskedHeaders[key]);});}else if(headers){Object.keys(headers).forEach(function(key){span.setAttribute("http.request.header.".concat(key),headers[key]);});}}}}));}catch(error){console.warn('Fetch instrumentation not available:',error);}try{instrumentations.push(new _instrumentationXmlHttpRequest.XMLHttpRequestInstrumentation({ignoreUrls:config.ignoreUrls||[],propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls||[],applyCustomAttributesOnSpan:function applyCustomAttributesOnSpan(span,xhr){if(config.captureHeaders){var headers=xhr.getAllResponseHeaders();if(headers&&masking.maskHeaders){var maskedHeaders=masking.maskHeaders(headers,span);Object.keys(maskedHeaders).forEach(function(key){span.setAttribute("http.response.header.".concat(key),maskedHeaders[key]);});}else if(headers){Object.keys(headers).forEach(function(key){span.setAttribute("http.response.header.".concat(key),headers[key]);});}}}}));}catch(error){console.warn('XMLHttpRequest instrumentation not available:',error);}try{instrumentations.push(new _reactNativeInstrumentation.ReactNativeInstrumentation());}catch(error){console.warn('React Native instrumentation not available:',error);}return instrumentations;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAA;AAE/F,MAAM,UAAU,mBAAmB,CAAC,MAA+B;IACjE,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAChD,MAAM,gBAAgB,GAAG,EAAE,CAAA;IAE3B,wBAAwB;IACxB,IAAI,CAAC;QACH,gBAAgB,CAAC,IAAI,CACnB,IAAI,oBAAoB,CAAC;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,EAAE;YACnC,4BAA4B,EAAE,MAAM,CAAC,4BAA4B,IAAI,EAAE;YACvE,2BAA2B,EAAE,CAAC,IAAS,EAAE,OAAY,EAAE,EAAE;gBACvD,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;oBAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;oBAC/B,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACnC,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;wBACxD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;4BACvC,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;wBACrE,CAAC,CAAC,CAAA;oBACJ,CAAC;yBAAM,IAAI,OAAO,EAAE,CAAC;wBACnB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;4BACjC,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;wBAC/D,CAAC,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC,CACH,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAA;IAC7D,CAAC;IAED,iCAAiC;IACjC,IAAI,CAAC;QACH,gBAAgB,CAAC,IAAI,CACnB,IAAI,6BAA6B,CAAC;YAChC,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,EAAE;YACnC,4BAA4B,EAAE,MAAM,CAAC,4BAA4B,IAAI,EAAE;YACvE,2BAA2B,EAAE,CAAC,IAAS,EAAE,GAAQ,EAAE,EAAE;gBACnD,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;oBAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,qBAAqB,EAAE,CAAA;oBAC3C,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACnC,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;wBACxD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;4BACvC,IAAI,CAAC,YAAY,CAAC,wBAAwB,GAAG,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;wBACtE,CAAC,CAAC,CAAA;oBACJ,CAAC;yBAAM,IAAI,OAAO,EAAE,CAAC;wBACnB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;4BACjC,IAAI,CAAC,YAAY,CAAC,wBAAwB,GAAG,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;wBAChE,CAAC,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC,CACH,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAA;IACtE,CAAC;IAED,uCAAuC;IACvC,IAAI,CAAC;QACH,gBAAgB,CAAC,IAAI,CAAC,IAAI,0BAA0B,EAAE,CAAC,CAAA;IACzD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAA;IACpE,CAAC;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,gDAAgD;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAA;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ReactNativeInstrumentation=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));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 ReactNativeInstrumentation=exports.ReactNativeInstrumentation=function(_InstrumentationBase){function ReactNativeInstrumentation(){(0,_classCallCheck2["default"])(this,ReactNativeInstrumentation);return _callSuper(this,ReactNativeInstrumentation,['react-native','1.0.0',{}]);}(0,_inherits2["default"])(ReactNativeInstrumentation,_InstrumentationBase);return(0,_createClass2["default"])(ReactNativeInstrumentation,[{key:"init",value:function init(){}},{key:"enable",value:function enable(){try{
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ReactNativeInstrumentation=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));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");var _asyncStorage=_interopRequireDefault(require("@react-native-async-storage/async-storage"));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 ReactNativeInstrumentation=exports.ReactNativeInstrumentation=function(_InstrumentationBase){function ReactNativeInstrumentation(){(0,_classCallCheck2["default"])(this,ReactNativeInstrumentation);return _callSuper(this,ReactNativeInstrumentation,['react-native','1.0.0',{}]);}(0,_inherits2["default"])(ReactNativeInstrumentation,_InstrumentationBase);return(0,_createClass2["default"])(ReactNativeInstrumentation,[{key:"init",value:function init(){}},{key:"enable",value:function enable(){try{if(_asyncStorage["default"]){this._wrap(_asyncStorage["default"],'setItem',this._wrapAsyncStorage);}}catch(error){console.warn('@react-native-async-storage/async-storage is not available. AsyncStorage instrumentation will be disabled.');}}},{key:"disable",value:function disable(){try{if(_asyncStorage["default"]){this._unwrap(_asyncStorage["default"],'setItem');}}catch(error){}}},{key:"_wrapAsyncStorage",value:function _wrapAsyncStorage(originalMethod){return function(){var _ref=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(key,value){var startTime,result,span,_span,errorMessage,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:startTime=Date.now();_context.prev=1;_context.next=2;return originalMethod.call(this,key,value);case 2:result=_context.sent;span=_api.trace.getTracer('react-native').startSpan('AsyncStorage.setItem',{attributes:{'storage.operation':'setItem','storage.key':key,'storage.value_length':value.length,'storage.duration':Date.now()-startTime}});span.setStatus({code:_api.SpanStatusCode.OK});span.end();return _context.abrupt("return",result);case 3:_context.prev=3;_t=_context["catch"](1);_span=_api.trace.getTracer('react-native').startSpan('AsyncStorage.setItem',{attributes:{'storage.operation':'setItem','storage.key':key,'storage.error':true,'storage.duration':Date.now()-startTime}});errorMessage=_t instanceof Error?_t.message:String(_t);_span.setStatus({code:_api.SpanStatusCode.ERROR,message:errorMessage});if(_t instanceof Error){_span.recordException(_t);}_span.end();throw _t;case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));return function(_x,_x2){return _ref.apply(this,arguments);};}();}}]);}(_instrumentation.InstrumentationBase);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactNativeInstrumentation.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/reactNativeInstrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"reactNativeInstrumentation.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/reactNativeInstrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,YAAY,MAAM,2CAA2C,CAAA;AAEpE,MAAM,OAAO,0BAA2B,SAAQ,mBAAmB;IACjE;QACE,KAAK,CAAC,cAAc,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;IACpC,CAAC;IAED,IAAI;QACF,iCAAiC;IACnC,CAAC;IAED,MAAM;QACJ,6CAA6C;QAC7C,IAAI,CAAC;YACH,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;YAC7D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,4GAA4G,CAAC,CAAA;QAC5H,CAAC;IACH,CAAC;IAED,OAAO;QACL,+CAA+C;QAC/C,IAAI,CAAC;YACH,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oDAAoD;QACtD,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,cAAmB;QAC3C,OAAO,KAAK,WAAsB,GAAW,EAAE,KAAa;YAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAC5B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;gBAE1D,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,sBAAsB,EAAE;oBAC7E,UAAU,EAAE;wBACV,mBAAmB,EAAE,SAAS;wBAC9B,aAAa,EAAE,GAAG;wBAClB,sBAAsB,EAAE,KAAK,CAAC,MAAM;wBACpC,kBAAkB,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;qBAC3C;iBACF,CAAC,CAAA;gBAEF,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3C,IAAI,CAAC,GAAG,EAAE,CAAA;gBAEV,OAAO,MAAM,CAAA;YACf,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,sBAAsB,EAAE;oBAC7E,UAAU,EAAE;wBACV,mBAAmB,EAAE,SAAS;wBAC9B,aAAa,EAAE,GAAG;wBAClB,eAAe,EAAE,IAAI;wBACrB,kBAAkB,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;qBAC3C;iBACF,CAAC,CAAA;gBAEF,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBAC3E,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAA;gBACrE,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;oBAC3B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;gBAC7B,CAAC;gBACD,IAAI,CAAC,GAAG,EAAE,CAAA;gBAEV,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC,CAAA;IACH,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureRecorder=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _api=require("@opentelemetry/api");var GestureRecorder=exports.GestureRecorder=function(){function GestureRecorder(){(0,_classCallCheck2["default"])(this,GestureRecorder);this.isRecording=false;this.events=[];this.gestureHandlers=new Map();this.screenDimensions=null;this.lastGestureTime=0;this.gestureThrottleMs=50;}return(0,_createClass2["default"])(GestureRecorder,[{key:"init",value:function init(config){this.config=config;this._getScreenDimensions();}},{key:"start",value:function start(){this.isRecording=true;this.events=[];this._setupGestureHandlers();}},{key:"stop",value:function stop(){this.isRecording=false;this._removeGestureHandlers();}},{key:"pause",value:function pause(){this.isRecording=false;}},{key:"resume",value:function resume(){this.isRecording=true;}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureRecorder=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _api=require("@opentelemetry/api");var _reactNative=require("react-native");var GestureRecorder=exports.GestureRecorder=function(){function GestureRecorder(){(0,_classCallCheck2["default"])(this,GestureRecorder);this.isRecording=false;this.events=[];this.gestureHandlers=new Map();this.screenDimensions=null;this.lastGestureTime=0;this.gestureThrottleMs=50;}return(0,_createClass2["default"])(GestureRecorder,[{key:"init",value:function init(config){this.config=config;this._getScreenDimensions();}},{key:"start",value:function start(){this.isRecording=true;this.events=[];this._setupGestureHandlers();}},{key:"stop",value:function stop(){this.isRecording=false;this._removeGestureHandlers();}},{key:"pause",value:function pause(){this.isRecording=false;}},{key:"resume",value:function resume(){this.isRecording=true;}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{this.screenDimensions=_reactNative.Dimensions.get('window');}catch(error){this.screenDimensions={width:375,height:667};}}},{key:"_setupInputTracking",value:function _setupInputTracking(){try{}catch(error){}}},{key:"_setupGestureHandlers",value:function _setupGestureHandlers(){this._setupGlobalGestureListener();}},{key:"_setupGlobalGestureListener",value:function _setupGlobalGestureListener(){try{}catch(error){}}},{key:"_removeGestureHandlers",value:function _removeGestureHandlers(){this.gestureHandlers.clear();}},{key:"_recordEvent",value:function _recordEvent(event){if(!this.isRecording)return;var now=Date.now();if(now-this.lastGestureTime<this.gestureThrottleMs){return;}this.lastGestureTime=now;this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);}},{key:"_sendEvent",value:function _sendEvent(event){}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{var span=_api.trace.getTracer('gesture').startSpan("Gesture.".concat(event.type),{attributes:{'gesture.type':event.type,'gesture.timestamp':event.timestamp,'gesture.platform':'react-native'}});if(event.coordinates){span.setAttribute('gesture.coordinates.x',event.coordinates.x);span.setAttribute('gesture.coordinates.y',event.coordinates.y);if(this.screenDimensions){var relativeX=event.coordinates.x/this.screenDimensions.width;var relativeY=event.coordinates.y/this.screenDimensions.height;span.setAttribute('gesture.coordinates.relative_x',relativeX);span.setAttribute('gesture.coordinates.relative_y',relativeY);}}if(event.target){span.setAttribute('gesture.target',event.target);}if(event.metadata){Object.entries(event.metadata).forEach(function(_ref){var _ref2=(0,_slicedToArray2["default"])(_ref,2),key=_ref2[0],value=_ref2[1];span.setAttribute("gesture.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}catch(error){}}},{key:"recordTap",value:function recordTap(x,y,target,pressure){var _a,_b;var event={type:'tap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordSwipe",value:function recordSwipe(direction,target,velocity,distance){var _a,_b;var event={type:'swipe',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity||0,distance:distance||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPinch",value:function recordPinch(scale,target,velocity){var _a,_b;var event={type:'pinch',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target,velocity){var _a,_b;var event={type:'pan',timestamp:Date.now(),target:target,metadata:{deltaX:deltaX,deltaY:deltaY,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordLongPress",value:function recordLongPress(duration,target,pressure){var _a,_b;var event={type:'longPress',timestamp:Date.now(),target:target,metadata:{duration:duration,pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordDoubleTap",value:function recordDoubleTap(x,y,target){var _a,_b;var event={type:'doubleTap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordRotate",value:function recordRotate(rotation,target,velocity){var _a,_b;var event={type:'rotate',timestamp:Date.now(),target:target,metadata:{rotation:rotation,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordFling",value:function recordFling(direction,velocity,target){var _a,_b;var event={type:'fling',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordMultiTouch",value:function recordMultiTouch(touchCount,target){var _a,_b;var event={type:'multiTouch',timestamp:Date.now(),target:target,metadata:{touchCount:touchCount,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordScroll",value:function recordScroll(direction,distance,velocity,target){var _a,_b;var event={type:'scroll',timestamp:Date.now(),target:target,metadata:{direction:direction,distance:distance,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordZoom",value:function recordZoom(scale,target,velocity){var _a,_b;var event={type:'zoom',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordGestureSequence",value:function recordGestureSequence(gestures,duration,target){var _a,_b;var event={type:'gestureSequence',timestamp:Date.now(),target:target,metadata:{gestures:gestures.join(','),duration:duration,gestureCount:gestures.length,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordGestureError",value:function recordGestureError(error,gestureType,target){var _a,_b;var event={type:'gestureError',timestamp:Date.now(),target:target,metadata:{errorType:error.name,errorMessage:error.message,gestureType:gestureType,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);try{var span=_api.trace.getTracer('gesture').startSpan("Gesture.".concat(gestureType,".error"),{attributes:{'gesture.type':gestureType,'gesture.error':true,'gesture.error.type':error.name,'gesture.error.message':error.message,'gesture.timestamp':Date.now()}});span.setStatus({code:_api.SpanStatusCode.ERROR,message:error.message});span.recordException(error);span.end();}catch(spanError){}}},{key:"recordGesturePerformance",value:function recordGesturePerformance(gestureType,duration,target){var _a,_b;var event={type:'gesturePerformance',timestamp:Date.now(),target:target,metadata:{gestureType:gestureType,duration:duration,performance:'monitoring',screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"getEvents",value:function getEvents(){return(0,_toConsumableArray2["default"])(this.events);}},{key:"clearEvents",value:function clearEvents(){this.events=[];}},{key:"getEventStats",value:function getEventStats(){var stats={};this.events.forEach(function(event){stats[event.type]=(stats[event.type]||0)+1;});return stats;}},{key:"setGestureThrottle",value:function setGestureThrottle(throttleMs){this.gestureThrottleMs=throttleMs;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}}]);}();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gestureRecorder.js","sourceRoot":"","sources":["../../src/recorder/gestureRecorder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"gestureRecorder.js","sourceRoot":"","sources":["../../src/recorder/gestureRecorder.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.ScreenRecorder=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _api=require("@opentelemetry/api");var ScreenRecorder=exports.ScreenRecorder=function(){function ScreenRecorder(){(0,_classCallCheck2["default"])(this,ScreenRecorder);this.isRecording=false;this.events=[];this.captureCount=0;this.maxCaptures=100;this.captureQuality=0.8;this.captureFormat='png';this.screenDimensions=null;this.currentScreen=null;}return(0,_createClass2["default"])(ScreenRecorder,[{key:"init",value:function init(config){this.config=config;this._getScreenDimensions();}},{key:"start",value:function start(){this.isRecording=true;this.events=[];this.captureCount=0;this._startPeriodicCapture();}},{key:"stop",value:function stop(){this.isRecording=false;this._stopPeriodicCapture();}},{key:"pause",value:function pause(){this.isRecording=false;this._stopPeriodicCapture();}},{key:"resume",value:function resume(){this.isRecording=true;this._startPeriodicCapture();}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{var _require=require('react-native'),Dimensions=_require.Dimensions;this.screenDimensions=Dimensions.get('window');}catch(error){this.screenDimensions={width:375,height:667};}}},{key:"_startPeriodicCapture",value:function _startPeriodicCapture(){var _this=this;if(this.captureInterval){clearInterval(this.captureInterval);}this.captureInterval=setInterval(function(){_this._captureScreen();},5000);}},{key:"_stopPeriodicCapture",value:function _stopPeriodicCapture(){if(this.captureInterval){clearInterval(this.captureInterval);this.captureInterval=undefined;}}},{key:"_captureScreen",value:function(){var _captureScreen2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var _a,_b,startTime,screenData,captureTime,screenEvent,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!(!this.isRecording||this.captureCount>=this.maxCaptures)){_context.next=1;break;}return _context.abrupt("return");case 1:_context.prev=1;startTime=Date.now();_context.next=2;return this._performScreenCapture();case 2:screenData=_context.sent;captureTime=Date.now()-startTime;if(screenData){screenEvent={screenName:this.currentScreen||'unknown',type:'screenCapture',timestamp:Date.now(),dataUrl:screenData,metadata:{captureTime:captureTime,captureCount:this.captureCount+1,quality:this.captureQuality,format:this.captureFormat,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this.events.push(screenEvent);this.captureCount++;this._sendEvent(screenEvent);this._recordOpenTelemetrySpan(screenEvent);}_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);this._recordScreenCaptureError(_t instanceof Error?_t:new Error(String(_t)));case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));function _captureScreen(){return _captureScreen2.apply(this,arguments);}return _captureScreen;}()},{key:"_performScreenCapture",value:function(){var _performScreenCapture2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var ViewShot,Screenshot,_t2,_t3;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;ViewShot=require('react-native-view-shot');if(!(ViewShot&&ViewShot.captureRef)){_context2.next=2;break;}_context2.next=1;return this._captureWithViewShot();case 1:return _context2.abrupt("return",_context2.sent);case 2:_context2.next=4;break;case 3:_context2.prev=3;_t2=_context2["catch"](0);case 4:_context2.prev=4;Screenshot=require('react-native-screenshot');if(!(Screenshot&&Screenshot.takeScreenshot)){_context2.next=6;break;}_context2.next=5;return this._captureWithScreenshot();case 5:return _context2.abrupt("return",_context2.sent);case 6:_context2.next=8;break;case 7:_context2.prev=7;_t3=_context2["catch"](4);case 8:return _context2.abrupt("return",this._createPlaceholderImage());case 9:case"end":return _context2.stop();}},_callee2,this,[[0,3],[4,7]]);}));function _performScreenCapture(){return _performScreenCapture2.apply(this,arguments);}return _performScreenCapture;}()},{key:"_captureWithViewShot",value:function(){var _captureWithViewShot2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(){var ViewShot,_require2,findNodeHandle,rootViewRef,options,_t4;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;ViewShot=require('react-native-view-shot');_require2=require('react-native'),findNodeHandle=_require2.findNodeHandle;rootViewRef=this._getRootViewRef();if(!rootViewRef){_context3.next=2;break;}options={format:this.captureFormat,quality:this.captureQuality,result:'data-uri'};_context3.next=1;return ViewShot.captureRef(rootViewRef,options);case 1:return _context3.abrupt("return",_context3.sent);case 2:_context3.next=4;break;case 3:_context3.prev=3;_t4=_context3["catch"](0);case 4:return _context3.abrupt("return",null);case 5:case"end":return _context3.stop();}},_callee3,this,[[0,3]]);}));function _captureWithViewShot(){return _captureWithViewShot2.apply(this,arguments);}return _captureWithViewShot;}()},{key:"_captureWithScreenshot",value:function(){var _captureWithScreenshot2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(){var Screenshot,options,_t5;return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;Screenshot=require('react-native-screenshot');options={format:this.captureFormat,quality:this.captureQuality};_context4.next=1;return Screenshot.takeScreenshot(options);case 1:return _context4.abrupt("return",_context4.sent);case 2:_context4.prev=2;_t5=_context4["catch"](0);return _context4.abrupt("return",null);case 3:case"end":return _context4.stop();}},_callee4,this,[[0,2]]);}));function _captureWithScreenshot(){return _captureWithScreenshot2.apply(this,arguments);}return _captureWithScreenshot;}()},{key:"_getRootViewRef",value:function _getRootViewRef(){try{var _require3=require('react-native'),AppRegistry=_require3.AppRegistry;var appName=AppRegistry.getAppKeys()[0];return appName?{current:null}:null;}catch(error){return null;}}},{key:"_createPlaceholderImage",value:function _createPlaceholderImage(){var _a,_b;var width=((_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width)||375;var height=((_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height)||667;var svgContent="\n <svg width=\"".concat(width,"\" height=\"").concat(height,"\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect width=\"100%\" height=\"100%\" fill=\"#f0f0f0\"/>\n <text x=\"50%\" y=\"50%\" text-anchor=\"middle\" dy=\".3em\" fill=\"#666\" font-family=\"Arial\" font-size=\"16\">\n Screen Capture Placeholder\n </text>\n <text x=\"50%\" y=\"60%\" text-anchor=\"middle\" dy=\".3em\" fill=\"#666\" font-family=\"Arial\" font-size=\"14\">\n Captured at ").concat(new Date().toLocaleTimeString(),"\n </text>\n </svg>\n ");var base64Content=Buffer.from(svgContent,'utf8').toString('base64');return"data:image/svg+xml;base64,".concat(base64Content);}},{key:"_sendEvent",value:function _sendEvent(event){}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{var span=_api.trace.getTracer('screen').startSpan("Screen.".concat(event.type),{attributes:{'screen.type':event.type,'screen.timestamp':event.timestamp,'screen.platform':'react-native'}});if(event.metadata){Object.entries(event.metadata).forEach(function(_ref){var _ref2=(0,_slicedToArray2["default"])(_ref,2),key=_ref2[0],value=_ref2[1];span.setAttribute("screen.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}catch(error){}}},{key:"_recordScreenCaptureError",value:function _recordScreenCaptureError(error){try{var span=_api.trace.getTracer('screen').startSpan('Screen.capture.error',{attributes:{'screen.error':true,'screen.error.type':error.name,'screen.error.message':error.message,'screen.timestamp':Date.now()}});span.setStatus({code:_api.SpanStatusCode.ERROR,message:error.message});span.recordException(error);span.end();}catch(spanError){}}},{key:"captureScreenNow",value:function(){var _captureScreenNow=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(this.isRecording){_context5.next=1;break;}return _context5.abrupt("return",null);case 1:_context5.next=2;return this._performScreenCapture();case 2:return _context5.abrupt("return",_context5.sent);case 3:case"end":return _context5.stop();}},_callee5,this);}));function captureScreenNow(){return _captureScreenNow.apply(this,arguments);}return captureScreenNow;}()},{key:"captureSpecificElement",value:function(){var _captureSpecificElement=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(elementRef,options){var ViewShot,captureOptions,_t6;return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.prev=0;ViewShot=require('react-native-view-shot');captureOptions={format:(options===null||options===void 0?void 0:options.format)||this.captureFormat,quality:(options===null||options===void 0?void 0:options.quality)||this.captureQuality,result:'data-uri'};_context6.next=1;return ViewShot.captureRef(elementRef,captureOptions);case 1:return _context6.abrupt("return",_context6.sent);case 2:_context6.prev=2;_t6=_context6["catch"](0);return _context6.abrupt("return",null);case 3:case"end":return _context6.stop();}},_callee6,this,[[0,2]]);}));function captureSpecificElement(_x,_x2){return _captureSpecificElement.apply(this,arguments);}return captureSpecificElement;}()},{key:"setCaptureInterval",value:function setCaptureInterval(intervalMs){var _this2=this;if(this.captureInterval){clearInterval(this.captureInterval);}if(this.isRecording){this.captureInterval=setInterval(function(){_this2._captureScreen();},intervalMs);}}},{key:"setCaptureQuality",value:function setCaptureQuality(quality){this.captureQuality=Math.max(0.1,Math.min(1.0,quality));}},{key:"setCaptureFormat",value:function setCaptureFormat(format){this.captureFormat=format;}},{key:"setMaxCaptures",value:function setMaxCaptures(max){this.maxCaptures=Math.max(1,max);}},{key:"recordScreenPerformance",value:function recordScreenPerformance(screenName,loadTime){var event={screenName:screenName,type:'screenCapture',timestamp:Date.now(),metadata:{screenName:screenName,loadTime:loadTime,performance:'monitoring',captureCount:this.captureCount}};this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);}},{key:"recordScreenError",value:function recordScreenError(error,screenName){var event={screenName:screenName||'unknown',type:'screenCapture',timestamp:Date.now(),metadata:{error:true,errorType:error.name,errorMessage:error.message,screenName:screenName,captureCount:this.captureCount}};this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);this.events.push(event);this._sendEvent(event);this._recordScreenCaptureError(error);}},{key:"getEvents",value:function getEvents(){return(0,_toConsumableArray2["default"])(this.events);}},{key:"clearEvents",value:function clearEvents(){this.events=[];this.captureCount=0;}},{key:"getScreenStats",value:function getScreenStats(){var stats={totalCaptures:this.captureCount,totalEvents:this.events.length,averageCaptureTime:0,successRate:0};if(this.events.length>0){var captureTimes=this.events.map(function(event){var _a;return((_a=event.metadata)===null||_a===void 0?void 0:_a.captureTime)||0;}).filter(function(time){return time>0;});if(captureTimes.length>0){stats.averageCaptureTime=captureTimes.reduce(function(a,b){return a+b;},0)/captureTimes.length;}var successfulCaptures=this.events.filter(function(event){return event.dataUrl;}).length;stats.successRate=successfulCaptures/this.events.length*100;}return stats;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"getConfiguration",value:function getConfiguration(){return{captureInterval:this.captureInterval?5000:0,captureQuality:this.captureQuality,captureFormat:this.captureFormat,maxCaptures:this.maxCaptures,screenDimensions:this.screenDimensions};}},{key:"shutdown",value:function shutdown(){this.stop();this.clearEvents();}}]);}();
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ScreenRecorder=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _api=require("@opentelemetry/api");var _reactNative=require("react-native");var _reactNativeViewShot=require("react-native-view-shot");var ScreenRecorder=exports.ScreenRecorder=function(){function ScreenRecorder(){(0,_classCallCheck2["default"])(this,ScreenRecorder);this.isRecording=false;this.events=[];this.captureCount=0;this.maxCaptures=100;this.captureQuality=0.8;this.captureFormat='png';this.screenDimensions=null;this.currentScreen=null;}return(0,_createClass2["default"])(ScreenRecorder,[{key:"init",value:function init(config){this.config=config;this._getScreenDimensions();}},{key:"start",value:function start(){this.isRecording=true;this.events=[];this.captureCount=0;this._startPeriodicCapture();}},{key:"stop",value:function stop(){this.isRecording=false;this._stopPeriodicCapture();}},{key:"pause",value:function pause(){this.isRecording=false;this._stopPeriodicCapture();}},{key:"resume",value:function resume(){this.isRecording=true;this._startPeriodicCapture();}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{this.screenDimensions=_reactNative.Dimensions.get('window');}catch(error){this.screenDimensions={width:375,height:667};}}},{key:"_startPeriodicCapture",value:function _startPeriodicCapture(){var _this=this;if(this.captureInterval){clearInterval(this.captureInterval);}this.captureInterval=setInterval(function(){_this._captureScreen();},5000);}},{key:"_stopPeriodicCapture",value:function _stopPeriodicCapture(){if(this.captureInterval){clearInterval(this.captureInterval);this.captureInterval=undefined;}}},{key:"_captureScreen",value:function(){var _captureScreen2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var _a,_b,startTime,screenData,captureTime,screenEvent,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!(!this.isRecording||this.captureCount>=this.maxCaptures)){_context.next=1;break;}return _context.abrupt("return");case 1:_context.prev=1;startTime=Date.now();_context.next=2;return this._performScreenCapture();case 2:screenData=_context.sent;captureTime=Date.now()-startTime;if(screenData){screenEvent={screenName:this.currentScreen||'unknown',type:'screenCapture',timestamp:Date.now(),dataUrl:screenData,metadata:{captureTime:captureTime,captureCount:this.captureCount+1,quality:this.captureQuality,format:this.captureFormat,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this.events.push(screenEvent);this.captureCount++;this._sendEvent(screenEvent);this._recordOpenTelemetrySpan(screenEvent);}_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);this._recordScreenCaptureError(_t instanceof Error?_t:new Error(String(_t)));case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));function _captureScreen(){return _captureScreen2.apply(this,arguments);}return _captureScreen;}()},{key:"_performScreenCapture",value:function(){var _performScreenCapture2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var Screenshot,_t2,_t3;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=1;return this._captureWithViewShot();case 1:return _context2.abrupt("return",_context2.sent);case 2:_context2.prev=2;_t2=_context2["catch"](0);_context2.prev=3;Screenshot=require('react-native-screenshot');if(!(Screenshot&&Screenshot.takeScreenshot)){_context2.next=5;break;}_context2.next=4;return this._captureWithScreenshot();case 4:return _context2.abrupt("return",_context2.sent);case 5:_context2.next=7;break;case 6:_context2.prev=6;_t3=_context2["catch"](3);case 7:return _context2.abrupt("return",this._createPlaceholderImage());case 8:case"end":return _context2.stop();}},_callee2,this,[[0,2],[3,6]]);}));function _performScreenCapture(){return _performScreenCapture2.apply(this,arguments);}return _performScreenCapture;}()},{key:"_captureWithViewShot",value:function(){var _captureWithViewShot2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(){var _t4;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;_context3.next=1;return(0,_reactNativeViewShot.captureScreen)();case 1:return _context3.abrupt("return",_context3.sent);case 2:_context3.prev=2;_t4=_context3["catch"](0);return _context3.abrupt("return",null);case 3:case"end":return _context3.stop();}},_callee3,null,[[0,2]]);}));function _captureWithViewShot(){return _captureWithViewShot2.apply(this,arguments);}return _captureWithViewShot;}()},{key:"_captureWithScreenshot",value:function(){var _captureWithScreenshot2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(){var Screenshot,options,_t5;return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;Screenshot=require('react-native-screenshot');options={format:this.captureFormat,quality:this.captureQuality};_context4.next=1;return Screenshot.takeScreenshot(options);case 1:return _context4.abrupt("return",_context4.sent);case 2:_context4.prev=2;_t5=_context4["catch"](0);return _context4.abrupt("return",null);case 3:case"end":return _context4.stop();}},_callee4,this,[[0,2]]);}));function _captureWithScreenshot(){return _captureWithScreenshot2.apply(this,arguments);}return _captureWithScreenshot;}()},{key:"_getRootViewRef",value:function _getRootViewRef(){try{var appName=_reactNative.AppRegistry.getAppKeys()[0];return appName?{current:null}:null;}catch(error){return null;}}},{key:"_createPlaceholderImage",value:function _createPlaceholderImage(){var _a,_b;var width=((_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width)||375;var height=((_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height)||667;var svgContent="\n <svg width=\"".concat(width,"\" height=\"").concat(height,"\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect width=\"100%\" height=\"100%\" fill=\"#f0f0f0\"/>\n <text x=\"50%\" y=\"50%\" text-anchor=\"middle\" dy=\".3em\" fill=\"#666\" font-family=\"Arial\" font-size=\"16\">\n Screen Capture Placeholder\n </text>\n <text x=\"50%\" y=\"60%\" text-anchor=\"middle\" dy=\".3em\" fill=\"#666\" font-family=\"Arial\" font-size=\"14\">\n Captured at ").concat(new Date().toLocaleTimeString(),"\n </text>\n </svg>\n ");var base64Content=Buffer.from(svgContent,'utf8').toString('base64');return"data:image/svg+xml;base64,".concat(base64Content);}},{key:"_sendEvent",value:function _sendEvent(event){}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{var span=_api.trace.getTracer('screen').startSpan("Screen.".concat(event.type),{attributes:{'screen.type':event.type,'screen.timestamp':event.timestamp,'screen.platform':'react-native'}});if(event.metadata){Object.entries(event.metadata).forEach(function(_ref){var _ref2=(0,_slicedToArray2["default"])(_ref,2),key=_ref2[0],value=_ref2[1];span.setAttribute("screen.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}catch(error){}}},{key:"_recordScreenCaptureError",value:function _recordScreenCaptureError(error){try{var span=_api.trace.getTracer('screen').startSpan('Screen.capture.error',{attributes:{'screen.error':true,'screen.error.type':error.name,'screen.error.message':error.message,'screen.timestamp':Date.now()}});span.setStatus({code:_api.SpanStatusCode.ERROR,message:error.message});span.recordException(error);span.end();}catch(spanError){}}},{key:"captureScreenNow",value:function(){var _captureScreenNow=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(this.isRecording){_context5.next=1;break;}return _context5.abrupt("return",null);case 1:_context5.next=2;return this._performScreenCapture();case 2:return _context5.abrupt("return",_context5.sent);case 3:case"end":return _context5.stop();}},_callee5,this);}));function captureScreenNow(){return _captureScreenNow.apply(this,arguments);}return captureScreenNow;}()},{key:"captureSpecificElement",value:function(){var _captureSpecificElement=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(elementRef,options){var _t6;return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.prev=0;_context6.next=1;return(0,_reactNativeViewShot.captureRef)(elementRef);case 1:return _context6.abrupt("return",_context6.sent);case 2:_context6.prev=2;_t6=_context6["catch"](0);return _context6.abrupt("return",null);case 3:case"end":return _context6.stop();}},_callee6,null,[[0,2]]);}));function captureSpecificElement(_x,_x2){return _captureSpecificElement.apply(this,arguments);}return captureSpecificElement;}()},{key:"setCaptureInterval",value:function setCaptureInterval(intervalMs){var _this2=this;if(this.captureInterval){clearInterval(this.captureInterval);}if(this.isRecording){this.captureInterval=setInterval(function(){_this2._captureScreen();},intervalMs);}}},{key:"setCaptureQuality",value:function setCaptureQuality(quality){this.captureQuality=Math.max(0.1,Math.min(1.0,quality));}},{key:"setCaptureFormat",value:function setCaptureFormat(format){this.captureFormat=format;}},{key:"setMaxCaptures",value:function setMaxCaptures(max){this.maxCaptures=Math.max(1,max);}},{key:"recordScreenPerformance",value:function recordScreenPerformance(screenName,loadTime){var event={screenName:screenName,type:'screenCapture',timestamp:Date.now(),metadata:{screenName:screenName,loadTime:loadTime,performance:'monitoring',captureCount:this.captureCount}};this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);}},{key:"recordScreenError",value:function recordScreenError(error,screenName){var event={screenName:screenName||'unknown',type:'screenCapture',timestamp:Date.now(),metadata:{error:true,errorType:error.name,errorMessage:error.message,screenName:screenName,captureCount:this.captureCount}};this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);this.events.push(event);this._sendEvent(event);this._recordScreenCaptureError(error);}},{key:"getEvents",value:function getEvents(){return(0,_toConsumableArray2["default"])(this.events);}},{key:"clearEvents",value:function clearEvents(){this.events=[];this.captureCount=0;}},{key:"getScreenStats",value:function getScreenStats(){var stats={totalCaptures:this.captureCount,totalEvents:this.events.length,averageCaptureTime:0,successRate:0};if(this.events.length>0){var captureTimes=this.events.map(function(event){var _a;return((_a=event.metadata)===null||_a===void 0?void 0:_a.captureTime)||0;}).filter(function(time){return time>0;});if(captureTimes.length>0){stats.averageCaptureTime=captureTimes.reduce(function(a,b){return a+b;},0)/captureTimes.length;}var successfulCaptures=this.events.filter(function(event){return event.dataUrl;}).length;stats.successRate=successfulCaptures/this.events.length*100;}return stats;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"getConfiguration",value:function getConfiguration(){return{captureInterval:this.captureInterval?5000:0,captureQuality:this.captureQuality,captureFormat:this.captureFormat,maxCaptures:this.maxCaptures,screenDimensions:this.screenDimensions};}},{key:"shutdown",value:function shutdown(){this.stop();this.clearEvents();}}]);}();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screenRecorder.js","sourceRoot":"","sources":["../../src/recorder/screenRecorder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"screenRecorder.js","sourceRoot":"","sources":["../../src/recorder/screenRecorder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SessionType } from '@multiplayer-app/session-recorder-common';
|
|
2
2
|
import { ISession, SessionState, ISessionRecorder, SessionRecorderOptions } from './types';
|
|
3
|
-
|
|
3
|
+
declare class SessionRecorder implements ISessionRecorder {
|
|
4
4
|
private _isInitialized;
|
|
5
5
|
private _configs;
|
|
6
6
|
private _apiService;
|
|
@@ -119,13 +119,7 @@ export declare class SessionRecorder implements ISessionRecorder {
|
|
|
119
119
|
* @param action - action being checked ('init', 'start', 'stop', 'cancel', 'pause', 'resume')
|
|
120
120
|
*/
|
|
121
121
|
private _checkOperation;
|
|
122
|
-
setNavigationRef(ref: any): void;
|
|
123
|
-
enableGestureTracking(): void;
|
|
124
|
-
disableGestureTracking(): void;
|
|
125
|
-
recordTap(x: number, y: number, target?: string): void;
|
|
126
|
-
recordSwipe(direction: string, target?: string): void;
|
|
127
|
-
recordNavigate(routeName: string, params?: Record<string, any>): void;
|
|
128
|
-
recordGoBack(): void;
|
|
129
122
|
setSessionAttribute(key: string, value: any): void;
|
|
130
|
-
captureException(error: Error, context?: Record<string, any>): void;
|
|
131
123
|
}
|
|
124
|
+
declare const _default: SessionRecorder;
|
|
125
|
+
export default _default;
|