@multiplayer-app/session-recorder-react-native 0.0.1-beta.19 → 0.0.1-beta.20

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 (67) hide show
  1. package/README.md +38 -7
  2. package/dist/components/SessionRecorderWidget/FinalPopover.d.ts +2 -2
  3. package/dist/components/SessionRecorderWidget/FinalPopover.js +1 -1
  4. package/dist/components/SessionRecorderWidget/FinalPopover.js.map +1 -1
  5. package/dist/components/SessionRecorderWidget/InitialPopover.d.ts +2 -2
  6. package/dist/components/SessionRecorderWidget/ModalContainer.js +1 -1
  7. package/dist/components/SessionRecorderWidget/ModalContainer.js.map +1 -1
  8. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js +1 -1
  9. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js.map +1 -1
  10. package/dist/config/defaults.d.ts +4 -4
  11. package/dist/config/defaults.js +1 -1
  12. package/dist/config/defaults.js.map +1 -1
  13. package/dist/config/masking.d.ts +2 -2
  14. package/dist/config/masking.js.map +1 -1
  15. package/dist/config/session-recorder.js +1 -1
  16. package/dist/config/session-recorder.js.map +1 -1
  17. package/dist/config/validators.d.ts +1 -1
  18. package/dist/config/validators.js +1 -1
  19. package/dist/config/validators.js.map +1 -1
  20. package/dist/config/widget.d.ts +1 -0
  21. package/dist/config/widget.js +1 -1
  22. package/dist/config/widget.js.map +1 -1
  23. package/dist/native/SessionRecorderNative.d.ts +2 -0
  24. package/dist/native/SessionRecorderNative.js.map +1 -1
  25. package/dist/otel/index.js +1 -1
  26. package/dist/otel/index.js.map +1 -1
  27. package/dist/recorder/eventExporter.d.ts +4 -1
  28. package/dist/recorder/eventExporter.js +1 -1
  29. package/dist/recorder/eventExporter.js.map +1 -1
  30. package/dist/recorder/gestureRecorder.d.ts +1 -1
  31. package/dist/recorder/gestureRecorder.js +1 -1
  32. package/dist/recorder/gestureRecorder.js.map +1 -1
  33. package/dist/recorder/index.d.ts +2 -0
  34. package/dist/recorder/index.js +1 -1
  35. package/dist/recorder/index.js.map +1 -1
  36. package/dist/recorder/navigationTracker.d.ts +2 -1
  37. package/dist/recorder/navigationTracker.js +1 -1
  38. package/dist/recorder/navigationTracker.js.map +1 -1
  39. package/dist/recorder/screenRecorder.d.ts +10 -5
  40. package/dist/recorder/screenRecorder.js +1 -1
  41. package/dist/recorder/screenRecorder.js.map +1 -1
  42. package/dist/services/api.service.d.ts +8 -3
  43. package/dist/services/api.service.js +1 -1
  44. package/dist/services/api.service.js.map +1 -1
  45. package/dist/session-recorder.d.ts +0 -5
  46. package/dist/session-recorder.js +1 -1
  47. package/dist/session-recorder.js.map +1 -1
  48. package/dist/types/configs.d.ts +85 -0
  49. package/dist/types/configs.js +1 -0
  50. package/dist/types/configs.js.map +1 -0
  51. package/dist/types/index.d.ts +1 -0
  52. package/dist/types/index.js +1 -1
  53. package/dist/types/index.js.map +1 -1
  54. package/dist/types/session-recorder.d.ts +74 -144
  55. package/dist/types/session-recorder.js +1 -1
  56. package/dist/types/session-recorder.js.map +1 -1
  57. package/dist/utils/logger.d.ts +1 -1
  58. package/dist/utils/logger.js +1 -1
  59. package/dist/utils/logger.js.map +1 -1
  60. package/dist/utils/rrweb-events.d.ts +4 -3
  61. package/dist/utils/rrweb-events.js +1 -1
  62. package/dist/utils/rrweb-events.js.map +1 -1
  63. package/dist/utils/session.d.ts +2 -1
  64. package/dist/utils/session.js +1 -1
  65. package/dist/utils/session.js.map +1 -1
  66. package/ios/SessionRecorderNative.swift +46 -5
  67. package/package.json +1 -1
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureRecorder=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));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 _api=require("@opentelemetry/api");var _utils=require("../utils");var _types=require("@rrweb/types");var _GestureRecorderNative=_interopRequireWildcard(require("../native/GestureRecorderNative"));function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,"default":e};if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var GestureRecorder=exports.GestureRecorder=function(){function GestureRecorder(){(0,_classCallCheck2["default"])(this,GestureRecorder);this.isRecording=false;this.events=[];this.screenDimensions=null;this.lastGestureTime=0;this.gestureThrottleMs=50;this.lastTouchTime=0;this.touchThrottleMs=100;this.imageNodeId=1;this.panMoveCount=0;}return(0,_createClass2["default"])(GestureRecorder,[{key:"init",value:function init(config,eventRecorder,screenRecorder){this.config=config;this.eventRecorder=eventRecorder;this.screenRecorder=screenRecorder;this._getScreenDimensions();}},{key:"start",value:function start(){var _this=this;_utils.logger.info('GestureRecorder','Native gesture recording started');this.isRecording=true;this.events=[];_GestureRecorderNative["default"].startGestureRecording().then(function(){_utils.logger.info('GestureRecorder','Native gesture recording started successfully');_this._setupGestureEventListener();})["catch"](function(error){_utils.logger.error('GestureRecorder','Failed to start native gesture recording',error);});}},{key:"stop",value:function stop(){this.isRecording=false;this._removeGestureEventListener();_GestureRecorderNative["default"].stopGestureRecording().then(function(){_utils.logger.info('GestureRecorder','Native gesture recording stopped successfully');})["catch"](function(error){_utils.logger.error('GestureRecorder','Failed to stop native gesture recording',error);});}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{this.screenDimensions=_reactNative.Dimensions.get('window');}catch(error){this.screenDimensions={width:375,height:667};}}},{key:"_setupGestureEventListener",value:function _setupGestureEventListener(){var _this2=this;if(!_GestureRecorderNative.gestureEventEmitter){_utils.logger.warn('GestureRecorder','Gesture event emitter not available');return;}this.gestureEventListener=_GestureRecorderNative.gestureEventEmitter.addListener('onGestureDetected',function(nativeGesture){_this2._handleNativeGesture(nativeGesture);});}},{key:"_removeGestureEventListener",value:function _removeGestureEventListener(){if(this.gestureEventListener){this.gestureEventListener.remove();this.gestureEventListener=undefined;}}},{key:"_handleNativeGesture",value:function _handleNativeGesture(nativeGesture){var _a,_b;if(!this.isRecording)return;var now=Date.now();if(now-this.lastGestureTime<this.gestureThrottleMs){return;}this.lastGestureTime=now;var gesture={type:nativeGesture.type,timestamp:nativeGesture.timestamp,coordinates:{x:nativeGesture.x,y:nativeGesture.y},target:nativeGesture.target,targetInfo:nativeGesture.targetInfo,metadata:_objectSpread(_objectSpread({},nativeGesture.metadata),{},{screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height})};this.events.push(gesture);this._sendEvent(gesture);this._recordOpenTelemetrySpan(gesture);switch(nativeGesture.type){case'tap':this._handleTapGesture(nativeGesture);break;case'pan_start':this._handlePanStartGesture(nativeGesture);break;case'pan_move':this._handlePanMoveGesture(nativeGesture);break;case'pan_end':this._handlePanEndGesture(nativeGesture);break;case'long_press':this._handleLongPressGesture(nativeGesture);break;case'pinch':this._handlePinchGesture(nativeGesture);break;case'swipe':this._handleSwipeGesture(nativeGesture);break;}}},{key:"_handleTapGesture",value:function _handleTapGesture(nativeGesture){this.recordTouchStart(nativeGesture.x,nativeGesture.y,nativeGesture.target);this.recordTouchEnd(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePanStartGesture",value:function _handlePanStartGesture(nativeGesture){this.recordTouchStart(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePanMoveGesture",value:function _handlePanMoveGesture(nativeGesture){this.recordTouchMove(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePanEndGesture",value:function _handlePanEndGesture(nativeGesture){this.recordTouchEnd(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handleLongPressGesture",value:function _handleLongPressGesture(nativeGesture){this.recordTouchStart(nativeGesture.x,nativeGesture.y,nativeGesture.target);this.recordTouchEnd(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePinchGesture",value:function _handlePinchGesture(nativeGesture){var _a,_b;this.recordPinch(((_a=nativeGesture.metadata)===null||_a===void 0?void 0:_a.scale)||1.0,nativeGesture.target,((_b=nativeGesture.metadata)===null||_b===void 0?void 0:_b.velocity)||0);}},{key:"_handleSwipeGesture",value:function _handleSwipeGesture(nativeGesture){var _a,_b;this.recordSwipe(((_a=nativeGesture.metadata)===null||_a===void 0?void 0:_a.direction)||'unknown',nativeGesture.target,((_b=nativeGesture.metadata)===null||_b===void 0?void 0:_b.velocity)||0);}},{key:"_sendEvent",value:function _sendEvent(event){_utils.logger.debug('GestureRecorder','Gesture event recorded',{type:event.type,target:event.target});}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{_utils.logger.debug('GestureRecorder','Creating OTEL span for native gesture',{type:event.type,target:event.target,targetInfo:event.targetInfo,hasTargetInfo:!!event.targetInfo});if(event.type==='pan_start'){if(this.currentPanSpan){this.currentPanSpan.setStatus({code:_api.SpanStatusCode.OK});this.currentPanSpan.end();}this.panMoveCount=0;var panSpan=_api.trace.getTracer('@opentelemetry/instrumentation-user-interaction').startSpan('NativeGesture.pan');panSpan.setAttribute('gesture.type','pan');panSpan.setAttribute('gesture.timestamp',event.timestamp);panSpan.setAttribute('gesture.platform','react-native');panSpan.setAttribute('gesture.source','native-module');if(event.coordinates){panSpan.setAttribute('gesture.start.x',event.coordinates.x);panSpan.setAttribute('gesture.start.y',event.coordinates.y);}if(event.target){panSpan.setAttribute('gesture.target',this._truncateText(event.target,50));}var _info=event.targetInfo;if(_info){if(_info.label){var truncatedLabel=this._truncateText(String(_info.label),50);panSpan.setAttribute('gesture.target.label',truncatedLabel);}if(_info.role){panSpan.setAttribute('gesture.target.role',String(_info.role));}if(_info.testId){panSpan.setAttribute('gesture.target.test_id',String(_info.testId));}if(_info.text){var truncatedText=this._truncateText(String(_info.text),50);panSpan.setAttribute('gesture.target.text',truncatedText);}}this.currentPanSpan=panSpan;return;}if(event.type==='pan_move'){if(this.currentPanSpan){this.panMoveCount+=1;this.currentPanSpan.setAttribute('gesture.pan.move_count',this.panMoveCount);if(event.coordinates){this.currentPanSpan.setAttribute('gesture.last.x',event.coordinates.x);this.currentPanSpan.setAttribute('gesture.last.y',event.coordinates.y);}return;}}if(event.type==='pan_end'){if(this.currentPanSpan){if(event.coordinates){this.currentPanSpan.setAttribute('gesture.end.x',event.coordinates.x);this.currentPanSpan.setAttribute('gesture.end.y',event.coordinates.y);}this.currentPanSpan.setStatus({code:_api.SpanStatusCode.OK});this.currentPanSpan.end();this.currentPanSpan=undefined;this.panMoveCount=0;return;}}var span=_api.trace.getTracer('@opentelemetry/instrumentation-user-interaction').startSpan("NativeGesture.".concat(event.type),{attributes:{'gesture.type':event.type,'gesture.timestamp':event.timestamp,'gesture.platform':'react-native','gesture.source':'native-module'}});if(event.coordinates){span.setAttribute('gesture.coordinates.x',event.coordinates.x);span.setAttribute('gesture.coordinates.y',event.coordinates.y);if(this.screenDimensions){var relativeX=event.coordinates.x/this.screenDimensions.width;var relativeY=event.coordinates.y/this.screenDimensions.height;span.setAttribute('gesture.coordinates.relative_x',relativeX);span.setAttribute('gesture.coordinates.relative_y',relativeY);}}if(event.target){span.setAttribute('gesture.target',this._truncateText(event.target,100));}var info=event.targetInfo;if(info){if(info.label){var _truncatedLabel=this._truncateText(String(info.label),100);span.setAttribute('gesture.target.label',_truncatedLabel);}if(info.role){span.setAttribute('gesture.target.role',String(info.role));}if(info.testId){span.setAttribute('gesture.target.test_id',String(info.testId));}if(info.text){var _truncatedText=this._truncateText(String(info.text),200);span.setAttribute('gesture.target.text',_truncatedText);}}if(event.metadata){Object.entries(event.metadata).forEach(function(_ref){var _ref2=(0,_slicedToArray2["default"])(_ref,2),key=_ref2[0],value=_ref2[1];span.setAttribute("gesture.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();_utils.logger.debug('GestureRecorder','OTEL span created and ended successfully');}catch(error){_utils.logger.error('GestureRecorder','Failed to record OpenTelemetry span for native gesture',error);}}},{key:"recordTap",value:function recordTap(x,y,target,pressure){var _a,_b;var event={type:'tap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordSwipe",value:function recordSwipe(direction,target,velocity,distance){var _a,_b;var event={type:'swipe',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity||0,distance:distance||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPinch",value:function recordPinch(scale,target,velocity){var _a,_b;var event={type:'pinch',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target,velocity){var _a,_b;var event={type:'pan',timestamp:Date.now(),target:target,metadata:{deltaX:deltaX,deltaY:deltaY,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordLongPress",value:function recordLongPress(duration,target,pressure){var _a,_b;var event={type:'longPress',timestamp:Date.now(),target:target,metadata:{duration:duration,pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordDoubleTap",value:function recordDoubleTap(x,y,target){var _a,_b;var event={type:'doubleTap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordRotate",value:function recordRotate(rotation,target,velocity){var _a,_b;var event={type:'rotate',timestamp:Date.now(),target:target,metadata:{rotation:rotation,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordFling",value:function recordFling(direction,velocity,target){var _a,_b;var event={type:'fling',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordMultiTouch",value:function recordMultiTouch(touchCount,target){var _a,_b;var event={type:'multiTouch',timestamp:Date.now(),target:target,metadata:{touchCount:touchCount,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordScroll",value:function recordScroll(direction,distance,velocity,target){var _a,_b;var event={type:'scroll',timestamp:Date.now(),target:target,metadata:{direction:direction,distance:distance,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordZoom",value:function recordZoom(scale,target,velocity){var _a,_b;var event={type:'zoom',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordTouchStart",value:function recordTouchStart(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs){_utils.logger.debug('GestureRecorder',"Touch start throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch start recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchStart,target);}},{key:"recordTouchMove",value:function recordTouchMove(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs*2){_utils.logger.debug('GestureRecorder',"Touch move throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs*2,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch move recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseMoveEvent(x,y,target);}},{key:"recordTouchEnd",value:function recordTouchEnd(x,y,target,pressure){var _a;_utils.logger.debug('GestureRecorder','Touch end recorded',{x:x,y:y,target:target,pressure:pressure});this.recordTap(x,y,target,pressure);this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchEnd,target);_utils.logger.debug('GestureRecorder','Forcing screen capture after touch end');(_a=this.screenRecorder)===null||_a===void 0?void 0:_a.forceCapture();}},{key:"recordTouchCancel",value:function recordTouchCancel(x,y,target){this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchCancel,target);}},{key:"setImageNodeId",value:function setImageNodeId(nodeId){this.imageNodeId=nodeId;}},{key:"_recordEvent",value:function _recordEvent(event){if(!this.isRecording)return;var now=Date.now();if(now-this.lastGestureTime<this.gestureThrottleMs){return;}this.lastGestureTime=now;this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);}},{key:"_createMouseInteractionEvent",value:function _createMouseInteractionEvent(x,y,interactionType,target){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.MouseInteraction,type:interactionType,id:this.imageNodeId,x:x,y:y,pointerType:2},timestamp:Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"_createMouseMoveEvent",value:function _createMouseMoveEvent(x,y,target){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.TouchMove,positions:[{x:x,y:y,id:this.imageNodeId,timeOffset:0}]},timestamp:Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"recordEvent",value:function recordEvent(event){if(this.eventRecorder){this.eventRecorder.recordEvent(event);}}},{key:"getEvents",value:function getEvents(){return(0,_toConsumableArray2["default"])(this.events);}},{key:"clearEvents",value:function clearEvents(){this.events=[];}},{key:"getEventStats",value:function getEventStats(){var stats={};this.events.forEach(function(event){stats[event.type]=(stats[event.type]||0)+1;});return stats;}},{key:"setGestureThrottle",value:function setGestureThrottle(throttleMs){this.gestureThrottleMs=throttleMs;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"_truncateText",value:function _truncateText(text){var maxLength=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(!text||text.length<=maxLength){return text;}return text.substring(0,maxLength-3)+'...';}}]);}();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureRecorder=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _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 _api=require("@opentelemetry/api");var _utils=require("../utils");var _types=require("@rrweb/types");var _GestureRecorderNative=_interopRequireWildcard(require("../native/GestureRecorderNative"));function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,"default":e};if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var GestureRecorder=exports.GestureRecorder=function(){function GestureRecorder(){(0,_classCallCheck2["default"])(this,GestureRecorder);this.isRecording=false;this.events=[];this.screenDimensions=null;this.lastGestureTime=0;this.gestureThrottleMs=50;this.lastTouchTime=0;this.touchThrottleMs=100;this.imageNodeId=1;this.panMoveCount=0;}return(0,_createClass2["default"])(GestureRecorder,[{key:"init",value:function init(config,eventRecorder,screenRecorder){this.config=config;this.eventRecorder=eventRecorder;this.screenRecorder=screenRecorder;this._getScreenDimensions();}},{key:"start",value:function start(){var _this=this;_utils.logger.info('GestureRecorder','Native gesture recording started');this.isRecording=true;this.events=[];_GestureRecorderNative["default"].startGestureRecording().then(function(){_utils.logger.info('GestureRecorder','Native gesture recording started successfully');_this._setupGestureEventListener();})["catch"](function(error){_utils.logger.error('GestureRecorder','Failed to start native gesture recording',error);});}},{key:"stop",value:function stop(){this.isRecording=false;this._removeGestureEventListener();_GestureRecorderNative["default"].stopGestureRecording().then(function(){_utils.logger.info('GestureRecorder','Native gesture recording stopped successfully');})["catch"](function(error){_utils.logger.error('GestureRecorder','Failed to stop native gesture recording',error);});}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{this.screenDimensions=_reactNative.Dimensions.get('window');}catch(error){this.screenDimensions={width:375,height:667};}}},{key:"_setupGestureEventListener",value:function _setupGestureEventListener(){var _this2=this;if(!_GestureRecorderNative.gestureEventEmitter){_utils.logger.warn('GestureRecorder','Gesture event emitter not available');return;}this.gestureEventListener=_GestureRecorderNative.gestureEventEmitter.addListener('onGestureDetected',function(nativeGesture){_this2._handleNativeGesture(nativeGesture);});}},{key:"_removeGestureEventListener",value:function _removeGestureEventListener(){if(this.gestureEventListener){this.gestureEventListener.remove();this.gestureEventListener=undefined;}}},{key:"_handleNativeGesture",value:function _handleNativeGesture(nativeGesture){var _a,_b;if(!this.isRecording)return;var now=Date.now();if(now-this.lastGestureTime<this.gestureThrottleMs){return;}this.lastGestureTime=now;var gesture={type:nativeGesture.type,timestamp:nativeGesture.timestamp,coordinates:{x:nativeGesture.x,y:nativeGesture.y},target:nativeGesture.target,targetInfo:nativeGesture.targetInfo,metadata:_objectSpread(_objectSpread({},nativeGesture.metadata),{},{screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height})};this.events.push(gesture);this._sendEvent(gesture);this._recordOpenTelemetrySpan(gesture);switch(nativeGesture.type){case'tap':this._handleTapGesture(nativeGesture);break;case'pan_start':this._handlePanStartGesture(nativeGesture);break;case'pan_move':this._handlePanMoveGesture(nativeGesture);break;case'pan_end':this._handlePanEndGesture(nativeGesture);break;case'long_press':this._handleLongPressGesture(nativeGesture);break;case'pinch':this._handlePinchGesture(nativeGesture);break;case'swipe':this._handleSwipeGesture(nativeGesture);break;}}},{key:"_handleTapGesture",value:function _handleTapGesture(nativeGesture){this.recordTouchStart(nativeGesture.x,nativeGesture.y,nativeGesture.target);this.recordTouchEnd(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePanStartGesture",value:function _handlePanStartGesture(nativeGesture){this.recordTouchStart(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePanMoveGesture",value:function _handlePanMoveGesture(nativeGesture){this.recordTouchMove(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePanEndGesture",value:function _handlePanEndGesture(nativeGesture){this.recordTouchEnd(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handleLongPressGesture",value:function _handleLongPressGesture(nativeGesture){this.recordTouchStart(nativeGesture.x,nativeGesture.y,nativeGesture.target);this.recordTouchEnd(nativeGesture.x,nativeGesture.y,nativeGesture.target);}},{key:"_handlePinchGesture",value:function _handlePinchGesture(nativeGesture){var _a,_b;this.recordPinch(((_a=nativeGesture.metadata)===null||_a===void 0?void 0:_a.scale)||1.0,nativeGesture.target,((_b=nativeGesture.metadata)===null||_b===void 0?void 0:_b.velocity)||0);}},{key:"_handleSwipeGesture",value:function _handleSwipeGesture(nativeGesture){var _a,_b;this.recordSwipe(((_a=nativeGesture.metadata)===null||_a===void 0?void 0:_a.direction)||'unknown',nativeGesture.target,((_b=nativeGesture.metadata)===null||_b===void 0?void 0:_b.velocity)||0);}},{key:"_sendEvent",value:function _sendEvent(event){_utils.logger.debug('GestureRecorder','Gesture event recorded',{type:event.type,target:event.target});}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{_utils.logger.debug('GestureRecorder','Creating OTEL span for native gesture',{type:event.type,target:event.target,targetInfo:event.targetInfo,hasTargetInfo:!!event.targetInfo});if(event.type==='pan_start'){if(this.currentPanSpan){this.currentPanSpan.setStatus({code:_api.SpanStatusCode.OK});this.currentPanSpan.end();}this.panMoveCount=0;var panSpan=_api.trace.getTracer('@opentelemetry/instrumentation-user-interaction').startSpan('NativeGesture.pan',{startTime:event.timestamp});panSpan.setAttribute('gesture.type','pan');panSpan.setAttribute('gesture.timestamp',event.timestamp);panSpan.setAttribute('gesture.platform','react-native');panSpan.setAttribute('gesture.source','native-module');if(event.coordinates){panSpan.setAttribute('gesture.start.x',event.coordinates.x);panSpan.setAttribute('gesture.start.y',event.coordinates.y);}if(event.target){panSpan.setAttribute('gesture.target',this._truncateText(event.target,50));}var _info=event.targetInfo;if(_info){if(_info.label){var truncatedLabel=this._truncateText(String(_info.label),50);panSpan.setAttribute('gesture.target.label',truncatedLabel);}if(_info.role){panSpan.setAttribute('gesture.target.role',String(_info.role));}if(_info.testId){panSpan.setAttribute('gesture.target.test_id',String(_info.testId));}if(_info.text){var truncatedText=this._truncateText(String(_info.text),50);panSpan.setAttribute('gesture.target.text',truncatedText);}}this.currentPanSpan=panSpan;return;}if(event.type==='pan_move'){if(this.currentPanSpan){this.panMoveCount+=1;this.currentPanSpan.setAttribute('gesture.pan.move_count',this.panMoveCount);if(event.coordinates){this.currentPanSpan.setAttribute('gesture.last.x',event.coordinates.x);this.currentPanSpan.setAttribute('gesture.last.y',event.coordinates.y);}return;}}if(event.type==='pan_end'){if(this.currentPanSpan){if(event.coordinates){this.currentPanSpan.setAttribute('gesture.end.x',event.coordinates.x);this.currentPanSpan.setAttribute('gesture.end.y',event.coordinates.y);}this.currentPanSpan.setStatus({code:_api.SpanStatusCode.OK});this.currentPanSpan.end();this.currentPanSpan=undefined;this.panMoveCount=0;return;}}var span=_api.trace.getTracer('@opentelemetry/instrumentation-user-interaction').startSpan("NativeGesture.".concat(event.type),{startTime:event.timestamp,attributes:{'gesture.type':event.type,'gesture.timestamp':event.timestamp,'gesture.platform':'react-native','gesture.source':'native-module'}});if(event.coordinates){span.setAttribute('gesture.coordinates.x',event.coordinates.x);span.setAttribute('gesture.coordinates.y',event.coordinates.y);if(this.screenDimensions){var relativeX=event.coordinates.x/this.screenDimensions.width;var relativeY=event.coordinates.y/this.screenDimensions.height;span.setAttribute('gesture.coordinates.relative_x',relativeX);span.setAttribute('gesture.coordinates.relative_y',relativeY);}}if(event.target){span.setAttribute('gesture.target',this._truncateText(event.target,100));}var info=event.targetInfo;if(info){if(info.label){var _truncatedLabel=this._truncateText(String(info.label),100);span.setAttribute('gesture.target.label',_truncatedLabel);}if(info.role){span.setAttribute('gesture.target.role',String(info.role));}if(info.testId){span.setAttribute('gesture.target.test_id',String(info.testId));}if(info.text){var _truncatedText=this._truncateText(String(info.text),200);span.setAttribute('gesture.target.text',_truncatedText);}}if(event.metadata){Object.entries(event.metadata).forEach(function(_ref){var _ref2=(0,_slicedToArray2["default"])(_ref,2),key=_ref2[0],value=_ref2[1];span.setAttribute("gesture.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();_utils.logger.debug('GestureRecorder','OTEL span created and ended successfully');}catch(error){_utils.logger.error('GestureRecorder','Failed to record OpenTelemetry span for native gesture',error);}}},{key:"recordTap",value:function recordTap(x,y,target,pressure,timestamp){var _a,_b;var event={type:'tap',timestamp:timestamp||Date.now(),coordinates:{x:x,y:y},target:target,metadata:{pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordSwipe",value:function recordSwipe(direction,target,velocity,distance){var _a,_b;var event={type:'swipe',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity||0,distance:distance||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPinch",value:function recordPinch(scale,target,velocity){var _a,_b;var event={type:'pinch',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target,velocity){var _a,_b;var event={type:'pan',timestamp:Date.now(),target:target,metadata:{deltaX:deltaX,deltaY:deltaY,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordLongPress",value:function recordLongPress(duration,target,pressure){var _a,_b;var event={type:'longPress',timestamp:Date.now(),target:target,metadata:{duration:duration,pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordDoubleTap",value:function recordDoubleTap(x,y,target){var _a,_b;var event={type:'doubleTap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordRotate",value:function recordRotate(rotation,target,velocity){var _a,_b;var event={type:'rotate',timestamp:Date.now(),target:target,metadata:{rotation:rotation,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordFling",value:function recordFling(direction,velocity,target){var _a,_b;var event={type:'fling',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordMultiTouch",value:function recordMultiTouch(touchCount,target){var _a,_b;var event={type:'multiTouch',timestamp:Date.now(),target:target,metadata:{touchCount:touchCount,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordScroll",value:function recordScroll(direction,distance,velocity,target){var _a,_b;var event={type:'scroll',timestamp:Date.now(),target:target,metadata:{direction:direction,distance:distance,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordZoom",value:function recordZoom(scale,target,velocity){var _a,_b;var event={type:'zoom',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordTouchStart",value:function recordTouchStart(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs){_utils.logger.debug('GestureRecorder',"Touch start throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch start recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchStart,now);}},{key:"recordTouchMove",value:function recordTouchMove(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs*2){_utils.logger.debug('GestureRecorder',"Touch move throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs*2,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch move recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseMoveEvent(x,y,target);}},{key:"recordTouchEnd",value:function recordTouchEnd(x,y,target,pressure){var _a;var timestamp=Date.now();_utils.logger.debug('GestureRecorder','Touch end recorded',{x:x,y:y,target:target,pressure:pressure,timestamp:timestamp});this.recordTap(x,y,target,pressure,timestamp);this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchEnd,timestamp);(_a=this.screenRecorder)===null||_a===void 0?void 0:_a.forceCapture(timestamp);}},{key:"recordTouchCancel",value:function recordTouchCancel(x,y,target){this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchCancel);}},{key:"setImageNodeId",value:function setImageNodeId(nodeId){this.imageNodeId=nodeId;}},{key:"_recordEvent",value:function _recordEvent(event){if(!this.isRecording)return;var now=Date.now();if(now-this.lastGestureTime<this.gestureThrottleMs){return;}this.lastGestureTime=now;this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);}},{key:"_createMouseInteractionEvent",value:function _createMouseInteractionEvent(x,y,interactionType,timestamp){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.MouseInteraction,type:interactionType,id:this.imageNodeId,x:x,y:y,pointerType:2},timestamp:timestamp||Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"_createMouseMoveEvent",value:function _createMouseMoveEvent(x,y,target){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.TouchMove,positions:[{x:x,y:y,id:this.imageNodeId,timeOffset:0}]},timestamp:Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"recordEvent",value:function recordEvent(event){if(this.eventRecorder){this.eventRecorder.recordEvent(event);}}},{key:"getEvents",value:function getEvents(){return(0,_toConsumableArray2["default"])(this.events);}},{key:"clearEvents",value:function clearEvents(){this.events=[];}},{key:"getEventStats",value:function getEventStats(){var stats={};this.events.forEach(function(event){stats[event.type]=(stats[event.type]||0)+1;});return stats;}},{key:"setGestureThrottle",value:function setGestureThrottle(throttleMs){this.gestureThrottleMs=throttleMs;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"_truncateText",value:function _truncateText(text){var maxLength=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(!text||text.length<=maxLength){return text;}return text.substring(0,maxLength-3)+'...';}}]);}();
@@ -1 +1 @@
1
- {"version":3,"file":"gestureRecorder.js","sourceRoot":"","sources":["../../src/recorder/gestureRecorder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAQ,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,OAAO,EAAE,iBAAiB,EAAiB,SAAS,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAC7F,iCAAiC;AACjC,OAAO,qBAAqB,EAAE,EAAE,mBAAmB,EAAsC,MAAM,iCAAiC,CAAA;AAEhI,MAAM,OAAO,eAAe;IAA5B;QAEU,gBAAW,GAAG,KAAK,CAAA;QACnB,WAAM,GAAmB,EAAE,CAAA;QAC3B,qBAAgB,GAA6C,IAAI,CAAA;QACjE,oBAAe,GAAW,CAAC,CAAA;QAC3B,sBAAiB,GAAW,EAAE,CAAA,CAAC,kCAAkC;QACjE,kBAAa,GAAW,CAAC,CAAA;QACzB,oBAAe,GAAW,GAAG,CAAA,CAAC,6CAA6C;QAE3E,gBAAW,GAAW,CAAC,CAAA,CAAC,8CAA8C;QAItE,iBAAY,GAAW,CAAC,CAAA;IA+nBlC,CAAC;IA7nBC,IAAI,CAAC,MAAsB,EAAE,aAA6B,EAAE,cAAoB;QAC9E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QACpC,IAAI,CAAC,oBAAoB,EAAE,CAAA;IAC7B,CAAC;IAED,KAAK;QACH,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,kCAAkC,CAAC,CAAA;QAClE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAEhB,iCAAiC;QACjC,qBAAqB,CAAC,qBAAqB,EAAE;aAC1C,IAAI,CAAC,GAAG,EAAE;YACT,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,+CAA+C,CAAC,CAAA;YAC/E,IAAI,CAAC,0BAA0B,EAAE,CAAA;QACnC,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,0CAA0C,EAAE,KAAK,CAAC,CAAA;QACpF,CAAC,CAAC,CAAA;IACN,CAAC;IAED,IAAI;QACF,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;QACxB,IAAI,CAAC,2BAA2B,EAAE,CAAA;QAElC,gCAAgC;QAChC,qBAAqB,CAAC,oBAAoB,EAAE;aACzC,IAAI,CAAC,GAAG,EAAE;YACT,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,+CAA+C,CAAC,CAAA;QACjF,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,yCAAyC,EAAE,KAAK,CAAC,CAAA;QACnF,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,oBAAoB;QAC1B,IAAI,CAAC;YACH,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,sDAAsD;YACtD,IAAI,CAAC,gBAAgB,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA,CAAC,mBAAmB;QACzE,CAAC;IACH,CAAC;IAEO,0BAA0B;QAChC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,qCAAqC,CAAC,CAAA;YACrE,OAAM;QACR,CAAC;QAED,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAC,WAAW,CACzD,mBAAmB,EACnB,CAAC,aAAiC,EAAE,EAAE;YACpC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAA;QAC1C,CAAC,CACF,CAAA;IACH,CAAC;IAEO,2BAA2B;QACjC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAA;YAClC,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAA;QACvC,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,aAAiC;;QAC5D,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAM;QAE7B,kCAAkC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,GAAG,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACxD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,GAAG,CAAA;QAE1B,uCAAuC;QACvC,MAAM,OAAO,GAAiB;YAC5B,IAAI,EAAE,aAAa,CAAC,IAAW;YAC/B,SAAS,EAAE,aAAa,CAAC,SAAS;YAClC,WAAW,EAAE,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE;YACvD,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,sCAAsC;YAC5E,QAAQ,EAAE;gBACR,GAAG,aAAa,CAAC,QAAQ;gBACzB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACxB,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAA;QAEtC,gCAAgC;QAChC,QAAQ,aAAa,CAAC,IAAI,EAAE,CAAC;YAC3B,KAAK,KAAK;gBACR,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAA;gBACrC,MAAK;YACP,KAAK,WAAW;gBACd,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAA;gBAC1C,MAAK;YACP,KAAK,UAAU;gBACb,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAA;gBACzC,MAAK;YACP,KAAK,SAAS;gBACZ,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAA;gBACxC,MAAK;YACP,KAAK,YAAY;gBACf,IAAI,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAA;gBAC3C,MAAK;YACP,KAAK,OAAO;gBACV,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAA;gBACvC,MAAK;YACP,KAAK,OAAO;gBACV,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAA;gBACvC,MAAK;QACT,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,aAAiC;QACzD,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;QAC7E,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC7E,CAAC;IAEO,sBAAsB,CAAC,aAAiC;QAC9D,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC/E,CAAC;IAEO,qBAAqB,CAAC,aAAiC;QAC7D,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC9E,CAAC;IAEO,oBAAoB,CAAC,aAAiC;QAC5D,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC7E,CAAC;IAEO,uBAAuB,CAAC,aAAiC;QAC/D,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;QAC7E,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC7E,CAAC;IAEO,mBAAmB,CAAC,aAAiC;;QAC3D,IAAI,CAAC,WAAW,CACd,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,KAAK,KAAI,GAAG,EACpC,aAAa,CAAC,MAAM,EACpB,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,QAAQ,KAAI,CAAC,CACtC,CAAA;IACH,CAAC;IAEO,mBAAmB,CAAC,aAAiC;;QAC3D,IAAI,CAAC,WAAW,CACd,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,SAAS,KAAI,SAAS,EAC9C,aAAa,CAAC,MAAM,EACpB,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,QAAQ,KAAI,CAAC,CACtC,CAAA;IACH,CAAC;IAEO,UAAU,CAAC,KAAmB;QACpC,yCAAyC;QACzC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,wBAAwB,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;IACvG,CAAC;IAEO,wBAAwB,CAAC,KAAmB;QAClD,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,uCAAuC,EAAE;gBACvE,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU;aAClC,CAAC,CAAA;YACF,gEAAgE;YAChE,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC/B,mDAAmD;gBACnD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,CAAA;oBAC1D,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAA;gBAC3B,CAAC;gBACD,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;gBACrB,MAAM,OAAO,GAAG,KAAK;qBAClB,SAAS,CAAC,iDAAiD,CAAC;qBAC5D,SAAS,CAAC,mBAAmB,CAAC,CAAA;gBAEjC,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;gBAC3C,OAAO,CAAC,YAAY,CAAC,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC1D,OAAO,CAAC,YAAY,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;gBACxD,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAA;gBAEvD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;oBACtB,OAAO,CAAC,YAAY,CAAC,iBAAiB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;oBAC5D,OAAO,CAAC,YAAY,CAAC,iBAAiB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;gBAC9D,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;gBAC9E,CAAC;gBACD,sCAAsC;gBACtC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAA;gBAC7B,IAAI,IAAI,EAAE,CAAC;oBACT,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACf,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;wBACjE,OAAO,CAAC,YAAY,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAA;oBAC9D,CAAC;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACd,OAAO,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;oBAChE,CAAC;oBACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;wBAChB,OAAO,CAAC,YAAY,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;oBACrE,CAAC;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACd,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;wBAC/D,OAAO,CAAC,YAAY,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAA;oBAC5D,CAAC;gBACH,CAAC;gBACD,+CAA+C;gBAC/C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAA;gBAC7B,OAAM;YACR,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,IAAI,CAAC,YAAY,IAAI,CAAC,CAAA;oBACtB,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,wBAAwB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;oBAC7E,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACtB,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;wBACvE,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;oBACzE,CAAC;oBACD,0CAA0C;oBAC1C,OAAM;gBACR,CAAC;gBACD,gFAAgF;YAClF,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACtB,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;wBACtE,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;oBACxE,CAAC;oBACD,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,CAAA;oBAC1D,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAA;oBACzB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;oBAC/B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;oBACrB,OAAM;gBACR,CAAC;gBACD,mFAAmF;YACrF,CAAC;YAED,gEAAgE;YAChE,MAAM,IAAI,GAAG,KAAK;iBACf,SAAS,CAAC,iDAAiD,CAAC;iBAC5D,SAAS,CAAC,iBAAiB,KAAK,CAAC,IAAI,EAAE,EAAE;gBACxC,UAAU,EAAE;oBACV,cAAc,EAAE,KAAK,CAAC,IAAI;oBAC1B,mBAAmB,EAAE,KAAK,CAAC,SAAS;oBACpC,kBAAkB,EAAE,cAAc;oBAClC,gBAAgB,EAAE,eAAe;iBAClC;aACF,CAAC,CAAA;YAEJ,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACtB,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;gBAC/D,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;gBAE/D,8BAA8B;gBAC9B,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAC1B,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAA;oBACnE,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAA;oBACpE,IAAI,CAAC,YAAY,CAAC,gCAAgC,EAAE,SAAS,CAAC,CAAA;oBAC9D,IAAI,CAAC,YAAY,CAAC,gCAAgC,EAAE,SAAS,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;YAC5E,CAAC;YAED,sCAAsC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAA;YAC7B,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;oBAClE,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAA;gBAC3D,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACd,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC7D,CAAC;gBACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;gBAClE,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACd,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;oBAChE,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAA;gBACzD,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBACtD,IAAI,CAAC,YAAY,CAAC,oBAAoB,GAAG,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC7D,CAAC,CAAC,CAAA;YACJ,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,IAAI,CAAC,GAAG,EAAE,CAAA;YACV,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,0CAA0C,CAAC,CAAA;QAC7E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,wDAAwD,EAAE,KAAK,CAAC,CAAA;QAClG,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,SAAS,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe,EAAE,QAAiB;;QAChE,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,QAAQ,EAAE,QAAQ,IAAI,GAAG;gBACzB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,WAAW,CAAC,SAAiB,EAAE,MAAe,EAAE,QAAiB,EAAE,QAAiB;;QAClF,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,SAAS;gBACT,QAAQ,EAAE,QAAQ,IAAI,CAAC;gBACvB,QAAQ,EAAE,QAAQ,IAAI,CAAC;gBACvB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,WAAW,CAAC,KAAa,EAAE,MAAe,EAAE,QAAiB;;QAC3D,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,KAAK;gBACL,QAAQ,EAAE,QAAQ,IAAI,CAAC;gBACvB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,SAAS,CAAC,MAAc,EAAE,MAAc,EAAE,MAAe,EAAE,QAAiB;;QAC1E,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,MAAM;gBACN,MAAM;gBACN,QAAQ,EAAE,QAAQ,IAAI,CAAC;gBACvB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,eAAe,CAAC,QAAgB,EAAE,MAAe,EAAE,QAAiB;;QAClE,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,QAAQ;gBACR,QAAQ,EAAE,QAAQ,IAAI,GAAG;gBACzB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,eAAe,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe;;QACnD,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,YAAY,CAAC,QAAgB,EAAE,MAAe,EAAE,QAAiB;;QAC/D,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,QAAQ;gBACR,QAAQ,EAAE,QAAQ,IAAI,CAAC;gBACvB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,WAAW,CAAC,SAAiB,EAAE,QAAgB,EAAE,MAAe;;QAC9D,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,SAAS;gBACT,QAAQ;gBACR,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,gBAAgB,CAAC,UAAkB,EAAE,MAAe;;QAClD,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,UAAU;gBACV,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,YAAY,CAAC,SAAiB,EAAE,QAAgB,EAAE,QAAgB,EAAE,MAAe;;QACjF,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,SAAS;gBACT,QAAQ;gBACR,QAAQ;gBACR,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,MAAe,EAAE,QAAiB;;QAC1D,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,MAAM;YACZ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM;YACN,QAAQ,EAAE;gBACR,KAAK;gBACL,QAAQ,EAAE,QAAQ,IAAI,CAAC;gBACvB,WAAW,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAAK;gBACzC,YAAY,EAAE,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM;aAC5C;SACF,CAAA;QAED,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,uCAAuC;IACvC,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe,EAAE,QAAiB;QACvE,wCAAwC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACpD,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,0BAA0B,GAAG,GAAG,IAAI,CAAC,aAAa,QAAQ,IAAI,CAAC,eAAe,KAAK,CAAC,CAAA;YACpH,OAAM;QACR,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,GAAG,CAAA;QAExB,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,sBAAsB,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;QACnF,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IAC/E,CAAC;IAED,eAAe,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe,EAAE,QAAiB;QACtE,+CAA+C;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC,CAAC,iCAAiC;YAC1F,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,yBAAyB,GAAG,GAAG,IAAI,CAAC,aAAa,QAAQ,IAAI,CAAC,eAAe,GAAG,CAAC,KAAK,CAAC,CAAA;YACvH,OAAM;QACR,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,GAAG,CAAA;QAExB,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;QAClF,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;IAC1C,CAAC;IAED,cAAc,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe,EAAE,QAAiB;;QACrE,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;QACjF,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAE3E,oEAAoE;QACpE,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,wCAAwC,CAAC,CAAA;QACzE,MAAA,IAAI,CAAC,cAAc,0CAAE,YAAY,EAAE,CAAA;IACrC,CAAC;IAED,iBAAiB,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe;QACrD,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IAChF,CAAC;IAED,cAAc,CAAC,MAAc;QAC3B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAA;IAC3B,CAAC;IAEO,YAAY,CAAC,KAAmB;QACtC,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAM;QAE7B,kCAAkC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,GAAG,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACxD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,GAAG,CAAA;QAE1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACvB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACtB,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;IAEO,4BAA4B,CAClC,CAAS,EACT,CAAS,EACT,eAAkC,EAClC,MAAe;QAEf,MAAM,wBAAwB,GAAkB;YAC9C,IAAI,EAAE,SAAS,CAAC,mBAAmB;YACnC,IAAI,EAAE;gBACJ,MAAM,EAAE,iBAAiB,CAAC,gBAAgB;gBAC1C,IAAI,EAAE,eAAe;gBACrB,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,8BAA8B;gBACpD,CAAC,EAAE,CAAC,EAAE,4CAA4C;gBAClD,CAAC,EAAE,CAAC,EAAE,4CAA4C;gBAClD,WAAW,EAAE,CAAC,EAAE,uDAAuD;aACxE;YACD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAA;QAED,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAA;IAC5C,CAAC;IAEO,qBAAqB,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe;QACjE,MAAM,wBAAwB,GAAkB;YAC9C,IAAI,EAAE,SAAS,CAAC,mBAAmB;YACnC,IAAI,EAAE;gBACJ,MAAM,EAAE,iBAAiB,CAAC,SAAS,EAAE,4CAA4C;gBACjF,SAAS,EAAE;oBACT;wBACE,CAAC,EAAE,CAAC,EAAE,4CAA4C;wBAClD,CAAC,EAAE,CAAC,EAAE,4CAA4C;wBAClD,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,8BAA8B;wBACpD,UAAU,EAAE,CAAC,EAAE,qCAAqC;qBACrD;iBACF;aACF;YACD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAA;QAED,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAA;IAC5C,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACvC,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,SAAS;QACP,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;IACzB,CAAC;IAED,eAAe;IACf,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;IAClB,CAAC;IAED,uBAAuB;IACvB,aAAa;QACX,MAAM,KAAK,GAA2B,EAAE,CAAA;QACxC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC1B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;QACF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,uBAAuB;IACvB,kBAAkB,CAAC,UAAkB;QACnC,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAA;IACrC,CAAC;IAED,uBAAuB;IACvB,kBAAkB;QAChB,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAED;;;;;OAKG;IACK,aAAa,CAAC,IAAY,EAAE,YAAoB,GAAG;QACzD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;YACtC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAA;IACjD,CAAC;CACF"}
1
+ {"version":3,"file":"gestureRecorder.js","sourceRoot":"","sources":["../../src/recorder/gestureRecorder.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ export declare class RecorderReactNativeSDK implements EventRecorder {
13
13
  private sessionType;
14
14
  constructor();
15
15
  init(config: RecorderConfig): void;
16
+ setApiKey(apiKey: string): void;
17
+ setSocketUrl(socketUrl: string): void;
16
18
  start(sessionId: string | null, sessionType: SessionType): void;
17
19
  stop(): void;
18
20
  setNavigationRef(ref: any): void;
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.RecorderReactNativeSDK=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _eventExporter=require("./eventExporter");var _utils=require("../utils");var _screenRecorder=require("./screenRecorder");var _gestureRecorder=require("./gestureRecorder");var _navigationTracker=require("./navigationTracker");var RecorderReactNativeSDK=exports.RecorderReactNativeSDK=function(){function RecorderReactNativeSDK(){(0,_classCallCheck2["default"])(this,RecorderReactNativeSDK);this.isRecording=false;this.recordedEvents=[];this.sessionId=null;this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;this.screenRecorder=new _screenRecorder.ScreenRecorder();this.gestureRecorder=new _gestureRecorder.GestureRecorder();this.navigationTracker=new _navigationTracker.NavigationTracker();}return(0,_createClass2["default"])(RecorderReactNativeSDK,[{key:"init",value:function init(config){this.config=config;this.gestureRecorder.init(config,this,this.screenRecorder);this.navigationTracker.init(config);this.screenRecorder.init(config,this);this.exporter=new _eventExporter.EventExporter({socketUrl:config.apiBaseUrl||'',apiKey:config.apiKey});}},{key:"start",value:function start(sessionId,sessionType){if(!this.config){throw new Error('Configuration not initialized. Call init() before start().');}this.sessionId=sessionId;this.sessionType=sessionType;this.isRecording=true;if(this.config.recordScreen){this.screenRecorder.start();}if(this.config.recordGestures){this.gestureRecorder.start();}if(this.config.recordNavigation){this.navigationTracker.start();}}},{key:"stop",value:function stop(){var _a;this.isRecording=false;this.gestureRecorder.stop();this.navigationTracker.stop();this.screenRecorder.stop();(_a=this.exporter)===null||_a===void 0?void 0:_a.close();}},{key:"setNavigationRef",value:function setNavigationRef(ref){this.navigationTracker.setNavigationRef(ref);}},{key:"setViewShotRef",value:function setViewShotRef(ref){this.screenRecorder.setViewShotRef(ref);}},{key:"recordEvent",value:function recordEvent(event){if(!this.isRecording){return;}if(this.exporter){_utils.logger.debug('RecorderReactNativeSDK','Sending to exporter',event);this.exporter.send({event:event,eventType:event.type,timestamp:event.timestamp,debugSessionId:this.sessionId,debugSessionType:this.sessionType});}}},{key:"recordTouchStart",value:function recordTouchStart(x,y,target,pressure){if(!this.isRecording){return;}this.gestureRecorder.recordTouchStart(x,y,target,pressure);}},{key:"recordTouchMove",value:function recordTouchMove(x,y,target,pressure){if(!this.isRecording){return;}this.gestureRecorder.recordTouchMove(x,y,target,pressure);}},{key:"recordTouchEnd",value:function recordTouchEnd(x,y,target,pressure){if(!this.isRecording){return;}this.gestureRecorder.recordTouchEnd(x,y,target,pressure);}},{key:"getRecordedEvents",value:function getRecordedEvents(){return(0,_toConsumableArray2["default"])(this.recordedEvents);}},{key:"clearRecordedEvents",value:function clearRecordedEvents(){this.recordedEvents=[];}},{key:"getRecordingStats",value:function getRecordingStats(){return{totalEvents:this.recordedEvents.length,isRecording:this.isRecording};}}]);}();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.RecorderReactNativeSDK=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _eventExporter=require("./eventExporter");var _utils=require("../utils");var _screenRecorder=require("./screenRecorder");var _gestureRecorder=require("./gestureRecorder");var _navigationTracker=require("./navigationTracker");var RecorderReactNativeSDK=exports.RecorderReactNativeSDK=function(){function RecorderReactNativeSDK(){(0,_classCallCheck2["default"])(this,RecorderReactNativeSDK);this.isRecording=false;this.recordedEvents=[];this.sessionId=null;this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;this.screenRecorder=new _screenRecorder.ScreenRecorder();this.gestureRecorder=new _gestureRecorder.GestureRecorder();this.navigationTracker=new _navigationTracker.NavigationTracker();this.exporter=new _eventExporter.EventExporter({socketUrl:'',apiKey:''});}return(0,_createClass2["default"])(RecorderReactNativeSDK,[{key:"init",value:function init(config){this.config=config;this.screenRecorder.init(config,this);this.navigationTracker.init(config,this.screenRecorder);this.gestureRecorder.init(config,this,this.screenRecorder);this.exporter.setApiKey(config.apiKey);this.exporter.setSocketUrl(config.apiBaseUrl);}},{key:"setApiKey",value:function setApiKey(apiKey){this.exporter.setApiKey(apiKey);}},{key:"setSocketUrl",value:function setSocketUrl(socketUrl){this.exporter.setSocketUrl(socketUrl);}},{key:"start",value:function start(sessionId,sessionType){if(!this.config){throw new Error('Configuration not initialized. Call init() before start().');}this.sessionId=sessionId;this.sessionType=sessionType;this.isRecording=true;if(this.config.recordScreen){this.screenRecorder.start();}if(this.config.recordGestures){this.gestureRecorder.start();}if(this.config.recordNavigation){this.navigationTracker.start();}}},{key:"stop",value:function stop(){var _a;this.isRecording=false;this.gestureRecorder.stop();this.navigationTracker.stop();this.screenRecorder.stop();(_a=this.exporter)===null||_a===void 0?void 0:_a.close();}},{key:"setNavigationRef",value:function setNavigationRef(ref){this.navigationTracker.setNavigationRef(ref);}},{key:"setViewShotRef",value:function setViewShotRef(ref){this.screenRecorder.setViewShotRef(ref);}},{key:"recordEvent",value:function recordEvent(event){if(!this.isRecording){return;}if(this.exporter){_utils.logger.debug('RecorderReactNativeSDK','Sending to exporter',event);this.exporter.send({event:event,eventType:event.type,timestamp:event.timestamp,debugSessionId:this.sessionId,debugSessionType:this.sessionType});}}},{key:"recordTouchStart",value:function recordTouchStart(x,y,target,pressure){if(!this.isRecording){return;}this.gestureRecorder.recordTouchStart(x,y,target,pressure);}},{key:"recordTouchMove",value:function recordTouchMove(x,y,target,pressure){if(!this.isRecording){return;}this.gestureRecorder.recordTouchMove(x,y,target,pressure);}},{key:"recordTouchEnd",value:function recordTouchEnd(x,y,target,pressure){if(!this.isRecording){return;}this.gestureRecorder.recordTouchEnd(x,y,target,pressure);}},{key:"getRecordedEvents",value:function getRecordedEvents(){return(0,_toConsumableArray2["default"])(this.recordedEvents);}},{key:"clearRecordedEvents",value:function clearRecordedEvents(){this.recordedEvents=[];}},{key:"getRecordingStats",value:function getRecordingStats(){return{totalEvents:this.recordedEvents.length,isRecording:this.isRecording};}}]);}();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recorder/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recorder/index.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,8 @@ export declare class NavigationTracker {
7
7
  private currentRoute;
8
8
  private navigationStack;
9
9
  private navigationStartTime;
10
- init(config: RecorderConfig): void;
10
+ private screenRecorder?;
11
+ init(config: RecorderConfig, screenRecorder?: any): void;
11
12
  setNavigationRef(ref: any): void;
12
13
  start(): void;
13
14
  stop(): void;
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.NavigationTracker=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _api=require("@opentelemetry/api");var _utils=require("../utils");var NavigationTracker=exports.NavigationTracker=function(){function NavigationTracker(){(0,_classCallCheck2["default"])(this,NavigationTracker);this.isRecording=false;this.navigationRef=null;this.navigationListeners=new Map();this.currentRoute=null;this.navigationStack=[];this.navigationStartTime=0;}return(0,_createClass2["default"])(NavigationTracker,[{key:"init",value:function init(config){this.config=config;}},{key:"setNavigationRef",value:function setNavigationRef(ref){this.navigationRef=ref;if(this.isRecording){this._setupNavigationListener();}}},{key:"start",value:function start(){_utils.logger.info('NavigationTracker','Navigation tracking started');this.isRecording=true;this.navigationStack=[];this.navigationStartTime=Date.now();this._setupNavigationListener();}},{key:"stop",value:function stop(){this.isRecording=false;this._removeNavigationListener();}},{key:"pause",value:function pause(){this.isRecording=false;}},{key:"resume",value:function resume(){this.isRecording=true;this._setupNavigationListener();}},{key:"_setupNavigationListener",value:function _setupNavigationListener(){var _this=this;if(!this.navigationRef){return;}try{var stateListener=this.navigationRef.addListener('state',function(e){_this._recordNavigationEvent('state_change',e.data);});var focusListener=this.navigationRef.addListener('focus',function(e){_this._recordNavigationEvent('focus',e.data);});var blurListener=this.navigationRef.addListener('blur',function(e){_this._recordNavigationEvent('blur',e.data);});var beforeRemoveListener=this.navigationRef.addListener('beforeRemove',function(e){_this._recordNavigationEvent('beforeRemove',e.data);});this.navigationListeners.set('state',stateListener);this.navigationListeners.set('focus',focusListener);this.navigationListeners.set('blur',blurListener);this.navigationListeners.set('beforeRemove',beforeRemoveListener);}catch(error){}}},{key:"_removeNavigationListener",value:function _removeNavigationListener(){try{this.navigationListeners.forEach(function(listener,key){if(listener&&typeof listener.remove==='function'){listener.remove();}});this.navigationListeners.clear();}catch(error){}}},{key:"_getFriendlyRouteTitle",value:function _getFriendlyRouteTitle(){var _a,_b;try{var current=(_b=(_a=this.navigationRef)===null||_a===void 0?void 0:_a.getCurrentRoute)===null||_b===void 0?void 0:_b.call(_a);if(!current)return null;var titleFromParams=current.params&&current.params.title;if(titleFromParams&&typeof titleFromParams==='string'){return titleFromParams;}if(current.name&&typeof current.name==='string'){var raw=current.name;var withoutGroups=raw.replace(/^\([^)]*\)\//,'');var lastSegment=withoutGroups.split('/').filter(Boolean).slice(-2).join(' ');var withoutParams=lastSegment.replace(/\[[^\]]+\]/g,'').trim();var spaced=withoutParams.replace(/[-_]+/g,' ').replace(/\s+/g,' ').trim();var titleCase=spaced.split(' ').map(function(w){return w?w.charAt(0).toUpperCase()+w.slice(1):w;}).join(' ');return titleCase||raw;}return null;}catch(_c){return null;}}},{key:"_recordNavigationEvent",value:function _recordNavigationEvent(eventType,data){var _a,_b;if(!this.isRecording)return;var event={type:'navigate',timestamp:Date.now(),metadata:{eventType:eventType,navigationDuration:Date.now()-this.navigationStartTime,stackDepth:this.navigationStack.length}};var currentRoute=((_b=(_a=this.navigationRef)===null||_a===void 0?void 0:_a.getCurrentRoute)===null||_b===void 0?void 0:_b.call(_a))||{};var friendlyTitle=this._getFriendlyRouteTitle();var routeName=(data===null||data===void 0?void 0:data.routeName)||(currentRoute===null||currentRoute===void 0?void 0:currentRoute.name);var params=(data===null||data===void 0?void 0:data.params)||(currentRoute===null||currentRoute===void 0?void 0:currentRoute.params);var key=(data===null||data===void 0?void 0:data.key)||(currentRoute===null||currentRoute===void 0?void 0:currentRoute.key);if(routeName){event.routeName=routeName;this._updateNavigationStack(routeName,eventType);}if(params){event.params=params;}if(key){event.metadata.routeKey=key;}if(friendlyTitle){event.metadata.friendlyRouteName=friendlyTitle;}this._recordOpenTelemetrySpan(event);}},{key:"_updateNavigationStack",value:function _updateNavigationStack(routeName,eventType){if(eventType==='focus'||eventType==='state_change'){if(this.currentRoute!==routeName){this.currentRoute=routeName;this.navigationStack.push(routeName);}}else if(eventType==='blur'||eventType==='beforeRemove'){var index=this.navigationStack.indexOf(routeName);if(index>-1){this.navigationStack.splice(index,1);}}}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{var span=_api.trace.getTracer('navigation').startSpan("Navigation.".concat(event.type),{attributes:{'navigation.system':'ReactNavigation','navigation.operation':event.type,'navigation.type':event.type,'navigation.timestamp':event.timestamp,'navigation.platform':'react-native'}});if(event.routeName){span.setAttribute('navigation.route_name',event.routeName);}if(event.params){span.setAttribute('navigation.params',JSON.stringify(event.params));}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("navigation.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}catch(error){}}},{key:"getCurrentRoute",value:function getCurrentRoute(){return this.currentRoute;}},{key:"getNavigationStack",value:function getNavigationStack(){return(0,_toConsumableArray2["default"])(this.navigationStack);}},{key:"getNavigationDepth",value:function getNavigationDepth(){return this.navigationStack.length;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"getNavigationDuration",value:function getNavigationDuration(){return Date.now()-this.navigationStartTime;}}]);}();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.NavigationTracker=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _api=require("@opentelemetry/api");var _utils=require("../utils");var NavigationTracker=exports.NavigationTracker=function(){function NavigationTracker(){(0,_classCallCheck2["default"])(this,NavigationTracker);this.isRecording=false;this.navigationRef=null;this.navigationListeners=new Map();this.currentRoute=null;this.navigationStack=[];this.navigationStartTime=0;}return(0,_createClass2["default"])(NavigationTracker,[{key:"init",value:function init(config,screenRecorder){this.config=config;this.screenRecorder=screenRecorder;}},{key:"setNavigationRef",value:function setNavigationRef(ref){this.navigationRef=ref;if(this.isRecording){this._setupNavigationListener();}}},{key:"start",value:function start(){_utils.logger.info('NavigationTracker','Navigation tracking started');this.isRecording=true;this.navigationStack=[];this.navigationStartTime=Date.now();this._setupNavigationListener();}},{key:"stop",value:function stop(){this.isRecording=false;this._removeNavigationListener();}},{key:"pause",value:function pause(){this.isRecording=false;}},{key:"resume",value:function resume(){this.isRecording=true;this._setupNavigationListener();}},{key:"_setupNavigationListener",value:function _setupNavigationListener(){var _this=this;if(!this.navigationRef){return;}try{var stateListener=this.navigationRef.addListener('state',function(e){_this._recordNavigationEvent('state_change',e.data);});var focusListener=this.navigationRef.addListener('focus',function(e){_this._recordNavigationEvent('focus',e.data);});var blurListener=this.navigationRef.addListener('blur',function(e){_this._recordNavigationEvent('blur',e.data);});var beforeRemoveListener=this.navigationRef.addListener('beforeRemove',function(e){_this._recordNavigationEvent('beforeRemove',e.data);});this.navigationListeners.set('state',stateListener);this.navigationListeners.set('focus',focusListener);this.navigationListeners.set('blur',blurListener);this.navigationListeners.set('beforeRemove',beforeRemoveListener);}catch(error){}}},{key:"_removeNavigationListener",value:function _removeNavigationListener(){try{this.navigationListeners.forEach(function(listener,key){if(listener&&typeof listener.remove==='function'){listener.remove();}});this.navigationListeners.clear();}catch(error){}}},{key:"_getFriendlyRouteTitle",value:function _getFriendlyRouteTitle(){var _a,_b;try{var current=(_b=(_a=this.navigationRef)===null||_a===void 0?void 0:_a.getCurrentRoute)===null||_b===void 0?void 0:_b.call(_a);if(!current)return null;var titleFromParams=current.params&&current.params.title;if(titleFromParams&&typeof titleFromParams==='string'){return titleFromParams;}if(current.name&&typeof current.name==='string'){var raw=current.name;var withoutGroups=raw.replace(/^\([^)]*\)\//,'');var lastSegment=withoutGroups.split('/').filter(Boolean).slice(-2).join(' ');var withoutParams=lastSegment.replace(/\[[^\]]+\]/g,'').trim();var spaced=withoutParams.replace(/[-_]+/g,' ').replace(/\s+/g,' ').trim();var titleCase=spaced.split(' ').map(function(w){return w?w.charAt(0).toUpperCase()+w.slice(1):w;}).join(' ');return titleCase||raw;}return null;}catch(_c){return null;}}},{key:"_recordNavigationEvent",value:function _recordNavigationEvent(eventType,data){var _a,_b;if(!this.isRecording)return;var event={type:'navigate',timestamp:Date.now(),metadata:{eventType:eventType,navigationDuration:Date.now()-this.navigationStartTime,stackDepth:this.navigationStack.length}};var currentRoute=((_b=(_a=this.navigationRef)===null||_a===void 0?void 0:_a.getCurrentRoute)===null||_b===void 0?void 0:_b.call(_a))||{};var friendlyTitle=this._getFriendlyRouteTitle();var routeName=(data===null||data===void 0?void 0:data.routeName)||(currentRoute===null||currentRoute===void 0?void 0:currentRoute.name);var params=(data===null||data===void 0?void 0:data.params)||(currentRoute===null||currentRoute===void 0?void 0:currentRoute.params);var key=(data===null||data===void 0?void 0:data.key)||(currentRoute===null||currentRoute===void 0?void 0:currentRoute.key);if(routeName){event.routeName=routeName;this._updateNavigationStack(routeName,eventType);}if(params){event.params=params;}if(key){event.metadata.routeKey=key;}if(friendlyTitle){event.metadata.friendlyRouteName=friendlyTitle;}this._recordOpenTelemetrySpan(event);}},{key:"_updateNavigationStack",value:function _updateNavigationStack(routeName,eventType){if(eventType==='focus'||eventType==='state_change'){if(this.currentRoute!==routeName){this.currentRoute=routeName;this.navigationStack.push(routeName);}}else if(eventType==='blur'||eventType==='beforeRemove'){var index=this.navigationStack.indexOf(routeName);if(index>-1){this.navigationStack.splice(index,1);}}}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{var span=_api.trace.getTracer('navigation').startSpan("Navigation.".concat(event.type),{attributes:{'navigation.system':'ReactNavigation','navigation.operation':event.type,'navigation.type':event.type,'navigation.timestamp':event.timestamp,'navigation.platform':'react-native'}});if(event.routeName){span.setAttribute('navigation.route_name',event.routeName);}if(event.params){span.setAttribute('navigation.params',JSON.stringify(event.params));}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("navigation.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}catch(error){}}},{key:"getCurrentRoute",value:function getCurrentRoute(){return this.currentRoute;}},{key:"getNavigationStack",value:function getNavigationStack(){return(0,_toConsumableArray2["default"])(this.navigationStack);}},{key:"getNavigationDepth",value:function getNavigationDepth(){return this.navigationStack.length;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"getNavigationDuration",value:function getNavigationDuration(){return Date.now()-this.navigationStartTime;}}]);}();
@@ -1 +1 @@
1
- {"version":3,"file":"navigationTracker.js","sourceRoot":"","sources":["../../src/recorder/navigationTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"navigationTracker.js","sourceRoot":"","sources":["../../src/recorder/navigationTracker.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export declare class ScreenRecorder implements EventRecorder {
8
8
  private captureCount;
9
9
  private maxCaptures;
10
10
  private captureQuality;
11
+ private captureScale;
11
12
  private captureFormat;
12
13
  private screenDimensions;
13
14
  private currentScreen;
@@ -34,22 +35,25 @@ export declare class ScreenRecorder implements EventRecorder {
34
35
  /**
35
36
  * Create a full snapshot event with the given base64 image
36
37
  * @param base64Image - Base64 encoded image data
38
+ * @param timestamp - Optional timestamp to use for the event
37
39
  * @returns Full snapshot event
38
40
  */
39
- createFullSnapshot(base64Image: string): eventWithTime;
41
+ createFullSnapshot(base64Image: string, timestamp?: number): eventWithTime;
40
42
  /**
41
43
  * Create an incremental snapshot event with mutation data to update image src
42
44
  * @param base64Image - New base64 encoded image data
43
- * @param imageNodeId - ID of the image node to update
45
+ * @param captureFormat - Image format (png, jpg, etc.)
46
+ * @param timestamp - Optional timestamp to use for the event
44
47
  * @returns Incremental snapshot event with mutation data
45
48
  */
46
- createIncrementalSnapshotWithImageUpdate(base64Image: string): eventWithTime;
49
+ createIncrementalSnapshotWithImageUpdate(base64Image: string, captureFormat?: string, timestamp?: number): eventWithTime;
47
50
  /**
48
51
  * Update the screen with a new image using incremental snapshot
49
52
  * @param base64Image - New base64 encoded image data
53
+ * @param timestamp - Optional timestamp to use for the event
50
54
  * @returns true if update was successful, false otherwise
51
55
  */
52
- updateScreenWithIncrementalSnapshot(base64Image: string): boolean;
56
+ updateScreenWithIncrementalSnapshot(base64Image: string, timestamp?: number): boolean;
53
57
  /**
54
58
  * Force a full snapshot (useful when screen dimensions change or for debugging)
55
59
  * @param base64Image - Base64 encoded image data
@@ -106,8 +110,9 @@ export declare class ScreenRecorder implements EventRecorder {
106
110
  /**
107
111
  * Force capture screen (useful after touch interactions)
108
112
  * This bypasses the change detection and always captures
113
+ * @param timestamp - Optional timestamp to use for the capture event
109
114
  */
110
- forceCapture(): void;
115
+ forceCapture(timestamp?: number): void;
111
116
  /**
112
117
  * Record an rrweb event
113
118
  * @param event - The rrweb event to record
@@ -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 _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 _reactNativeViewShot=require("react-native-view-shot");var _utils=require("../utils");var _screenMaskingService=require("../services/screenMaskingService");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 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){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(){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 _reactNativeViewShot=require("react-native-view-shot");var _utils=require("../utils");var _screenMaskingService=require("../services/screenMaskingService");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 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(!_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,scale:this.captureScale});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,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;_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(_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,4 +1,4 @@
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;
@@ -18,12 +18,17 @@ export declare class ApiService {
18
18
  private config?;
19
19
  private baseUrl;
20
20
  constructor();
21
- init(config: SessionRecorderOptions): void;
21
+ init(config: ApiServiceConfig): void;
22
22
  /**
23
23
  * Update the API service configuration
24
24
  * @param config - Partial configuration to update
25
25
  */
26
- 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;
27
32
  /**
28
33
  * Make a request to the session debugger API
29
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){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
+ "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":"AAgBA,MAAM,OAAO,UAAU;IAIrB;QAFQ,YAAO,GAAW,6BAA6B,CAAA;QAGrD,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,EAAE;YACd,gBAAgB,EAAE,EAAE;YACpB,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,EAAE;SACU,CAAA;IAC7B,CAAC;IAED,IAAI,CAAC,MAA8B;QAEjC,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,IAAI,CAAC,MAAM;YACd,GAAG,MAAM;SACV,CAAA;QACD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAA;QAClC,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,MAAuC;QAC1D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;QAC7C,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,WAAW,CACvB,IAAY,EACZ,MAAc,EACd,IAAU,EACV,MAAoB;;QAEpB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,YAAY,IAAI,EAAE,CAAA;QAC7C,MAAM,MAAM,GAAG;YACb,MAAM;YACN,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YACxC,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,GAAG,CAAC,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,KAAI,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;aAChE;SACF,CAAA;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,GAAG,MAAM;gBACT,MAAM;aACP,CAAC,CAAA;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;YACxE,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAA;YACb,CAAC;YAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,YAAY,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;YACpC,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;QAC3D,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAChB,OAA4B,EAC5B,MAAoB;QAEpB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAChC,uBAAuB,EACvB,MAAM,EACN,OAAO,EACP,MAAM,CACP,CAAA;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CACf,SAAiB,EACjB,OAA2B;QAE3B,OAAO,IAAI,CAAC,WAAW,CACrB,mBAAmB,SAAS,OAAO,EACnC,OAAO,EACP,OAAO,CACR,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,SAAiB;QACnC,OAAO,IAAI,CAAC,WAAW,CACrB,mBAAmB,SAAS,SAAS,EACrC,QAAQ,CACT,CAAA;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,2BAA2B,CAC/B,OAA4B,EAC5B,MAAoB;QAEpB,OAAO,IAAI,CAAC,WAAW,CACrB,kCAAkC,EAClC,MAAM,EACN,OAAO,EACP,MAAM,CACP,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,0BAA0B,CAC9B,SAAiB,EACjB,OAA4B,EAC5B,MAAoB;QAEpB,OAAO,IAAI,CAAC,WAAW,CACrB,8BAA8B,SAAS,OAAO,EAC9C,MAAM,EACN,OAAO,EACP,MAAM,CACP,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,0BAA0B,CAAC,SAAiB;QAChD,OAAO,IAAI,CAAC,WAAW,CACrB,8BAA8B,SAAS,SAAS,EAChD,QAAQ,CACT,CAAA;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAgC,EAChC,MAAoB;QAEpB,OAAO,IAAI,CAAC,WAAW,CACrB,6BAA6B,EAC7B,MAAM,EACN,WAAW,EACX,MAAM,CACP,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"api.service.js","sourceRoot":"","sources":["../../src/services/api.service.ts"],"names":[],"mappings":"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"}