@multiplayer-app/session-recorder-react-native 0.0.1-beta.2 → 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 (242) hide show
  1. package/README.md +170 -12
  2. package/SessionRecorderNative.podspec +29 -0
  3. package/android/build.gradle +34 -0
  4. package/copy-react-native-dist.sh +34 -16
  5. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.d.ts +1 -0
  6. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js +1 -1
  7. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js.map +1 -1
  8. package/dist/components/MaskableComponent.d.ts +22 -0
  9. package/dist/components/MaskableComponent.js +1 -0
  10. package/dist/components/MaskableComponent.js.map +1 -0
  11. package/dist/components/MaskableTextInput.d.ts +14 -0
  12. package/dist/components/MaskableTextInput.js +1 -0
  13. package/dist/components/MaskableTextInput.js.map +1 -0
  14. package/dist/components/ScreenRecorderView/ScreenRecorderView.js +1 -1
  15. package/dist/components/ScreenRecorderView/ScreenRecorderView.js.map +1 -1
  16. package/dist/components/SessionRecorderWidget/FinalPopover.d.ts +11 -0
  17. package/dist/components/SessionRecorderWidget/FinalPopover.js +1 -0
  18. package/dist/components/SessionRecorderWidget/FinalPopover.js.map +1 -0
  19. package/dist/components/SessionRecorderWidget/FloatingButton.d.ts +8 -0
  20. package/dist/components/SessionRecorderWidget/FloatingButton.js +1 -0
  21. package/dist/components/SessionRecorderWidget/FloatingButton.js.map +1 -0
  22. package/dist/components/SessionRecorderWidget/InitialPopover.d.ts +15 -0
  23. package/dist/components/SessionRecorderWidget/InitialPopover.js +1 -0
  24. package/dist/components/SessionRecorderWidget/InitialPopover.js.map +1 -0
  25. package/dist/components/SessionRecorderWidget/ModalContainer.d.ts +8 -0
  26. package/dist/components/SessionRecorderWidget/ModalContainer.js +1 -0
  27. package/dist/components/SessionRecorderWidget/ModalContainer.js.map +1 -0
  28. package/dist/components/SessionRecorderWidget/ModalHeader.d.ts +6 -0
  29. package/dist/components/SessionRecorderWidget/ModalHeader.js +1 -0
  30. package/dist/components/SessionRecorderWidget/ModalHeader.js.map +1 -0
  31. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.d.ts +5 -0
  32. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js +1 -0
  33. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js.map +1 -0
  34. package/dist/components/SessionRecorderWidget/icons.d.ts +11 -0
  35. package/dist/components/SessionRecorderWidget/icons.js +1 -0
  36. package/dist/components/SessionRecorderWidget/icons.js.map +1 -0
  37. package/dist/components/SessionRecorderWidget/index.d.ts +2 -0
  38. package/dist/components/SessionRecorderWidget/index.js +1 -0
  39. package/dist/components/SessionRecorderWidget/index.js.map +1 -0
  40. package/dist/components/SessionRecorderWidget/styles.d.ts +165 -0
  41. package/dist/components/SessionRecorderWidget/styles.js +1 -0
  42. package/dist/components/SessionRecorderWidget/styles.js.map +1 -0
  43. package/dist/components/index.d.ts +2 -1
  44. package/dist/components/index.js +1 -1
  45. package/dist/components/index.js.map +1 -1
  46. package/dist/config/defaults.d.ts +4 -4
  47. package/dist/config/defaults.js +1 -1
  48. package/dist/config/defaults.js.map +1 -1
  49. package/dist/config/masking.d.ts +2 -2
  50. package/dist/config/masking.js +1 -1
  51. package/dist/config/masking.js.map +1 -1
  52. package/dist/config/session-recorder.js +1 -1
  53. package/dist/config/session-recorder.js.map +1 -1
  54. package/dist/config/validators.d.ts +1 -1
  55. package/dist/config/validators.js +1 -1
  56. package/dist/config/validators.js.map +1 -1
  57. package/dist/config/widget.d.ts +9 -0
  58. package/dist/config/widget.js +1 -0
  59. package/dist/config/widget.js.map +1 -0
  60. package/dist/context/SessionRecorderContext.d.ts +12 -3
  61. package/dist/context/SessionRecorderContext.js +1 -1
  62. package/dist/context/SessionRecorderContext.js.map +1 -1
  63. package/dist/context/SessionRecorderStore.d.ts +10 -0
  64. package/dist/context/SessionRecorderStore.js +1 -0
  65. package/dist/context/SessionRecorderStore.js.map +1 -0
  66. package/dist/context/useSessionRecorderStore.d.ts +8 -0
  67. package/dist/context/useSessionRecorderStore.js +1 -0
  68. package/dist/context/useSessionRecorderStore.js.map +1 -0
  69. package/dist/context/useStoreSelector.d.ts +4 -0
  70. package/dist/context/useStoreSelector.js +1 -0
  71. package/dist/context/useStoreSelector.js.map +1 -0
  72. package/dist/index.d.ts +1 -1
  73. package/dist/index.js +1 -1
  74. package/dist/index.js.map +1 -1
  75. package/dist/native/GestureRecorderNative.d.ts +57 -0
  76. package/dist/native/GestureRecorderNative.js +1 -0
  77. package/dist/native/GestureRecorderNative.js.map +1 -0
  78. package/dist/native/ScreenMasking.d.ts +21 -0
  79. package/dist/native/ScreenMasking.js +1 -0
  80. package/dist/native/ScreenMasking.js.map +1 -0
  81. package/dist/native/SessionRecorderNative.d.ts +33 -0
  82. package/dist/native/SessionRecorderNative.js +1 -0
  83. package/dist/native/SessionRecorderNative.js.map +1 -0
  84. package/dist/native/index.d.ts +2 -0
  85. package/dist/native/index.js +1 -0
  86. package/dist/native/index.js.map +1 -0
  87. package/dist/otel/index.js +1 -1
  88. package/dist/otel/index.js.map +1 -1
  89. package/dist/patch/xhr.js +1 -1
  90. package/dist/patch/xhr.js.map +1 -1
  91. package/dist/recorder/eventExporter.d.ts +4 -1
  92. package/dist/recorder/eventExporter.js +1 -1
  93. package/dist/recorder/eventExporter.js.map +1 -1
  94. package/dist/recorder/gestureRecorder.d.ts +28 -62
  95. package/dist/recorder/gestureRecorder.js +1 -1
  96. package/dist/recorder/gestureRecorder.js.map +1 -1
  97. package/dist/recorder/index.d.ts +2 -0
  98. package/dist/recorder/index.js +1 -1
  99. package/dist/recorder/index.js.map +1 -1
  100. package/dist/recorder/navigationTracker.d.ts +4 -19
  101. package/dist/recorder/navigationTracker.js +1 -1
  102. package/dist/recorder/navigationTracker.js.map +1 -1
  103. package/dist/recorder/screenRecorder.d.ts +11 -5
  104. package/dist/recorder/screenRecorder.js +1 -1
  105. package/dist/recorder/screenRecorder.js.map +1 -1
  106. package/dist/recorder/screenshotManager.d.ts +10 -0
  107. package/dist/recorder/screenshotManager.js +1 -0
  108. package/dist/recorder/screenshotManager.js.map +1 -0
  109. package/dist/services/api.service.d.ts +12 -3
  110. package/dist/services/api.service.js +1 -1
  111. package/dist/services/api.service.js.map +1 -1
  112. package/dist/services/screenMaskingService.d.ts +47 -0
  113. package/dist/services/screenMaskingService.js +1 -0
  114. package/dist/services/screenMaskingService.js.map +1 -0
  115. package/dist/services/storage.service.d.ts +18 -2
  116. package/dist/services/storage.service.js +1 -1
  117. package/dist/services/storage.service.js.map +1 -1
  118. package/dist/session-recorder.d.ts +10 -34
  119. package/dist/session-recorder.js +1 -1
  120. package/dist/session-recorder.js.map +1 -1
  121. package/dist/types/configs.d.ts +85 -0
  122. package/dist/types/configs.js +1 -0
  123. package/dist/types/configs.js.map +1 -0
  124. package/dist/types/index.d.ts +1 -0
  125. package/dist/types/index.js +1 -1
  126. package/dist/types/index.js.map +1 -1
  127. package/dist/types/session-recorder.d.ts +96 -132
  128. package/dist/types/session-recorder.js +1 -1
  129. package/dist/types/session-recorder.js.map +1 -1
  130. package/dist/utils/componentRegistry.d.ts +64 -0
  131. package/dist/utils/componentRegistry.js +1 -0
  132. package/dist/utils/componentRegistry.js.map +1 -0
  133. package/dist/utils/constants.optional.d.ts +21 -0
  134. package/dist/utils/constants.optional.expo.d.ts +3 -0
  135. package/dist/utils/constants.optional.expo.js +1 -0
  136. package/dist/utils/constants.optional.expo.js.map +1 -0
  137. package/dist/utils/constants.optional.js +1 -0
  138. package/dist/utils/constants.optional.js.map +1 -0
  139. package/dist/utils/createStore.d.ts +8 -0
  140. package/dist/utils/createStore.js +1 -0
  141. package/dist/utils/createStore.js.map +1 -0
  142. package/dist/utils/logger.d.ts +1 -1
  143. package/dist/utils/logger.js +1 -1
  144. package/dist/utils/logger.js.map +1 -1
  145. package/dist/utils/nativeModuleTest.d.ts +8 -0
  146. package/dist/utils/nativeModuleTest.js +1 -0
  147. package/dist/utils/nativeModuleTest.js.map +1 -0
  148. package/dist/utils/platform.d.ts +11 -0
  149. package/dist/utils/platform.js +1 -1
  150. package/dist/utils/platform.js.map +1 -1
  151. package/dist/utils/reactNativeHierarchyExtractor.d.ts +38 -0
  152. package/dist/utils/reactNativeHierarchyExtractor.js +1 -0
  153. package/dist/utils/reactNativeHierarchyExtractor.js.map +1 -0
  154. package/dist/utils/rrweb-events.d.ts +4 -3
  155. package/dist/utils/rrweb-events.js +1 -1
  156. package/dist/utils/rrweb-events.js.map +1 -1
  157. package/dist/utils/screenshotMasker.d.ts +96 -0
  158. package/dist/utils/screenshotMasker.js +1 -0
  159. package/dist/utils/screenshotMasker.js.map +1 -0
  160. package/dist/utils/session.d.ts +2 -1
  161. package/dist/utils/session.js +1 -1
  162. package/dist/utils/session.js.map +1 -1
  163. package/dist/utils/shallowEqual.d.ts +1 -0
  164. package/dist/utils/shallowEqual.js +1 -0
  165. package/dist/utils/shallowEqual.js.map +1 -0
  166. package/dist/utils/viewHierarchyTracker.d.ts +89 -0
  167. package/dist/utils/viewHierarchyTracker.js +1 -0
  168. package/dist/utils/viewHierarchyTracker.js.map +1 -0
  169. package/ios/GestureRecorderNative.m +21 -0
  170. package/ios/GestureRecorderNative.swift +316 -0
  171. package/ios/SessionRecorderNative.m +17 -0
  172. package/ios/SessionRecorderNative.podspec +26 -0
  173. package/ios/SessionRecorderNative.swift +599 -0
  174. package/package.json +13 -12
  175. package/react-native.config.js +12 -0
  176. package/RRWEB_INTEGRATION.md +0 -336
  177. package/VIEWSHOT_INTEGRATION_TEST.md +0 -123
  178. package/babel.config.js +0 -13
  179. package/dist/components/GestureCaptureWrapper.d.ts +0 -6
  180. package/dist/components/GestureCaptureWrapper.js +0 -1
  181. package/dist/components/GestureCaptureWrapper.js.map +0 -1
  182. package/dist/expo.d.ts +0 -7
  183. package/dist/expo.js +0 -1
  184. package/dist/expo.js.map +0 -1
  185. package/dist/otel/instrumentations/gestureInstrumentation.d.ts +0 -15
  186. package/dist/otel/instrumentations/gestureInstrumentation.js +0 -1
  187. package/dist/otel/instrumentations/gestureInstrumentation.js.map +0 -1
  188. package/dist/otel/instrumentations/reactNativeInstrumentation.d.ts +0 -8
  189. package/dist/otel/instrumentations/reactNativeInstrumentation.js +0 -1
  190. package/dist/otel/instrumentations/reactNativeInstrumentation.js.map +0 -1
  191. package/dist/otel/instrumentations/reactNavigationInstrumentation.d.ts +0 -13
  192. package/dist/otel/instrumentations/reactNavigationInstrumentation.js +0 -1
  193. package/dist/otel/instrumentations/reactNavigationInstrumentation.js.map +0 -1
  194. package/dist/recorder/gestureHandlerRecorder.d.ts +0 -19
  195. package/dist/recorder/gestureHandlerRecorder.js +0 -1
  196. package/dist/recorder/gestureHandlerRecorder.js.map +0 -1
  197. package/dist/types/rrweb.d.ts +0 -118
  198. package/dist/types/rrweb.js +0 -1
  199. package/dist/types/rrweb.js.map +0 -1
  200. package/scripts/generate-app-metadata.js +0 -173
  201. package/src/components/GestureCaptureWrapper/GestureCaptureWrapper.tsx +0 -86
  202. package/src/components/GestureCaptureWrapper/index.ts +0 -1
  203. package/src/components/ScreenRecorderView/ScreenRecorderView.tsx +0 -72
  204. package/src/components/ScreenRecorderView/index.ts +0 -1
  205. package/src/components/index.ts +0 -1
  206. package/src/config/constants.ts +0 -60
  207. package/src/config/defaults.ts +0 -82
  208. package/src/config/index.ts +0 -6
  209. package/src/config/masking.ts +0 -27
  210. package/src/config/session-recorder.ts +0 -55
  211. package/src/config/validators.ts +0 -31
  212. package/src/context/SessionRecorderContext.tsx +0 -75
  213. package/src/expo.ts +0 -11
  214. package/src/index.ts +0 -17
  215. package/src/otel/helpers.ts +0 -275
  216. package/src/otel/index.ts +0 -138
  217. package/src/otel/instrumentations/index.ts +0 -115
  218. package/src/patch/index.ts +0 -1
  219. package/src/patch/xhr.ts +0 -142
  220. package/src/recorder/eventExporter.ts +0 -141
  221. package/src/recorder/gestureRecorder.ts +0 -498
  222. package/src/recorder/index.ts +0 -179
  223. package/src/recorder/navigationTracker.ts +0 -449
  224. package/src/recorder/screenRecorder.ts +0 -498
  225. package/src/services/api.service.ts +0 -203
  226. package/src/services/storage.service.ts +0 -158
  227. package/src/session-recorder.ts +0 -600
  228. package/src/types/expo.d.ts +0 -23
  229. package/src/types/index.ts +0 -28
  230. package/src/types/session-recorder.ts +0 -423
  231. package/src/types/session.ts +0 -65
  232. package/src/utils/app-metadata.ts +0 -31
  233. package/src/utils/index.ts +0 -8
  234. package/src/utils/logger.ts +0 -225
  235. package/src/utils/platform.ts +0 -384
  236. package/src/utils/request-utils.ts +0 -61
  237. package/src/utils/rrweb-events.ts +0 -309
  238. package/src/utils/session.ts +0 -18
  239. package/src/utils/time.ts +0 -17
  240. package/src/utils/type-utils.ts +0 -75
  241. package/src/version.ts +0 -1
  242. package/tsconfig.json +0 -24
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ApiService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var ApiService=exports.ApiService=function(){function ApiService(){(0,_classCallCheck2["default"])(this,ApiService);this.baseUrl='https://api.multiplayer.app';this.config={apiKey:'',apiBaseUrl:'',exporterEndpoint:'',version:'',application:'',environment:''};}return(0,_createClass2["default"])(ApiService,[{key:"init",value:function init(config){this.config=_objectSpread(_objectSpread({},this.config),config);if(config.apiBaseUrl){this.baseUrl=config.apiBaseUrl;}}},{key:"updateConfigs",value:function updateConfigs(config){if(this.config){this.config=_objectSpread(_objectSpread({},this.config),config);}}},{key:"makeRequest",value:(function(){var _makeRequest=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(path,method,body,signal){var _a,url,params,response,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:url="".concat(this.baseUrl,"/v0/radar").concat(path);params={method:method,body:body?JSON.stringify(body):null,headers:_objectSpread({'Content-Type':'application/json'},((_a=this.config)===null||_a===void 0?void 0:_a.apiKey)&&{'X-Api-Key':this.config.apiKey})};_context.prev=1;_context.next=2;return fetch(url,_objectSpread(_objectSpread({},params),{},{signal:signal}));case 2:response=_context.sent;if(response.ok){_context.next=3;break;}throw new Error('Network response was not ok: '+response.statusText);case 3:if(!(response.status===204)){_context.next=4;break;}return _context.abrupt("return",null);case 4:_context.next=5;return response.json();case 5:return _context.abrupt("return",_context.sent);case 6:_context.prev=6;_t=_context["catch"](1);if(!((_t===null||_t===void 0?void 0:_t.name)==='AbortError')){_context.next=7;break;}throw new Error('Request aborted');case 7:throw new Error('Error making request: '+_t.message);case 8:case"end":return _context.stop();}},_callee,this,[[1,6]]);}));function makeRequest(_x,_x2,_x3,_x4){return _makeRequest.apply(this,arguments);}return makeRequest;}())},{key:"startSession",value:(function(){var _startSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(request,signal){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:return _context2.abrupt("return",this.makeRequest('/debug-sessions/start','POST',request,signal));case 1:case"end":return _context2.stop();}},_callee2,this);}));function startSession(_x5,_x6){return _startSession.apply(this,arguments);}return startSession;}())},{key:"stopSession",value:(function(){var _stopSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(sessionId,request){return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:return _context3.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/stop"),'PATCH',request));case 1:case"end":return _context3.stop();}},_callee3,this);}));function stopSession(_x7,_x8){return _stopSession.apply(this,arguments);}return stopSession;}())},{key:"cancelSession",value:(function(){var _cancelSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(sessionId){return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:return _context4.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context4.stop();}},_callee4,this);}));function cancelSession(_x9){return _cancelSession.apply(this,arguments);}return cancelSession;}())},{key:"startContinuousDebugSession",value:(function(){var _startContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(request,signal){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:return _context5.abrupt("return",this.makeRequest('/continuous-debug-sessions/start','POST',request,signal));case 1:case"end":return _context5.stop();}},_callee5,this);}));function startContinuousDebugSession(_x0,_x1){return _startContinuousDebugSession.apply(this,arguments);}return startContinuousDebugSession;}())},{key:"saveContinuousDebugSession",value:(function(){var _saveContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(sessionId,request,signal){return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:return _context6.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/save"),'POST',request,signal));case 1:case"end":return _context6.stop();}},_callee6,this);}));function saveContinuousDebugSession(_x10,_x11,_x12){return _saveContinuousDebugSession.apply(this,arguments);}return saveContinuousDebugSession;}())},{key:"stopContinuousDebugSession",value:(function(){var _stopContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee7(sessionId){return _regenerator["default"].wrap(function(_context7){while(1)switch(_context7.prev=_context7.next){case 0:return _context7.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context7.stop();}},_callee7,this);}));function stopContinuousDebugSession(_x13){return _stopContinuousDebugSession.apply(this,arguments);}return stopContinuousDebugSession;}())},{key:"checkRemoteSession",value:(function(){var _checkRemoteSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee8(requestBody,signal){return _regenerator["default"].wrap(function(_context8){while(1)switch(_context8.prev=_context8.next){case 0:return _context8.abrupt("return",this.makeRequest('/remote-debug-session/check','POST',requestBody,signal));case 1:case"end":return _context8.stop();}},_callee8,this);}));function checkRemoteSession(_x14,_x15){return _checkRemoteSession.apply(this,arguments);}return checkRemoteSession;}())}]);}();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ApiService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var ApiService=exports.ApiService=function(){function ApiService(){(0,_classCallCheck2["default"])(this,ApiService);this.baseUrl='https://api.multiplayer.app';this.config={apiKey:'',apiBaseUrl:'',exporterEndpoint:''};}return(0,_createClass2["default"])(ApiService,[{key:"init",value:function init(config){this.config=_objectSpread(_objectSpread({},this.config),config);if(config.apiBaseUrl){this.baseUrl=config.apiBaseUrl;}}},{key:"updateConfigs",value:function updateConfigs(config){if(this.config){this.config=_objectSpread(_objectSpread({},this.config),config);}}},{key:"setApiKey",value:function setApiKey(apiKey){if(this.config){this.config.apiKey=apiKey;}}},{key:"makeRequest",value:(function(){var _makeRequest=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(path,method,body,signal){var _a,url,params,response,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:url="".concat(this.baseUrl,"/v0/radar").concat(path);params={method:method,body:body?JSON.stringify(body):null,headers:_objectSpread({'Content-Type':'application/json'},((_a=this.config)===null||_a===void 0?void 0:_a.apiKey)&&{'X-Api-Key':this.config.apiKey})};_context.prev=1;_context.next=2;return fetch(url,_objectSpread(_objectSpread({},params),{},{signal:signal}));case 2:response=_context.sent;if(response.ok){_context.next=3;break;}throw new Error('Network response was not ok: '+response.statusText);case 3:if(!(response.status===204)){_context.next=4;break;}return _context.abrupt("return",null);case 4:_context.next=5;return response.json();case 5:return _context.abrupt("return",_context.sent);case 6:_context.prev=6;_t=_context["catch"](1);if(!((_t===null||_t===void 0?void 0:_t.name)==='AbortError')){_context.next=7;break;}throw new Error('Request aborted');case 7:throw new Error('Error making request: '+_t.message);case 8:case"end":return _context.stop();}},_callee,this,[[1,6]]);}));function makeRequest(_x,_x2,_x3,_x4){return _makeRequest.apply(this,arguments);}return makeRequest;}())},{key:"startSession",value:(function(){var _startSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(request,signal){var res,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=1;return this.makeRequest('/debug-sessions/start','POST',request,signal);case 1:res=_context2.sent;return _context2.abrupt("return",res);case 2:_context2.prev=2;_t2=_context2["catch"](0);throw _t2;case 3:case"end":return _context2.stop();}},_callee2,this,[[0,2]]);}));function startSession(_x5,_x6){return _startSession.apply(this,arguments);}return startSession;}())},{key:"stopSession",value:(function(){var _stopSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(sessionId,request){return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:return _context3.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/stop"),'PATCH',request));case 1:case"end":return _context3.stop();}},_callee3,this);}));function stopSession(_x7,_x8){return _stopSession.apply(this,arguments);}return stopSession;}())},{key:"cancelSession",value:(function(){var _cancelSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(sessionId){return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:return _context4.abrupt("return",this.makeRequest("/debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context4.stop();}},_callee4,this);}));function cancelSession(_x9){return _cancelSession.apply(this,arguments);}return cancelSession;}())},{key:"startContinuousDebugSession",value:(function(){var _startContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(request,signal){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:return _context5.abrupt("return",this.makeRequest('/continuous-debug-sessions/start','POST',request,signal));case 1:case"end":return _context5.stop();}},_callee5,this);}));function startContinuousDebugSession(_x0,_x1){return _startContinuousDebugSession.apply(this,arguments);}return startContinuousDebugSession;}())},{key:"saveContinuousDebugSession",value:(function(){var _saveContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(sessionId,request,signal){return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:return _context6.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/save"),'POST',request,signal));case 1:case"end":return _context6.stop();}},_callee6,this);}));function saveContinuousDebugSession(_x10,_x11,_x12){return _saveContinuousDebugSession.apply(this,arguments);}return saveContinuousDebugSession;}())},{key:"stopContinuousDebugSession",value:(function(){var _stopContinuousDebugSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee7(sessionId){return _regenerator["default"].wrap(function(_context7){while(1)switch(_context7.prev=_context7.next){case 0:return _context7.abrupt("return",this.makeRequest("/continuous-debug-sessions/".concat(sessionId,"/cancel"),'DELETE'));case 1:case"end":return _context7.stop();}},_callee7,this);}));function stopContinuousDebugSession(_x13){return _stopContinuousDebugSession.apply(this,arguments);}return stopContinuousDebugSession;}())},{key:"checkRemoteSession",value:(function(){var _checkRemoteSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee8(requestBody,signal){return _regenerator["default"].wrap(function(_context8){while(1)switch(_context8.prev=_context8.next){case 0:return _context8.abrupt("return",this.makeRequest('/remote-debug-session/check','POST',requestBody,signal));case 1:case"end":return _context8.stop();}},_callee8,this);}));function checkRemoteSession(_x14,_x15){return _checkRemoteSession.apply(this,arguments);}return checkRemoteSession;}())}]);}();
@@ -1 +1 @@
1
- {"version":3,"file":"api.service.js","sourceRoot":"","sources":["../../src/services/api.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.service.js","sourceRoot":"","sources":["../../src/services/api.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { MaskingOptions } from '../native/SessionRecorderNative';
2
+ export interface ScreenMaskingConfig {
3
+ /** Whether screen masking is enabled */
4
+ enabled: boolean;
5
+ /** Whether to mask text inputs (UITextField, UITextView, React Native text components) */
6
+ maskTextInputs?: boolean;
7
+ /** Whether to mask images (UIImageView, React Native Image components) */
8
+ maskImages?: boolean;
9
+ /** Whether to mask buttons (UIButton) */
10
+ maskButtons?: boolean;
11
+ /** Whether to mask labels (UILabel) */
12
+ maskLabels?: boolean;
13
+ /** Whether to mask web views (WKWebView) */
14
+ maskWebViews?: boolean;
15
+ /** Whether to mask sandboxed views (system views that don't belong to current process) */
16
+ maskSandboxedViews?: boolean;
17
+ }
18
+ export declare class ScreenMaskingService {
19
+ private config;
20
+ private isAvailable;
21
+ constructor(config?: ScreenMaskingConfig);
22
+ /**
23
+ * Check if the native masking module is available
24
+ */
25
+ private checkAvailability;
26
+ /**
27
+ * Capture screen with masking applied
28
+ */
29
+ captureMaskedScreen(options: MaskingOptions): Promise<string | null>;
30
+ /**
31
+ * Capture screen with basic masking (no custom options)
32
+ */
33
+ captureMaskedScreenBasic(): Promise<string | null>;
34
+ /**
35
+ * Update the masking configuration
36
+ */
37
+ updateConfig(config: Partial<ScreenMaskingConfig>): void;
38
+ /**
39
+ * Check if screen masking is available
40
+ */
41
+ isScreenMaskingAvailable(): boolean;
42
+ /**
43
+ * Get the current configuration
44
+ */
45
+ getConfig(): ScreenMaskingConfig;
46
+ }
47
+ export declare const screenMaskingService: ScreenMaskingService;
@@ -0,0 +1 @@
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.screenMaskingService=exports.ScreenMaskingService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _SessionRecorderNative=_interopRequireDefault(require("../native/SessionRecorderNative"));var _utils=require("../utils");function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var ScreenMaskingService=exports.ScreenMaskingService=function(){function ScreenMaskingService(){var config=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{enabled:true,maskTextInputs:true,maskImages:false,maskButtons:false,maskLabels:false,maskWebViews:false,maskSandboxedViews:false};(0,_classCallCheck2["default"])(this,ScreenMaskingService);this.isAvailable=false;this.config=config;this.checkAvailability();}return(0,_createClass2["default"])(ScreenMaskingService,[{key:"checkAvailability",value:function checkAvailability(){try{if(_SessionRecorderNative["default"]&&typeof _SessionRecorderNative["default"].captureAndMask==='function'){this.isAvailable=true;_utils.logger.info('ScreenMaskingService','Screen masking native module is available');}else{this.isAvailable=false;_utils.logger.warn('ScreenMaskingService','Screen masking native module is not available - auto-linking may still be in progress');}}catch(error){this.isAvailable=false;_utils.logger.error('ScreenMaskingService','Error checking screen masking availability:',error);}}},{key:"captureMaskedScreen",value:(function(){var _captureMaskedScreen=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(options){var maskingOptions,maskedImageBase64,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!(!this.isAvailable||!this.config.enabled)){_context.next=1;break;}_utils.logger.warn('ScreenMaskingService','Screen masking is not available or disabled');return _context.abrupt("return",null);case 1:_context.prev=1;maskingOptions=_objectSpread(_objectSpread({},this.config),options);_context.next=2;return _SessionRecorderNative["default"].captureAndMaskWithOptions(maskingOptions);case 2:maskedImageBase64=_context.sent;return _context.abrupt("return",maskedImageBase64);case 3:_context.prev=3;_t=_context["catch"](1);_utils.logger.error('ScreenMaskingService','Failed to capture masked screen:',_t);return _context.abrupt("return",null);case 4:case"end":return _context.stop();}},_callee,this,[[1,3]]);}));function captureMaskedScreen(_x){return _captureMaskedScreen.apply(this,arguments);}return captureMaskedScreen;}())},{key:"captureMaskedScreenBasic",value:(function(){var _captureMaskedScreenBasic=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var maskedImageBase64,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:if(!(!this.isAvailable||!this.config.enabled)){_context2.next=1;break;}_utils.logger.warn('ScreenMaskingService','Screen masking is not available or disabled');return _context2.abrupt("return",null);case 1:_context2.prev=1;_context2.next=2;return _SessionRecorderNative["default"].captureAndMask();case 2:maskedImageBase64=_context2.sent;return _context2.abrupt("return",maskedImageBase64);case 3:_context2.prev=3;_t2=_context2["catch"](1);_utils.logger.error('ScreenMaskingService','Failed to capture masked screen (basic):',_t2);return _context2.abrupt("return",null);case 4:case"end":return _context2.stop();}},_callee2,this,[[1,3]]);}));function captureMaskedScreenBasic(){return _captureMaskedScreenBasic.apply(this,arguments);}return captureMaskedScreenBasic;}())},{key:"updateConfig",value:function updateConfig(config){this.config=_objectSpread(_objectSpread({},this.config),config);_utils.logger.info('ScreenMaskingService','Screen masking configuration updated');}},{key:"isScreenMaskingAvailable",value:function isScreenMaskingAvailable(){return this.isAvailable&&this.config.enabled;}},{key:"getConfig",value:function getConfig(){return _objectSpread({},this.config);}}]);}();var screenMaskingService=exports.screenMaskingService=new ScreenMaskingService();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screenMaskingService.js","sourceRoot":"","sources":["../../src/services/screenMaskingService.ts"],"names":[],"mappings":"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"}
@@ -5,15 +5,23 @@ interface CacheData {
5
5
  sessionType: SessionType | null;
6
6
  sessionState: SessionState | null;
7
7
  sessionObject: ISession | null;
8
+ floatingButtonPosition: {
9
+ x: number;
10
+ y: number;
11
+ } | null;
8
12
  }
9
13
  export declare class StorageService {
10
14
  private static readonly SESSION_ID_KEY;
11
15
  private static readonly SESSION_TYPE_KEY;
12
16
  private static readonly SESSION_STATE_KEY;
13
17
  private static readonly SESSION_OBJECT_KEY;
18
+ private static readonly FLOATING_BUTTON_POSITION_KEY;
14
19
  private static cache;
15
20
  private static cacheInitialized;
16
- constructor();
21
+ private static instance;
22
+ private static positionSaveTimeout;
23
+ private constructor();
24
+ static getInstance(): StorageService;
17
25
  private static initializeCache;
18
26
  saveSessionId(sessionId: string): void;
19
27
  getSessionId(): string | null;
@@ -24,7 +32,15 @@ export declare class StorageService {
24
32
  saveSessionObject(session: ISession): void;
25
33
  getSessionObject(): ISession | null;
26
34
  clearSessionData(): void;
27
- getAllSessionData(): CacheData;
35
+ getAllSessionData(): Omit<CacheData, 'floatingButtonPosition'>;
36
+ saveFloatingButtonPosition(position: {
37
+ x: number;
38
+ y: number;
39
+ }): void;
40
+ getFloatingButtonPosition(): {
41
+ x: number;
42
+ y: number;
43
+ } | null;
28
44
  static initialize(): Promise<void>;
29
45
  }
30
46
  export {};
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.StorageService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _asyncStorage=_interopRequireDefault(require("@react-native-async-storage/async-storage"));var StorageService=exports.StorageService=function(){function StorageService(){(0,_classCallCheck2["default"])(this,StorageService);StorageService.initialize();}return(0,_createClass2["default"])(StorageService,[{key:"saveSessionId",value:function saveSessionId(sessionId){try{StorageService.cache.sessionId=sessionId;_asyncStorage["default"].setItem(StorageService.SESSION_ID_KEY,sessionId)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionId",value:function getSessionId(){return StorageService.cache.sessionId;}},{key:"saveSessionType",value:function saveSessionType(sessionType){try{StorageService.cache.sessionType=sessionType;_asyncStorage["default"].setItem(StorageService.SESSION_TYPE_KEY,sessionType)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionType",value:function getSessionType(){return StorageService.cache.sessionType;}},{key:"saveSessionState",value:function saveSessionState(state){try{StorageService.cache.sessionState=state;_asyncStorage["default"].setItem(StorageService.SESSION_STATE_KEY,state)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionState",value:function getSessionState(){return StorageService.cache.sessionState;}},{key:"saveSessionObject",value:function saveSessionObject(session){try{StorageService.cache.sessionObject=session;_asyncStorage["default"].setItem(StorageService.SESSION_OBJECT_KEY,JSON.stringify(session))["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionObject",value:function getSessionObject(){return StorageService.cache.sessionObject;}},{key:"clearSessionData",value:function clearSessionData(){try{StorageService.cache={sessionId:null,sessionType:null,sessionState:null,sessionObject:null};_asyncStorage["default"].multiRemove([StorageService.SESSION_ID_KEY,StorageService.SESSION_TYPE_KEY,StorageService.SESSION_STATE_KEY,StorageService.SESSION_OBJECT_KEY])["catch"](function(error){});}catch(error){throw error;}}},{key:"getAllSessionData",value:function getAllSessionData(){return{sessionId:StorageService.cache.sessionId,sessionType:StorageService.cache.sessionType,sessionState:StorageService.cache.sessionState,sessionObject:StorageService.cache.sessionObject};}}],[{key:"initializeCache",value:function(){var _initializeCache=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var _yield$Promise$all,_yield$Promise$all2,sessionId,sessionType,sessionState,sessionObject,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!StorageService.cacheInitialized){_context.next=1;break;}return _context.abrupt("return");case 1:_context.prev=1;_context.next=2;return Promise.all([_asyncStorage["default"].getItem(StorageService.SESSION_ID_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_TYPE_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_STATE_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_OBJECT_KEY)]);case 2:_yield$Promise$all=_context.sent;_yield$Promise$all2=(0,_slicedToArray2["default"])(_yield$Promise$all,4);sessionId=_yield$Promise$all2[0];sessionType=_yield$Promise$all2[1];sessionState=_yield$Promise$all2[2];sessionObject=_yield$Promise$all2[3];StorageService.cache={sessionId:sessionId,sessionType:sessionType,sessionState:sessionState,sessionObject:sessionObject?JSON.parse(sessionObject):null};StorageService.cacheInitialized=true;_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);StorageService.cacheInitialized=true;case 4:case"end":return _context.stop();}},_callee,null,[[1,3]]);}));function initializeCache(){return _initializeCache.apply(this,arguments);}return initializeCache;}()},{key:"initialize",value:function(){var _initialize=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=1;return StorageService.initializeCache();case 1:case"end":return _context2.stop();}},_callee2);}));function initialize(){return _initialize.apply(this,arguments);}return initialize;}()}]);}();StorageService.SESSION_ID_KEY='session_id';StorageService.SESSION_TYPE_KEY='session_type';StorageService.SESSION_STATE_KEY='session_state';StorageService.SESSION_OBJECT_KEY='session_object';StorageService.cache={sessionId:null,sessionType:null,sessionState:null,sessionObject:null};StorageService.cacheInitialized=false;
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.StorageService=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _asyncStorage=_interopRequireDefault(require("@react-native-async-storage/async-storage"));var _utils=require("../utils");function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var StorageService=exports.StorageService=function(){function StorageService(){(0,_classCallCheck2["default"])(this,StorageService);}return(0,_createClass2["default"])(StorageService,[{key:"saveSessionId",value:function saveSessionId(sessionId){try{StorageService.cache.sessionId=sessionId;_asyncStorage["default"].setItem(StorageService.SESSION_ID_KEY,sessionId)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionId",value:function getSessionId(){return StorageService.cache.sessionId;}},{key:"saveSessionType",value:function saveSessionType(sessionType){try{StorageService.cache.sessionType=sessionType;_asyncStorage["default"].setItem(StorageService.SESSION_TYPE_KEY,sessionType)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionType",value:function getSessionType(){return StorageService.cache.sessionType;}},{key:"saveSessionState",value:function saveSessionState(state){try{StorageService.cache.sessionState=state;_asyncStorage["default"].setItem(StorageService.SESSION_STATE_KEY,state)["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionState",value:function getSessionState(){return StorageService.cache.sessionState;}},{key:"saveSessionObject",value:function saveSessionObject(session){try{StorageService.cache.sessionObject=session;_asyncStorage["default"].setItem(StorageService.SESSION_OBJECT_KEY,JSON.stringify(session))["catch"](function(error){});}catch(error){throw error;}}},{key:"getSessionObject",value:function getSessionObject(){return StorageService.cache.sessionObject;}},{key:"clearSessionData",value:function clearSessionData(){try{StorageService.cache=_objectSpread(_objectSpread({},StorageService.cache),{},{sessionId:null,sessionType:null,sessionState:null,sessionObject:null});_asyncStorage["default"].multiRemove([StorageService.SESSION_ID_KEY,StorageService.SESSION_TYPE_KEY,StorageService.SESSION_STATE_KEY,StorageService.SESSION_OBJECT_KEY])["catch"](function(error){});}catch(error){throw error;}}},{key:"getAllSessionData",value:function getAllSessionData(){return{sessionId:StorageService.cache.sessionId,sessionType:StorageService.cache.sessionType,sessionState:StorageService.cache.sessionState,sessionObject:StorageService.cache.sessionObject};}},{key:"saveFloatingButtonPosition",value:function saveFloatingButtonPosition(position){try{StorageService.cache.floatingButtonPosition=position;if(StorageService.positionSaveTimeout){clearTimeout(StorageService.positionSaveTimeout);}StorageService.positionSaveTimeout=setTimeout(function(){_asyncStorage["default"].setItem(StorageService.FLOATING_BUTTON_POSITION_KEY,JSON.stringify(position))["catch"](function(error){_utils.logger.error('StorageService','Failed to persist floating button position',error);});},100);}catch(error){_utils.logger.error('StorageService','Failed to save floating button position',error);throw error;}}},{key:"getFloatingButtonPosition",value:function getFloatingButtonPosition(){return StorageService.cache.floatingButtonPosition;}}],[{key:"getInstance",value:function getInstance(){if(!StorageService.instance){StorageService.instance=new StorageService();StorageService.initialize();}return StorageService.instance;}},{key:"initializeCache",value:function(){var _initializeCache=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var _yield$Promise$all,_yield$Promise$all2,sessionId,sessionType,sessionState,sessionObject,floatingButtonPosition,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!StorageService.cacheInitialized){_context.next=1;break;}return _context.abrupt("return");case 1:_context.prev=1;_context.next=2;return Promise.all([_asyncStorage["default"].getItem(StorageService.SESSION_ID_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_TYPE_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_STATE_KEY),_asyncStorage["default"].getItem(StorageService.SESSION_OBJECT_KEY),_asyncStorage["default"].getItem(StorageService.FLOATING_BUTTON_POSITION_KEY)]);case 2:_yield$Promise$all=_context.sent;_yield$Promise$all2=(0,_slicedToArray2["default"])(_yield$Promise$all,5);sessionId=_yield$Promise$all2[0];sessionType=_yield$Promise$all2[1];sessionState=_yield$Promise$all2[2];sessionObject=_yield$Promise$all2[3];floatingButtonPosition=_yield$Promise$all2[4];StorageService.cache={sessionId:sessionId,sessionType:sessionType,sessionState:sessionState,sessionObject:sessionObject?JSON.parse(sessionObject):null,floatingButtonPosition:floatingButtonPosition?JSON.parse(floatingButtonPosition):null};StorageService.cacheInitialized=true;_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);StorageService.cacheInitialized=true;case 4:case"end":return _context.stop();}},_callee,null,[[1,3]]);}));function initializeCache(){return _initializeCache.apply(this,arguments);}return initializeCache;}()},{key:"initialize",value:function(){var _initialize=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=1;return StorageService.initializeCache();case 1:case"end":return _context2.stop();}},_callee2);}));function initialize(){return _initialize.apply(this,arguments);}return initialize;}()}]);}();StorageService.SESSION_ID_KEY='session_id';StorageService.SESSION_TYPE_KEY='session_type';StorageService.SESSION_STATE_KEY='session_state';StorageService.SESSION_OBJECT_KEY='session_object';StorageService.FLOATING_BUTTON_POSITION_KEY='floating_button_position';StorageService.cache={sessionId:null,sessionType:null,sessionState:null,sessionObject:null,floatingButtonPosition:null};StorageService.cacheInitialized=false;StorageService.instance=null;StorageService.positionSaveTimeout=null;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,18 @@
1
1
  import { SessionType } from '@multiplayer-app/session-recorder-common';
2
2
  import { Observable } from 'lib0/observable';
3
- import { ISession, SessionState, ISessionRecorder, SessionRecorderOptions, EventRecorder } from './types';
3
+ import { ISession, SessionState, ISessionRecorder, SessionRecorderConfigs, SessionRecorderOptions, EventRecorder } from './types';
4
4
  import { eventWithTime } from '@rrweb/types';
5
5
  type SessionRecorderEvents = 'state-change';
6
6
  declare class SessionRecorder extends Observable<SessionRecorderEvents> implements ISessionRecorder, EventRecorder {
7
- private _isInitialized;
8
7
  private _configs;
9
8
  private _apiService;
10
9
  private _tracer;
11
10
  private _recorder;
12
11
  private _storageService;
13
12
  private _startRequestController;
13
+ private _isInitialized;
14
+ get isInitialized(): boolean;
15
+ set isInitialized(isInitialized: boolean);
14
16
  private _sessionId;
15
17
  get sessionId(): string | null;
16
18
  set sessionId(sessionId: string | null);
@@ -37,6 +39,7 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
37
39
  * React Native doesn't have HTML elements, so we return null
38
40
  */
39
41
  get sessionWidgetButtonElement(): any;
42
+ get config(): SessionRecorderConfigs;
40
43
  /**
41
44
  * Initialize debugger with default or custom configurations
42
45
  */
@@ -79,11 +82,6 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
79
82
  * @param attributes - the attributes to set
80
83
  */
81
84
  setSessionAttributes(attributes: Record<string, any>): void;
82
- /**
83
- * Set a custom click handler for the recording button
84
- * @param handler - function that will be invoked when the button is clicked
85
- */
86
- set recordingButtonClickHandler(handler: () => boolean | void);
87
85
  /**
88
86
  * @description Check if session should be started/stopped automatically
89
87
  * @param {ISession} [sessionPayload]
@@ -129,38 +127,16 @@ declare class SessionRecorder extends Observable<SessionRecorderEvents> implemen
129
127
  * @param event - The rrweb event to record
130
128
  */
131
129
  recordEvent(event: eventWithTime): void;
132
- /**
133
- * Record touch start event (internal use - touch recording is automatic)
134
- * @param x - X coordinate
135
- * @param y - Y coordinate
136
- * @param target - Target element identifier
137
- * @param pressure - Touch pressure
138
- * @internal
139
- */
140
- recordTouchStart(x: number, y: number, target?: string, pressure?: number): void;
141
- /**
142
- * Record touch move event (internal use - touch recording is automatic)
143
- * @param x - X coordinate
144
- * @param y - Y coordinate
145
- * @param target - Target element identifier
146
- * @param pressure - Touch pressure
147
- * @internal
148
- */
149
- recordTouchMove(x: number, y: number, target?: string, pressure?: number): void;
150
- /**
151
- * Record touch end event (internal use - touch recording is automatic)
152
- * @param x - X coordinate
153
- * @param y - Y coordinate
154
- * @param target - Target element identifier
155
- * @param pressure - Touch pressure
156
- * @internal
157
- */
158
- recordTouchEnd(x: number, y: number, target?: string, pressure?: number): void;
159
130
  /**
160
131
  * Set the viewshot ref for screen capture
161
132
  * @param ref - React Native View ref for screen capture
162
133
  */
163
134
  setViewShotRef(ref: any): void;
135
+ /**
136
+ * Set the navigation ref for navigation tracking
137
+ * @param ref - React Native Navigation ref for navigation tracking
138
+ */
139
+ setNavigationRef(ref: any): void;
164
140
  }
165
141
  declare const _default: SessionRecorder;
166
142
  export default _default;
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _observable=require("lib0/observable");var _otel=require("./otel");var _recorder=require("./recorder");var _utils=require("./utils");var _types=require("./types");var _xhr=require("./patch/xhr");var _config=require("./config");var _storage=require("./services/storage.service");var _api=require("./services/api.service");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;}function _callSuper(t,o,e){return o=(0,_getPrototypeOf2["default"])(o),(0,_possibleConstructorReturn2["default"])(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],(0,_getPrototypeOf2["default"])(t).constructor):o.apply(t,e));}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}var SessionRecorder=function(_Observable){function SessionRecorder(){var _this;(0,_classCallCheck2["default"])(this,SessionRecorder);_this=_callSuper(this,SessionRecorder);_this._isInitialized=false;_this._configs=null;_this._apiService=new _api.ApiService();_this._tracer=new _otel.TracerReactNativeSDK();_this._recorder=new _recorder.RecorderReactNativeSDK();_this._storageService=new _storage.StorageService();_this._startRequestController=null;_this._sessionId=null;_this._sessionType=_sessionRecorderCommon.SessionType.PLAIN;_this._sessionState=null;_this._session=null;_this._sessionAttributes=null;_this._error='';_storage.StorageService.initialize();return _this;}(0,_inherits2["default"])(SessionRecorder,_Observable);return(0,_createClass2["default"])(SessionRecorder,[{key:"sessionId",get:function get(){return this._sessionId;},set:function set(sessionId){this._sessionId=sessionId;if(sessionId){this._storageService.saveSessionId(sessionId);}}},{key:"sessionType",get:function get(){return this._sessionType;},set:function set(sessionType){this._sessionType=sessionType;this._storageService.saveSessionType(sessionType);}},{key:"continuousRecording",get:function get(){return this.sessionType===_sessionRecorderCommon.SessionType.CONTINUOUS;}},{key:"sessionState",get:function get(){return this._sessionState||_types.SessionState.stopped;},set:function set(state){this._sessionState=state;this.emit('state-change',[state||_types.SessionState.stopped]);if(state){this._storageService.saveSessionState(state);}}},{key:"session",get:function get(){return this._session;},set:function set(session){this._session=session;if(session){this._storageService.saveSessionObject(session);}}},{key:"sessionAttributes",get:function get(){return this._sessionAttributes||{};},set:function set(attributes){this._sessionAttributes=attributes;}},{key:"error",get:function get(){return this._error||'';},set:function set(v){this._error=v;}},{key:"sessionWidgetButtonElement",get:function get(){return null;}},{key:"_loadStoredSessionData",value:function(){var _loadStoredSessionData2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var storedData,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;_context.next=1;return _storage.StorageService.initialize();case 1:_context.next=2;return this._storageService.getAllSessionData();case 2:storedData=_context.sent;if((0,_utils.isSessionActive)(storedData.sessionObject,storedData.sessionType===_sessionRecorderCommon.SessionType.CONTINUOUS)){this.session=storedData.sessionObject;this.sessionId=storedData.sessionId;this.sessionType=storedData.sessionType||_sessionRecorderCommon.SessionType.PLAIN;this.sessionState=storedData.sessionState;}else{this.session=null;this.sessionId=null;this.sessionState=null;this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;}_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](0);_utils.logger.error('SessionRecorder','Failed to load stored session data',_t);this.session=null;this.sessionId=null;this.sessionState=null;this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;case 4:case"end":return _context.stop();}},_callee,this,[[0,3]]);}));function _loadStoredSessionData(){return _loadStoredSessionData2.apply(this,arguments);}return _loadStoredSessionData;}()},{key:"init",value:(function(){var _init=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(configs){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:this._configs=(0,_config.getSessionRecorderConfig)(_objectSpread(_objectSpread({},this._configs),configs));this._isInitialized=true;this._checkOperation('init');_context2.next=1;return this._loadStoredSessionData();case 1:(0,_xhr.setMaxCapturingHttpPayloadSize)(this._configs.maxCapturingHttpPayloadSize||_config.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE);(0,_xhr.setShouldRecordHttpData)(!this._configs.captureBody,this._configs.captureHeaders);try{this._apiService.init(this._configs);this._tracer.init(this._configs);}catch(error){_utils.logger.error('SessionRecorder','Failed to initialize API service',error);}if(this._configs.apiKey){this._recorder.init(this._configs);}if(this.sessionId&&(this.sessionState===_types.SessionState.started||this.sessionState===_types.SessionState.paused)){this._start();}case 2:case"end":return _context2.stop();}},_callee2,this);}));function init(_x){return _init.apply(this,arguments);}return init;}())},{key:"start",value:(function(){var _start2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(){var type,session,_a,_args3=arguments;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:type=_args3.length>0&&_args3[0]!==undefined?_args3[0]:_sessionRecorderCommon.SessionType.PLAIN;session=_args3.length>1?_args3[1]:undefined;this._checkOperation('start');if(type===_sessionRecorderCommon.SessionType.CONTINUOUS&&!((_a=this._configs)===null||_a===void 0?void 0:_a.showContinuousRecording)){type=_sessionRecorderCommon.SessionType.PLAIN;}this.sessionType=type;this._startRequestController=new AbortController();if(!session){_context3.next=1;break;}this._setupSessionAndStart(session,true);_context3.next=2;break;case 1:_context3.next=2;return this._createSessionAndStart();case 2:case"end":return _context3.stop();}},_callee3,this);}));function start(){return _start2.apply(this,arguments);}return start;}())},{key:"stop",value:(function(){var _stop2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(comment){var request,response,_t2;return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;this._checkOperation('stop');this._stop();if(!this.continuousRecording){_context4.next=2;break;}_context4.next=1;return this._apiService.stopContinuousDebugSession(this.sessionId);case 1:this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;_context4.next=4;break;case 2:request={sessionAttributes:{comment:comment},stoppedAt:Date.now()};_context4.next=3;return this._apiService.stopSession(this.sessionId,request);case 3:response=_context4.sent;case 4:this._clearSession();_context4.next=6;break;case 5:_context4.prev=5;_t2=_context4["catch"](0);this.error=_t2.message;case 6:case"end":return _context4.stop();}},_callee4,this,[[0,5]]);}));function stop(_x2){return _stop2.apply(this,arguments);}return stop;}())},{key:"pause",value:(function(){var _pause2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:try{this._checkOperation('pause');this._pause();}catch(error){this.error=error.message;}case 1:case"end":return _context5.stop();}},_callee5,this);}));function pause(){return _pause2.apply(this,arguments);}return pause;}())},{key:"resume",value:(function(){var _resume2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(){return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:try{this._checkOperation('resume');this._resume();}catch(error){this.error=error.message;}case 1:case"end":return _context6.stop();}},_callee6,this);}));function resume(){return _resume2.apply(this,arguments);}return resume;}())},{key:"cancel",value:(function(){var _cancel=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee7(){var _t3;return _regenerator["default"].wrap(function(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;this._checkOperation('cancel');this._stop();if(!this.continuousRecording){_context7.next=2;break;}_context7.next=1;return this._apiService.stopContinuousDebugSession(this.sessionId);case 1:this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;_context7.next=3;break;case 2:_context7.next=3;return this._apiService.cancelSession(this.sessionId);case 3:this._clearSession();_context7.next=5;break;case 4:_context7.prev=4;_t3=_context7["catch"](0);this.error=_t3.message;case 5:case"end":return _context7.stop();}},_callee7,this,[[0,4]]);}));function cancel(){return _cancel.apply(this,arguments);}return cancel;}())},{key:"save",value:(function(){var _save=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee8(){var _a,res,_t4;return _regenerator["default"].wrap(function(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.prev=0;this._checkOperation('save');if(!(!this.continuousRecording||!((_a=this._configs)===null||_a===void 0?void 0:_a.showContinuousRecording))){_context8.next=1;break;}return _context8.abrupt("return");case 1:_context8.next=2;return this._apiService.saveContinuousDebugSession(this.sessionId,{sessionAttributes:this.sessionAttributes,resourceAttributes:(0,_utils.getNavigatorInfo)(),stoppedAt:Date.now(),name:this.sessionAttributes.userName?"".concat(this.sessionAttributes.userName,"'s session on ").concat((0,_utils.getFormattedDate)(Date.now(),{month:'short',day:'numeric'})):"Session on ".concat((0,_utils.getFormattedDate)(Date.now()))});case 2:res=_context8.sent;return _context8.abrupt("return",res);case 3:_context8.prev=3;_t4=_context8["catch"](0);this.error=_t4.message;case 4:case"end":return _context8.stop();}},_callee8,this,[[0,3]]);}));function save(){return _save.apply(this,arguments);}return save;}())},{key:"setSessionAttributes",value:function setSessionAttributes(attributes){this._sessionAttributes=attributes;}},{key:"recordingButtonClickHandler",set:function set(handler){}},{key:"checkRemoteContinuousSession",value:(function(){var _checkRemoteContinuousSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee9(sessionPayload){var _a,payload,_yield$this$_apiServi,state;return _regenerator["default"].wrap(function(_context9){while(1)switch(_context9.prev=_context9.next){case 0:this._checkOperation('autoStartRemoteContinuousSession');if((_a=this._configs)===null||_a===void 0?void 0:_a.showContinuousRecording){_context9.next=1;break;}return _context9.abrupt("return");case 1:payload={sessionAttributes:_objectSpread(_objectSpread({},this.sessionAttributes),(sessionPayload===null||sessionPayload===void 0?void 0:sessionPayload.sessionAttributes)||{}),resourceAttributes:_objectSpread(_objectSpread({},(0,_utils.getNavigatorInfo)()),(sessionPayload===null||sessionPayload===void 0?void 0:sessionPayload.resourceAttributes)||{})};_context9.next=2;return this._apiService.checkRemoteSession(payload);case 2:_yield$this$_apiServi=_context9.sent;state=_yield$this$_apiServi.state;if(!(state=='START')){_context9.next=4;break;}if(!(this.sessionState!==_types.SessionState.started)){_context9.next=3;break;}_context9.next=3;return this.start(_sessionRecorderCommon.SessionType.CONTINUOUS);case 3:_context9.next=5;break;case 4:if(!(state=='STOP')){_context9.next=5;break;}if(!(this.sessionState!==_types.SessionState.stopped)){_context9.next=5;break;}_context9.next=5;return this.stop();case 5:case"end":return _context9.stop();}},_callee9,this);}));function checkRemoteContinuousSession(_x3){return _checkRemoteContinuousSession.apply(this,arguments);}return checkRemoteContinuousSession;}())},{key:"_createSessionAndStart",value:(function(){var _createSessionAndStart2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee0(){var _a,signal,payload,request,session,_t5,_t6;return _regenerator["default"].wrap(function(_context0){while(1)switch(_context0.prev=_context0.next){case 0:signal=(_a=this._startRequestController)===null||_a===void 0?void 0:_a.signal;_context0.prev=1;payload={sessionAttributes:this.sessionAttributes,resourceAttributes:(0,_utils.getNavigatorInfo)(),name:this.sessionAttributes.userName?"".concat(this.sessionAttributes.userName,"'s session on ").concat((0,_utils.getFormattedDate)(Date.now(),{month:'short',day:'numeric'})):"Session on ".concat((0,_utils.getFormattedDate)(Date.now()))};request=!this.continuousRecording?payload:{debugSessionData:payload};if(!this.continuousRecording){_context0.next=3;break;}_context0.next=2;return this._apiService.startContinuousDebugSession(request,signal);case 2:_t5=_context0.sent;_context0.next=5;break;case 3:_context0.next=4;return this._apiService.startSession(request,signal);case 4:_t5=_context0.sent;case 5:session=_t5;if(session){session.sessionType=this.continuousRecording?_sessionRecorderCommon.SessionType.CONTINUOUS:_sessionRecorderCommon.SessionType.PLAIN;this._setupSessionAndStart(session,false);}_context0.next=7;break;case 6:_context0.prev=6;_t6=_context0["catch"](1);this.error=_t6.message;if(this.continuousRecording){this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;}case 7:case"end":return _context0.stop();}},_callee0,this,[[1,6]]);}));function _createSessionAndStart(){return _createSessionAndStart2.apply(this,arguments);}return _createSessionAndStart;}())},{key:"_start",value:function _start(){this.sessionState=_types.SessionState.started;if(this.sessionId){this._tracer.start(this.sessionId,this.sessionType);this._recorder.start(this.sessionId,this.sessionType);}}},{key:"_stop",value:function _stop(){this.sessionState=_types.SessionState.stopped;this._tracer.shutdown();this._recorder.stop();}},{key:"_pause",value:function _pause(){this._tracer.shutdown();this._recorder.stop();this.sessionState=_types.SessionState.paused;}},{key:"_resume",value:function _resume(){if(this.sessionId){this._tracer.setSessionId(this.sessionId,this.sessionType);this._recorder.start(this.sessionId,this.sessionType);}this.sessionState=_types.SessionState.started;}},{key:"_setupSessionAndStart",value:function _setupSessionAndStart(session){var configureExporters=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(configureExporters&&session.tempApiKey){this._configs.apiKey=session.tempApiKey;this._recorder.init(this._configs);this._tracer.init(this._configs);this._apiService.updateConfigs({apiKey:this._configs.apiKey});}this._setSession(session);this._start();}},{key:"_setSession",value:function _setSession(session){this.session=_objectSpread(_objectSpread({},session),{},{createdAt:session.createdAt||new Date().toISOString()});this.sessionId=(session===null||session===void 0?void 0:session.shortId)||(session===null||session===void 0?void 0:session._id);}},{key:"_clearSession",value:function _clearSession(){this.session=null;this.sessionId=null;this.sessionState=_types.SessionState.stopped;this._storageService.clearSessionData();}},{key:"_checkOperation",value:function _checkOperation(action,payload){if(!this._isInitialized){throw new Error('Configuration not initialized. Call init() before performing any actions.');}switch(action){case'start':if(this.sessionState===_types.SessionState.started){throw new Error('Session is already started.');}break;case'stop':if(this.sessionState!==_types.SessionState.paused&&this.sessionState!==_types.SessionState.started){throw new Error('Cannot stop. Session is not currently started.');}break;case'cancel':if(this.sessionState===_types.SessionState.stopped){throw new Error('Cannot cancel. Session has already been stopped.');}break;case'pause':if(this.sessionState!==_types.SessionState.started){throw new Error('Cannot pause. Session is not running.');}break;case'resume':if(this.sessionState!==_types.SessionState.paused){throw new Error('Cannot resume. Session is not paused.');}break;case'save':if(!this.continuousRecording){throw new Error('Cannot save continuous recording session. Continuous recording is not enabled.');}if(this.sessionState!==_types.SessionState.started){throw new Error('Cannot save continuous recording session. Session is not started.');}break;case'autoStartRemoteContinuousSession':if(this.sessionState!==_types.SessionState.stopped){throw new Error('Cannot start remote continuous session. Session is not stopped.');}break;}}},{key:"setSessionAttribute",value:function setSessionAttribute(key,value){if(this._session){if(!this._session.sessionAttributes){this._session.sessionAttributes={};}this._session.sessionAttributes[key]=value;this._session.updatedAt=new Date().toISOString();}}},{key:"recordEvent",value:function recordEvent(event){if(!this._isInitialized||this.sessionState!==_types.SessionState.started){return;}this._recorder.recordEvent(event);}},{key:"recordTouchStart",value:function recordTouchStart(x,y,target,pressure){if(!this._isInitialized||this.sessionState!==_types.SessionState.started){return;}this._recorder.recordTouchStart(x,y,target,pressure);}},{key:"recordTouchMove",value:function recordTouchMove(x,y,target,pressure){if(!this._isInitialized||this.sessionState!==_types.SessionState.started){return;}this._recorder.recordTouchMove(x,y,target,pressure);}},{key:"recordTouchEnd",value:function recordTouchEnd(x,y,target,pressure){if(!this._isInitialized||this.sessionState!==_types.SessionState.started){return;}this._recorder.recordTouchEnd(x,y,target,pressure);}},{key:"setViewShotRef",value:function setViewShotRef(ref){if(this._recorder){this._recorder.setViewShotRef(ref);}}}]);}(_observable.Observable);var _default=exports["default"]=new SessionRecorder();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _observable=require("lib0/observable");var _otel=require("./otel");var _recorder=require("./recorder");var _utils=require("./utils");var _types=require("./types");var _xhr=require("./patch/xhr");var _config=require("./config");var _storage=require("./services/storage.service");var _api=require("./services/api.service");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;}function _callSuper(t,o,e){return o=(0,_getPrototypeOf2["default"])(o),(0,_possibleConstructorReturn2["default"])(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],(0,_getPrototypeOf2["default"])(t).constructor):o.apply(t,e));}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}var SessionRecorder=function(_Observable){function SessionRecorder(){var _this;(0,_classCallCheck2["default"])(this,SessionRecorder);_this=_callSuper(this,SessionRecorder);_this._apiService=new _api.ApiService();_this._tracer=new _otel.TracerReactNativeSDK();_this._recorder=new _recorder.RecorderReactNativeSDK();_this._storageService=_storage.StorageService.getInstance();_this._startRequestController=null;_this._isInitialized=false;_this._sessionId=null;_this._sessionType=_sessionRecorderCommon.SessionType.PLAIN;_this._sessionState=null;_this._session=null;_this._sessionAttributes=null;_this._error='';_this._configs=_config.BASE_CONFIG;_storage.StorageService.initialize();return _this;}(0,_inherits2["default"])(SessionRecorder,_Observable);return(0,_createClass2["default"])(SessionRecorder,[{key:"isInitialized",get:function get(){return this._isInitialized;},set:function set(isInitialized){this._isInitialized=isInitialized;}},{key:"sessionId",get:function get(){return this._sessionId;},set:function set(sessionId){this._sessionId=sessionId;if(sessionId){this._storageService.saveSessionId(sessionId);}}},{key:"sessionType",get:function get(){return this._sessionType;},set:function set(sessionType){this._sessionType=sessionType;this._storageService.saveSessionType(sessionType);}},{key:"continuousRecording",get:function get(){return this.sessionType===_sessionRecorderCommon.SessionType.CONTINUOUS;}},{key:"sessionState",get:function get(){return this._sessionState||_types.SessionState.stopped;},set:function set(state){this._sessionState=state;this.emit('state-change',[state||_types.SessionState.stopped,this.sessionType]);if(state){this._storageService.saveSessionState(state);}}},{key:"session",get:function get(){return this._session;},set:function set(session){this._session=session;if(session){this._storageService.saveSessionObject(session);}}},{key:"sessionAttributes",get:function get(){return this._sessionAttributes||{};},set:function set(attributes){this._sessionAttributes=attributes;}},{key:"error",get:function get(){return this._error||'';},set:function set(v){this._error=v;}},{key:"sessionWidgetButtonElement",get:function get(){return null;}},{key:"config",get:function get(){return this._configs;}},{key:"_loadStoredSessionData",value:function(){var _loadStoredSessionData2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var storedData,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;_context.next=1;return _storage.StorageService.initialize();case 1:_context.next=2;return this._storageService.getAllSessionData();case 2:storedData=_context.sent;if((0,_utils.isSessionActive)(storedData.sessionObject,storedData.sessionType)){this.session=storedData.sessionObject;this.sessionId=storedData.sessionId;this.sessionType=storedData.sessionType||_sessionRecorderCommon.SessionType.PLAIN;this.sessionState=storedData.sessionState;}else{this.session=null;this.sessionId=null;this.sessionState=null;this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;}_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](0);_utils.logger.error('SessionRecorder','Failed to load stored session data',_t);this.session=null;this.sessionId=null;this.sessionState=null;this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;case 4:case"end":return _context.stop();}},_callee,this,[[0,3]]);}));function _loadStoredSessionData(){return _loadStoredSessionData2.apply(this,arguments);}return _loadStoredSessionData;}()},{key:"init",value:(function(){var _init=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(configs){return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:if(!this._isInitialized){_context2.next=1;break;}return _context2.abrupt("return");case 1:this._isInitialized=true;this._configs=(0,_config.getSessionRecorderConfig)(_objectSpread(_objectSpread({},this._configs),configs));_utils.logger.configure(this._configs.logger);_context2.next=2;return this._loadStoredSessionData();case 2:(0,_xhr.setMaxCapturingHttpPayloadSize)(this._configs.maxCapturingHttpPayloadSize);(0,_xhr.setShouldRecordHttpData)(!this._configs.captureBody,this._configs.captureHeaders);this._tracer.init(this._configs);this._recorder.init(this._configs);this._apiService.init(this._configs);if(this.sessionId&&(this.sessionState===_types.SessionState.started||this.sessionState===_types.SessionState.paused)){this._start();}case 3:case"end":return _context2.stop();}},_callee2,this);}));function init(_x){return _init.apply(this,arguments);}return init;}())},{key:"start",value:(function(){var _start2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(){var type,session,_a,_args3=arguments;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:type=_args3.length>0&&_args3[0]!==undefined?_args3[0]:_sessionRecorderCommon.SessionType.PLAIN;session=_args3.length>1?_args3[1]:undefined;this._checkOperation('start');if(type===_sessionRecorderCommon.SessionType.CONTINUOUS&&!((_a=this._configs)===null||_a===void 0?void 0:_a.showContinuousRecording)){type=_sessionRecorderCommon.SessionType.PLAIN;}_utils.logger.info('SessionRecorder','Starting session with type:',type);this.sessionType=type;this._startRequestController=new AbortController();if(!session){_context3.next=1;break;}this._setupSessionAndStart(session,true);_context3.next=2;break;case 1:_context3.next=2;return this._createSessionAndStart();case 2:case"end":return _context3.stop();}},_callee3,this);}));function start(){return _start2.apply(this,arguments);}return start;}())},{key:"stop",value:(function(){var _stop2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(comment){var request,_t2;return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;this._checkOperation('stop');this._stop();if(!this.continuousRecording){_context4.next=2;break;}_context4.next=1;return this._apiService.stopContinuousDebugSession(this.sessionId);case 1:this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;_context4.next=3;break;case 2:request={sessionAttributes:{comment:comment},stoppedAt:Date.now()};_context4.next=3;return this._apiService.stopSession(this.sessionId,request);case 3:this._clearSession();_context4.next=5;break;case 4:_context4.prev=4;_t2=_context4["catch"](0);this.error=_t2.message;case 5:case"end":return _context4.stop();}},_callee4,this,[[0,4]]);}));function stop(_x2){return _stop2.apply(this,arguments);}return stop;}())},{key:"pause",value:(function(){var _pause2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:try{this._checkOperation('pause');this._pause();}catch(error){this.error=error.message;}case 1:case"end":return _context5.stop();}},_callee5,this);}));function pause(){return _pause2.apply(this,arguments);}return pause;}())},{key:"resume",value:(function(){var _resume2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(){return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:try{this._checkOperation('resume');this._resume();}catch(error){this.error=error.message;}case 1:case"end":return _context6.stop();}},_callee6,this);}));function resume(){return _resume2.apply(this,arguments);}return resume;}())},{key:"cancel",value:(function(){var _cancel=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee7(){var _t3;return _regenerator["default"].wrap(function(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;this._checkOperation('cancel');this._stop();if(!this.continuousRecording){_context7.next=2;break;}_context7.next=1;return this._apiService.stopContinuousDebugSession(this.sessionId);case 1:this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;_context7.next=3;break;case 2:_context7.next=3;return this._apiService.cancelSession(this.sessionId);case 3:this._clearSession();_context7.next=5;break;case 4:_context7.prev=4;_t3=_context7["catch"](0);this.error=_t3.message;case 5:case"end":return _context7.stop();}},_callee7,this,[[0,4]]);}));function cancel(){return _cancel.apply(this,arguments);}return cancel;}())},{key:"save",value:(function(){var _save=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee8(){var _a,res,_t4;return _regenerator["default"].wrap(function(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.prev=0;this._checkOperation('save');if(!(!this.continuousRecording||!((_a=this._configs)===null||_a===void 0?void 0:_a.showContinuousRecording))){_context8.next=1;break;}return _context8.abrupt("return");case 1:_context8.next=2;return this._apiService.saveContinuousDebugSession(this.sessionId,{sessionAttributes:this.sessionAttributes,resourceAttributes:(0,_utils.getNavigatorInfo)(),stoppedAt:Date.now(),name:this.sessionAttributes.userName?"".concat(this.sessionAttributes.userName,"'s session on ").concat((0,_utils.getFormattedDate)(Date.now(),{month:'short',day:'numeric'})):"Session on ".concat((0,_utils.getFormattedDate)(Date.now()))});case 2:res=_context8.sent;return _context8.abrupt("return",res);case 3:_context8.prev=3;_t4=_context8["catch"](0);this.error=_t4.message;case 4:case"end":return _context8.stop();}},_callee8,this,[[0,3]]);}));function save(){return _save.apply(this,arguments);}return save;}())},{key:"setSessionAttributes",value:function setSessionAttributes(attributes){this._sessionAttributes=attributes;}},{key:"checkRemoteContinuousSession",value:(function(){var _checkRemoteContinuousSession=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee9(sessionPayload){var _a,payload,_yield$this$_apiServi,state;return _regenerator["default"].wrap(function(_context9){while(1)switch(_context9.prev=_context9.next){case 0:this._checkOperation('autoStartRemoteContinuousSession');if((_a=this._configs)===null||_a===void 0?void 0:_a.showContinuousRecording){_context9.next=1;break;}return _context9.abrupt("return");case 1:payload={sessionAttributes:_objectSpread(_objectSpread({},this.sessionAttributes),(sessionPayload===null||sessionPayload===void 0?void 0:sessionPayload.sessionAttributes)||{}),resourceAttributes:_objectSpread(_objectSpread({},(0,_utils.getNavigatorInfo)()),(sessionPayload===null||sessionPayload===void 0?void 0:sessionPayload.resourceAttributes)||{})};_context9.next=2;return this._apiService.checkRemoteSession(payload);case 2:_yield$this$_apiServi=_context9.sent;state=_yield$this$_apiServi.state;if(!(state=='START')){_context9.next=4;break;}if(!(this.sessionState!==_types.SessionState.started)){_context9.next=3;break;}_context9.next=3;return this.start(_sessionRecorderCommon.SessionType.CONTINUOUS);case 3:_context9.next=5;break;case 4:if(!(state=='STOP')){_context9.next=5;break;}if(!(this.sessionState!==_types.SessionState.stopped)){_context9.next=5;break;}_context9.next=5;return this.stop();case 5:case"end":return _context9.stop();}},_callee9,this);}));function checkRemoteContinuousSession(_x3){return _checkRemoteContinuousSession.apply(this,arguments);}return checkRemoteContinuousSession;}())},{key:"_createSessionAndStart",value:(function(){var _createSessionAndStart2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee0(){var _a,signal,payload,request,session,_t5,_t6;return _regenerator["default"].wrap(function(_context0){while(1)switch(_context0.prev=_context0.next){case 0:signal=(_a=this._startRequestController)===null||_a===void 0?void 0:_a.signal;_context0.prev=1;payload={sessionAttributes:this.sessionAttributes,resourceAttributes:(0,_utils.getNavigatorInfo)(),name:this.sessionAttributes.userName?"".concat(this.sessionAttributes.userName,"'s session on ").concat((0,_utils.getFormattedDate)(Date.now(),{month:'short',day:'numeric'})):"Session on ".concat((0,_utils.getFormattedDate)(Date.now()))};request=!this.continuousRecording?payload:{debugSessionData:payload};if(!this.continuousRecording){_context0.next=3;break;}_context0.next=2;return this._apiService.startContinuousDebugSession(request,signal);case 2:_t5=_context0.sent;_context0.next=5;break;case 3:_context0.next=4;return this._apiService.startSession(request,signal);case 4:_t5=_context0.sent;case 5:session=_t5;if(session){session.sessionType=this.continuousRecording?_sessionRecorderCommon.SessionType.CONTINUOUS:_sessionRecorderCommon.SessionType.PLAIN;this._setupSessionAndStart(session,false);}_context0.next=7;break;case 6:_context0.prev=6;_t6=_context0["catch"](1);this.error=_t6.message;_utils.logger.error('SessionRecorder','Error creating session:',_t6.message);if(this.continuousRecording){this.sessionType=_sessionRecorderCommon.SessionType.PLAIN;}case 7:case"end":return _context0.stop();}},_callee0,this,[[1,6]]);}));function _createSessionAndStart(){return _createSessionAndStart2.apply(this,arguments);}return _createSessionAndStart;}())},{key:"_start",value:function _start(){this.sessionState=_types.SessionState.started;this.sessionType=this.sessionType;if(this.sessionId){this._tracer.start(this.sessionId,this.sessionType);this._recorder.start(this.sessionId,this.sessionType);}}},{key:"_stop",value:function _stop(){this.sessionState=_types.SessionState.stopped;this._tracer.shutdown();this._recorder.stop();}},{key:"_pause",value:function _pause(){this._tracer.shutdown();this._recorder.stop();this.sessionState=_types.SessionState.paused;}},{key:"_resume",value:function _resume(){if(this.sessionId){this._tracer.setSessionId(this.sessionId,this.sessionType);this._recorder.start(this.sessionId,this.sessionType);}this.sessionState=_types.SessionState.started;}},{key:"_setupSessionAndStart",value:function _setupSessionAndStart(session){var configureExporters=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(configureExporters&&session.tempApiKey){this._configs.apiKey=session.tempApiKey;this._tracer.setApiKey(session.tempApiKey);this._recorder.setApiKey(session.tempApiKey);this._apiService.setApiKey(session.tempApiKey);}this._setSession(session);this._start();}},{key:"_setSession",value:function _setSession(session){this.session=_objectSpread(_objectSpread({},session),{},{createdAt:session.createdAt||new Date().toISOString()});this.sessionId=(session===null||session===void 0?void 0:session.shortId)||(session===null||session===void 0?void 0:session._id);}},{key:"_clearSession",value:function _clearSession(){this.session=null;this.sessionId=null;this.sessionState=_types.SessionState.stopped;this._storageService.clearSessionData();}},{key:"_checkOperation",value:function _checkOperation(action,payload){if(!this._isInitialized){throw new Error('Configuration not initialized. Call init() before performing any actions.');}switch(action){case'start':if(this.sessionState===_types.SessionState.started){throw new Error('Session is already started.');}break;case'stop':if(this.sessionState!==_types.SessionState.paused&&this.sessionState!==_types.SessionState.started){throw new Error('Cannot stop. Session is not currently started.');}break;case'cancel':if(this.sessionState===_types.SessionState.stopped){throw new Error('Cannot cancel. Session has already been stopped.');}break;case'pause':if(this.sessionState!==_types.SessionState.started){throw new Error('Cannot pause. Session is not running.');}break;case'resume':if(this.sessionState!==_types.SessionState.paused){throw new Error('Cannot resume. Session is not paused.');}break;case'save':if(!this.continuousRecording){throw new Error('Cannot save continuous recording session. Continuous recording is not enabled.');}if(this.sessionState!==_types.SessionState.started){throw new Error('Cannot save continuous recording session. Session is not started.');}break;case'autoStartRemoteContinuousSession':if(this.sessionState!==_types.SessionState.stopped){throw new Error('Cannot start remote continuous session. Session is not stopped.');}break;}}},{key:"setSessionAttribute",value:function setSessionAttribute(key,value){if(this._session){if(!this._session.sessionAttributes){this._session.sessionAttributes={};}this._session.sessionAttributes[key]=value;this._session.updatedAt=new Date().toISOString();}}},{key:"recordEvent",value:function recordEvent(event){if(!this._isInitialized||this.sessionState!==_types.SessionState.started){return;}this._recorder.recordEvent(event);}},{key:"setViewShotRef",value:function setViewShotRef(ref){if(this._recorder){this._recorder.setViewShotRef(ref);}}},{key:"setNavigationRef",value:function setNavigationRef(ref){if(this._recorder){this._recorder.setNavigationRef(ref);}}}]);}(_observable.Observable);var _default=exports["default"]=new SessionRecorder();
@@ -1 +1 @@
1
- {"version":3,"file":"session-recorder.js","sourceRoot":"","sources":["../src/session-recorder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-recorder.js","sourceRoot":"","sources":["../src/session-recorder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ import { PropagateTraceHeaderCorsUrls } from '@opentelemetry/instrumentation-xml-http-request/build/src/types';
2
+ import { MaskingOptions, SessionRecorderOptions } from './session-recorder';
3
+ /**
4
+ * Utility type that makes all properties required recursively
5
+ * Removes optional modifiers and undefined types from nested objects
6
+ */
7
+ export type DeepRequired<T> = T extends Function ? T : T extends ReadonlyArray<infer U> ? Array<DeepRequired<NonNullable<U>>> : T extends Array<infer U> ? Array<DeepRequired<NonNullable<U>>> : T extends object ? {
8
+ -readonly [K in keyof T]-?: DeepRequired<NonNullable<T[K]>>;
9
+ } : NonNullable<T>;
10
+ /**
11
+ * Fully resolved configuration interface
12
+ * All optional properties from SessionRecorderOptions are now required
13
+ */
14
+ export interface SessionRecorderConfigs extends DeepRequired<SessionRecorderOptions> {
15
+ }
16
+ /**
17
+ * Base configuration interface with common properties
18
+ * Shared by all service configuration interfaces
19
+ */
20
+ export interface BaseConfig {
21
+ /** API key for authentication */
22
+ apiKey: string;
23
+ /** Base URL for the API calls */
24
+ apiBaseUrl: string;
25
+ /** OTLP collector endpoint for traces */
26
+ exporterEndpoint: string;
27
+ }
28
+ /**
29
+ * Type for masking configuration used by the Tracer
30
+ * Contains only trace-related masking options
31
+ */
32
+ export type TracerReactNativeMasking = Pick<MaskingOptions, 'isContentMaskingEnabled' | 'maskBody' | 'maskHeaders' | 'maskBodyFieldsList' | 'maskHeadersList' | 'headersToInclude' | 'headersToExclude'>;
33
+ /**
34
+ * Configuration interface for the Tracer class
35
+ * Contains all settings needed for OpenTelemetry tracing
36
+ */
37
+ export interface TracerReactNativeConfig extends BaseConfig {
38
+ /** Application name */
39
+ application: string;
40
+ /** Application version */
41
+ version: string;
42
+ /** Environment (e.g., 'production', 'staging') */
43
+ environment: string;
44
+ /** URLs to ignore during tracing */
45
+ ignoreUrls: Array<string | RegExp>;
46
+ /** Trace ID ratio for sampling */
47
+ sampleTraceRatio: number;
48
+ /** URLs for CORS trace header propagation */
49
+ propagateTraceHeaderCorsUrls: PropagateTraceHeaderCorsUrls;
50
+ /** Whether to schematize document span payload */
51
+ schemifyDocSpanPayload: boolean;
52
+ /** Maximum size for capturing HTTP payload */
53
+ maxCapturingHttpPayloadSize: number;
54
+ /** If true, captures body in traces */
55
+ captureBody: boolean;
56
+ /** If true, captures headers in traces */
57
+ captureHeaders: boolean;
58
+ /** Configuration for masking sensitive data in session recordings */
59
+ masking: TracerReactNativeMasking;
60
+ }
61
+ /**
62
+ * Type for masking configuration used by the Recorder
63
+ * Contains only screen recording masking options
64
+ */
65
+ export type RecorderMaskingConfig = Pick<MaskingOptions, 'maskTextInputs' | 'maskImages' | 'maskButtons' | 'maskLabels' | 'maskWebViews' | 'maskSandboxedViews'>;
66
+ /**
67
+ * Configuration interface for the Recorder class
68
+ * Contains settings for screen recording and gesture capture
69
+ */
70
+ export interface RecorderConfig extends BaseConfig {
71
+ /** Whether to record gestures */
72
+ recordGestures?: boolean;
73
+ /** Whether to record navigation */
74
+ recordNavigation?: boolean;
75
+ /** Whether to record screen */
76
+ recordScreen?: boolean;
77
+ /** Configuration for masking sensitive data in screen recordings */
78
+ masking?: RecorderMaskingConfig;
79
+ }
80
+ /**
81
+ * Configuration interface for the ApiService class
82
+ * Contains settings for API communication
83
+ */
84
+ export interface ApiServiceConfig extends BaseConfig {
85
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configs.js","sourceRoot":"","sources":["../../src/types/configs.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  export * from './session-recorder';
2
2
  export * from './session';
3
+ export * from './configs';
3
4
  import type { eventWithTime } from '@rrweb/types';
4
5
  export interface ReactNativeScreenData {
5
6
  width: number;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});var _sessionRecorder=require("./session-recorder");Object.keys(_sessionRecorder).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_sessionRecorder[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _sessionRecorder[key];}});});var _session=require("./session");Object.keys(_session).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_session[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _session[key];}});});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});var _sessionRecorder=require("./session-recorder");Object.keys(_sessionRecorder).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_sessionRecorder[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _sessionRecorder[key];}});});var _session=require("./session");Object.keys(_session).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_session[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _session[key];}});});var _configs=require("./configs");Object.keys(_configs).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_configs[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _configs[key];}});});
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA"}