@multiplayer-app/session-recorder-react-native 0.0.1-beta.9 → 1.0.0-beta.1

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.
Files changed (178) hide show
  1. package/README.md +708 -83
  2. package/SessionRecorderNative.podspec +26 -0
  3. package/android/build.gradle +2 -0
  4. package/copy-react-native-dist.sh +33 -9
  5. package/dist/components/ScreenRecorderView/ScreenRecorderView.js +1 -1
  6. package/dist/components/ScreenRecorderView/ScreenRecorderView.js.map +1 -1
  7. package/dist/components/SessionRecorderWidget/ErrorBanner.d.ts +7 -0
  8. package/dist/components/SessionRecorderWidget/ErrorBanner.js +1 -0
  9. package/dist/components/SessionRecorderWidget/ErrorBanner.js.map +1 -0
  10. package/dist/components/SessionRecorderWidget/FinalPopover.d.ts +4 -3
  11. package/dist/components/SessionRecorderWidget/FinalPopover.js +1 -1
  12. package/dist/components/SessionRecorderWidget/FinalPopover.js.map +1 -1
  13. package/dist/components/SessionRecorderWidget/InitialPopover.d.ts +6 -3
  14. package/dist/components/SessionRecorderWidget/InitialPopover.js +1 -1
  15. package/dist/components/SessionRecorderWidget/InitialPopover.js.map +1 -1
  16. package/dist/components/SessionRecorderWidget/ModalContainer.js +1 -1
  17. package/dist/components/SessionRecorderWidget/ModalContainer.js.map +1 -1
  18. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js +1 -1
  19. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js.map +1 -1
  20. package/dist/components/SessionRecorderWidget/styles.d.ts +27 -7
  21. package/dist/components/SessionRecorderWidget/styles.js +1 -1
  22. package/dist/components/SessionRecorderWidget/styles.js.map +1 -1
  23. package/dist/components/index.d.ts +0 -1
  24. package/dist/components/index.js +1 -1
  25. package/dist/components/index.js.map +1 -1
  26. package/dist/config/constants.js +1 -1
  27. package/dist/config/constants.js.map +1 -1
  28. package/dist/config/defaults.d.ts +4 -4
  29. package/dist/config/defaults.js +1 -1
  30. package/dist/config/defaults.js.map +1 -1
  31. package/dist/config/masking.d.ts +2 -2
  32. package/dist/config/masking.js +1 -1
  33. package/dist/config/masking.js.map +1 -1
  34. package/dist/config/session-recorder.js +1 -1
  35. package/dist/config/session-recorder.js.map +1 -1
  36. package/dist/config/validators.d.ts +1 -1
  37. package/dist/config/validators.js +1 -1
  38. package/dist/config/validators.js.map +1 -1
  39. package/dist/config/widget.d.ts +9 -0
  40. package/dist/config/widget.js +1 -0
  41. package/dist/config/widget.js.map +1 -0
  42. package/dist/context/SessionRecorderContext.d.ts +11 -4
  43. package/dist/context/SessionRecorderContext.js +1 -1
  44. package/dist/context/SessionRecorderContext.js.map +1 -1
  45. package/dist/context/SessionRecorderStore.d.ts +12 -0
  46. package/dist/context/SessionRecorderStore.js +1 -0
  47. package/dist/context/SessionRecorderStore.js.map +1 -0
  48. package/dist/context/useSessionRecorderStore.d.ts +8 -0
  49. package/dist/context/useSessionRecorderStore.js +1 -0
  50. package/dist/context/useSessionRecorderStore.js.map +1 -0
  51. package/dist/context/useStoreSelector.d.ts +4 -0
  52. package/dist/context/useStoreSelector.js +1 -0
  53. package/dist/context/useStoreSelector.js.map +1 -0
  54. package/dist/index.d.ts +1 -0
  55. package/dist/index.js +1 -1
  56. package/dist/index.js.map +1 -1
  57. package/dist/native/GestureRecorderNative.d.ts +57 -0
  58. package/dist/native/GestureRecorderNative.js +1 -0
  59. package/dist/native/GestureRecorderNative.js.map +1 -0
  60. package/dist/native/SessionRecorderNative.d.ts +17 -5
  61. package/dist/native/SessionRecorderNative.js +1 -1
  62. package/dist/native/SessionRecorderNative.js.map +1 -1
  63. package/dist/native/index.d.ts +2 -0
  64. package/dist/native/index.js +1 -0
  65. package/dist/native/index.js.map +1 -0
  66. package/dist/otel/index.js +1 -1
  67. package/dist/otel/index.js.map +1 -1
  68. package/dist/patch/xhr.js +1 -1
  69. package/dist/patch/xhr.js.map +1 -1
  70. package/dist/recorder/eventExporter.d.ts +4 -1
  71. package/dist/recorder/eventExporter.js +1 -1
  72. package/dist/recorder/eventExporter.js.map +1 -1
  73. package/dist/recorder/gestureRecorder.d.ts +28 -62
  74. package/dist/recorder/gestureRecorder.js +1 -1
  75. package/dist/recorder/gestureRecorder.js.map +1 -1
  76. package/dist/recorder/index.d.ts +2 -0
  77. package/dist/recorder/index.js +1 -1
  78. package/dist/recorder/index.js.map +1 -1
  79. package/dist/recorder/navigationTracker.d.ts +4 -19
  80. package/dist/recorder/navigationTracker.js +1 -1
  81. package/dist/recorder/navigationTracker.js.map +1 -1
  82. package/dist/recorder/screenRecorder.d.ts +10 -5
  83. package/dist/recorder/screenRecorder.js +1 -1
  84. package/dist/recorder/screenRecorder.js.map +1 -1
  85. package/dist/services/api.service.d.ts +12 -3
  86. package/dist/services/api.service.js +1 -1
  87. package/dist/services/api.service.js.map +1 -1
  88. package/dist/services/network.service.d.ts +46 -0
  89. package/dist/services/network.service.js +1 -0
  90. package/dist/services/network.service.js.map +1 -0
  91. package/dist/services/screenMaskingService.d.ts +13 -5
  92. package/dist/services/screenMaskingService.js +1 -1
  93. package/dist/services/screenMaskingService.js.map +1 -1
  94. package/dist/services/storage.service.js +1 -1
  95. package/dist/services/storage.service.js.map +1 -1
  96. package/dist/session-recorder.d.ts +17 -33
  97. package/dist/session-recorder.js +1 -1
  98. package/dist/session-recorder.js.map +1 -1
  99. package/dist/types/configs.d.ts +85 -0
  100. package/dist/types/configs.js +1 -0
  101. package/dist/types/configs.js.map +1 -0
  102. package/dist/types/index.d.ts +1 -0
  103. package/dist/types/index.js +1 -1
  104. package/dist/types/index.js.map +1 -1
  105. package/dist/types/session-recorder.d.ts +105 -138
  106. package/dist/types/session-recorder.js +1 -1
  107. package/dist/types/session-recorder.js.map +1 -1
  108. package/dist/utils/constants.optional.d.ts +21 -0
  109. package/dist/utils/constants.optional.expo.d.ts +3 -0
  110. package/dist/utils/constants.optional.expo.js +1 -0
  111. package/dist/utils/constants.optional.expo.js.map +1 -0
  112. package/dist/utils/constants.optional.js +1 -0
  113. package/dist/utils/constants.optional.js.map +1 -0
  114. package/dist/utils/createStore.d.ts +8 -0
  115. package/dist/utils/createStore.js +1 -0
  116. package/dist/utils/createStore.js.map +1 -0
  117. package/dist/utils/logger.d.ts +2 -7
  118. package/dist/utils/logger.js +1 -1
  119. package/dist/utils/logger.js.map +1 -1
  120. package/dist/utils/platform.d.ts +8 -0
  121. package/dist/utils/platform.js +1 -1
  122. package/dist/utils/platform.js.map +1 -1
  123. package/dist/utils/rrweb-events.d.ts +4 -3
  124. package/dist/utils/rrweb-events.js +1 -1
  125. package/dist/utils/rrweb-events.js.map +1 -1
  126. package/dist/utils/session.d.ts +2 -1
  127. package/dist/utils/session.js +1 -1
  128. package/dist/utils/session.js.map +1 -1
  129. package/dist/utils/shallowEqual.d.ts +1 -0
  130. package/dist/utils/shallowEqual.js +1 -0
  131. package/dist/utils/shallowEqual.js.map +1 -0
  132. package/dist/version.d.ts +1 -1
  133. package/dist/version.js +1 -1
  134. package/dist/version.js.map +1 -1
  135. package/docs/AUTO_METADATA_DETECTION.md +108 -0
  136. package/ios/GestureRecorderNative.m +21 -0
  137. package/ios/GestureRecorderNative.swift +316 -0
  138. package/ios/SessionRecorderNative.m +5 -0
  139. package/ios/SessionRecorderNative.swift +478 -84
  140. package/package.json +13 -27
  141. package/react-native.config.js +7 -10
  142. package/app.plugin.js +0 -42
  143. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.d.ts +0 -6
  144. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js +0 -1
  145. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js.map +0 -1
  146. package/dist/components/GestureCaptureWrapper/index.d.ts +0 -1
  147. package/dist/components/GestureCaptureWrapper/index.js +0 -1
  148. package/dist/components/GestureCaptureWrapper/index.js.map +0 -1
  149. package/dist/components/MaskableComponent.d.ts +0 -22
  150. package/dist/components/MaskableComponent.js +0 -1
  151. package/dist/components/MaskableComponent.js.map +0 -1
  152. package/dist/components/MaskableTextInput.d.ts +0 -14
  153. package/dist/components/MaskableTextInput.js +0 -1
  154. package/dist/components/MaskableTextInput.js.map +0 -1
  155. package/dist/native/ScreenMasking.d.ts +0 -21
  156. package/dist/native/ScreenMasking.js +0 -1
  157. package/dist/native/ScreenMasking.js.map +0 -1
  158. package/dist/recorder/screenshotManager.d.ts +0 -10
  159. package/dist/recorder/screenshotManager.js +0 -1
  160. package/dist/recorder/screenshotManager.js.map +0 -1
  161. package/dist/utils/componentRegistry.d.ts +0 -64
  162. package/dist/utils/componentRegistry.js +0 -1
  163. package/dist/utils/componentRegistry.js.map +0 -1
  164. package/dist/utils/nativeModuleTest.d.ts +0 -8
  165. package/dist/utils/nativeModuleTest.js +0 -1
  166. package/dist/utils/nativeModuleTest.js.map +0 -1
  167. package/dist/utils/reactNativeHierarchyExtractor.d.ts +0 -38
  168. package/dist/utils/reactNativeHierarchyExtractor.js +0 -1
  169. package/dist/utils/reactNativeHierarchyExtractor.js.map +0 -1
  170. package/dist/utils/screenshotMasker.d.ts +0 -96
  171. package/dist/utils/screenshotMasker.js +0 -1
  172. package/dist/utils/screenshotMasker.js.map +0 -1
  173. package/dist/utils/viewHierarchyTracker.d.ts +0 -89
  174. package/dist/utils/viewHierarchyTracker.js +0 -1
  175. package/dist/utils/viewHierarchyTracker.js.map +0 -1
  176. package/docs/NATIVE_MODULE_SETUP.md +0 -177
  177. package/plugin/package.json +0 -20
  178. package/plugin/src/index.js +0 -42
@@ -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 _reactNative=require("react-native");var _reactNativeViewShot=require("react-native-view-shot");var _utils=require("../utils");var _screenMaskingService=require("../services/screenMaskingService");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.1;this.captureFormat='jpg';this.screenDimensions=null;this.currentScreen=null;this.nodeIdCounter=1;this.viewShotRef=null;this.lastScreenCapture=null;this.lastScreenHash=null;this.enableChangeDetection=true;this.hashSampleSize=100;this.currentImageNodeId=null;}return(0,_createClass2["default"])(ScreenRecorder,[{key:"init",value:function init(config,eventRecorder){var _a,_b,_c;this.config=config;this.eventRecorder=eventRecorder;this._getScreenDimensions();this.maskingConfig={enabled:true,inputMasking:(_c=(_b=(_a=this.config)===null||_a===void 0?void 0:_a.masking)===null||_b===void 0?void 0:_b.inputMasking)!==null&&_c!==void 0?_c:true,defaultOptions:{quality:this.captureQuality}};_screenMaskingService.screenMaskingService.updateConfig(this.maskingConfig);}},{key:"start",value:function start(){this.isRecording=true;this.events=[];this.captureCount=0;this.lastScreenCapture=null;this.lastScreenHash=null;this.currentImageNodeId=null;_utils.logger.info('ScreenRecorder','Screen recording started');this.recordEvent((0,_utils.createRecordingMetaEvent)());this._startPeriodicCapture();this._captureScreen();}},{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;}},{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 base64Image,hasChanged,success,_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;_context.next=2;return this._captureScreenBase64();case 2:base64Image=_context.sent;if(base64Image){hasChanged=this.enableChangeDetection?this._hasScreenChanged(base64Image):true;if(hasChanged){if(this.currentImageNodeId!==null&&this.lastScreenCapture){success=this.updateScreenWithIncrementalSnapshot(base64Image);if(!success){this._createAndEmitFullSnapshotEvent(base64Image);}}else{this._createAndEmitFullSnapshotEvent(base64Image);}this.lastScreenCapture=base64Image;this.lastScreenHash=this._generateScreenHash(base64Image);this.captureCount++;}}_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);this._recordScreenCaptureError(_t);case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));function _captureScreen(){return _captureScreen2.apply(this,arguments);}return _captureScreen;}()},{key:"_captureScreenBase64",value:function(){var _captureScreenBase=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var maskedImage,result,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;if(!_screenMaskingService.screenMaskingService.isScreenMaskingAvailable()){_context2.next=3;break;}_utils.logger.info('ScreenRecorder','Using native masking for screen capture');_context2.next=1;return _screenMaskingService.screenMaskingService.captureMaskedScreen({quality:this.captureQuality});case 1:maskedImage=_context2.sent;if(!maskedImage){_context2.next=2;break;}return _context2.abrupt("return",maskedImage);case 2:_utils.logger.warn('ScreenRecorder','Native masking failed, falling back to view-shot');case 3:if(this.viewShotRef){_context2.next=4;break;}_utils.logger.warn('ScreenRecorder','ViewShot ref not available for screen capture');return _context2.abrupt("return",null);case 4:_context2.next=5;return(0,_reactNativeViewShot.captureRef)(this.viewShotRef,{format:this.captureFormat,quality:this.captureQuality,result:'base64'});case 5:result=_context2.sent;return _context2.abrupt("return",result);case 6:_context2.prev=6;_t2=_context2["catch"](0);_utils.logger.error('ScreenRecorder','Failed to capture screen. Make sure react-native-view-shot is properly installed and linked:',_t2);return _context2.abrupt("return",null);case 7:case"end":return _context2.stop();}},_callee2,this,[[0,6]]);}));function _captureScreenBase64(){return _captureScreenBase.apply(this,arguments);}return _captureScreenBase64;}()},{key:"_createAndEmitFullSnapshotEvent",value:function _createAndEmitFullSnapshotEvent(base64Image){if(!this.screenDimensions)return;var fullSnapshotEvent=this.createFullSnapshot(base64Image);this.recordEvent(fullSnapshotEvent);}},{key:"createFullSnapshot",value:function createFullSnapshot(base64Image){if(!this.screenDimensions){throw new Error('Screen dimensions not available');}var _this$screenDimension=this.screenDimensions,width=_this$screenDimension.width,height=_this$screenDimension.height;this.nodeIdCounter=1;var fullSnapshotEvent=(0,_utils.createFullSnapshotEvent)(base64Image,width,height,this.captureFormat,{current:this.nodeIdCounter});this.currentImageNodeId=0;return fullSnapshotEvent;}},{key:"createIncrementalSnapshotWithImageUpdate",value:function createIncrementalSnapshotWithImageUpdate(base64Image){return(0,_utils.createIncrementalSnapshotWithImageUpdate)(base64Image,this.captureFormat);}},{key:"updateScreenWithIncrementalSnapshot",value:function updateScreenWithIncrementalSnapshot(base64Image){if(this.currentImageNodeId===null){_utils.logger.warn('ScreenRecorder','No image node ID available for incremental update');return false;}var incrementalEvent=this.createIncrementalSnapshotWithImageUpdate(base64Image);this.recordEvent(incrementalEvent);return true;}},{key:"forceFullSnapshot",value:function forceFullSnapshot(base64Image){this._createAndEmitFullSnapshotEvent(base64Image);this.lastScreenCapture=base64Image;this.lastScreenHash=this._generateScreenHash(base64Image);this.captureCount++;}},{key:"_hasScreenChanged",value:function _hasScreenChanged(currentBase64){if(!this.lastScreenCapture){return true;}var currentHash=this._generateScreenHash(currentBase64);return currentHash!==this.lastScreenHash;}},{key:"_generateScreenHash",value:function _generateScreenHash(base64Image){return(0,_utils.generateScreenHash)(base64Image,this.hashSampleSize);}},{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:"captureSpecificElement",value:function(){var _captureSpecificElement=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(elementRef,options){var _t3;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;_context3.next=1;return(0,_reactNativeViewShot.captureRef)(elementRef);case 1:return _context3.abrupt("return",_context3.sent);case 2:_context3.prev=2;_t3=_context3["catch"](0);return _context3.abrupt("return",null);case 3:case"end":return _context3.stop();}},_callee3,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:"setChangeDetection",value:function setChangeDetection(enabled){this.enableChangeDetection=enabled;}},{key:"setHashSampleSize",value:function setHashSampleSize(size){this.hashSampleSize=Math.max(10,Math.min(1000,size));}},{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?2000:0,captureQuality:this.captureQuality,captureFormat:this.captureFormat,maxCaptures:this.maxCaptures,screenDimensions:this.screenDimensions};}},{key:"shutdown",value:function shutdown(){this.stop();this.clearEvents();}},{key:"setViewShotRef",value:function setViewShotRef(ref){this.viewShotRef=ref;}},{key:"forceCapture",value:function forceCapture(){if(!this.isRecording){return;}this._captureScreen();}},{key:"recordEvent",value:function recordEvent(event){if(this.eventRecorder){this.eventRecorder.recordEvent(event);}}}]);}();
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 _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));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 _utils=require("../utils");var _screenMaskingService=require("../services/screenMaskingService");var _reactNativeViewShot=require("react-native-view-shot");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 isWeb=_reactNative.Platform.OS==='web';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.2;this.captureScale=0.66;this.captureFormat='jpg';this.screenDimensions=null;this.currentScreen=null;this.nodeIdCounter=1;this.viewShotRef=null;this.lastScreenCapture=null;this.lastScreenHash=null;this.enableChangeDetection=true;this.hashSampleSize=100;this.currentImageNodeId=null;}return(0,_createClass2["default"])(ScreenRecorder,[{key:"init",value:function init(config,eventRecorder){this.config=config;this.eventRecorder=eventRecorder;this._getScreenDimensions();this.maskingConfig=_objectSpread({enabled:true},this.config.masking);_screenMaskingService.screenMaskingService.updateConfig(this.maskingConfig);}},{key:"start",value:function start(){this.isRecording=true;this.events=[];this.captureCount=0;this.lastScreenCapture=null;this.lastScreenHash=null;this.currentImageNodeId=null;_utils.logger.info('ScreenRecorder','Screen recording started');this.recordEvent((0,_utils.createRecordingMetaEvent)());this._startPeriodicCapture();this._captureScreen();}},{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;}},{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(timestamp){var base64Image,hasChanged,success,_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;_context.next=2;return this._captureScreenBase64();case 2:base64Image=_context.sent;if(base64Image){hasChanged=this.enableChangeDetection?this._hasScreenChanged(base64Image):true;if(hasChanged){if(this.currentImageNodeId!==null&&this.lastScreenCapture){success=this.updateScreenWithIncrementalSnapshot(base64Image,timestamp);if(!success){this._createAndEmitFullSnapshotEvent(base64Image,timestamp);}}else{this._createAndEmitFullSnapshotEvent(base64Image,timestamp);}this.lastScreenCapture=base64Image;this.lastScreenHash=this._generateScreenHash(base64Image);this.captureCount++;}}_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);this._recordScreenCaptureError(_t);case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));function _captureScreen(_x){return _captureScreen2.apply(this,arguments);}return _captureScreen;}()},{key:"_captureScreenBase64",value:function(){var _captureScreenBase=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var maskedImage,result,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;if(!isWeb){_context2.next=1;break;}_utils.logger.warn('ScreenRecorder','Screen capture not available on web platform');return _context2.abrupt("return",null);case 1:if(!_screenMaskingService.screenMaskingService.isScreenMaskingAvailable()){_context2.next=4;break;}_utils.logger.info('ScreenRecorder','Using native masking for screen capture');_context2.next=2;return _screenMaskingService.screenMaskingService.captureMaskedScreen({quality:this.captureQuality,scale:this.captureScale});case 2:maskedImage=_context2.sent;if(!maskedImage){_context2.next=3;break;}return _context2.abrupt("return",maskedImage);case 3:_utils.logger.warn('ScreenRecorder','Native masking failed, falling back to view-shot');case 4:if(this.viewShotRef){_context2.next=5;break;}_utils.logger.warn('ScreenRecorder','ViewShot ref not available for screen capture');return _context2.abrupt("return",null);case 5:if(_reactNativeViewShot.captureRef){_context2.next=6;break;}_utils.logger.warn('ScreenRecorder','react-native-view-shot not available');return _context2.abrupt("return",null);case 6:_context2.next=7;return(0,_reactNativeViewShot.captureRef)(this.viewShotRef,{format:this.captureFormat,quality:this.captureQuality,result:'base64'});case 7:result=_context2.sent;return _context2.abrupt("return",result);case 8:_context2.prev=8;_t2=_context2["catch"](0);_utils.logger.error('ScreenRecorder','Failed to capture screen. Make sure react-native-view-shot is properly installed and linked:',_t2);return _context2.abrupt("return",null);case 9:case"end":return _context2.stop();}},_callee2,this,[[0,8]]);}));function _captureScreenBase64(){return _captureScreenBase.apply(this,arguments);}return _captureScreenBase64;}()},{key:"_createAndEmitFullSnapshotEvent",value:function _createAndEmitFullSnapshotEvent(base64Image,timestamp){if(!this.screenDimensions)return;var fullSnapshotEvent=this.createFullSnapshot(base64Image,timestamp);this.recordEvent(fullSnapshotEvent);}},{key:"createFullSnapshot",value:function createFullSnapshot(base64Image,timestamp){if(!this.screenDimensions){throw new Error('Screen dimensions not available');}var _this$screenDimension=this.screenDimensions,width=_this$screenDimension.width,height=_this$screenDimension.height;this.nodeIdCounter=1;var fullSnapshotEvent=(0,_utils.createFullSnapshotEvent)(base64Image,width,height,this.captureFormat,{current:this.nodeIdCounter},timestamp);this.currentImageNodeId=0;return fullSnapshotEvent;}},{key:"createIncrementalSnapshotWithImageUpdate",value:function createIncrementalSnapshotWithImageUpdate(base64Image,captureFormat,timestamp){return(0,_utils.createIncrementalSnapshotWithImageUpdate)(base64Image,captureFormat||this.captureFormat,timestamp);}},{key:"updateScreenWithIncrementalSnapshot",value:function updateScreenWithIncrementalSnapshot(base64Image,timestamp){if(this.currentImageNodeId===null){_utils.logger.warn('ScreenRecorder','No image node ID available for incremental update');return false;}var incrementalEvent=this.createIncrementalSnapshotWithImageUpdate(base64Image,'jpg',timestamp);this.recordEvent(incrementalEvent);return true;}},{key:"forceFullSnapshot",value:function forceFullSnapshot(base64Image){this._createAndEmitFullSnapshotEvent(base64Image);this.lastScreenCapture=base64Image;this.lastScreenHash=this._generateScreenHash(base64Image);this.captureCount++;}},{key:"_hasScreenChanged",value:function _hasScreenChanged(currentBase64){if(!this.lastScreenCapture){return true;}var currentHash=this._generateScreenHash(currentBase64);return currentHash!==this.lastScreenHash;}},{key:"_generateScreenHash",value:function _generateScreenHash(base64Image){return(0,_utils.generateScreenHash)(base64Image,this.hashSampleSize);}},{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:"captureSpecificElement",value:function(){var _captureSpecificElement=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(elementRef,options){var _t3;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;if(!(isWeb||!_reactNativeViewShot.captureRef)){_context3.next=1;break;}_utils.logger.warn('ScreenRecorder','Element capture not available on web platform');return _context3.abrupt("return",null);case 1:_context3.next=2;return(0,_reactNativeViewShot.captureRef)(elementRef);case 2:return _context3.abrupt("return",_context3.sent);case 3:_context3.prev=3;_t3=_context3["catch"](0);return _context3.abrupt("return",null);case 4:case"end":return _context3.stop();}},_callee3,null,[[0,3]]);}));function captureSpecificElement(_x2,_x3){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:"setChangeDetection",value:function setChangeDetection(enabled){this.enableChangeDetection=enabled;}},{key:"setHashSampleSize",value:function setHashSampleSize(size){this.hashSampleSize=Math.max(10,Math.min(1000,size));}},{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?2000:0,captureQuality:this.captureQuality,captureFormat:this.captureFormat,maxCaptures:this.maxCaptures,screenDimensions:this.screenDimensions};}},{key:"shutdown",value:function shutdown(){this.stop();this.clearEvents();}},{key:"setViewShotRef",value:function setViewShotRef(ref){this.viewShotRef=ref;}},{key:"forceCapture",value:function forceCapture(timestamp){if(!this.isRecording){return;}this._captureScreen(timestamp);}},{key:"recordEvent",value:function recordEvent(event){if(this.eventRecorder){this.eventRecorder.recordEvent(event);}}}]);}();
@@ -1 +1 @@
1
- {"version":3,"file":"screenRecorder.js","sourceRoot":"","sources":["../../src/recorder/screenRecorder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"screenRecorder.js","sourceRoot":"","sources":["../../src/recorder/screenRecorder.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,14 @@
1
- import { SessionRecorderOptions, IResourceAttributes, ISessionAttributes } from '../types';
1
+ import { IResourceAttributes, ISessionAttributes, ApiServiceConfig } from '../types';
2
2
  export interface StartSessionRequest {
3
3
  name?: string;
4
4
  stoppedAt?: string | number;
5
5
  sessionAttributes?: ISessionAttributes;
6
6
  resourceAttributes?: IResourceAttributes;
7
7
  debugSessionData?: Record<string, any>;
8
+ tags?: {
9
+ key?: string;
10
+ value: string;
11
+ }[];
8
12
  }
9
13
  export interface StopSessionRequest {
10
14
  sessionAttributes?: ISessionAttributes;
@@ -14,12 +18,17 @@ export declare class ApiService {
14
18
  private config?;
15
19
  private baseUrl;
16
20
  constructor();
17
- init(config: SessionRecorderOptions): void;
21
+ init(config: ApiServiceConfig): void;
18
22
  /**
19
23
  * Update the API service configuration
20
24
  * @param config - Partial configuration to update
21
25
  */
22
- updateConfigs(config: Partial<SessionRecorderOptions>): void;
26
+ updateConfigs(config: Partial<ApiServiceConfig>): void;
27
+ /**
28
+ * Set the API key
29
+ * @param apiKey - The API key to set
30
+ */
31
+ setApiKey(apiKey: string): void;
23
32
  /**
24
33
  * Make a request to the session debugger API
25
34
  * @param path - API endpoint path (relative to the base URL)
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ApiService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));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 ApiService=exports.ApiService=function(){function ApiService(){(0,_classCallCheck2["default"])(this,ApiService);this.baseUrl='https://api.multiplayer.app';this.config={apiKey:'',apiBaseUrl:'',exporterEndpoint:'',version:'',application:'',environment:''};}return(0,_createClass2["default"])(ApiService,[{key:"init",value:function init(config){this.config=_objectSpread(_objectSpread({},this.config),config);if(config.apiBaseUrl){this.baseUrl=config.apiBaseUrl;}}},{key:"updateConfigs",value:function updateConfigs(config){if(this.config){this.config=_objectSpread(_objectSpread({},this.config),config);}}},{key:"makeRequest",value:(function(){var _makeRequest=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(path,method,body,signal){var _a,url,params,response,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:url="".concat(this.baseUrl,"/v0/radar").concat(path);params={method:method,body:body?JSON.stringify(body):null,headers:_objectSpread({'Content-Type':'application/json'},((_a=this.config)===null||_a===void 0?void 0:_a.apiKey)&&{'X-Api-Key':this.config.apiKey})};_context.prev=1;_context.next=2;return fetch(url,_objectSpread(_objectSpread({},params),{},{signal:signal}));case 2:response=_context.sent;if(response.ok){_context.next=3;break;}throw new Error('Network response was not ok: '+response.statusText);case 3:if(!(response.status===204)){_context.next=4;break;}return _context.abrupt("return",null);case 4:_context.next=5;return response.json();case 5:return _context.abrupt("return",_context.sent);case 6:_context.prev=6;_t=_context["catch"](1);if(!((_t===null||_t===void 0?void 0:_t.name)==='AbortError')){_context.next=7;break;}throw new Error('Request aborted');case 7:throw new Error('Error making request: '+_t.message);case 8:case"end":return _context.stop();}},_callee,this,[[1,6]]);}));function makeRequest(_x,_x2,_x3,_x4){return _makeRequest.apply(this,arguments);}return makeRequest;}())},{key:"startSession",value:(function(){var _startSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(request,signal){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:return _context2.abrupt("return",this.makeRequest('/debug-sessions/start','POST',request,signal));case 1:case"end":return _context2.stop();}},_callee2,this);}));function startSession(_x5,_x6){return _startSession.apply(this,arguments);}return startSession;}())},{key:"stopSession",value:(function(){var _stopSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(sessionId,request){return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:return _context3.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/stop"),'PATCH',request));case 1:case"end":return _context3.stop();}},_callee3,this);}));function stopSession(_x7,_x8){return _stopSession.apply(this,arguments);}return stopSession;}())},{key:"cancelSession",value:(function(){var _cancelSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(sessionId){return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:return _context4.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context4.stop();}},_callee4,this);}));function cancelSession(_x9){return _cancelSession.apply(this,arguments);}return cancelSession;}())},{key:"startContinuousDebugSession",value:(function(){var _startContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(request,signal){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:return _context5.abrupt("return",this.makeRequest('/continuous-debug-sessions/start','POST',request,signal));case 1:case"end":return _context5.stop();}},_callee5,this);}));function startContinuousDebugSession(_x0,_x1){return _startContinuousDebugSession.apply(this,arguments);}return startContinuousDebugSession;}())},{key:"saveContinuousDebugSession",value:(function(){var _saveContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(sessionId,request,signal){return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:return _context6.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/save"),'POST',request,signal));case 1:case"end":return _context6.stop();}},_callee6,this);}));function saveContinuousDebugSession(_x10,_x11,_x12){return _saveContinuousDebugSession.apply(this,arguments);}return saveContinuousDebugSession;}())},{key:"stopContinuousDebugSession",value:(function(){var _stopContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee7(sessionId){return _regenerator["default"].wrap(function(_context7){while(1)switch(_context7.prev=_context7.next){case 0:return _context7.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context7.stop();}},_callee7,this);}));function stopContinuousDebugSession(_x13){return _stopContinuousDebugSession.apply(this,arguments);}return stopContinuousDebugSession;}())},{key:"checkRemoteSession",value:(function(){var _checkRemoteSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee8(requestBody,signal){return _regenerator["default"].wrap(function(_context8){while(1)switch(_context8.prev=_context8.next){case 0:return _context8.abrupt("return",this.makeRequest('/remote-debug-session/check','POST',requestBody,signal));case 1:case"end":return _context8.stop();}},_callee8,this);}));function checkRemoteSession(_x14,_x15){return _checkRemoteSession.apply(this,arguments);}return checkRemoteSession;}())}]);}();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ApiService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));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 ApiService=exports.ApiService=function(){function ApiService(){(0,_classCallCheck2["default"])(this,ApiService);this.baseUrl='https://api.multiplayer.app';this.config={apiKey:'',apiBaseUrl:'',exporterEndpoint:''};}return(0,_createClass2["default"])(ApiService,[{key:"init",value:function init(config){this.config=_objectSpread(_objectSpread({},this.config),config);if(config.apiBaseUrl){this.baseUrl=config.apiBaseUrl;}}},{key:"updateConfigs",value:function updateConfigs(config){if(this.config){this.config=_objectSpread(_objectSpread({},this.config),config);}}},{key:"setApiKey",value:function setApiKey(apiKey){if(this.config){this.config.apiKey=apiKey;}}},{key:"makeRequest",value:(function(){var _makeRequest=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(path,method,body,signal){var _a,url,params,response,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:url="".concat(this.baseUrl,"/v0/radar").concat(path);params={method:method,body:body?JSON.stringify(body):null,headers:_objectSpread({'Content-Type':'application/json'},((_a=this.config)===null||_a===void 0?void 0:_a.apiKey)&&{'X-Api-Key':this.config.apiKey})};_context.prev=1;_context.next=2;return fetch(url,_objectSpread(_objectSpread({},params),{},{signal:signal}));case 2:response=_context.sent;if(response.ok){_context.next=3;break;}throw new Error('Network response was not ok: '+response.statusText);case 3:if(!(response.status===204)){_context.next=4;break;}return _context.abrupt("return",null);case 4:_context.next=5;return response.json();case 5:return _context.abrupt("return",_context.sent);case 6:_context.prev=6;_t=_context["catch"](1);if(!((_t===null||_t===void 0?void 0:_t.name)==='AbortError')){_context.next=7;break;}throw new Error('Request aborted');case 7:throw new Error('Error making request: '+_t.message);case 8:case"end":return _context.stop();}},_callee,this,[[1,6]]);}));function makeRequest(_x,_x2,_x3,_x4){return _makeRequest.apply(this,arguments);}return makeRequest;}())},{key:"startSession",value:(function(){var _startSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(request,signal){var res,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=1;return this.makeRequest('/debug-sessions/start','POST',request,signal);case 1:res=_context2.sent;return _context2.abrupt("return",res);case 2:_context2.prev=2;_t2=_context2["catch"](0);throw _t2;case 3:case"end":return _context2.stop();}},_callee2,this,[[0,2]]);}));function startSession(_x5,_x6){return _startSession.apply(this,arguments);}return startSession;}())},{key:"stopSession",value:(function(){var _stopSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(sessionId,request){return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:return _context3.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/stop"),'PATCH',request));case 1:case"end":return _context3.stop();}},_callee3,this);}));function stopSession(_x7,_x8){return _stopSession.apply(this,arguments);}return stopSession;}())},{key:"cancelSession",value:(function(){var _cancelSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(sessionId){return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:return _context4.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context4.stop();}},_callee4,this);}));function cancelSession(_x9){return _cancelSession.apply(this,arguments);}return cancelSession;}())},{key:"startContinuousDebugSession",value:(function(){var _startContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(request,signal){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:return _context5.abrupt("return",this.makeRequest('/continuous-debug-sessions/start','POST',request,signal));case 1:case"end":return _context5.stop();}},_callee5,this);}));function startContinuousDebugSession(_x0,_x1){return _startContinuousDebugSession.apply(this,arguments);}return startContinuousDebugSession;}())},{key:"saveContinuousDebugSession",value:(function(){var _saveContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(sessionId,request,signal){return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:return _context6.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/save"),'POST',request,signal));case 1:case"end":return _context6.stop();}},_callee6,this);}));function saveContinuousDebugSession(_x10,_x11,_x12){return _saveContinuousDebugSession.apply(this,arguments);}return saveContinuousDebugSession;}())},{key:"stopContinuousDebugSession",value:(function(){var _stopContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee7(sessionId){return _regenerator["default"].wrap(function(_context7){while(1)switch(_context7.prev=_context7.next){case 0:return _context7.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context7.stop();}},_callee7,this);}));function stopContinuousDebugSession(_x13){return _stopContinuousDebugSession.apply(this,arguments);}return stopContinuousDebugSession;}())},{key:"checkRemoteSession",value:(function(){var _checkRemoteSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee8(requestBody,signal){return _regenerator["default"].wrap(function(_context8){while(1)switch(_context8.prev=_context8.next){case 0:return _context8.abrupt("return",this.makeRequest('/remote-debug-session/check','POST',requestBody,signal));case 1:case"end":return _context8.stop();}},_callee8,this);}));function checkRemoteSession(_x14,_x15){return _checkRemoteSession.apply(this,arguments);}return checkRemoteSession;}())}]);}();
@@ -1 +1 @@
1
- {"version":3,"file":"api.service.js","sourceRoot":"","sources":["../../src/services/api.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.service.js","sourceRoot":"","sources":["../../src/services/api.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ export interface NetworkState {
2
+ isConnected: boolean;
3
+ type: string | null;
4
+ isInternetReachable: boolean | null;
5
+ }
6
+ export type NetworkStateChangeCallback = (state: NetworkState) => void;
7
+ export declare class NetworkService {
8
+ private static instance;
9
+ private _isOnline;
10
+ private unsubscribe;
11
+ private callbacks;
12
+ private constructor();
13
+ static getInstance(): NetworkService;
14
+ /**
15
+ * Initialize network monitoring
16
+ */
17
+ init(): Promise<void>;
18
+ /**
19
+ * Get current network state
20
+ */
21
+ getCurrentState(): NetworkState;
22
+ /**
23
+ * Check if device is online
24
+ */
25
+ isOnline(): boolean;
26
+ /**
27
+ * Add callback for network state changes
28
+ */
29
+ addCallback(callback: NetworkStateChangeCallback): void;
30
+ /**
31
+ * Remove callback for network state changes
32
+ */
33
+ removeCallback(callback: NetworkStateChangeCallback): void;
34
+ /**
35
+ * Notify all callbacks of network state change
36
+ */
37
+ private notifyCallbacks;
38
+ /**
39
+ * Cleanup network monitoring
40
+ */
41
+ cleanup(): void;
42
+ /**
43
+ * Force refresh network state
44
+ */
45
+ refresh(): Promise<NetworkState>;
46
+ }
@@ -0,0 +1 @@
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.NetworkService=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 _reactNative=require("react-native");var _utils=require("../utils");var _SessionRecorderStore=require("../context/SessionRecorderStore");var NetInfo=null;var isWeb=_reactNative.Platform.OS==='web';if(!isWeb){try{NetInfo=require('@react-native-community/netinfo')["default"];}catch(error){console.warn('NetInfo not available:',error);}}else{NetInfo={fetch:function fetch(){return Promise.resolve({isConnected:true,type:'unknown',isInternetReachable:true});},addEventListener:function addEventListener(callback){return function(){};}};}var NetworkService=exports.NetworkService=function(){function NetworkService(){(0,_classCallCheck2["default"])(this,NetworkService);this._isOnline=true;this.unsubscribe=null;this.callbacks=[];}return(0,_createClass2["default"])(NetworkService,[{key:"init",value:(function(){var _init=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var _this=this;var _a,initialState,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;_context.next=1;return NetInfo.fetch();case 1:initialState=_context.sent;this._isOnline=(_a=initialState.isConnected)!==null&&_a!==void 0?_a:true;_SessionRecorderStore.sessionRecorderStore.setState({isOnline:this._isOnline});this.notifyCallbacks({isConnected:this._isOnline,type:initialState.type,isInternetReachable:initialState.isInternetReachable});this.unsubscribe=NetInfo.addEventListener(function(state){var _a;var wasOnline=_this._isOnline;_this._isOnline=(_a=state.isConnected)!==null&&_a!==void 0?_a:true;_SessionRecorderStore.sessionRecorderStore.setState({isOnline:_this._isOnline});_this.notifyCallbacks({isConnected:_this._isOnline,type:state.type,isInternetReachable:state.isInternetReachable});if(wasOnline&&!_this._isOnline){_utils.logger.info('NetworkService','Network went offline');}else if(!wasOnline&&_this._isOnline){_utils.logger.info('NetworkService','Network came back online');}});_utils.logger.info('NetworkService','Network monitoring initialized');_context.next=3;break;case 2:_context.prev=2;_t=_context["catch"](0);_utils.logger.error('NetworkService','Failed to initialize network monitoring',_t);case 3:case"end":return _context.stop();}},_callee,this,[[0,2]]);}));function init(){return _init.apply(this,arguments);}return init;}())},{key:"getCurrentState",value:function getCurrentState(){return{isConnected:this._isOnline,type:null,isInternetReachable:null};}},{key:"isOnline",value:function isOnline(){return this._isOnline;}},{key:"addCallback",value:function addCallback(callback){this.callbacks.push(callback);}},{key:"removeCallback",value:function removeCallback(callback){this.callbacks=this.callbacks.filter(function(cb){return cb!==callback;});}},{key:"notifyCallbacks",value:function notifyCallbacks(state){this.callbacks.forEach(function(callback){try{callback(state);}catch(error){_utils.logger.error('NetworkService','Error in network state callback',error);}});}},{key:"cleanup",value:function cleanup(){if(this.unsubscribe){this.unsubscribe();this.unsubscribe=null;}this.callbacks=[];_utils.logger.info('NetworkService','Network monitoring cleaned up');}},{key:"refresh",value:(function(){var _refresh=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var _a,state,networkState,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=1;return NetInfo.fetch();case 1:state=_context2.sent;this._isOnline=(_a=state.isConnected)!==null&&_a!==void 0?_a:true;_SessionRecorderStore.sessionRecorderStore.setState({isOnline:this._isOnline});networkState={isConnected:this._isOnline,type:state.type,isInternetReachable:state.isInternetReachable};this.notifyCallbacks(networkState);return _context2.abrupt("return",networkState);case 2:_context2.prev=2;_t2=_context2["catch"](0);_utils.logger.error('NetworkService','Failed to refresh network state',_t2);throw _t2;case 3:case"end":return _context2.stop();}},_callee2,this,[[0,2]]);}));function refresh(){return _refresh.apply(this,arguments);}return refresh;}())}],[{key:"getInstance",value:function getInstance(){if(!NetworkService.instance){NetworkService.instance=new NetworkService();}return NetworkService.instance;}}]);}();NetworkService.instance=null;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.service.js","sourceRoot":"","sources":["../../src/services/network.service.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,18 @@ import { MaskingOptions } from '../native/SessionRecorderNative';
2
2
  export interface ScreenMaskingConfig {
3
3
  /** Whether screen masking is enabled */
4
4
  enabled: boolean;
5
- /** Whether to mask all input fields automatically */
6
- inputMasking: boolean;
7
- /** Default masking options */
8
- defaultOptions?: MaskingOptions;
5
+ /** Whether to mask text inputs (UITextField, UITextView, React Native text components) */
6
+ maskTextInputs?: boolean;
7
+ /** Whether to mask images (UIImageView, React Native Image components) */
8
+ maskImages?: boolean;
9
+ /** Whether to mask buttons (UIButton) */
10
+ maskButtons?: boolean;
11
+ /** Whether to mask labels (UILabel) */
12
+ maskLabels?: boolean;
13
+ /** Whether to mask web views (WKWebView) */
14
+ maskWebViews?: boolean;
15
+ /** Whether to mask sandboxed views (system views that don't belong to current process) */
16
+ maskSandboxedViews?: boolean;
9
17
  }
10
18
  export declare class ScreenMaskingService {
11
19
  private config;
@@ -18,7 +26,7 @@ export declare class ScreenMaskingService {
18
26
  /**
19
27
  * Capture screen with masking applied
20
28
  */
21
- captureMaskedScreen(options?: MaskingOptions): Promise<string | null>;
29
+ captureMaskedScreen(options: MaskingOptions): Promise<string | null>;
22
30
  /**
23
31
  * Capture screen with basic masking (no custom options)
24
32
  */
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.screenMaskingService=exports.ScreenMaskingService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));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 _SessionRecorderNative=_interopRequireDefault(require("../native/SessionRecorderNative"));var _utils=require("../utils");var _nativeModuleTest=require("../utils/nativeModuleTest");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 ScreenMaskingService=exports.ScreenMaskingService=function(){function ScreenMaskingService(){var config=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{enabled:true,inputMasking:true};(0,_classCallCheck2["default"])(this,ScreenMaskingService);this.isAvailable=false;this.config=config;this.checkAvailability();}return(0,_createClass2["default"])(ScreenMaskingService,[{key:"checkAvailability",value:function checkAvailability(){var _this=this;try{if(_SessionRecorderNative["default"]&&typeof _SessionRecorderNative["default"].captureAndMask==='function'){this.isAvailable=true;_utils.logger.info('ScreenMaskingService','Screen masking native module is available');}else{this.isAvailable=false;_utils.logger.warn('ScreenMaskingService','Screen masking native module is not available - auto-linking may still be in progress');(0,_nativeModuleTest.testNativeModuleAvailability)();setTimeout(function(){_this.checkAvailability();},2000);}}catch(error){this.isAvailable=false;_utils.logger.error('ScreenMaskingService','Error checking screen masking availability:',error);}}},{key:"captureMaskedScreen",value:(function(){var _captureMaskedScreen=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(options){var maskingOptions,maskedImageBase64,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!(!this.isAvailable||!this.config.enabled)){_context.next=1;break;}_utils.logger.warn('ScreenMaskingService','Screen masking is not available or disabled');return _context.abrupt("return",null);case 1:_context.prev=1;maskingOptions=_objectSpread(_objectSpread(_objectSpread({},this.config.defaultOptions),options),{},{inputMasking:this.config.inputMasking});_context.next=2;return _SessionRecorderNative["default"].captureAndMaskWithOptions(maskingOptions);case 2:maskedImageBase64=_context.sent;_utils.logger.info('ScreenMaskingService','Successfully captured masked screen');return _context.abrupt("return",maskedImageBase64);case 3:_context.prev=3;_t=_context["catch"](1);_utils.logger.error('ScreenMaskingService','Failed to capture masked screen:',_t);return _context.abrupt("return",null);case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));function captureMaskedScreen(_x){return _captureMaskedScreen.apply(this,arguments);}return captureMaskedScreen;}())},{key:"captureMaskedScreenBasic",value:(function(){var _captureMaskedScreenBasic=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var maskedImageBase64,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:if(!(!this.isAvailable||!this.config.enabled)){_context2.next=1;break;}_utils.logger.warn('ScreenMaskingService','Screen masking is not available or disabled');return _context2.abrupt("return",null);case 1:_context2.prev=1;_context2.next=2;return _SessionRecorderNative["default"].captureAndMask();case 2:maskedImageBase64=_context2.sent;_utils.logger.info('ScreenMaskingService','Successfully captured masked screen (basic)');return _context2.abrupt("return",maskedImageBase64);case 3:_context2.prev=3;_t2=_context2["catch"](1);_utils.logger.error('ScreenMaskingService','Failed to capture masked screen (basic):',_t2);return _context2.abrupt("return",null);case 4:case"end":return _context2.stop();}},_callee2,this,[[1,3]]);}));function captureMaskedScreenBasic(){return _captureMaskedScreenBasic.apply(this,arguments);}return captureMaskedScreenBasic;}())},{key:"updateConfig",value:function updateConfig(config){this.config=_objectSpread(_objectSpread({},this.config),config);_utils.logger.info('ScreenMaskingService','Screen masking configuration updated');}},{key:"isScreenMaskingAvailable",value:function isScreenMaskingAvailable(){return this.isAvailable&&this.config.enabled;}},{key:"getConfig",value:function getConfig(){return _objectSpread({},this.config);}}]);}();var screenMaskingService=exports.screenMaskingService=new ScreenMaskingService();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.screenMaskingService=exports.ScreenMaskingService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));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 _SessionRecorderNative=_interopRequireDefault(require("../native/SessionRecorderNative"));var _utils=require("../utils");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 ScreenMaskingService=exports.ScreenMaskingService=function(){function ScreenMaskingService(){var config=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{enabled:true,maskTextInputs:true,maskImages:false,maskButtons:false,maskLabels:false,maskWebViews:false,maskSandboxedViews:false};(0,_classCallCheck2["default"])(this,ScreenMaskingService);this.isAvailable=false;this.config=config;this.checkAvailability();}return(0,_createClass2["default"])(ScreenMaskingService,[{key:"checkAvailability",value:function checkAvailability(){try{if(_SessionRecorderNative["default"]&&typeof _SessionRecorderNative["default"].captureAndMask==='function'){this.isAvailable=true;_utils.logger.info('ScreenMaskingService','Screen masking native module is available');}else{this.isAvailable=false;_utils.logger.warn('ScreenMaskingService','Screen masking native module is not available - auto-linking may still be in progress');}}catch(error){this.isAvailable=false;_utils.logger.error('ScreenMaskingService','Error checking screen masking availability:',error);}}},{key:"captureMaskedScreen",value:(function(){var _captureMaskedScreen=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(options){var maskingOptions,maskedImageBase64,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!(!this.isAvailable||!this.config.enabled)){_context.next=1;break;}_utils.logger.warn('ScreenMaskingService','Screen masking is not available or disabled');return _context.abrupt("return",null);case 1:_context.prev=1;maskingOptions=_objectSpread(_objectSpread({},this.config),options);_context.next=2;return _SessionRecorderNative["default"].captureAndMaskWithOptions(maskingOptions);case 2:maskedImageBase64=_context.sent;return _context.abrupt("return",maskedImageBase64);case 3:_context.prev=3;_t=_context["catch"](1);_utils.logger.error('ScreenMaskingService','Failed to capture masked screen:',_t);return _context.abrupt("return",null);case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));function captureMaskedScreen(_x){return _captureMaskedScreen.apply(this,arguments);}return captureMaskedScreen;}())},{key:"captureMaskedScreenBasic",value:(function(){var _captureMaskedScreenBasic=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var maskedImageBase64,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:if(!(!this.isAvailable||!this.config.enabled)){_context2.next=1;break;}_utils.logger.warn('ScreenMaskingService','Screen masking is not available or disabled');return _context2.abrupt("return",null);case 1:_context2.prev=1;_context2.next=2;return _SessionRecorderNative["default"].captureAndMask();case 2:maskedImageBase64=_context2.sent;return _context2.abrupt("return",maskedImageBase64);case 3:_context2.prev=3;_t2=_context2["catch"](1);_utils.logger.error('ScreenMaskingService','Failed to capture masked screen (basic):',_t2);return _context2.abrupt("return",null);case 4:case"end":return _context2.stop();}},_callee2,this,[[1,3]]);}));function captureMaskedScreenBasic(){return _captureMaskedScreenBasic.apply(this,arguments);}return captureMaskedScreenBasic;}())},{key:"updateConfig",value:function updateConfig(config){this.config=_objectSpread(_objectSpread({},this.config),config);_utils.logger.info('ScreenMaskingService','Screen masking configuration updated');}},{key:"isScreenMaskingAvailable",value:function isScreenMaskingAvailable(){return this.isAvailable&&this.config.enabled;}},{key:"getConfig",value:function getConfig(){return _objectSpread({},this.config);}}]);}();var screenMaskingService=exports.screenMaskingService=new ScreenMaskingService();
@@ -1 +1 @@
1
- {"version":3,"file":"screenMaskingService.js","sourceRoot":"","sources":["../../src/services/screenMaskingService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"screenMaskingService.js","sourceRoot":"","sources":["../../src/services/screenMaskingService.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.StorageService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));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 _asyncStorage=_interopRequireDefault(require("@react-native-async-storage/async-storage"));var _utils=require("../utils");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 StorageService=exports.StorageService=function(){function StorageService(){(0,_classCallCheck2["default"])(this,StorageService);}return(0,_createClass2["default"])(StorageService,[{key:"saveSessionId",value:function saveSessionId(sessionId){try{StorageService.cache.sessionId=sessionId;_asyncStorage["default"].setItem(StorageService.SESSION_ID_KEY,sessionId)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionId",value:function getSessionId(){return StorageService.cache.sessionId;}},{key:"saveSessionType",value:function saveSessionType(sessionType){try{StorageService.cache.sessionType=sessionType;_asyncStorage["default"].setItem(StorageService.SESSION_TYPE_KEY,sessionType)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionType",value:function getSessionType(){return StorageService.cache.sessionType;}},{key:"saveSessionState",value:function saveSessionState(state){try{StorageService.cache.sessionState=state;_asyncStorage["default"].setItem(StorageService.SESSION_STATE_KEY,state)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionState",value:function getSessionState(){return StorageService.cache.sessionState;}},{key:"saveSessionObject",value:function saveSessionObject(session){try{StorageService.cache.sessionObject=session;_asyncStorage["default"].setItem(StorageService.SESSION_OBJECT_KEY,JSON.stringify(session))["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionObject",value:function getSessionObject(){return StorageService.cache.sessionObject;}},{key:"clearSessionData",value:function clearSessionData(){try{StorageService.cache=_objectSpread(_objectSpread({},StorageService.cache),{},{sessionId:null,sessionType:null,sessionState:null,sessionObject:null});_asyncStorage["default"].multiRemove([StorageService.SESSION_ID_KEY,StorageService.SESSION_TYPE_KEY,StorageService.SESSION_STATE_KEY,StorageService.SESSION_OBJECT_KEY])["catch"](function(error){});}catch(error){throw error;}}},{key:"getAllSessionData",value:function getAllSessionData(){return{sessionId:StorageService.cache.sessionId,sessionType:StorageService.cache.sessionType,sessionState:StorageService.cache.sessionState,sessionObject:StorageService.cache.sessionObject};}},{key:"saveFloatingButtonPosition",value:function saveFloatingButtonPosition(position){try{StorageService.cache.floatingButtonPosition=position;if(StorageService.positionSaveTimeout){clearTimeout(StorageService.positionSaveTimeout);}StorageService.positionSaveTimeout=setTimeout(function(){_asyncStorage["default"].setItem(StorageService.FLOATING_BUTTON_POSITION_KEY,JSON.stringify(position))["catch"](function(error){_utils.logger.error('StorageService','Failed to persist floating button position',error);});},100);}catch(error){_utils.logger.error('StorageService','Failed to save floating button position',error);throw error;}}},{key:"getFloatingButtonPosition",value:function getFloatingButtonPosition(){return StorageService.cache.floatingButtonPosition;}}],[{key:"getInstance",value:function getInstance(){if(!StorageService.instance){StorageService.instance=new StorageService();StorageService.initialize();}return StorageService.instance;}},{key:"initializeCache",value:function(){var _initializeCache=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var _yield$Promise$all,_yield$Promise$all2,sessionId,sessionType,sessionState,sessionObject,floatingButtonPosition,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!StorageService.cacheInitialized){_context.next=1;break;}return _context.abrupt("return");case 1:_context.prev=1;_context.next=2;return Promise.all([_asyncStorage["default"].getItem(StorageService.SESSION_ID_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_TYPE_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_STATE_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_OBJECT_KEY),_asyncStorage["default"].getItem(StorageService.FLOATING_BUTTON_POSITION_KEY)]);case 2:_yield$Promise$all=_context.sent;_yield$Promise$all2=(0,_slicedToArray2["default"])(_yield$Promise$all,5);sessionId=_yield$Promise$all2[0];sessionType=_yield$Promise$all2[1];sessionState=_yield$Promise$all2[2];sessionObject=_yield$Promise$all2[3];floatingButtonPosition=_yield$Promise$all2[4];StorageService.cache={sessionId:sessionId,sessionType:sessionType,sessionState:sessionState,sessionObject:sessionObject?JSON.parse(sessionObject):null,floatingButtonPosition:floatingButtonPosition?JSON.parse(floatingButtonPosition):null};StorageService.cacheInitialized=true;_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);StorageService.cacheInitialized=true;case 4:case"end":return _context.stop();}},_callee,null,[[1,3]]);}));function initializeCache(){return _initializeCache.apply(this,arguments);}return initializeCache;}()},{key:"initialize",value:function(){var _initialize=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=1;return StorageService.initializeCache();case 1:case"end":return _context2.stop();}},_callee2);}));function initialize(){return _initialize.apply(this,arguments);}return initialize;}()}]);}();StorageService.SESSION_ID_KEY='session_id';StorageService.SESSION_TYPE_KEY='session_type';StorageService.SESSION_STATE_KEY='session_state';StorageService.SESSION_OBJECT_KEY='session_object';StorageService.FLOATING_BUTTON_POSITION_KEY='floating_button_position';StorageService.cache={sessionId:null,sessionType:null,sessionState:null,sessionObject:null,floatingButtonPosition:null};StorageService.cacheInitialized=false;StorageService.instance=null;StorageService.positionSaveTimeout=null;
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.StorageService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));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 _reactNative=require("react-native");var _utils=require("../utils");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 AsyncStorage=null;var isWeb=_reactNative.Platform.OS==='web';if(!isWeb){try{AsyncStorage=require('@react-native-async-storage/async-storage')["default"];}catch(error){console.warn('AsyncStorage not available:',error);}}else{AsyncStorage={getItem:function getItem(key){return Promise.resolve(null);},setItem:function setItem(key,value){return Promise.resolve(undefined);},removeItem:function removeItem(key){return Promise.resolve(undefined);},multiRemove:function multiRemove(keys){return Promise.resolve(undefined);}};}var StorageService=exports.StorageService=function(){function StorageService(){(0,_classCallCheck2["default"])(this,StorageService);}return(0,_createClass2["default"])(StorageService,[{key:"saveSessionId",value:function saveSessionId(sessionId){try{StorageService.cache.sessionId=sessionId;AsyncStorage.setItem(StorageService.SESSION_ID_KEY,sessionId)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionId",value:function getSessionId(){return StorageService.cache.sessionId;}},{key:"saveSessionType",value:function saveSessionType(sessionType){try{StorageService.cache.sessionType=sessionType;AsyncStorage.setItem(StorageService.SESSION_TYPE_KEY,sessionType)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionType",value:function getSessionType(){return StorageService.cache.sessionType;}},{key:"saveSessionState",value:function saveSessionState(state){try{StorageService.cache.sessionState=state;AsyncStorage.setItem(StorageService.SESSION_STATE_KEY,state)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionState",value:function getSessionState(){return StorageService.cache.sessionState;}},{key:"saveSessionObject",value:function saveSessionObject(session){try{StorageService.cache.sessionObject=session;AsyncStorage.setItem(StorageService.SESSION_OBJECT_KEY,JSON.stringify(session))["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionObject",value:function getSessionObject(){return StorageService.cache.sessionObject;}},{key:"clearSessionData",value:function clearSessionData(){try{StorageService.cache=_objectSpread(_objectSpread({},StorageService.cache),{},{sessionId:null,sessionType:null,sessionState:null,sessionObject:null});AsyncStorage.multiRemove([StorageService.SESSION_ID_KEY,StorageService.SESSION_TYPE_KEY,StorageService.SESSION_STATE_KEY,StorageService.SESSION_OBJECT_KEY])["catch"](function(error){});}catch(error){throw error;}}},{key:"getAllSessionData",value:function getAllSessionData(){return{sessionId:StorageService.cache.sessionId,sessionType:StorageService.cache.sessionType,sessionState:StorageService.cache.sessionState,sessionObject:StorageService.cache.sessionObject};}},{key:"saveFloatingButtonPosition",value:function saveFloatingButtonPosition(position){try{StorageService.cache.floatingButtonPosition=position;if(StorageService.positionSaveTimeout){clearTimeout(StorageService.positionSaveTimeout);}StorageService.positionSaveTimeout=setTimeout(function(){AsyncStorage.setItem(StorageService.FLOATING_BUTTON_POSITION_KEY,JSON.stringify(position))["catch"](function(error){_utils.logger.error('StorageService','Failed to persist floating button position',error);});},100);}catch(error){_utils.logger.error('StorageService','Failed to save floating button position',error);throw error;}}},{key:"getFloatingButtonPosition",value:function getFloatingButtonPosition(){return StorageService.cache.floatingButtonPosition;}}],[{key:"getInstance",value:function getInstance(){if(!StorageService.instance){StorageService.instance=new StorageService();StorageService.initialize();}return StorageService.instance;}},{key:"initializeCache",value:function(){var _initializeCache=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var _yield$Promise$all,_yield$Promise$all2,sessionId,sessionType,sessionState,sessionObject,floatingButtonPosition,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!StorageService.cacheInitialized){_context.next=1;break;}return _context.abrupt("return");case 1:_context.prev=1;_context.next=2;return Promise.all([AsyncStorage.getItem(StorageService.SESSION_ID_KEY),AsyncStorage.getItem(StorageService.SESSION_TYPE_KEY),AsyncStorage.getItem(StorageService.SESSION_STATE_KEY),AsyncStorage.getItem(StorageService.SESSION_OBJECT_KEY),AsyncStorage.getItem(StorageService.FLOATING_BUTTON_POSITION_KEY)]);case 2:_yield$Promise$all=_context.sent;_yield$Promise$all2=(0,_slicedToArray2["default"])(_yield$Promise$all,5);sessionId=_yield$Promise$all2[0];sessionType=_yield$Promise$all2[1];sessionState=_yield$Promise$all2[2];sessionObject=_yield$Promise$all2[3];floatingButtonPosition=_yield$Promise$all2[4];StorageService.cache={sessionId:sessionId,sessionType:sessionType,sessionState:sessionState,sessionObject:sessionObject?JSON.parse(sessionObject):null,floatingButtonPosition:floatingButtonPosition?JSON.parse(floatingButtonPosition):null};StorageService.cacheInitialized=true;_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);StorageService.cacheInitialized=true;case 4:case"end":return _context.stop();}},_callee,null,[[1,3]]);}));function initializeCache(){return _initializeCache.apply(this,arguments);}return initializeCache;}()},{key:"initialize",value:function(){var _initialize=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=1;return StorageService.initializeCache();case 1:case"end":return _context2.stop();}},_callee2);}));function initialize(){return _initialize.apply(this,arguments);}return initialize;}()}]);}();StorageService.SESSION_ID_KEY='session_id';StorageService.SESSION_TYPE_KEY='session_type';StorageService.SESSION_STATE_KEY='session_state';StorageService.SESSION_OBJECT_KEY='session_object';StorageService.FLOATING_BUTTON_POSITION_KEY='floating_button_position';StorageService.cache={sessionId:null,sessionType:null,sessionState:null,sessionObject:null,floatingButtonPosition:null};StorageService.cacheInitialized=false;StorageService.instance=null;StorageService.positionSaveTimeout=null;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,19 @@
1
1
  import { SessionType } from '@multiplayer-app/session-recorder-common';
2
2
  import { Observable } from 'lib0/observable';
3
- import { ISession, SessionState, ISessionRecorder, SessionRecorderConfigs, SessionRecorderOptions, EventRecorder } from './types';
4
3
  import { eventWithTime } from '@rrweb/types';
4
+ import { ISession, SessionState, ISessionRecorder, SessionRecorderConfigs, SessionRecorderOptions, EventRecorder } from './types';
5
5
  type SessionRecorderEvents = 'state-change';
6
6
  declare class SessionRecorder extends Observable<SessionRecorderEvents> implements ISessionRecorder, EventRecorder {
7
- private _isInitialized;
8
7
  private _configs;
9
8
  private _apiService;
10
9
  private _tracer;
11
10
  private _recorder;
12
11
  private _storageService;
12
+ private _networkService;
13
13
  private _startRequestController;
14
+ private _isInitialized;
15
+ get isInitialized(): boolean;
16
+ set isInitialized(isInitialized: boolean);
14
17
  private _sessionId;
15
18
  get sessionId(): string | null;
16
19
  set sessionId(sessionId: string | null);
@@ -48,6 +51,10 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
48
51
  * @param configs - custom configurations for session debugger
49
52
  */
50
53
  init(configs: SessionRecorderOptions): Promise<void>;
54
+ /**
55
+ * Setup network state change callbacks
56
+ */
57
+ private _setupNetworkCallbacks;
51
58
  /**
52
59
  * Start a new session
53
60
  * @param type - the type of session to start
@@ -80,11 +87,6 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
80
87
  * @param attributes - the attributes to set
81
88
  */
82
89
  setSessionAttributes(attributes: Record<string, any>): void;
83
- /**
84
- * Set a custom click handler for the recording button
85
- * @param handler - function that will be invoked when the button is clicked
86
- */
87
- set recordingButtonClickHandler(handler: () => boolean | void);
88
90
  /**
89
91
  * @description Check if session should be started/stopped automatically
90
92
  * @param {ISession} [sessionPayload]
@@ -131,37 +133,19 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
131
133
  */
132
134
  recordEvent(event: eventWithTime): void;
133
135
  /**
134
- * Record touch start event (internal use - touch recording is automatic)
135
- * @param x - X coordinate
136
- * @param y - Y coordinate
137
- * @param target - Target element identifier
138
- * @param pressure - Touch pressure
139
- * @internal
140
- */
141
- recordTouchStart(x: number, y: number, target?: string, pressure?: number): void;
142
- /**
143
- * Record touch move event (internal use - touch recording is automatic)
144
- * @param x - X coordinate
145
- * @param y - Y coordinate
146
- * @param target - Target element identifier
147
- * @param pressure - Touch pressure
148
- * @internal
136
+ * Set the viewshot ref for screen capture
137
+ * @param ref - React Native View ref for screen capture
149
138
  */
150
- recordTouchMove(x: number, y: number, target?: string, pressure?: number): void;
139
+ setViewShotRef(ref: any): void;
151
140
  /**
152
- * Record touch end event (internal use - touch recording is automatic)
153
- * @param x - X coordinate
154
- * @param y - Y coordinate
155
- * @param target - Target element identifier
156
- * @param pressure - Touch pressure
157
- * @internal
141
+ * Set the navigation ref for navigation tracking
142
+ * @param ref - React Native Navigation ref for navigation tracking
158
143
  */
159
- recordTouchEnd(x: number, y: number, target?: string, pressure?: number): void;
144
+ setNavigationRef(ref: any): void;
160
145
  /**
161
- * Set the viewshot ref for screen capture
162
- * @param ref - React Native View ref for screen capture
146
+ * Cleanup resources and unsubscribe from network monitoring
163
147
  */
164
- setViewShotRef(ref: any): void;
148
+ cleanup(): void;
165
149
  }
166
150
  declare const _default: SessionRecorder;
167
151
  export default _default;