@multiplayer-app/session-recorder-react-native 0.0.1-beta.2 → 0.0.1-beta.21

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 (245) hide show
  1. package/README.md +170 -12
  2. package/SessionRecorderNative.podspec +26 -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/dist/version.d.ts +1 -1
  170. package/dist/version.js +1 -1
  171. package/dist/version.js.map +1 -1
  172. package/ios/GestureRecorderNative.m +21 -0
  173. package/ios/GestureRecorderNative.swift +316 -0
  174. package/ios/SessionRecorderNative.m +17 -0
  175. package/ios/SessionRecorderNative.podspec +26 -0
  176. package/ios/SessionRecorderNative.swift +599 -0
  177. package/package.json +14 -12
  178. package/react-native.config.js +12 -0
  179. package/RRWEB_INTEGRATION.md +0 -336
  180. package/VIEWSHOT_INTEGRATION_TEST.md +0 -123
  181. package/babel.config.js +0 -13
  182. package/dist/components/GestureCaptureWrapper.d.ts +0 -6
  183. package/dist/components/GestureCaptureWrapper.js +0 -1
  184. package/dist/components/GestureCaptureWrapper.js.map +0 -1
  185. package/dist/expo.d.ts +0 -7
  186. package/dist/expo.js +0 -1
  187. package/dist/expo.js.map +0 -1
  188. package/dist/otel/instrumentations/gestureInstrumentation.d.ts +0 -15
  189. package/dist/otel/instrumentations/gestureInstrumentation.js +0 -1
  190. package/dist/otel/instrumentations/gestureInstrumentation.js.map +0 -1
  191. package/dist/otel/instrumentations/reactNativeInstrumentation.d.ts +0 -8
  192. package/dist/otel/instrumentations/reactNativeInstrumentation.js +0 -1
  193. package/dist/otel/instrumentations/reactNativeInstrumentation.js.map +0 -1
  194. package/dist/otel/instrumentations/reactNavigationInstrumentation.d.ts +0 -13
  195. package/dist/otel/instrumentations/reactNavigationInstrumentation.js +0 -1
  196. package/dist/otel/instrumentations/reactNavigationInstrumentation.js.map +0 -1
  197. package/dist/recorder/gestureHandlerRecorder.d.ts +0 -19
  198. package/dist/recorder/gestureHandlerRecorder.js +0 -1
  199. package/dist/recorder/gestureHandlerRecorder.js.map +0 -1
  200. package/dist/types/rrweb.d.ts +0 -118
  201. package/dist/types/rrweb.js +0 -1
  202. package/dist/types/rrweb.js.map +0 -1
  203. package/scripts/generate-app-metadata.js +0 -173
  204. package/src/components/GestureCaptureWrapper/GestureCaptureWrapper.tsx +0 -86
  205. package/src/components/GestureCaptureWrapper/index.ts +0 -1
  206. package/src/components/ScreenRecorderView/ScreenRecorderView.tsx +0 -72
  207. package/src/components/ScreenRecorderView/index.ts +0 -1
  208. package/src/components/index.ts +0 -1
  209. package/src/config/constants.ts +0 -60
  210. package/src/config/defaults.ts +0 -82
  211. package/src/config/index.ts +0 -6
  212. package/src/config/masking.ts +0 -27
  213. package/src/config/session-recorder.ts +0 -55
  214. package/src/config/validators.ts +0 -31
  215. package/src/context/SessionRecorderContext.tsx +0 -75
  216. package/src/expo.ts +0 -11
  217. package/src/index.ts +0 -17
  218. package/src/otel/helpers.ts +0 -275
  219. package/src/otel/index.ts +0 -138
  220. package/src/otel/instrumentations/index.ts +0 -115
  221. package/src/patch/index.ts +0 -1
  222. package/src/patch/xhr.ts +0 -142
  223. package/src/recorder/eventExporter.ts +0 -141
  224. package/src/recorder/gestureRecorder.ts +0 -498
  225. package/src/recorder/index.ts +0 -179
  226. package/src/recorder/navigationTracker.ts +0 -449
  227. package/src/recorder/screenRecorder.ts +0 -498
  228. package/src/services/api.service.ts +0 -203
  229. package/src/services/storage.service.ts +0 -158
  230. package/src/session-recorder.ts +0 -600
  231. package/src/types/expo.d.ts +0 -23
  232. package/src/types/index.ts +0 -28
  233. package/src/types/session-recorder.ts +0 -423
  234. package/src/types/session.ts +0 -65
  235. package/src/utils/app-metadata.ts +0 -31
  236. package/src/utils/index.ts +0 -8
  237. package/src/utils/logger.ts +0 -225
  238. package/src/utils/platform.ts +0 -384
  239. package/src/utils/request-utils.ts +0 -61
  240. package/src/utils/rrweb-events.ts +0 -309
  241. package/src/utils/session.ts +0 -18
  242. package/src/utils/time.ts +0 -17
  243. package/src/utils/type-utils.ts +0 -75
  244. package/src/version.ts +0 -1
  245. package/tsconfig.json +0 -24
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/utils/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/utils/platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { ViewHierarchyNode } from '../types';
2
+ /**
3
+ * Utility for extracting React Native component hierarchy
4
+ * This is a simplified implementation - in production you'd need more sophisticated methods
5
+ */
6
+ export declare class ReactNativeHierarchyExtractor {
7
+ private screenDimensions;
8
+ constructor(screenDimensions?: {
9
+ width: number;
10
+ height: number;
11
+ });
12
+ /**
13
+ * Extract component hierarchy from a React Native view
14
+ * Note: React Native doesn't expose the component tree directly.
15
+ * This implementation focuses on finding actual TextInput components.
16
+ */
17
+ extractHierarchy(viewRef: any): Promise<ViewHierarchyNode[]>;
18
+ /**
19
+ * Try to get component information from the view ref
20
+ */
21
+ private _getComponentInfo;
22
+ /**
23
+ * Try to get accessibility information
24
+ */
25
+ private _getAccessibilityInfo;
26
+ /**
27
+ * Try to find TextInput components using native methods
28
+ * This uses the component registry for registered components
29
+ */
30
+ private _findTextInputComponents;
31
+ /**
32
+ * Update screen dimensions
33
+ */
34
+ updateScreenDimensions(dimensions: {
35
+ width: number;
36
+ height: number;
37
+ }): void;
38
+ }
@@ -0,0 +1 @@
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ReactNativeHierarchyExtractor=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));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 _index=require("./index");var _componentRegistry=require("./componentRegistry");var ReactNativeHierarchyExtractor=exports.ReactNativeHierarchyExtractor=function(){function ReactNativeHierarchyExtractor(screenDimensions){(0,_classCallCheck2["default"])(this,ReactNativeHierarchyExtractor);this.screenDimensions=null;this.screenDimensions=screenDimensions||null;}return(0,_createClass2["default"])(ReactNativeHierarchyExtractor,[{key:"extractHierarchy",value:function(){var _extractHierarchy=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(viewRef){var hierarchy,componentInfo,accessibilityInfo,textInputs,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:hierarchy=[];_context.prev=1;_context.next=2;return this._getComponentInfo(viewRef);case 2:componentInfo=_context.sent;if(componentInfo){hierarchy.push(componentInfo);}_context.next=3;return this._getAccessibilityInfo(viewRef);case 3:accessibilityInfo=_context.sent;hierarchy.push.apply(hierarchy,(0,_toConsumableArray2["default"])(accessibilityInfo));_context.next=4;return this._findTextInputComponents(viewRef);case 4:textInputs=_context.sent;hierarchy.push.apply(hierarchy,(0,_toConsumableArray2["default"])(textInputs));_index.logger.debug('ReactNativeHierarchyExtractor',"Extracted ".concat(hierarchy.length," components"));return _context.abrupt("return",hierarchy);case 5:_context.prev=5;_t=_context["catch"](1);_index.logger.error('ReactNativeHierarchyExtractor','Failed to extract hierarchy:',_t);return _context.abrupt("return",[]);case 6:case"end":return _context.stop();}},_callee,this,[[1,5]]);}));function extractHierarchy(_x){return _extractHierarchy.apply(this,arguments);}return extractHierarchy;}()},{key:"_getComponentInfo",value:function(){var _getComponentInfo2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(viewRef){var componentInfo,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;if(!(!viewRef||!viewRef._nativeTag)){_context2.next=1;break;}return _context2.abrupt("return",null);case 1:componentInfo={type:'View',props:{},bounds:{x:0,y:0,width:0,height:0},id:"component-".concat(viewRef._nativeTag),masked:false};if(!viewRef.measure){_context2.next=2;break;}_context2.next=2;return new Promise(function(resolve){viewRef.measure(function(x,y,width,height,pageX,pageY){componentInfo.bounds={x:pageX,y:pageY,width:width,height:height};resolve();});});case 2:return _context2.abrupt("return",componentInfo);case 3:_context2.prev=3;_t2=_context2["catch"](0);_index.logger.debug('ReactNativeHierarchyExtractor','Failed to get component info:',_t2);return _context2.abrupt("return",null);case 4:case"end":return _context2.stop();}},_callee2,null,[[0,3]]);}));function _getComponentInfo(_x2){return _getComponentInfo2.apply(this,arguments);}return _getComponentInfo;}()},{key:"_getAccessibilityInfo",value:function(){var _getAccessibilityInfo2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(viewRef){var components;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:components=[];try{_index.logger.debug('ReactNativeHierarchyExtractor','Accessibility info extraction not implemented');}catch(error){_index.logger.debug('ReactNativeHierarchyExtractor','Failed to get accessibility info:',error);}return _context3.abrupt("return",components);case 1:case"end":return _context3.stop();}},_callee3);}));function _getAccessibilityInfo(_x3){return _getAccessibilityInfo2.apply(this,arguments);}return _getAccessibilityInfo;}()},{key:"_findTextInputComponents",value:function(){var _findTextInputComponents2=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(viewRef){var registeredComponents,_t3;return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;registeredComponents=_componentRegistry.componentRegistry.getMaskableComponents();_index.logger.debug('ReactNativeHierarchyExtractor',"Found ".concat(registeredComponents.length," registered components"));return _context4.abrupt("return",registeredComponents);case 1:_context4.prev=1;_t3=_context4["catch"](0);_index.logger.error('ReactNativeHierarchyExtractor','Failed to find TextInput components:',_t3);return _context4.abrupt("return",[]);case 2:case"end":return _context4.stop();}},_callee4,null,[[0,1]]);}));function _findTextInputComponents(_x4){return _findTextInputComponents2.apply(this,arguments);}return _findTextInputComponents;}()},{key:"updateScreenDimensions",value:function updateScreenDimensions(dimensions){this.screenDimensions=dimensions;}}]);}();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactNativeHierarchyExtractor.js","sourceRoot":"","sources":["../../src/utils/reactNativeHierarchyExtractor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;GAGG;AACH,MAAM,OAAO,6BAA6B;IAGxC,YAAY,gBAAoD;QAFxD,qBAAgB,GAA6C,IAAI,CAAA;QAGvE,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,IAAI,IAAI,CAAA;IAClD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAY;QACjC,MAAM,SAAS,GAAwB,EAAE,CAAA;QAEzC,IAAI,CAAC;YACH,mDAAmD;YACnD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;YAC3D,IAAI,aAAa,EAAE,CAAC;gBAClB,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAC/B,CAAC;YAED,gDAAgD;YAChD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACnE,SAAS,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAA;YAEpC,kEAAkE;YAClE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAA;YAC/D,SAAS,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAA;YAE7B,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,aAAa,SAAS,CAAC,MAAM,aAAa,CAAC,CAAA;YACzF,OAAO,SAAS,CAAA;QAElB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,8BAA8B,EAAE,KAAK,CAAC,CAAA;YACpF,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAAC,OAAY;QAC1C,IAAI,CAAC;YACH,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAA;YACb,CAAC;YAED,2BAA2B;YAC3B,MAAM,aAAa,GAAsB;gBACvC,IAAI,EAAE,MAAM,EAAE,eAAe;gBAC7B,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;gBAC3C,EAAE,EAAE,aAAa,OAAO,CAAC,UAAU,EAAE;gBACrC,MAAM,EAAE,KAAK;aACd,CAAA;YAED,kCAAkC;YAClC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;oBAClC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc,EAAE,KAAa,EAAE,KAAa,EAAE,EAAE;wBACpG,aAAa,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;wBAC5D,OAAO,EAAE,CAAA;oBACX,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;YACJ,CAAC;YAED,OAAO,aAAa,CAAA;QAEtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,+BAA+B,EAAE,KAAK,CAAC,CAAA;YACrF,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,qBAAqB,CAAC,OAAY;QAC9C,MAAM,UAAU,GAAwB,EAAE,CAAA;QAE1C,IAAI,CAAC;YACH,iEAAiE;YACjE,+DAA+D;YAC/D,8CAA8C;YAE9C,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,+CAA+C,CAAC,CAAA;QAEhG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,mCAAmC,EAAE,KAAK,CAAC,CAAA;QAC3F,CAAC;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,wBAAwB,CAAC,OAAY;QACjD,IAAI,CAAC;YACH,sDAAsD;YACtD,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,qBAAqB,EAAE,CAAA;YAEtE,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,SAAS,oBAAoB,CAAC,MAAM,wBAAwB,CAAC,CAAA;YAE3G,OAAO,oBAAoB,CAAA;QAE7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,sCAAsC,EAAE,KAAK,CAAC,CAAA;YAC5F,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,UAA6C;QAClE,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAA;IACpC,CAAC;CACF"}
@@ -14,19 +14,20 @@ export declare function createRecordingMetaEvent(): eventWithTime;
14
14
  * @param height - Screen height
15
15
  * @param captureFormat - Image format (png, jpg, etc.)
16
16
  * @param nodeIdCounter - Starting node ID counter (will be modified)
17
+ * @param timestamp - Optional timestamp to use for the event
17
18
  * @returns Full snapshot event
18
19
  */
19
20
  export declare function createFullSnapshotEvent(base64Image: string, width: number, height: number, captureFormat: string | undefined, nodeIdCounter: {
20
21
  current: number;
21
- }): eventWithTime;
22
+ }, timestamp?: number): eventWithTime;
22
23
  /**
23
24
  * Create an incremental snapshot event with mutation data to update image src
24
25
  * @param base64Image - New base64 encoded image data
25
- * @param imageNodeId - ID of the image node to update
26
26
  * @param captureFormat - Image format (png, jpg, etc.)
27
+ * @param timestamp - Optional timestamp to use for the event
27
28
  * @returns Incremental snapshot event with mutation data
28
29
  */
29
- export declare function createIncrementalSnapshotWithImageUpdate(base64Image: string, captureFormat?: string): eventWithTime;
30
+ export declare function createIncrementalSnapshotWithImageUpdate(base64Image: string, captureFormat?: string, timestamp?: number): eventWithTime;
30
31
  /**
31
32
  * Create a simple image node for React Native screen capture
32
33
  * @param base64Image - Base64 encoded image data
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.createDocumentNode=createDocumentNode;exports.createFullSnapshotEvent=createFullSnapshotEvent;exports.createImageNode=createImageNode;exports.createIncrementalSnapshotWithImageUpdate=createIncrementalSnapshotWithImageUpdate;exports.createRecordingMetaEvent=createRecordingMetaEvent;exports.generateScreenHash=generateScreenHash;exports.simpleHash=simpleHash;var _reactNative=require("react-native");var _types=require("@rrweb/types");function createRecordingMetaEvent(){var screenDimensions=_reactNative.Dimensions.get('window');return{type:_types.EventType.Meta,data:{href:'https://go.multiplayer.app/session-recorder-react-native',width:screenDimensions.width,height:screenDimensions.height},timestamp:Date.now()};}function createFullSnapshotEvent(base64Image,width,height){var captureFormat=arguments.length>3&&arguments[3]!==undefined?arguments[3]:'jpg';var nodeIdCounter=arguments.length>4?arguments[4]:undefined;var imageNode={type:_types.NodeType.Element,id:0,tagName:'img',attributes:{src:"data:image/".concat(captureFormat,";base64,").concat(base64Image),width:width.toString(),height:height.toString(),style:"width: ".concat(width,"px; height: ").concat(height,"px;")},childNodes:[]};var rootNode={type:_types.NodeType.Element,id:nodeIdCounter.current++,tagName:'div',attributes:{style:"width: ".concat(width,"px; height: ").concat(height,"px; position: relative;")},childNodes:[imageNode]};var domNode={type:_types.NodeType.Document,childNodes:[{type:_types.NodeType.DocumentType,name:'html',publicId:'',systemId:'',id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'html',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'head',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'meta',attributes:{charset:'utf-8'},childNodes:[],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'meta',attributes:{name:'viewport',content:'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no'},childNodes:[],id:nodeIdCounter.current++}],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'body',attributes:{},childNodes:[rootNode],id:nodeIdCounter.current++}],id:nodeIdCounter.current++}],id:nodeIdCounter.current++};return{type:_types.EventType.FullSnapshot,data:{node:domNode,initialOffset:{left:0,top:0}},timestamp:Date.now()};}function createIncrementalSnapshotWithImageUpdate(base64Image){var captureFormat=arguments.length>1&&arguments[1]!==undefined?arguments[1]:'jpg';var mutationData={source:_types.IncrementalSource.Mutation,texts:[],attributes:[{id:0,attributes:{src:"data:image/".concat(captureFormat,";base64,").concat(base64Image)}}],removes:[],adds:[]};return{type:_types.EventType.IncrementalSnapshot,data:mutationData,timestamp:Date.now()};}function createImageNode(base64Image,width,height){var captureFormat=arguments.length>3&&arguments[3]!==undefined?arguments[3]:'jpg';var nodeId=arguments.length>4?arguments[4]:undefined;return{type:_types.NodeType.Element,id:nodeId,tagName:'img',attributes:{src:"data:image/".concat(captureFormat,";base64,").concat(base64Image),width:width.toString(),height:height.toString(),style:"width: ".concat(width,"px; height: ").concat(height,"px;")},childNodes:[]};}function createDocumentNode(imageNode,width,height,nodeIdCounter){var rootNode={type:_types.NodeType.Element,id:nodeIdCounter.current++,tagName:'div',attributes:{style:"width: ".concat(width,"px; height: ").concat(height,"px; position: relative;")},childNodes:[imageNode]};return{type:_types.NodeType.Document,childNodes:[{type:_types.NodeType.DocumentType,name:'html',publicId:'',systemId:'',id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'html',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'head',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'meta',attributes:{charset:'utf-8'},childNodes:[],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'meta',attributes:{name:'viewport',content:'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no'},childNodes:[],id:nodeIdCounter.current++}],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'body',attributes:{},childNodes:[rootNode],id:nodeIdCounter.current++}],id:nodeIdCounter.current++}],id:nodeIdCounter.current++};}function generateScreenHash(base64Image){var sampleSize=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;var start=base64Image.substring(0,sampleSize);var middle=base64Image.substring(Math.floor(base64Image.length/2)-sampleSize/2,Math.floor(base64Image.length/2)+sampleSize/2);var end=base64Image.substring(base64Image.length-sampleSize);var combined=start+middle+end;return simpleHash(combined);}function simpleHash(str){var hash=0;for(var i=0;i<str.length;i++){var _char=str.charCodeAt(i);hash=(hash<<5)-hash+_char;hash=hash&hash;}return Math.abs(hash).toString(36);}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.createDocumentNode=createDocumentNode;exports.createFullSnapshotEvent=createFullSnapshotEvent;exports.createImageNode=createImageNode;exports.createIncrementalSnapshotWithImageUpdate=createIncrementalSnapshotWithImageUpdate;exports.createRecordingMetaEvent=createRecordingMetaEvent;exports.generateScreenHash=generateScreenHash;exports.simpleHash=simpleHash;var _reactNative=require("react-native");var _types=require("@rrweb/types");var _platform=require("./platform");function createRecordingMetaEvent(){var screenDimensions=_reactNative.Dimensions.get('window');var metadata=(0,_platform.getAppMetadata)();return{type:_types.EventType.Meta,data:{href:metadata.bundleId||metadata.name||'https://native.multiplayer.app',width:screenDimensions.width,height:screenDimensions.height},timestamp:Date.now()};}function createFullSnapshotEvent(base64Image,width,height){var captureFormat=arguments.length>3&&arguments[3]!==undefined?arguments[3]:'jpg';var nodeIdCounter=arguments.length>4?arguments[4]:undefined;var timestamp=arguments.length>5?arguments[5]:undefined;var imageNode={type:_types.NodeType.Element,id:0,tagName:'img',attributes:{src:"data:image/".concat(captureFormat,";base64,").concat(base64Image),width:width.toString(),height:height.toString(),style:"width: ".concat(width,"px; height: ").concat(height,"px;")},childNodes:[]};var rootNode={type:_types.NodeType.Element,id:nodeIdCounter.current++,tagName:'div',attributes:{style:"width: ".concat(width,"px; height: ").concat(height,"px; position: relative;")},childNodes:[imageNode]};var domNode={type:_types.NodeType.Document,childNodes:[{type:_types.NodeType.DocumentType,name:'html',publicId:'',systemId:'',id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'html',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'head',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'meta',attributes:{charset:'utf-8'},childNodes:[],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'meta',attributes:{name:'viewport',content:'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no'},childNodes:[],id:nodeIdCounter.current++}],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'body',attributes:{style:'margin: 0; padding: 0; width: 100%; height: 100%;'},childNodes:[rootNode],id:nodeIdCounter.current++}],id:nodeIdCounter.current++}],id:nodeIdCounter.current++};return{type:_types.EventType.FullSnapshot,data:{node:domNode,initialOffset:{left:0,top:0}},timestamp:timestamp||Date.now()};}function createIncrementalSnapshotWithImageUpdate(base64Image){var captureFormat=arguments.length>1&&arguments[1]!==undefined?arguments[1]:'jpg';var timestamp=arguments.length>2?arguments[2]:undefined;var mutationData={source:_types.IncrementalSource.Mutation,texts:[],attributes:[{id:0,attributes:{src:"data:image/".concat(captureFormat,";base64,").concat(base64Image)}}],removes:[],adds:[]};return{type:_types.EventType.IncrementalSnapshot,data:mutationData,timestamp:timestamp||Date.now()};}function createImageNode(base64Image,width,height){var captureFormat=arguments.length>3&&arguments[3]!==undefined?arguments[3]:'jpg';var nodeId=arguments.length>4?arguments[4]:undefined;return{type:_types.NodeType.Element,id:nodeId,tagName:'img',attributes:{src:"data:image/".concat(captureFormat,";base64,").concat(base64Image),width:width.toString(),height:height.toString(),style:"width: ".concat(width,"px; height: ").concat(height,"px;")},childNodes:[]};}function createDocumentNode(imageNode,width,height,nodeIdCounter){var rootNode={type:_types.NodeType.Element,id:nodeIdCounter.current++,tagName:'div',attributes:{style:"width: ".concat(width,"px; height: ").concat(height,"px; position: relative;")},childNodes:[imageNode]};return{type:_types.NodeType.Document,childNodes:[{type:_types.NodeType.DocumentType,name:'html',publicId:'',systemId:'',id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'html',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'head',attributes:{},childNodes:[{type:_types.NodeType.Element,tagName:'meta',attributes:{charset:'utf-8'},childNodes:[],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'meta',attributes:{name:'viewport',content:'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no'},childNodes:[],id:nodeIdCounter.current++}],id:nodeIdCounter.current++},{type:_types.NodeType.Element,tagName:'body',attributes:{},childNodes:[rootNode],id:nodeIdCounter.current++}],id:nodeIdCounter.current++}],id:nodeIdCounter.current++};}function generateScreenHash(base64Image){var sampleSize=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;var start=base64Image.substring(0,sampleSize);var middle=base64Image.substring(Math.floor(base64Image.length/2)-sampleSize/2,Math.floor(base64Image.length/2)+sampleSize/2);var end=base64Image.substring(base64Image.length-sampleSize);var combined=start+middle+end;return simpleHash(combined);}function simpleHash(str){var hash=0;for(var i=0;i<str.length;i++){var _char=str.charCodeAt(i);hash=(hash<<5)-hash+_char;hash=hash&hash;}return Math.abs(hash).toString(36);}
@@ -1 +1 @@
1
- {"version":3,"file":"rrweb-events.js","sourceRoot":"","sources":["../../src/utils/rrweb-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rrweb-events.js","sourceRoot":"","sources":["../../src/utils/rrweb-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,96 @@
1
+ import { MaskRegion, ScreenshotMaskingConfig } from '../types';
2
+ /**
3
+ * Class for applying masking to screenshots
4
+ */
5
+ export declare class ScreenshotMasker {
6
+ private config;
7
+ private screenDimensions;
8
+ constructor(config: ScreenshotMaskingConfig, screenDimensions?: {
9
+ width: number;
10
+ height: number;
11
+ });
12
+ /**
13
+ * Apply masking to a base64 screenshot
14
+ * @param base64Image - Base64 encoded image
15
+ * @param regions - Regions to mask
16
+ * @returns Masked base64 image
17
+ */
18
+ maskScreenshot(base64Image: string, regions: MaskRegion[]): Promise<string>;
19
+ /**
20
+ * Apply default masking to the image
21
+ * @param base64Image - Base64 encoded image
22
+ * @param regions - Regions to mask
23
+ * @returns Masked base64 image
24
+ */
25
+ private applyDefaultMasking;
26
+ /**
27
+ * Apply blackout masking (solid color overlay)
28
+ * @param base64Image - Base64 encoded image
29
+ * @param regions - Regions to mask
30
+ * @returns Masked base64 image
31
+ */
32
+ private applyBlackoutMasking;
33
+ /**
34
+ * Apply blur masking
35
+ * @param base64Image - Base64 encoded image
36
+ * @param regions - Regions to mask
37
+ * @returns Masked base64 image
38
+ */
39
+ private applyBlurMasking;
40
+ /**
41
+ * Apply pixelate masking
42
+ * @param base64Image - Base64 encoded image
43
+ * @param regions - Regions to mask
44
+ * @returns Masked base64 image
45
+ */
46
+ private applyPixelateMasking;
47
+ /**
48
+ * Convert base64 to image data
49
+ * @param base64Image - Base64 encoded image
50
+ * @returns Image data object
51
+ */
52
+ private base64ToImageData;
53
+ /**
54
+ * Convert image data to base64
55
+ * @param imageData - Image data object
56
+ * @returns Base64 encoded image
57
+ */
58
+ private imageDataToBase64;
59
+ /**
60
+ * Apply blackout to a specific region
61
+ * @param imageData - Image data
62
+ * @param region - Region to blackout
63
+ */
64
+ private blackoutRegion;
65
+ /**
66
+ * Detect input fields using heuristics
67
+ * @param base64Image - Base64 encoded image
68
+ * @returns Array of detected mask regions
69
+ */
70
+ detectInputFields(base64Image: string): Promise<MaskRegion[]>;
71
+ /**
72
+ * Find rectangular regions in the image
73
+ * @param imageData - Image data
74
+ * @returns Array of rectangular regions
75
+ */
76
+ private findRectangularRegions;
77
+ /**
78
+ * Check if a region is likely an input field
79
+ * @param region - Region to check
80
+ * @returns true if likely an input field
81
+ */
82
+ private isLikelyInputField;
83
+ /**
84
+ * Update configuration
85
+ * @param config - New configuration
86
+ */
87
+ updateConfig(config: ScreenshotMaskingConfig): void;
88
+ /**
89
+ * Update screen dimensions
90
+ * @param dimensions - Screen dimensions
91
+ */
92
+ updateScreenDimensions(dimensions: {
93
+ width: number;
94
+ height: number;
95
+ }): void;
96
+ }
@@ -0,0 +1 @@
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ScreenshotMasker=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 _index=require("./index");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 _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n=0,F=function F(){};return{s:F,n:function n(){return _n>=r.length?{done:!0}:{done:!1,value:r[_n++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}var ScreenshotMasker=exports.ScreenshotMasker=function(){function ScreenshotMasker(config,screenDimensions){(0,_classCallCheck2["default"])(this,ScreenshotMasker);this.screenDimensions=null;this.config=config;this.screenDimensions=screenDimensions||null;}return(0,_createClass2["default"])(ScreenshotMasker,[{key:"maskScreenshot",value:function(){var _maskScreenshot=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(base64Image,regions){var _t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!(!this.config.enabled||regions.length===0)){_context.next=1;break;}return _context.abrupt("return",base64Image);case 1:_context.prev=1;if(!this.config.maskScreenshot){_context.next=3;break;}_context.next=2;return this.config.maskScreenshot(base64Image,regions);case 2:return _context.abrupt("return",_context.sent);case 3:_context.next=4;return this.applyDefaultMasking(base64Image,regions);case 4:return _context.abrupt("return",_context.sent);case 5:_context.prev=5;_t=_context["catch"](1);_index.logger.error('ScreenshotMasker','Failed to mask screenshot:',_t);return _context.abrupt("return",base64Image);case 6:case"end":return _context.stop();}},_callee,this,[[1,5]]);}));function maskScreenshot(_x,_x2){return _maskScreenshot.apply(this,arguments);}return maskScreenshot;}()},{key:"applyDefaultMasking",value:function(){var _applyDefaultMasking=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(base64Image,regions){var maskType,_t2;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:maskType=this.config.maskType||'blackout';_t2=maskType;_context2.next=_t2==='blur'?1:_t2==='pixelate'?3:_t2==='blackout'?5:5;break;case 1:_context2.next=2;return this.applyBlurMasking(base64Image,regions);case 2:return _context2.abrupt("return",_context2.sent);case 3:_context2.next=4;return this.applyPixelateMasking(base64Image,regions);case 4:return _context2.abrupt("return",_context2.sent);case 5:_context2.next=6;return this.applyBlackoutMasking(base64Image,regions);case 6:return _context2.abrupt("return",_context2.sent);case 7:case"end":return _context2.stop();}},_callee2,this);}));function applyDefaultMasking(_x3,_x4){return _applyDefaultMasking.apply(this,arguments);}return applyDefaultMasking;}()},{key:"applyBlackoutMasking",value:function(){var _applyBlackoutMasking=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(base64Image,regions){var imageData,_iterator,_step,region;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=1;return this.base64ToImageData(base64Image);case 1:imageData=_context3.sent;_iterator=_createForOfIteratorHelper(regions);try{for(_iterator.s();!(_step=_iterator.n()).done;){region=_step.value;this.blackoutRegion(imageData,region);}}catch(err){_iterator.e(err);}finally{_iterator.f();}_context3.next=2;return this.imageDataToBase64(imageData);case 2:return _context3.abrupt("return",_context3.sent);case 3:case"end":return _context3.stop();}},_callee3,this);}));function applyBlackoutMasking(_x5,_x6){return _applyBlackoutMasking.apply(this,arguments);}return applyBlackoutMasking;}()},{key:"applyBlurMasking",value:function(){var _applyBlurMasking=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(base64Image,regions){return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_index.logger.warn('ScreenshotMasker','Blur masking not implemented, using blackout');_context4.next=1;return this.applyBlackoutMasking(base64Image,regions);case 1:return _context4.abrupt("return",_context4.sent);case 2:case"end":return _context4.stop();}},_callee4,this);}));function applyBlurMasking(_x7,_x8){return _applyBlurMasking.apply(this,arguments);}return applyBlurMasking;}()},{key:"applyPixelateMasking",value:function(){var _applyPixelateMasking=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(base64Image,regions){return _regenerator["default"].wrap(function(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_index.logger.warn('ScreenshotMasker','Pixelate masking not implemented, using blackout');_context5.next=1;return this.applyBlackoutMasking(base64Image,regions);case 1:return _context5.abrupt("return",_context5.sent);case 2:case"end":return _context5.stop();}},_callee5,this);}));function applyPixelateMasking(_x9,_x0){return _applyPixelateMasking.apply(this,arguments);}return applyPixelateMasking;}()},{key:"base64ToImageData",value:function(){var _base64ToImageData=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee6(base64Image){var _a,_b;return _regenerator["default"].wrap(function(_context6){while(1)switch(_context6.prev=_context6.next){case 0:return _context6.abrupt("return",{data:base64Image,width:((_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width)||400,height:((_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height)||800});case 1:case"end":return _context6.stop();}},_callee6,this);}));function base64ToImageData(_x1){return _base64ToImageData.apply(this,arguments);}return base64ToImageData;}()},{key:"imageDataToBase64",value:function(){var _imageDataToBase=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee7(imageData){return _regenerator["default"].wrap(function(_context7){while(1)switch(_context7.prev=_context7.next){case 0:return _context7.abrupt("return",imageData.data);case 1:case"end":return _context7.stop();}},_callee7);}));function imageDataToBase64(_x10){return _imageDataToBase.apply(this,arguments);}return imageDataToBase64;}()},{key:"blackoutRegion",value:function blackoutRegion(imageData,region){_index.logger.debug('ScreenshotMasker',"Blacking out region: ".concat(region.x,", ").concat(region.y,", ").concat(region.width,"x").concat(region.height));}},{key:"detectInputFields",value:function(){var _detectInputFields=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee8(base64Image){var imageData,regions,candidates,_iterator2,_step2,candidate,_t3;return _regenerator["default"].wrap(function(_context8){while(1)switch(_context8.prev=_context8.next){case 0:if(!(!this.config.maskAllInputs&&this.config.detectionMethod!=='heuristic')){_context8.next=1;break;}return _context8.abrupt("return",[]);case 1:_context8.prev=1;_context8.next=2;return this.base64ToImageData(base64Image);case 2:imageData=_context8.sent;regions=[];_context8.next=3;return this.findRectangularRegions(imageData);case 3:candidates=_context8.sent;_iterator2=_createForOfIteratorHelper(candidates);try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){candidate=_step2.value;if(this.isLikelyInputField(candidate)){regions.push({x:candidate.x,y:candidate.y,width:candidate.width,height:candidate.height,type:this.config.maskType||'blackout',confidence:candidate.confidence});}}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}_index.logger.debug('ScreenshotMasker',"Detected ".concat(regions.length," input fields"));return _context8.abrupt("return",regions);case 4:_context8.prev=4;_t3=_context8["catch"](1);_index.logger.error('ScreenshotMasker','Failed to detect input fields:',_t3);return _context8.abrupt("return",[]);case 5:case"end":return _context8.stop();}},_callee8,this,[[1,4]]);}));function detectInputFields(_x11){return _detectInputFields.apply(this,arguments);}return detectInputFields;}()},{key:"findRectangularRegions",value:function(){var _findRectangularRegions=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee9(imageData){var regions,_this$screenDimension,width,height,commonPositions,_i,_commonPositions,pos;return _regenerator["default"].wrap(function(_context9){while(1)switch(_context9.prev=_context9.next){case 0:regions=[];if(this.screenDimensions){_this$screenDimension=this.screenDimensions,width=_this$screenDimension.width,height=_this$screenDimension.height;commonPositions=[{x:width*0.1,y:height*0.3,width:width*0.8,height:40},{x:width*0.1,y:height*0.4,width:width*0.8,height:40},{x:width*0.1,y:height*0.5,width:width*0.8,height:40},{x:width*0.1,y:height*0.6,width:width*0.8,height:40}];for(_i=0,_commonPositions=commonPositions;_i<_commonPositions.length;_i++){pos=_commonPositions[_i];regions.push(_objectSpread(_objectSpread({},pos),{},{confidence:0.7}));}}return _context9.abrupt("return",regions);case 1:case"end":return _context9.stop();}},_callee9,this);}));function findRectangularRegions(_x12){return _findRectangularRegions.apply(this,arguments);}return findRectangularRegions;}()},{key:"isLikelyInputField",value:function isLikelyInputField(region){if(region.width<80||region.width>400)return false;if(region.height<20||region.height>60)return false;var aspectRatio=region.width/region.height;if(aspectRatio<2||aspectRatio>10)return false;if(this.screenDimensions){var height=this.screenDimensions.height;var isInCommonArea=region.y>height*0.2&&region.y<height*0.8;if(!isInCommonArea)return false;}var confidence=this.config.confidence||0.5;if(region.confidence<confidence)return false;return true;}},{key:"updateConfig",value:function updateConfig(config){this.config=config;}},{key:"updateScreenDimensions",value:function updateScreenDimensions(dimensions){this.screenDimensions=dimensions;}}]);}();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screenshotMasker.js","sourceRoot":"","sources":["../../src/utils/screenshotMasker.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
+ import { SessionType } from '@multiplayer-app/session-recorder-common';
1
2
  /**
2
3
  * Session-related utility functions for React Native
3
4
  */
4
- export declare const isSessionActive: (session: any, continuousRecording: boolean) => boolean;
5
+ export declare const isSessionActive: (session: any, sessionType: SessionType | null) => boolean;
5
6
  export declare const isConsoleEvent: (event: any) => boolean;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.isSessionActive=exports.isConsoleEvent=void 0;var _constants=require("../config/constants");var isSessionActive=exports.isSessionActive=function isSessionActive(session,continuousRecording){if(!session)return false;if(continuousRecording)return true;var startedAt=new Date(session.startedAt||session.createdAt);var now=new Date();var diff=now.getTime()-startedAt.getTime();return diff<_constants.DEBUG_SESSION_MAX_DURATION_SECONDS*1000;};var isConsoleEvent=exports.isConsoleEvent=function isConsoleEvent(event){var _a;return event.type==='Plugin'&&((_a=event.data)===null||_a===void 0?void 0:_a.plugin)==='rrweb/console@1';};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.isSessionActive=exports.isConsoleEvent=void 0;var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _constants=require("../config/constants");var isSessionActive=exports.isSessionActive=function isSessionActive(session,sessionType){if(!session)return false;if(sessionType===_sessionRecorderCommon.SessionType.CONTINUOUS)return true;var startedAt=new Date(session.startedAt||session.createdAt);var now=new Date();var diff=now.getTime()-startedAt.getTime();return diff<_constants.DEBUG_SESSION_MAX_DURATION_SECONDS*1000;};var isConsoleEvent=exports.isConsoleEvent=function isConsoleEvent(event){var _a;return event.type==='Plugin'&&((_a=event.data)===null||_a===void 0?void 0:_a.plugin)==='rrweb/console@1';};
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/utils/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,qBAAqB,CAAA;AAExE;;GAEG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAY,EAAE,mBAA4B,EAAW,EAAE;IACrF,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC1B,IAAI,mBAAmB;QAAE,OAAO,IAAI,CAAA;IACpC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,CAAA;IAClE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;IACtB,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAA;IAChD,OAAO,IAAI,GAAG,kCAAkC,GAAG,IAAI,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAU,EAAW,EAAE;;IACpD,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,MAAM,MAAK,iBAAiB,CAAA;AAC5E,CAAC,CAAA"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/utils/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AACtE,OAAO,EAAE,kCAAkC,EAAE,MAAM,qBAAqB,CAAA;AAExE;;GAEG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAY,EAAE,WAA+B,EAAW,EAAE;IACxF,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC1B,IAAI,WAAW,KAAK,WAAW,CAAC,UAAU;QAAE,OAAO,IAAI,CAAA;IACvD,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,CAAA;IAClE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;IACtB,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAA;IAChD,OAAO,IAAI,GAAG,kCAAkC,GAAG,IAAI,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAU,EAAW,EAAE;;IACpD,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,MAAM,MAAK,iBAAiB,CAAA;AAC5E,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export declare function shallowEqual<T extends Record<string, any>>(a: T, b: T): boolean;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.shallowEqual=shallowEqual;function shallowEqual(a,b){if(Object.is(a,b))return true;if(!a||!b)return false;var aKeys=Object.keys(a);var bKeys=Object.keys(b);if(aKeys.length!==bKeys.length)return false;for(var i=0;i<aKeys.length;i++){var key=aKeys[i];if(!Object.prototype.hasOwnProperty.call(b,key)||!Object.is(a[key],b[key])){return false;}}return true;}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shallowEqual.js","sourceRoot":"","sources":["../../src/utils/shallowEqual.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,YAAY,CAAgC,CAAI,EAAE,CAAI;IACpE,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAChC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACpB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAChF,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -0,0 +1,89 @@
1
+ import { ViewHierarchyNode, MaskRegion } from '../types';
2
+ /**
3
+ * Class for tracking view hierarchy and detecting elements that should be masked
4
+ */
5
+ export declare class ViewHierarchyTracker {
6
+ private hierarchy;
7
+ private maskedElements;
8
+ private screenDimensions;
9
+ constructor(screenDimensions?: {
10
+ width: number;
11
+ height: number;
12
+ });
13
+ /**
14
+ * Update the view hierarchy
15
+ * @param hierarchy - The current view hierarchy
16
+ */
17
+ updateHierarchy(hierarchy: ViewHierarchyNode[]): void;
18
+ /**
19
+ * Extract elements that should be masked from the hierarchy
20
+ */
21
+ private extractMaskedElements;
22
+ /**
23
+ * Traverse the hierarchy tree to find masked elements
24
+ * @param nodes - Array of hierarchy nodes
25
+ */
26
+ private traverseHierarchy;
27
+ /**
28
+ * Determine if an element should be masked
29
+ * @param node - The hierarchy node to check
30
+ * @returns true if the element should be masked
31
+ */
32
+ private shouldMaskElement;
33
+ /**
34
+ * Check if a node represents an input field
35
+ * @param node - The hierarchy node to check
36
+ * @returns true if the node is an input field
37
+ */
38
+ private isInputField;
39
+ /**
40
+ * Check if a node has sensitive data markers
41
+ * @param node - The hierarchy node to check
42
+ * @returns true if the node has sensitive data markers
43
+ */
44
+ private hasSensitiveDataMarker;
45
+ /**
46
+ * Get mask regions from the current hierarchy
47
+ * @returns Array of mask regions
48
+ */
49
+ getMaskRegions(): MaskRegion[];
50
+ /**
51
+ * Traverse hierarchy to collect mask regions
52
+ * @param nodes - Array of hierarchy nodes
53
+ * @param regions - Array to collect mask regions
54
+ */
55
+ private traverseHierarchyForRegions;
56
+ /**
57
+ * Add a manual mask region
58
+ * @param region - The region to mask
59
+ */
60
+ addManualRegion(region: MaskRegion): void;
61
+ /**
62
+ * Clear all mask regions
63
+ */
64
+ clearRegions(): void;
65
+ /**
66
+ * Get the current hierarchy
67
+ * @returns Current view hierarchy
68
+ */
69
+ getHierarchy(): ViewHierarchyNode[];
70
+ /**
71
+ * Get masked element IDs
72
+ * @returns Set of masked element IDs
73
+ */
74
+ getMaskedElements(): Set<string>;
75
+ /**
76
+ * Update screen dimensions
77
+ * @param dimensions - Screen dimensions
78
+ */
79
+ updateScreenDimensions(dimensions: {
80
+ width: number;
81
+ height: number;
82
+ }): void;
83
+ /**
84
+ * Check if an element is masked by ID
85
+ * @param elementId - Element ID to check
86
+ * @returns true if the element is masked
87
+ */
88
+ isElementMasked(elementId: string): boolean;
89
+ }
@@ -0,0 +1 @@
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ViewHierarchyTracker=void 0;var _typeof2=_interopRequireDefault(require("@babel/runtime/helpers/typeof"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n=0,F=function F(){};return{s:F,n:function n(){return _n>=r.length?{done:!0}:{done:!1,value:r[_n++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}var ViewHierarchyTracker=exports.ViewHierarchyTracker=function(){function ViewHierarchyTracker(screenDimensions){(0,_classCallCheck2["default"])(this,ViewHierarchyTracker);this.hierarchy=[];this.maskedElements=new Set();this.screenDimensions=null;this.screenDimensions=screenDimensions||null;}return(0,_createClass2["default"])(ViewHierarchyTracker,[{key:"updateHierarchy",value:function updateHierarchy(hierarchy){this.hierarchy=hierarchy;this.extractMaskedElements();}},{key:"extractMaskedElements",value:function extractMaskedElements(){this.maskedElements.clear();this.traverseHierarchy(this.hierarchy);}},{key:"traverseHierarchy",value:function traverseHierarchy(nodes){var _iterator=_createForOfIteratorHelper(nodes),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var node=_step.value;if(this.shouldMaskElement(node)){if(node.id){this.maskedElements.add(node.id);}node.masked=true;}if(node.children){this.traverseHierarchy(node.children);}}}catch(err){_iterator.e(err);}finally{_iterator.f();}}},{key:"shouldMaskElement",value:function shouldMaskElement(node){var _a;if(node.accessibilityLabel==='ph-no-capture'||node.accessibilityLabel==='mask-input'||((_a=node.props)===null||_a===void 0?void 0:_a.testID)==='mask-input'){return true;}if(this.isInputField(node)){return true;}if(this.hasSensitiveDataMarker(node)){return true;}return false;}},{key:"isInputField",value:function isInputField(node){var inputTypes=['TextInput','TextInputMask','Input','PasswordInput','SecureTextInput'];if(inputTypes.includes(node.type)){return true;}var props=node.props||{};if(props.secureTextEntry===true){return true;}if(props.password===true||props.isPassword===true||props.inputType==='password'){return true;}var placeholder=props.placeholder||'';var sensitivePlaceholders=['password','pass','pwd','secret','token','key','credit card','card number','cvv','ssn','social security','phone','email','address','zip','postal'];if(sensitivePlaceholders.some(function(sensitive){return placeholder.toLowerCase().includes(sensitive);})){return true;}return false;}},{key:"hasSensitiveDataMarker",value:function hasSensitiveDataMarker(node){var props=node.props||{};if(props.sensitive===true||props["private"]===true||props.confidential===true){return true;}var style=props.style||{};if((0,_typeof2["default"])(style)==='object'&&style.sensitive===true){return true;}return false;}},{key:"getMaskRegions",value:function getMaskRegions(){var regions=[];this.traverseHierarchyForRegions(this.hierarchy,regions);return regions;}},{key:"traverseHierarchyForRegions",value:function traverseHierarchyForRegions(nodes,regions){var _iterator2=_createForOfIteratorHelper(nodes),_step2;try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){var node=_step2.value;if(node.masked&&node.bounds){var region={x:node.bounds.x,y:node.bounds.y,width:node.bounds.width,height:node.bounds.height,type:'blackout',elementId:node.id};regions.push(region);}if(node.children){this.traverseHierarchyForRegions(node.children,regions);}}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}}},{key:"addManualRegion",value:function addManualRegion(region){}},{key:"clearRegions",value:function clearRegions(){this.maskedElements.clear();this.hierarchy=[];}},{key:"getHierarchy",value:function getHierarchy(){return this.hierarchy;}},{key:"getMaskedElements",value:function getMaskedElements(){return new Set(this.maskedElements);}},{key:"updateScreenDimensions",value:function updateScreenDimensions(dimensions){this.screenDimensions=dimensions;}},{key:"isElementMasked",value:function isElementMasked(elementId){return this.maskedElements.has(elementId);}}]);}();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewHierarchyTracker.js","sourceRoot":"","sources":["../../src/utils/viewHierarchyTracker.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.1";
1
+ export declare const version = "0.0.1-beta.21";
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.version=void 0;var version=exports.version="0.0.1";
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.version=void 0;var version=exports.version="0.0.1-beta.21";
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAA"}
@@ -0,0 +1,21 @@
1
+ #import <React/RCTBridgeModule.h>
2
+ #import <React/RCTEventEmitter.h>
3
+
4
+ @interface RCT_EXTERN_MODULE(GestureRecorderNative, RCTEventEmitter)
5
+
6
+ RCT_EXTERN_METHOD(startGestureRecording:(RCTPromiseResolveBlock)resolve
7
+ reject:(RCTPromiseRejectBlock)reject)
8
+
9
+ RCT_EXTERN_METHOD(stopGestureRecording:(RCTPromiseResolveBlock)resolve
10
+ reject:(RCTPromiseRejectBlock)reject)
11
+
12
+ RCT_EXTERN_METHOD(isGestureRecordingActive:(RCTPromiseResolveBlock)resolve
13
+ reject:(RCTPromiseRejectBlock)reject)
14
+
15
+ RCT_EXTERN_METHOD(recordGesture:(NSString *)gestureType
16
+ x:(NSNumber *)x
17
+ y:(NSNumber *)y
18
+ target:(NSString *)target
19
+ metadata:(NSDictionary *)metadata)
20
+
21
+ @end