@multiplayer-app/session-recorder-react-native 0.0.1-alpha.9 → 0.0.1-beta.10

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 (197) hide show
  1. package/SessionRecorderNative.podspec +29 -0
  2. package/android/build.gradle +32 -0
  3. package/app.plugin.js +42 -0
  4. package/copy-react-native-dist.sh +4 -10
  5. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js +1 -0
  6. package/dist/components/GestureCaptureWrapper/GestureCaptureWrapper.js.map +1 -0
  7. package/dist/components/GestureCaptureWrapper/index.d.ts +1 -0
  8. package/dist/components/GestureCaptureWrapper/index.js +1 -0
  9. package/dist/components/GestureCaptureWrapper/index.js.map +1 -0
  10. package/dist/components/MaskableComponent.d.ts +22 -0
  11. package/dist/components/MaskableComponent.js +1 -0
  12. package/dist/components/MaskableComponent.js.map +1 -0
  13. package/dist/components/MaskableTextInput.d.ts +14 -0
  14. package/dist/components/MaskableTextInput.js +1 -0
  15. package/dist/components/MaskableTextInput.js.map +1 -0
  16. package/dist/components/ScreenRecorderView/ScreenRecorderView.d.ts +5 -0
  17. package/dist/components/ScreenRecorderView/ScreenRecorderView.js +1 -0
  18. package/dist/components/ScreenRecorderView/ScreenRecorderView.js.map +1 -0
  19. package/dist/components/ScreenRecorderView/index.d.ts +1 -0
  20. package/dist/components/ScreenRecorderView/index.js +1 -0
  21. package/dist/components/ScreenRecorderView/index.js.map +1 -0
  22. package/dist/components/SessionRecorderWidget/FinalPopover.d.ts +11 -0
  23. package/dist/components/SessionRecorderWidget/FinalPopover.js +1 -0
  24. package/dist/components/SessionRecorderWidget/FinalPopover.js.map +1 -0
  25. package/dist/components/SessionRecorderWidget/FloatingButton.d.ts +8 -0
  26. package/dist/components/SessionRecorderWidget/FloatingButton.js +1 -0
  27. package/dist/components/SessionRecorderWidget/FloatingButton.js.map +1 -0
  28. package/dist/components/SessionRecorderWidget/InitialPopover.d.ts +13 -0
  29. package/dist/components/SessionRecorderWidget/InitialPopover.js +1 -0
  30. package/dist/components/SessionRecorderWidget/InitialPopover.js.map +1 -0
  31. package/dist/components/SessionRecorderWidget/ModalContainer.d.ts +8 -0
  32. package/dist/components/SessionRecorderWidget/ModalContainer.js +1 -0
  33. package/dist/components/SessionRecorderWidget/ModalContainer.js.map +1 -0
  34. package/dist/components/SessionRecorderWidget/ModalHeader.d.ts +6 -0
  35. package/dist/components/SessionRecorderWidget/ModalHeader.js +1 -0
  36. package/dist/components/SessionRecorderWidget/ModalHeader.js.map +1 -0
  37. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.d.ts +5 -0
  38. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js +1 -0
  39. package/dist/components/SessionRecorderWidget/SessionRecorderWidget.js.map +1 -0
  40. package/dist/components/SessionRecorderWidget/icons.d.ts +11 -0
  41. package/dist/components/SessionRecorderWidget/icons.js +1 -0
  42. package/dist/components/SessionRecorderWidget/icons.js.map +1 -0
  43. package/dist/components/SessionRecorderWidget/index.d.ts +2 -0
  44. package/dist/components/SessionRecorderWidget/index.js +1 -0
  45. package/dist/components/SessionRecorderWidget/index.js.map +1 -0
  46. package/dist/components/SessionRecorderWidget/styles.d.ts +145 -0
  47. package/dist/components/SessionRecorderWidget/styles.js +1 -0
  48. package/dist/components/SessionRecorderWidget/styles.js.map +1 -0
  49. package/dist/components/index.d.ts +3 -0
  50. package/dist/components/index.js +1 -0
  51. package/dist/components/index.js.map +1 -0
  52. package/dist/config/defaults.js +1 -1
  53. package/dist/config/defaults.js.map +1 -1
  54. package/dist/config/masking.js +1 -1
  55. package/dist/config/masking.js.map +1 -1
  56. package/dist/context/SessionRecorderContext.d.ts +5 -3
  57. package/dist/context/SessionRecorderContext.js +1 -1
  58. package/dist/context/SessionRecorderContext.js.map +1 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/native/ScreenMasking.d.ts +21 -0
  61. package/dist/native/ScreenMasking.js +1 -0
  62. package/dist/native/ScreenMasking.js.map +1 -0
  63. package/dist/native/SessionRecorderNative.d.ts +21 -0
  64. package/dist/native/SessionRecorderNative.js +1 -0
  65. package/dist/native/SessionRecorderNative.js.map +1 -0
  66. package/dist/otel/index.d.ts +0 -2
  67. package/dist/otel/index.js.map +1 -1
  68. package/dist/otel/instrumentations/index.d.ts +0 -3
  69. package/dist/otel/instrumentations/index.js +1 -1
  70. package/dist/otel/instrumentations/index.js.map +1 -1
  71. package/dist/patch/xhr.js +1 -1
  72. package/dist/patch/xhr.js.map +1 -1
  73. package/dist/recorder/gestureRecorder.d.ts +0 -9
  74. package/dist/recorder/gestureRecorder.js +1 -1
  75. package/dist/recorder/gestureRecorder.js.map +1 -1
  76. package/dist/recorder/index.d.ts +4 -3
  77. package/dist/recorder/index.js.map +1 -1
  78. package/dist/recorder/screenRecorder.d.ts +2 -6
  79. package/dist/recorder/screenRecorder.js +1 -1
  80. package/dist/recorder/screenRecorder.js.map +1 -1
  81. package/dist/recorder/screenshotManager.d.ts +10 -0
  82. package/dist/recorder/screenshotManager.js +1 -0
  83. package/dist/recorder/screenshotManager.js.map +1 -0
  84. package/dist/services/screenMaskingService.d.ts +39 -0
  85. package/dist/services/screenMaskingService.js +1 -0
  86. package/dist/services/screenMaskingService.js.map +1 -0
  87. package/dist/services/storage.service.d.ts +18 -2
  88. package/dist/services/storage.service.js +1 -1
  89. package/dist/services/storage.service.js.map +1 -1
  90. package/dist/session-recorder.d.ts +4 -2
  91. package/dist/session-recorder.js +1 -1
  92. package/dist/session-recorder.js.map +1 -1
  93. package/dist/types/index.d.ts +2 -16
  94. package/dist/types/index.js +1 -1
  95. package/dist/types/index.js.map +1 -1
  96. package/dist/types/session-recorder.d.ts +6 -0
  97. package/dist/types/session-recorder.js.map +1 -1
  98. package/dist/utils/app-metadata.d.ts +16 -0
  99. package/dist/utils/app-metadata.js +1 -0
  100. package/dist/utils/app-metadata.js.map +1 -0
  101. package/dist/utils/componentRegistry.d.ts +64 -0
  102. package/dist/utils/componentRegistry.js +1 -0
  103. package/dist/utils/componentRegistry.js.map +1 -0
  104. package/dist/utils/nativeModuleTest.d.ts +8 -0
  105. package/dist/utils/nativeModuleTest.js +1 -0
  106. package/dist/utils/nativeModuleTest.js.map +1 -0
  107. package/dist/utils/platform.d.ts +35 -0
  108. package/dist/utils/platform.js +1 -1
  109. package/dist/utils/platform.js.map +1 -1
  110. package/dist/utils/reactNativeHierarchyExtractor.d.ts +38 -0
  111. package/dist/utils/reactNativeHierarchyExtractor.js +1 -0
  112. package/dist/utils/reactNativeHierarchyExtractor.js.map +1 -0
  113. package/dist/utils/rrweb-events.d.ts +1 -1
  114. package/dist/utils/rrweb-events.js +1 -1
  115. package/dist/utils/rrweb-events.js.map +1 -1
  116. package/dist/utils/screenshotMasker.d.ts +96 -0
  117. package/dist/utils/screenshotMasker.js +1 -0
  118. package/dist/utils/screenshotMasker.js.map +1 -0
  119. package/dist/utils/viewHierarchyTracker.d.ts +89 -0
  120. package/dist/utils/viewHierarchyTracker.js +1 -0
  121. package/dist/utils/viewHierarchyTracker.js.map +1 -0
  122. package/dist/version.d.ts +1 -1
  123. package/dist/version.js +1 -1
  124. package/dist/version.js.map +1 -1
  125. package/docs/NATIVE_MODULE_SETUP.md +177 -0
  126. package/ios/SessionRecorderNative.m +17 -0
  127. package/ios/SessionRecorderNative.podspec +26 -0
  128. package/ios/SessionRecorderNative.swift +205 -0
  129. package/package.json +25 -14
  130. package/plugin/package.json +20 -0
  131. package/plugin/src/index.js +42 -0
  132. package/react-native.config.js +15 -0
  133. package/RRWEB_INTEGRATION.md +0 -336
  134. package/VIEWSHOT_INTEGRATION_TEST.md +0 -123
  135. package/babel.config.js +0 -13
  136. package/dist/components/GestureCaptureWrapper.js +0 -1
  137. package/dist/components/GestureCaptureWrapper.js.map +0 -1
  138. package/dist/expo.d.ts +0 -7
  139. package/dist/expo.js +0 -1
  140. package/dist/expo.js.map +0 -1
  141. package/dist/otel/instrumentations/gestureInstrumentation.d.ts +0 -15
  142. package/dist/otel/instrumentations/gestureInstrumentation.js +0 -1
  143. package/dist/otel/instrumentations/gestureInstrumentation.js.map +0 -1
  144. package/dist/otel/instrumentations/reactNativeInstrumentation.d.ts +0 -8
  145. package/dist/otel/instrumentations/reactNativeInstrumentation.js +0 -1
  146. package/dist/otel/instrumentations/reactNativeInstrumentation.js.map +0 -1
  147. package/dist/otel/instrumentations/reactNavigationInstrumentation.d.ts +0 -13
  148. package/dist/otel/instrumentations/reactNavigationInstrumentation.js +0 -1
  149. package/dist/otel/instrumentations/reactNavigationInstrumentation.js.map +0 -1
  150. package/dist/recorder/gestureHandlerRecorder.d.ts +0 -19
  151. package/dist/recorder/gestureHandlerRecorder.js +0 -1
  152. package/dist/recorder/gestureHandlerRecorder.js.map +0 -1
  153. package/dist/types/rrweb.d.ts +0 -118
  154. package/dist/types/rrweb.js +0 -1
  155. package/dist/types/rrweb.js.map +0 -1
  156. package/src/components/GestureCaptureWrapper.tsx +0 -110
  157. package/src/config/constants.ts +0 -60
  158. package/src/config/defaults.ts +0 -82
  159. package/src/config/index.ts +0 -6
  160. package/src/config/masking.ts +0 -27
  161. package/src/config/session-recorder.ts +0 -55
  162. package/src/config/validators.ts +0 -31
  163. package/src/context/SessionRecorderContext.tsx +0 -143
  164. package/src/expo.ts +0 -11
  165. package/src/index.ts +0 -9
  166. package/src/otel/helpers.ts +0 -275
  167. package/src/otel/index.ts +0 -149
  168. package/src/otel/instrumentations/gestureInstrumentation.ts +0 -141
  169. package/src/otel/instrumentations/index.ts +0 -120
  170. package/src/otel/instrumentations/reactNativeInstrumentation.ts +0 -77
  171. package/src/otel/instrumentations/reactNavigationInstrumentation.ts +0 -119
  172. package/src/patch/index.ts +0 -1
  173. package/src/patch/xhr.ts +0 -142
  174. package/src/recorder/eventExporter.ts +0 -141
  175. package/src/recorder/gestureHandlerRecorder.ts +0 -157
  176. package/src/recorder/gestureRecorder.ts +0 -622
  177. package/src/recorder/index.ts +0 -178
  178. package/src/recorder/navigationTracker.ts +0 -449
  179. package/src/recorder/screenRecorder.ts +0 -506
  180. package/src/services/api.service.ts +0 -203
  181. package/src/services/storage.service.ts +0 -158
  182. package/src/session-recorder.ts +0 -601
  183. package/src/types/expo.d.ts +0 -23
  184. package/src/types/index.ts +0 -46
  185. package/src/types/session-recorder.ts +0 -423
  186. package/src/types/session.ts +0 -65
  187. package/src/utils/index.ts +0 -8
  188. package/src/utils/logger.ts +0 -225
  189. package/src/utils/platform.ts +0 -87
  190. package/src/utils/request-utils.ts +0 -61
  191. package/src/utils/rrweb-events.ts +0 -311
  192. package/src/utils/session.ts +0 -18
  193. package/src/utils/time.ts +0 -17
  194. package/src/utils/type-utils.ts +0 -75
  195. package/src/version.ts +0 -1
  196. package/tsconfig.json +0 -24
  197. /package/dist/components/{GestureCaptureWrapper.d.ts → GestureCaptureWrapper/GestureCaptureWrapper.d.ts} +0 -0
@@ -0,0 +1,145 @@
1
+ export declare const sharedStyles: {
2
+ popoverContent: {
3
+ flex: number;
4
+ paddingHorizontal: number;
5
+ };
6
+ popoverHeader: {
7
+ flexDirection: "column";
8
+ paddingBottom: number;
9
+ paddingHorizontal: number;
10
+ borderTopLeftRadius: number;
11
+ borderTopRightRadius: number;
12
+ backgroundColor: string;
13
+ shadowColor: string;
14
+ shadowOffset: {
15
+ width: number;
16
+ height: number;
17
+ };
18
+ shadowOpacity: number;
19
+ shadowRadius: number;
20
+ elevation: number;
21
+ };
22
+ modalHandle: {
23
+ marginTop: number;
24
+ marginBottom: number;
25
+ width: number;
26
+ height: number;
27
+ backgroundColor: string;
28
+ borderRadius: number;
29
+ alignSelf: "center";
30
+ };
31
+ popoverHeaderContent: {
32
+ flexDirection: "row";
33
+ justifyContent: "space-between";
34
+ alignItems: "flex-start";
35
+ };
36
+ cancelButton: {
37
+ paddingHorizontal: number;
38
+ paddingVertical: number;
39
+ borderRadius: number;
40
+ backgroundColor: string;
41
+ };
42
+ cancelButtonText: {
43
+ color: string;
44
+ fontSize: number;
45
+ fontWeight: "500";
46
+ };
47
+ popoverBody: {
48
+ flex: number;
49
+ padding: number;
50
+ paddingTop: number;
51
+ };
52
+ title: {
53
+ fontSize: number;
54
+ fontWeight: "600";
55
+ color: string;
56
+ marginBottom: number;
57
+ };
58
+ description: {
59
+ fontSize: number;
60
+ color: string;
61
+ marginBottom: number;
62
+ };
63
+ popoverFooter: {
64
+ marginTop: "auto";
65
+ paddingTop: number;
66
+ };
67
+ actionButton: {
68
+ paddingVertical: number;
69
+ paddingHorizontal: number;
70
+ borderRadius: number;
71
+ alignItems: "center";
72
+ };
73
+ actionButtonText: {
74
+ color: string;
75
+ fontSize: number;
76
+ fontWeight: "500";
77
+ };
78
+ continuousRecordingSection: {
79
+ flexDirection: "row";
80
+ justifyContent: "space-between";
81
+ alignItems: "center";
82
+ marginBottom: number;
83
+ paddingVertical: number;
84
+ paddingHorizontal: number;
85
+ borderWidth: number;
86
+ borderColor: string;
87
+ backgroundColor: string;
88
+ borderRadius: number;
89
+ shadowColor: string;
90
+ shadowOffset: {
91
+ width: number;
92
+ height: number;
93
+ };
94
+ shadowOpacity: number;
95
+ shadowRadius: number;
96
+ elevation: number;
97
+ };
98
+ continuousRecordingLabel: {
99
+ fontSize: number;
100
+ fontWeight: "500";
101
+ color: string;
102
+ };
103
+ continuousOverlay: {
104
+ marginTop: number;
105
+ padding: number;
106
+ backgroundColor: string;
107
+ borderRadius: number;
108
+ borderWidth: number;
109
+ borderColor: string;
110
+ };
111
+ continuousOverlayContent: {
112
+ marginBottom: number;
113
+ };
114
+ continuousOverlayTitle: {
115
+ fontSize: number;
116
+ fontWeight: "bold";
117
+ color: string;
118
+ marginBottom: number;
119
+ };
120
+ continuousOverlayDescription: {
121
+ fontSize: number;
122
+ color: string;
123
+ lineHeight: number;
124
+ };
125
+ commentInput: {
126
+ borderWidth: number;
127
+ borderColor: string;
128
+ borderRadius: number;
129
+ padding: number;
130
+ fontSize: number;
131
+ color: string;
132
+ backgroundColor: string;
133
+ marginBottom: number;
134
+ minHeight: number;
135
+ };
136
+ startButton: {
137
+ backgroundColor: string;
138
+ };
139
+ stopButton: {
140
+ backgroundColor: string;
141
+ };
142
+ saveButton: {
143
+ backgroundColor: string;
144
+ };
145
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.sharedStyles=void 0;var _reactNative=require("react-native");var sharedStyles=exports.sharedStyles=_reactNative.StyleSheet.create({popoverContent:{flex:1,paddingHorizontal:0},popoverHeader:{flexDirection:'column',paddingBottom:8,paddingHorizontal:16,borderTopLeftRadius:20,borderTopRightRadius:20,backgroundColor:'#e3ecfd',shadowColor:'#e3ecfd',shadowOffset:{width:0,height:10},shadowOpacity:1,shadowRadius:5,elevation:3},modalHandle:{marginTop:8,marginBottom:16,width:40,height:4,backgroundColor:'#D1D5DB',borderRadius:2,alignSelf:'center'},popoverHeaderContent:{flexDirection:'row',justifyContent:'space-between',alignItems:'flex-start'},cancelButton:{paddingHorizontal:12,paddingVertical:6,borderRadius:6,backgroundColor:'#F3F4F6'},cancelButtonText:{color:'#374151',fontSize:14,fontWeight:'500'},popoverBody:{flex:1,padding:16,paddingTop:32},title:{fontSize:18,fontWeight:'600',color:'#2d3748',marginBottom:12},description:{fontSize:14,color:'#718096',marginBottom:24},popoverFooter:{marginTop:'auto',paddingTop:48},actionButton:{paddingVertical:16,paddingHorizontal:24,borderRadius:12,alignItems:'center'},actionButtonText:{color:'white',fontSize:16,fontWeight:'500'},continuousRecordingSection:{flexDirection:'row',justifyContent:'space-between',alignItems:'center',marginBottom:20,paddingVertical:12,paddingHorizontal:16,borderWidth:1,borderColor:'#e1e8f1',backgroundColor:'#fff',borderRadius:12,shadowColor:'#000',shadowOffset:{width:0,height:2},shadowOpacity:0.06,shadowRadius:3,elevation:3},continuousRecordingLabel:{fontSize:16,fontWeight:'500',color:'#374151'},continuousOverlay:{marginTop:20,padding:16,backgroundColor:'#FEF3C7',borderRadius:8,borderWidth:1,borderColor:'#F59E0B'},continuousOverlayContent:{marginBottom:16},continuousOverlayTitle:{fontSize:18,fontWeight:'bold',color:'#92400E',marginBottom:8},continuousOverlayDescription:{fontSize:14,color:'#92400E',lineHeight:20},commentInput:{borderWidth:1,borderColor:'#D1D5DB',borderRadius:8,padding:12,fontSize:16,color:'#374151',backgroundColor:'#F9FAFB',marginBottom:24,minHeight:80},startButton:{backgroundColor:'#473cfb'},stopButton:{backgroundColor:'#473cfb'},saveButton:{backgroundColor:'#473cfb'}});
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/SessionRecorderWidget/styles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './GestureCaptureWrapper';
2
+ export * from './ScreenRecorderView';
3
+ export * from './SessionRecorderWidget';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});var _GestureCaptureWrapper=require("./GestureCaptureWrapper");Object.keys(_GestureCaptureWrapper).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_GestureCaptureWrapper[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _GestureCaptureWrapper[key];}});});var _ScreenRecorderView=require("./ScreenRecorderView");Object.keys(_ScreenRecorderView).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_ScreenRecorderView[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _ScreenRecorderView[key];}});});var _SessionRecorderWidget=require("./SessionRecorderWidget");Object.keys(_SessionRecorderWidget).forEach(function(key){if(key==="default"||key==="__esModule")return;if(key in exports&&exports[key]===_SessionRecorderWidget[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _SessionRecorderWidget[key];}});});
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.DEFAULT_WIDGET_TEXT_CONFIG=exports.DEFAULT_MASKING_CONFIG=exports.BASE_CONFIG=void 0;var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _types=require("../types");var _constants=require("./constants");var mask=_sessionRecorderCommon.SessionRecorderSdk.mask,sensitiveFields=_sessionRecorderCommon.SessionRecorderSdk.sensitiveFields,sensitiveHeaders=_sessionRecorderCommon.SessionRecorderSdk.sensitiveHeaders;var DEFAULT_MASKING_CONFIG=exports.DEFAULT_MASKING_CONFIG={isContentMaskingEnabled:true,maskBody:mask(sensitiveFields),maskHeaders:mask(sensitiveHeaders),maskBodyFieldsList:sensitiveFields,maskHeadersList:sensitiveHeaders,headersToInclude:[],headersToExclude:[]};var DEFAULT_WIDGET_TEXT_CONFIG=exports.DEFAULT_WIDGET_TEXT_CONFIG={initialTitleWithContinuous:'Encountered an issue?',initialTitleWithoutContinuous:'Encountered an issue?',initialDescriptionWithContinuous:'Record your session so we can see the problem and fix it faster.',initialDescriptionWithoutContinuous:'Record your session so we can see the problem and fix it faster.',continuousRecordingLabel:'Continuous recording',startRecordingButtonText:'Start recording',finalTitle:'Done recording?',finalDescription:'You can also add a quick note with extra context, expectations, or questions. Thank you!',commentPlaceholder:'Add a message...',saveButtonText:'Submit recording',cancelButtonText:'Cancel recording',continuousOverlayTitle:'Save time, skip the reproductions',continuousOverlayDescription:'We keep a rolling record of your recent activity. If something doesn’t work as expected, just save the recording and continue working. No need to worry about exceptions and errors - we automatically save recordings for those!',saveLastSnapshotButtonText:'Save recording',submitDialogTitle:'Save recording',submitDialogSubtitle:'This full-stack session recording will be saved directly to your selected Multiplayer project. All data is automatically correlated end-to-end.',submitDialogCommentLabel:'You can also add context, comments, or notes.',submitDialogCommentPlaceholder:'Add a message...',submitDialogSubmitText:'Save',submitDialogCancelText:'Cancel'};var BASE_CONFIG=exports.BASE_CONFIG={apiKey:'',version:'',application:'',environment:'',showWidget:true,showContinuousRecording:true,widgetButtonPlacement:_types.WidgetButtonPlacement.bottomRight,usePostMessageFallback:false,apiBaseUrl:_sessionRecorderCommon.MULTIPLAYER_BASE_API_URL,exporterEndpoint:_sessionRecorderCommon.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL,schemifyDocSpanPayload:true,ignoreUrls:[],propagateTraceHeaderCorsUrls:[],sampleTraceRatio:_constants.OTEL_MP_SAMPLE_TRACE_RATIO,maxCapturingHttpPayloadSize:_constants.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE,captureBody:true,captureHeaders:true,masking:DEFAULT_MASKING_CONFIG,widgetTextOverrides:DEFAULT_WIDGET_TEXT_CONFIG,recordScreen:true,recordGestures:true,recordNavigation:true};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.DEFAULT_WIDGET_TEXT_CONFIG=exports.DEFAULT_MASKING_CONFIG=exports.BASE_CONFIG=void 0;var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var _types=require("../types");var _constants=require("./constants");var mask=_sessionRecorderCommon.SessionRecorderSdk.mask,sensitiveFields=_sessionRecorderCommon.SessionRecorderSdk.sensitiveFields,sensitiveHeaders=_sessionRecorderCommon.SessionRecorderSdk.sensitiveHeaders;var DEFAULT_MASKING_CONFIG=exports.DEFAULT_MASKING_CONFIG={isContentMaskingEnabled:true,maskBody:mask(sensitiveFields),maskHeaders:mask(sensitiveHeaders),maskBodyFieldsList:sensitiveFields,maskHeadersList:sensitiveHeaders,headersToInclude:[],headersToExclude:[],inputMasking:true};var DEFAULT_WIDGET_TEXT_CONFIG=exports.DEFAULT_WIDGET_TEXT_CONFIG={initialTitleWithContinuous:'Encountered an issue?',initialTitleWithoutContinuous:'Encountered an issue?',initialDescriptionWithContinuous:'Record your session so we can see the problem and fix it faster.',initialDescriptionWithoutContinuous:'Record your session so we can see the problem and fix it faster.',continuousRecordingLabel:'Continuous recording',startRecordingButtonText:'Start recording',finalTitle:'Done recording?',finalDescription:'You can also add a quick note with extra context, expectations, or questions. Thank you!',commentPlaceholder:'Add a message...',saveButtonText:'Submit recording',cancelButtonText:'Cancel recording',continuousOverlayTitle:'Save time, skip the reproductions',continuousOverlayDescription:'We keep a rolling record of your recent activity. If something doesn’t work as expected, just save the recording and continue working. No need to worry about exceptions and errors - we automatically save recordings for those!',saveLastSnapshotButtonText:'Save recording',submitDialogTitle:'Save recording',submitDialogSubtitle:'This full-stack session recording will be saved directly to your selected Multiplayer project. All data is automatically correlated end-to-end.',submitDialogCommentLabel:'You can also add context, comments, or notes.',submitDialogCommentPlaceholder:'Add a message...',submitDialogSubmitText:'Save',submitDialogCancelText:'Cancel'};var BASE_CONFIG=exports.BASE_CONFIG={apiKey:'',version:'',application:'',environment:'',showWidget:true,showContinuousRecording:true,widgetButtonPlacement:_types.WidgetButtonPlacement.bottomRight,usePostMessageFallback:false,apiBaseUrl:_sessionRecorderCommon.MULTIPLAYER_BASE_API_URL,exporterEndpoint:_sessionRecorderCommon.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL,schemifyDocSpanPayload:true,ignoreUrls:[],propagateTraceHeaderCorsUrls:[],sampleTraceRatio:_constants.OTEL_MP_SAMPLE_TRACE_RATIO,maxCapturingHttpPayloadSize:_constants.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE,captureBody:true,captureHeaders:true,masking:DEFAULT_MASKING_CONFIG,widgetTextOverrides:DEFAULT_WIDGET_TEXT_CONFIG,recordScreen:true,recordGestures:true,recordNavigation:true};
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,iDAAiD,GAClD,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAGL,qBAAqB,GAEtB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,0BAA0B,EAC1B,uCAAuC,GACxC,MAAM,aAAa,CAAA;AACpB,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,sBAAsB,GAAkB;IACnD,uBAAuB,EAAE,IAAI;IAC7B,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC;IAC/B,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC;IACnC,kBAAkB,EAAE,eAAe;IACnC,eAAe,EAAE,gBAAgB;IACjC,gBAAgB,EAAE,EAAE;IACpB,gBAAgB,EAAE,EAAE;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAA8B;IACnE,0BAA0B,EAAE,uBAAuB;IACnD,6BAA6B,EAAE,uBAAuB;IACtD,gCAAgC,EAAE,kEAAkE;IACpG,mCAAmC,EAAE,kEAAkE;IACvG,wBAAwB,EAAE,sBAAsB;IAChD,wBAAwB,EAAE,iBAAiB;IAC3C,UAAU,EAAE,iBAAiB;IAC7B,gBAAgB,EAAE,0FAA0F;IAC5G,kBAAkB,EAAE,kBAAkB;IACtC,cAAc,EAAE,kBAAkB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,mCAAmC;IAC3D,4BAA4B,EAAE,mOAAmO;IACjQ,0BAA0B,EAAE,gBAAgB;IAC5C,iBAAiB,EAAE,gBAAgB;IACnC,oBAAoB,EAAE,iJAAiJ;IACvK,wBAAwB,EAAE,+CAA+C;IACzE,8BAA8B,EAAE,kBAAkB;IAClD,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,QAAQ;CACjC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAqC;IAC3D,MAAM,EAAE,EAAE;IAEV,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,EAAE;IACf,WAAW,EAAE,EAAE;IAEf,UAAU,EAAE,IAAI;IAChB,uBAAuB,EAAE,IAAI;IAC7B,qBAAqB,EAAE,qBAAqB,CAAC,WAAW;IAExD,sBAAsB,EAAE,KAAK;IAC7B,UAAU,EAAE,wBAAwB;IACpC,gBAAgB,EAAE,iDAAiD;IAEnE,sBAAsB,EAAE,IAAI;IAE5B,UAAU,EAAE,EAAE;IACd,4BAA4B,EAAE,EAAE;IAEhC,gBAAgB,EAAE,0BAA0B;IAC5C,2BAA2B,EAAE,uCAAuC;IAEpE,WAAW,EAAE,IAAI;IACjB,cAAc,EAAE,IAAI;IACpB,OAAO,EAAE,sBAAsB;IAC/B,mBAAmB,EAAE,0BAA0B;IAE/C,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,IAAI;CACvB,CAAA"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,iDAAiD,GAClD,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAGL,qBAAqB,GAEtB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,0BAA0B,EAC1B,uCAAuC,GACxC,MAAM,aAAa,CAAA;AACpB,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,sBAAsB,GAAkB;IACnD,uBAAuB,EAAE,IAAI;IAC7B,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC;IAC/B,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC;IACnC,kBAAkB,EAAE,eAAe;IACnC,eAAe,EAAE,gBAAgB;IACjC,gBAAgB,EAAE,EAAE;IACpB,gBAAgB,EAAE,EAAE;IACpB,YAAY,EAAE,IAAI;CACnB,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAA8B;IACnE,0BAA0B,EAAE,uBAAuB;IACnD,6BAA6B,EAAE,uBAAuB;IACtD,gCAAgC,EAAE,kEAAkE;IACpG,mCAAmC,EAAE,kEAAkE;IACvG,wBAAwB,EAAE,sBAAsB;IAChD,wBAAwB,EAAE,iBAAiB;IAC3C,UAAU,EAAE,iBAAiB;IAC7B,gBAAgB,EAAE,0FAA0F;IAC5G,kBAAkB,EAAE,kBAAkB;IACtC,cAAc,EAAE,kBAAkB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,mCAAmC;IAC3D,4BAA4B,EAAE,mOAAmO;IACjQ,0BAA0B,EAAE,gBAAgB;IAC5C,iBAAiB,EAAE,gBAAgB;IACnC,oBAAoB,EAAE,iJAAiJ;IACvK,wBAAwB,EAAE,+CAA+C;IACzE,8BAA8B,EAAE,kBAAkB;IAClD,sBAAsB,EAAE,MAAM;IAC9B,sBAAsB,EAAE,QAAQ;CACjC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAqC;IAC3D,MAAM,EAAE,EAAE;IAEV,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,EAAE;IACf,WAAW,EAAE,EAAE;IAEf,UAAU,EAAE,IAAI;IAChB,uBAAuB,EAAE,IAAI;IAC7B,qBAAqB,EAAE,qBAAqB,CAAC,WAAW;IAExD,sBAAsB,EAAE,KAAK;IAC7B,UAAU,EAAE,wBAAwB;IACpC,gBAAgB,EAAE,iDAAiD;IAEnE,sBAAsB,EAAE,IAAI;IAE5B,UAAU,EAAE,EAAE;IACd,4BAA4B,EAAE,EAAE;IAEhC,gBAAgB,EAAE,0BAA0B;IAC5C,2BAA2B,EAAE,uCAAuC;IAEpE,WAAW,EAAE,IAAI;IACjB,cAAc,EAAE,IAAI;IACpB,OAAO,EAAE,sBAAsB;IAC/B,mBAAmB,EAAE,0BAA0B;IAE/C,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,IAAI;CACvB,CAAA"}
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.getMaskingConfig=void 0;var _typeof2=_interopRequireDefault(require("@babel/runtime/helpers/typeof"));var _defaults=require("./defaults");var _validators=require("./validators");var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var mask=_sessionRecorderCommon.SessionRecorderSdk.mask,sensitiveFields=_sessionRecorderCommon.SessionRecorderSdk.sensitiveFields,sensitiveHeaders=_sessionRecorderCommon.SessionRecorderSdk.sensitiveHeaders;var getMaskingConfig=exports.getMaskingConfig=function getMaskingConfig(masking){var _a,_b,_c;var baseMasking=_defaults.DEFAULT_MASKING_CONFIG;if((0,_typeof2["default"])(masking)!=='object'){return baseMasking;}var maskHeadersList=(0,_validators.isValidArray)(masking.maskHeadersList,sensitiveHeaders);var maskBodyFieldsList=(0,_validators.isValidArray)(masking.maskBodyFieldsList,sensitiveFields);return{maskHeadersList:maskHeadersList,maskBodyFieldsList:maskBodyFieldsList,headersToInclude:(0,_validators.isValidArray)(masking.headersToInclude,(_a=baseMasking.headersToInclude)!==null&&_a!==void 0?_a:[]),headersToExclude:(0,_validators.isValidArray)(masking.headersToExclude,(_b=baseMasking.headersToExclude)!==null&&_b!==void 0?_b:[]),isContentMaskingEnabled:(0,_validators.isValidBoolean)(masking.isContentMaskingEnabled,(_c=baseMasking.isContentMaskingEnabled)!==null&&_c!==void 0?_c:true),maskBody:(0,_validators.isValidFunction)(masking.maskBody,mask(maskBodyFieldsList)),maskHeaders:(0,_validators.isValidFunction)(masking.maskHeaders,mask(maskHeadersList))};};
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.getMaskingConfig=void 0;var _typeof2=_interopRequireDefault(require("@babel/runtime/helpers/typeof"));var _defaults=require("./defaults");var _validators=require("./validators");var _sessionRecorderCommon=require("@multiplayer-app/session-recorder-common");var mask=_sessionRecorderCommon.SessionRecorderSdk.mask,sensitiveFields=_sessionRecorderCommon.SessionRecorderSdk.sensitiveFields,sensitiveHeaders=_sessionRecorderCommon.SessionRecorderSdk.sensitiveHeaders;var getMaskingConfig=exports.getMaskingConfig=function getMaskingConfig(masking){var _a,_b,_c,_d;var baseMasking=_defaults.DEFAULT_MASKING_CONFIG;if((0,_typeof2["default"])(masking)!=='object'){return baseMasking;}var maskHeadersList=(0,_validators.isValidArray)(masking.maskHeadersList,sensitiveHeaders);var maskBodyFieldsList=(0,_validators.isValidArray)(masking.maskBodyFieldsList,sensitiveFields);return{maskHeadersList:maskHeadersList,maskBodyFieldsList:maskBodyFieldsList,headersToInclude:(0,_validators.isValidArray)(masking.headersToInclude,(_a=baseMasking.headersToInclude)!==null&&_a!==void 0?_a:[]),headersToExclude:(0,_validators.isValidArray)(masking.headersToExclude,(_b=baseMasking.headersToExclude)!==null&&_b!==void 0?_b:[]),isContentMaskingEnabled:(0,_validators.isValidBoolean)(masking.isContentMaskingEnabled,(_c=baseMasking.isContentMaskingEnabled)!==null&&_c!==void 0?_c:true),maskBody:(0,_validators.isValidFunction)(masking.maskBody,mask(maskBodyFieldsList)),maskHeaders:(0,_validators.isValidFunction)(masking.maskHeaders,mask(maskHeadersList)),inputMasking:(0,_validators.isValidBoolean)(masking.inputMasking,(_d=baseMasking.inputMasking)!==null&&_d!==void 0?_d:true)};};
@@ -1 +1 @@
1
- {"version":3,"file":"masking.js","sourceRoot":"","sources":["../../src/config/masking.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAA;AAE7E,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAiB,EAAE;;IACzE,MAAM,WAAW,GAAG,sBAAsB,CAAA;IAE1C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAA;IAC/E,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAA;IAEpF,OAAO;QACL,eAAe;QACf,kBAAkB;QAClB,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAA,WAAW,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QAC5F,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAA,WAAW,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QAC5F,uBAAuB,EAAE,cAAc,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAA,WAAW,CAAC,uBAAuB,mCAAI,IAAI,CAAC;QACrH,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACrE,WAAW,EAAE,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;KACzE,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"masking.js","sourceRoot":"","sources":["../../src/config/masking.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAA;AAE7E,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAiB,EAAE;;IACzE,MAAM,WAAW,GAAG,sBAAsB,CAAA;IAE1C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAA;IAC/E,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAA;IAEpF,OAAO;QACL,eAAe;QACf,kBAAkB;QAClB,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAA,WAAW,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QAC5F,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAA,WAAW,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QAC5F,uBAAuB,EAAE,cAAc,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAA,WAAW,CAAC,uBAAuB,mCAAI,IAAI,CAAC;QACrH,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACrE,WAAW,EAAE,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACxE,YAAY,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,MAAA,WAAW,CAAC,YAAY,mCAAI,IAAI,CAAC;KACrF,CAAA;AACH,CAAC,CAAA"}
@@ -1,8 +1,10 @@
1
1
  import React, { PropsWithChildren } from 'react';
2
- import { SessionRecorderOptions } from '../types';
3
- import SessionRecorder from '../session-recorder';
2
+ import { SessionRecorderOptions, SessionState } from '../types';
3
+ import sessionRecorder from '../session-recorder';
4
4
  interface SessionRecorderContextType {
5
- instance: typeof SessionRecorder;
5
+ instance: typeof sessionRecorder;
6
+ isInitialized: boolean;
7
+ sessionState: SessionState | null;
6
8
  }
7
9
  export interface SessionRecorderProviderProps extends PropsWithChildren {
8
10
  options: SessionRecorderOptions;
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.useSessionRecorder=exports.SessionRecorderProvider=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _types=require("../types");var _sessionRecorder=_interopRequireDefault(require("../session-recorder"));var _GestureCaptureWrapper=require("../components/GestureCaptureWrapper");var _utils=require("../utils");var _jsxRuntime=require("react/jsx-runtime");var _this=void 0,_jsxFileName="/Users/gegham/www/multiplayer-debugger-javascript/packages/session-recorder-react-native/dist/context/SessionRecorderContext.js";function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,"default":e};if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}var SessionRecorderContext=(0,_react.createContext)(null);var SessionRecorderProvider=exports.SessionRecorderProvider=function SessionRecorderProvider(_ref){var children=_ref.children,options=_ref.options;var _useState=(0,_react.useState)(null),_useState2=(0,_slicedToArray2["default"])(_useState,2),sessionState=_useState2[0],setSessionState=_useState2[1];var optionsRef=(0,_react.useRef)();(0,_react.useEffect)(function(){var newOptions=JSON.stringify(options);if(optionsRef.current===JSON.stringify(options))return;optionsRef.current=newOptions;_sessionRecorder["default"].init(options);},[options]);(0,_react.useEffect)(function(){setSessionState(_sessionRecorder["default"].sessionState);_sessionRecorder["default"].on('state-change',function(state){setSessionState(state);});},[]);var onToggleSession=function onToggleSession(){if(_sessionRecorder["default"].sessionState===_types.SessionState.started){_sessionRecorder["default"].stop();}else{_sessionRecorder["default"].start();}};return(0,_jsxRuntime.jsx)(SessionRecorderContext.Provider,{value:{instance:_sessionRecorder["default"]},children:(0,_jsxRuntime.jsxs)(GestureEventCapture,{children:[children,(0,_jsxRuntime.jsx)(_reactNative.Pressable,{onPress:onToggleSession,children:(0,_jsxRuntime.jsx)(_reactNative.View,{style:{position:'absolute',right:0,bottom:100,width:48,height:48,paddingTop:16,paddingLeft:10,backgroundColor:'red',borderTopLeftRadius:24,borderBottomLeftRadius:24},children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:{color:'white'},children:sessionState===_types.SessionState.started?'Stop':'Start'})})})]})});};var GestureEventCapture=function GestureEventCapture(_ref2){var children=_ref2.children;var handleGestureRecord=(0,_react.useCallback)(function(gestureType,data){var _a,_b,_c,_d,_e,_f,_g;if(_sessionRecorder["default"].sessionState!==_types.SessionState.started){_utils.logger.debug('SessionRecorderContext','Gesture recording skipped',{client:!!_sessionRecorder["default"].sessionState,sessionState:_sessionRecorder["default"].sessionState});return;}_utils.logger.debug('SessionRecorderContext','Gesture recorded',{gestureType:gestureType,data:data});try{switch(gestureType){case'tap':_utils.logger.debug('SessionRecorderContext','Recording tap as touch start + end');(_a=_sessionRecorder["default"].recordTouchStart)===null||_a===void 0?void 0:_a.call(_sessionRecorder["default"],data.x,data.y,undefined,1.0);(_b=_sessionRecorder["default"].recordTouchEnd)===null||_b===void 0?void 0:_b.call(_sessionRecorder["default"],data.x,data.y,undefined,1.0);break;case'pan_start':_utils.logger.debug('SessionRecorderContext','Recording pan_start as touch start');(_c=_sessionRecorder["default"].recordTouchStart)===null||_c===void 0?void 0:_c.call(_sessionRecorder["default"],data.x,data.y,undefined,1.0);break;case'pan_update':_utils.logger.debug('SessionRecorderContext','Recording pan_update as touch move');(_d=_sessionRecorder["default"].recordTouchMove)===null||_d===void 0?void 0:_d.call(_sessionRecorder["default"],data.x,data.y,undefined,1.0);break;case'pan_end':_utils.logger.debug('SessionRecorderContext','Recording pan_end as touch end');(_e=_sessionRecorder["default"].recordTouchEnd)===null||_e===void 0?void 0:_e.call(_sessionRecorder["default"],data.x,data.y,undefined,1.0);break;case'long_press':_utils.logger.debug('SessionRecorderContext','Recording long_press as touch start + end');(_f=_sessionRecorder["default"].recordTouchStart)===null||_f===void 0?void 0:_f.call(_sessionRecorder["default"],data.x,data.y,undefined,1.0);(_g=_sessionRecorder["default"].recordTouchEnd)===null||_g===void 0?void 0:_g.call(_sessionRecorder["default"],data.x,data.y,undefined,1.0);break;default:}}catch(error){_utils.logger.error('SessionRecorderContext','Failed to record gesture event',error);}},[]);var setViewShotRef=function setViewShotRef(ref){var _a;if(ref){(_a=_sessionRecorder["default"].setViewShotRef)===null||_a===void 0?void 0:_a.call(_sessionRecorder["default"],ref);}};return(0,_jsxRuntime.jsx)(_GestureCaptureWrapper.GestureCaptureWrapper,{onGestureRecord:handleGestureRecord,children:(0,_jsxRuntime.jsx)(_reactNative.View,{ref:setViewShotRef,style:{flex:1},children:children})});};var useSessionRecorder=exports.useSessionRecorder=function useSessionRecorder(){var context=(0,_react.useContext)(SessionRecorderContext);if(!context){throw new Error('useSessionRecorder must be used within a SessionRecorderProvider');}return context;};
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.useSessionRecorder=exports.SessionRecorderProvider=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _types=require("../types");var _sessionRecorder=_interopRequireDefault(require("../session-recorder"));var _ScreenRecorderView=require("../components/ScreenRecorderView");var _SessionRecorderWidget=_interopRequireDefault(require("../components/SessionRecorderWidget"));var _jsxRuntime=require("react/jsx-runtime");var _this=void 0,_jsxFileName="/Users/gegham/www/multiplayer-debugger-javascript/packages/session-recorder-react-native/dist/context/SessionRecorderContext.js";function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,"default":e};if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}var SessionRecorderContext=(0,_react.createContext)(null);var SessionRecorderProvider=exports.SessionRecorderProvider=function SessionRecorderProvider(_ref){var children=_ref.children,options=_ref.options;var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2["default"])(_useState,2),isInitialized=_useState2[0],setIsInitialized=_useState2[1];var _useState3=(0,_react.useState)(_types.SessionState.stopped),_useState4=(0,_slicedToArray2["default"])(_useState3,2),sessionState=_useState4[0],setSessionState=_useState4[1];var optionsRef=(0,_react.useRef)();(0,_react.useEffect)(function(){var newOptions=JSON.stringify(options);if(optionsRef.current===JSON.stringify(options))return;optionsRef.current=newOptions;_sessionRecorder["default"].init(options);setIsInitialized(true);},[options]);(0,_react.useEffect)(function(){setSessionState(_sessionRecorder["default"].sessionState);_sessionRecorder["default"].on('state-change',function(state){setSessionState(state);});},[]);return(0,_jsxRuntime.jsxs)(SessionRecorderContext.Provider,{value:{instance:_sessionRecorder["default"],sessionState:sessionState,isInitialized:isInitialized},children:[(0,_jsxRuntime.jsx)(_ScreenRecorderView.ScreenRecorderView,{children:children}),isInitialized&&!!_sessionRecorder["default"].config.showWidget&&(0,_jsxRuntime.jsx)(_SessionRecorderWidget["default"],{})]});};var useSessionRecorder=exports.useSessionRecorder=function useSessionRecorder(){var context=(0,_react.useContext)(SessionRecorderContext);if(!context){throw new Error('useSessionRecorder must be used within a SessionRecorderProvider');}return context;};
@@ -1 +1 @@
1
- {"version":3,"file":"SessionRecorderContext.js","sourceRoot":"","sources":["../../src/context/SessionRecorderContext.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionRecorderContext.js","sourceRoot":"","sources":["../../src/context/SessionRecorderContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAqB,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACxG,OAAO,EAA0B,YAAY,EAAE,MAAM,UAAU,CAAA;AAC/D,OAAO,eAAe,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,qBAAqB,MAAM,qCAAqC,CAAA;AAQvE,MAAM,sBAAsB,GAAG,aAAa,CAAoC,IAAI,CAAC,CAAA;AAMrF,MAAM,CAAC,MAAM,uBAAuB,GAA2C,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;IACvG,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAsB,YAAY,CAAC,OAAO,CAAC,CAAA;IAC3F,MAAM,UAAU,GAAG,MAAM,EAAU,CAAA;IAEnC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAC1C,IAAI,UAAU,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAAE,OAAM;QAC1D,UAAU,CAAC,OAAO,GAAG,UAAU,CAAA;QAC/B,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC7B,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEb,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;QAC7C,eAAe,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,KAAmB,EAAE,EAAE;YACzD,eAAe,CAAC,KAAK,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,CACL,CAAC,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CACjG;MAAA,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAClD;MAAA,CAAC,aAAa,IAAI,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,qBAAqB,CAAC,AAAD,EAAG,CACpF;IAAA,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CACnC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAA+B,EAAE;IACjE,MAAM,OAAO,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAA;IAClD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;IACrF,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAChB,OAAO,eAAe,MAAM,oBAAoB,CAAA;AAChD,cAAc,0CAA0C,CAAA;AACxD,cAAc,kCAAkC,CAAA;AAGhD,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,iCAAiC;AACjC,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAChB,OAAO,eAAe,MAAM,oBAAoB,CAAA;AAChD,cAAc,0CAA0C,CAAA;AACxD,cAAc,kCAAkC,CAAA;AAEhD,qCAAqC;AACrC,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,iCAAiC;AACjC,eAAe,eAAe,CAAA"}
@@ -0,0 +1,21 @@
1
+ export interface MaskingOptions {
2
+ /** Quality of the captured image (0.1 to 1.0) */
3
+ quality?: number;
4
+ /** Whether to mask all input fields automatically */
5
+ inputMasking?: boolean;
6
+ }
7
+ export interface SessionRecorderNativeModule {
8
+ /**
9
+ * Capture the current screen and apply masking to sensitive elements
10
+ * @returns Promise that resolves to base64 encoded image
11
+ */
12
+ captureAndMask(): Promise<string>;
13
+ /**
14
+ * Capture the current screen and apply masking with custom options
15
+ * @param options Custom masking options
16
+ * @returns Promise that resolves to base64 encoded image
17
+ */
18
+ captureAndMaskWithOptions(options: MaskingOptions): Promise<string>;
19
+ }
20
+ declare const _default: SessionRecorderNativeModule;
21
+ export default _default;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _reactNative=require("react-native");var SessionRecorder=_reactNative.NativeModules.SessionRecorder;if(!SessionRecorder){console.warn('SessionRecorder native module is not available. Auto-linking may not have completed yet.');}var _default=exports["default"]=SessionRecorder;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScreenMasking.js","sourceRoot":"","sources":["../../src/native/ScreenMasking.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAyB5C,wBAAwB;AACxB,MAAM,EAAE,eAAe,EAAE,GAAG,aAAa,CAAA;AAEzC,+CAA+C;AAC/C,IAAI,CAAC,eAAe,EAAE,CAAC;IACrB,OAAO,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAA;AAC1G,CAAC;AAED,eAAe,eAA8C,CAAA"}
@@ -0,0 +1,21 @@
1
+ export interface MaskingOptions {
2
+ /** Quality of the captured image (0.1 to 1.0) */
3
+ quality?: number;
4
+ /** Whether to mask all input fields automatically */
5
+ inputMasking?: boolean;
6
+ }
7
+ export interface SessionRecorderNativeModule {
8
+ /**
9
+ * Capture the current screen and apply masking to sensitive elements
10
+ * @returns Promise that resolves to base64 encoded image
11
+ */
12
+ captureAndMask(): Promise<string>;
13
+ /**
14
+ * Capture the current screen and apply masking with custom options
15
+ * @param options Custom masking options
16
+ * @returns Promise that resolves to base64 encoded image
17
+ */
18
+ captureAndMaskWithOptions(options: MaskingOptions): Promise<string>;
19
+ }
20
+ declare const _default: SessionRecorderNativeModule;
21
+ export default _default;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _reactNative=require("react-native");var SessionRecorderNative=_reactNative.NativeModules.SessionRecorderNative;if(!SessionRecorderNative){console.warn('SessionRecorderNative module is not available. Auto-linking may not have completed yet.');}var _default=exports["default"]=SessionRecorderNative;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderNative.js","sourceRoot":"","sources":["../../src/native/SessionRecorderNative.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAyB5C,wBAAwB;AACxB,MAAM,EAAE,qBAAqB,EAAE,GAAG,aAAa,CAAA;AAE/C,+CAA+C;AAC/C,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,yFAAyF,CAAC,CAAA;AACzG,CAAC;AAED,eAAe,qBAAoD,CAAA"}
@@ -6,8 +6,6 @@ export declare class TracerReactNativeSDK {
6
6
  private sessionId;
7
7
  private idGenerator?;
8
8
  private exporter?;
9
- private navigationInstrumentation?;
10
- private gestureInstrumentation?;
11
9
  private isInitialized;
12
10
  constructor();
13
11
  private _setSessionId;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,3 @@ import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch';
2
2
  import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request';
3
3
  import { TracerReactNativeConfig } from '../../types';
4
4
  export declare function getInstrumentations(config: TracerReactNativeConfig): (FetchInstrumentation | XMLHttpRequestInstrumentation)[];
5
- export { ReactNativeInstrumentation } from './reactNativeInstrumentation';
6
- export { ReactNavigationInstrumentation } from './reactNavigationInstrumentation';
7
- export { GestureInstrumentation } from './gestureInstrumentation';
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"GestureInstrumentation",{enumerable:true,get:function get(){return _gestureInstrumentation.GestureInstrumentation;}});Object.defineProperty(exports,"ReactNativeInstrumentation",{enumerable:true,get:function get(){return _reactNativeInstrumentation.ReactNativeInstrumentation;}});Object.defineProperty(exports,"ReactNavigationInstrumentation",{enumerable:true,get:function get(){return _reactNavigationInstrumentation.ReactNavigationInstrumentation;}});exports.getInstrumentations=getInstrumentations;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _instrumentationFetch=require("@opentelemetry/instrumentation-fetch");var _instrumentationXmlHttpRequest=require("@opentelemetry/instrumentation-xml-http-request");var _config=require("../../config");var _helpers=require("../helpers");var _utils=require("../../utils");var _reactNativeInstrumentation=require("./reactNativeInstrumentation");var _reactNavigationInstrumentation=require("./reactNavigationInstrumentation");var _gestureInstrumentation=require("./gestureInstrumentation");function getInstrumentations(config){var instrumentations=[];try{instrumentations.push(new _instrumentationFetch.FetchInstrumentation({clearTimingResources:false,ignoreUrls:[].concat((0,_toConsumableArray2["default"])(_config.OTEL_IGNORE_URLS),(0,_toConsumableArray2["default"])(config.ignoreUrls||[])),propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls,applyCustomAttributesOnSpan:function(){var _applyCustomAttributesOnSpan=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(span,request,response){var captureBody,captureHeaders,requestBody,requestHeaders,responseHeaders,responseBody,payload,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(config){_context.next=1;break;}return _context.abrupt("return");case 1:captureBody=config.captureBody,captureHeaders=config.captureHeaders;_context.prev=2;if(!(!captureBody&&!captureHeaders)){_context.next=3;break;}return _context.abrupt("return");case 3:requestBody=request.body;requestHeaders=(0,_helpers.headersToObject)(request.headers);responseHeaders=(0,_helpers.headersToObject)(response instanceof Response?response.headers:undefined);responseBody=null;if(!(response instanceof Response&&response.body)){_context.next=5;break;}_context.next=4;return(0,_helpers.extractResponseBody)(response);case 4:responseBody=_context.sent;case 5:payload={requestBody:requestBody,responseBody:responseBody,requestHeaders:requestHeaders,responseHeaders:responseHeaders};(0,_helpers.processHttpPayload)(payload,config,span);_context.next=7;break;case 6:_context.prev=6;_t=_context["catch"](2);_utils.logger.error('DEBUGGER_LIB','Failed to capture fetch payload',_t);case 7:case"end":return _context.stop();}},_callee,null,[[2,6]]);}));function applyCustomAttributesOnSpan(_x,_x2,_x3){return _applyCustomAttributesOnSpan.apply(this,arguments);}return applyCustomAttributesOnSpan;}()}));}catch(error){_utils.logger.warn('DEBUGGER_LIB','Fetch instrumentation not available',error);}try{instrumentations.push(new _instrumentationXmlHttpRequest.XMLHttpRequestInstrumentation({clearTimingResources:false,ignoreUrls:[].concat((0,_toConsumableArray2["default"])(_config.OTEL_IGNORE_URLS),(0,_toConsumableArray2["default"])(config.ignoreUrls||[])),propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls,applyCustomAttributesOnSpan:function applyCustomAttributesOnSpan(span,xhr){if(!config)return;var captureBody=config.captureBody,captureHeaders=config.captureHeaders;try{if(!captureBody&&!captureHeaders){return;}var requestBody=xhr.networkRequest.requestBody;var responseBody=xhr.networkRequest.responseBody;var requestHeaders=xhr.networkRequest.requestHeaders||{};var responseHeaders=xhr.networkRequest.responseHeaders||{};var payload={requestBody:requestBody,responseBody:responseBody,requestHeaders:requestHeaders,responseHeaders:responseHeaders};(0,_helpers.processHttpPayload)(payload,config,span);}catch(error){_utils.logger.error('DEBUGGER_LIB','Failed to capture xml-http payload',error);}}}));}catch(error){_utils.logger.warn('DEBUGGER_LIB','XMLHttpRequest instrumentation not available',error);}return instrumentations;}
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.getInstrumentations=getInstrumentations;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _instrumentationFetch=require("@opentelemetry/instrumentation-fetch");var _instrumentationXmlHttpRequest=require("@opentelemetry/instrumentation-xml-http-request");var _utils=require("../../utils");var _config=require("../../config");var _helpers=require("../helpers");function getInstrumentations(config){var instrumentations=[];try{instrumentations.push(new _instrumentationFetch.FetchInstrumentation({clearTimingResources:false,ignoreUrls:[].concat((0,_toConsumableArray2["default"])(_config.OTEL_IGNORE_URLS),(0,_toConsumableArray2["default"])(config.ignoreUrls||[])),propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls,applyCustomAttributesOnSpan:function(){var _applyCustomAttributesOnSpan=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(span,request,response){var captureBody,captureHeaders,requestBody,requestHeaders,responseHeaders,responseBody,payload,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(config){_context.next=1;break;}return _context.abrupt("return");case 1:captureBody=config.captureBody,captureHeaders=config.captureHeaders;_context.prev=2;if(!(!captureBody&&!captureHeaders)){_context.next=3;break;}return _context.abrupt("return");case 3:requestBody=request.body;requestHeaders=(0,_helpers.headersToObject)(request.headers);responseHeaders=(0,_helpers.headersToObject)(response instanceof Response?response.headers:undefined);responseBody=null;if(!(response instanceof Response&&response.body)){_context.next=5;break;}_context.next=4;return(0,_helpers.extractResponseBody)(response);case 4:responseBody=_context.sent;case 5:payload={requestBody:requestBody,responseBody:responseBody,requestHeaders:requestHeaders,responseHeaders:responseHeaders};(0,_helpers.processHttpPayload)(payload,config,span);_context.next=7;break;case 6:_context.prev=6;_t=_context["catch"](2);_utils.logger.error('DEBUGGER_LIB','Failed to capture fetch payload',_t);case 7:case"end":return _context.stop();}},_callee,null,[[2,6]]);}));function applyCustomAttributesOnSpan(_x,_x2,_x3){return _applyCustomAttributesOnSpan.apply(this,arguments);}return applyCustomAttributesOnSpan;}()}));}catch(error){_utils.logger.warn('DEBUGGER_LIB','Fetch instrumentation not available',error);}try{instrumentations.push(new _instrumentationXmlHttpRequest.XMLHttpRequestInstrumentation({clearTimingResources:false,ignoreUrls:[].concat((0,_toConsumableArray2["default"])(_config.OTEL_IGNORE_URLS),(0,_toConsumableArray2["default"])(config.ignoreUrls||[])),propagateTraceHeaderCorsUrls:config.propagateTraceHeaderCorsUrls,applyCustomAttributesOnSpan:function applyCustomAttributesOnSpan(span,xhr){if(!config)return;var captureBody=config.captureBody,captureHeaders=config.captureHeaders;try{if(!captureBody&&!captureHeaders){return;}var requestBody=xhr.networkRequest.requestBody;var responseBody=xhr.networkRequest.responseBody;var requestHeaders=xhr.networkRequest.requestHeaders||{};var responseHeaders=xhr.networkRequest.responseHeaders||{};var payload={requestBody:requestBody,responseBody:responseBody,requestHeaders:requestHeaders,responseHeaders:responseHeaders};(0,_helpers.processHttpPayload)(payload,config,span);}catch(error){_utils.logger.error('DEBUGGER_LIB','Failed to capture xml-http payload',error);}}}));}catch(error){_utils.logger.warn('DEBUGGER_LIB','XMLHttpRequest instrumentation not available',error);}return instrumentations;}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/otel/instrumentations/index.ts"],"names":[],"mappings":"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"}
package/dist/patch/xhr.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.setShouldRecordHttpData=exports.setMaxCapturingHttpPayloadSize=void 0;var _typeUtils=require("../utils/type-utils");var _requestUtils=require("../utils/request-utils");var _config=require("../config");var recordRequestHeaders=true;var recordResponseHeaders=true;var shouldRecordBody=true;var maxCapturingHttpPayloadSize=_config.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE;var setMaxCapturingHttpPayloadSize=exports.setMaxCapturingHttpPayloadSize=function setMaxCapturingHttpPayloadSize(_maxCapturingHttpPayloadSize){maxCapturingHttpPayloadSize=_maxCapturingHttpPayloadSize;};var setShouldRecordHttpData=exports.setShouldRecordHttpData=function setShouldRecordHttpData(shouldRecordBody,shouldRecordHeaders){recordRequestHeaders=shouldRecordHeaders;recordResponseHeaders=shouldRecordHeaders;shouldRecordBody=shouldRecordBody;};function _tryReadXHRBody(_ref){var body=_ref.body,url=_ref.url;if((0,_typeUtils.isNullish)(body)){return null;}if((0,_typeUtils.isString)(body)){return body;}if((0,_typeUtils.isFormData)(body)){return(0,_requestUtils.formDataToQuery)(body);}if((0,_typeUtils.isObject)(body)){try{return JSON.stringify(body);}catch(_a){return'[XHR] Failed to stringify response object';}}return"[XHR] Cannot read body of type ".concat(Object.prototype.toString.call(body));}(function(xhr){var originalOpen=XMLHttpRequest.prototype.open;xhr.open=function(method,url){var async=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;var username=arguments.length>3?arguments[3]:undefined;var password=arguments.length>4?arguments[4]:undefined;var xhr=this;var networkRequest={};var requestHeaders={};var originalSetRequestHeader=xhr.setRequestHeader.bind(xhr);xhr.setRequestHeader=function(header,value){requestHeaders[header]=value;return originalSetRequestHeader(header,value);};if(recordRequestHeaders){networkRequest.requestHeaders=requestHeaders;}var originalSend=xhr.send.bind(xhr);xhr.send=function(body){if(shouldRecordBody){var requestBody=_tryReadXHRBody({body:body,url:url});if((requestBody===null||requestBody===void 0?void 0:requestBody.length)&&requestBody.length<=maxCapturingHttpPayloadSize){networkRequest.requestBody=requestBody;}}return originalSend(body);};xhr.addEventListener('readystatechange',function(){if(xhr.readyState!==xhr.DONE){return;}var responseHeaders={};var rawHeaders=xhr.getAllResponseHeaders();var headers=rawHeaders.trim().split(/[\r\n]+/);headers.forEach(function(line){var parts=line.split(': ');var header=parts.shift();var value=parts.join(': ');if(header){responseHeaders[header]=value;}});if(recordResponseHeaders){networkRequest.responseHeaders=responseHeaders;}if(shouldRecordBody){var responseBody=_tryReadXHRBody({body:xhr.response,url:url});if((responseBody===null||responseBody===void 0?void 0:responseBody.length)&&responseBody.length<=maxCapturingHttpPayloadSize){networkRequest.responseBody=responseBody;}}});xhr.networkRequest=networkRequest;originalOpen.call(xhr,method,url,async,username,password);};})(XMLHttpRequest.prototype);
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.setShouldRecordHttpData=exports.setMaxCapturingHttpPayloadSize=void 0;var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _typeUtils=require("../utils/type-utils");var _requestUtils=require("../utils/request-utils");var _config=require("../config");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 recordRequestHeaders=true;var recordResponseHeaders=true;var shouldRecordBody=true;var maxCapturingHttpPayloadSize=_config.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE;var setMaxCapturingHttpPayloadSize=exports.setMaxCapturingHttpPayloadSize=function setMaxCapturingHttpPayloadSize(_maxCapturingHttpPayloadSize){maxCapturingHttpPayloadSize=_maxCapturingHttpPayloadSize;};var setShouldRecordHttpData=exports.setShouldRecordHttpData=function setShouldRecordHttpData(shouldRecordBody,shouldRecordHeaders){recordRequestHeaders=shouldRecordHeaders;recordResponseHeaders=shouldRecordHeaders;shouldRecordBody=shouldRecordBody;};function _tryReadXHRBody(_ref){var body=_ref.body,url=_ref.url;if((0,_typeUtils.isNullish)(body)){return null;}if((0,_typeUtils.isString)(body)){return body;}if((0,_typeUtils.isFormData)(body)){return(0,_requestUtils.formDataToQuery)(body);}if((0,_typeUtils.isObject)(body)){try{return JSON.stringify(_objectSpread({},body));}catch(_a){return'[XHR] Failed to stringify response object';}}return"[XHR] Cannot read body of type ".concat(Object.prototype.toString.call(body));}(function(xhr){var originalOpen=XMLHttpRequest.prototype.open;xhr.open=function(method,url){var async=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;var username=arguments.length>3?arguments[3]:undefined;var password=arguments.length>4?arguments[4]:undefined;var xhr=this;var networkRequest={};var requestHeaders={};var originalSetRequestHeader=xhr.setRequestHeader.bind(xhr);xhr.setRequestHeader=function(header,value){requestHeaders[header]=value;return originalSetRequestHeader(header,value);};if(recordRequestHeaders){networkRequest.requestHeaders=requestHeaders;}var originalSend=xhr.send.bind(xhr);xhr.send=function(body){if(shouldRecordBody){var requestBody=_tryReadXHRBody({body:body,url:url});if((requestBody===null||requestBody===void 0?void 0:requestBody.length)&&requestBody.length<=maxCapturingHttpPayloadSize){networkRequest.requestBody=requestBody;}}return originalSend(body);};xhr.addEventListener('readystatechange',function(){if(xhr.readyState!==xhr.DONE){return;}var responseHeaders={};var rawHeaders=xhr.getAllResponseHeaders()||'';var headers=rawHeaders.trim().split(/[\r\n]+/).filter(Boolean);headers.forEach(function(line){var parts=line.split(': ');var header=parts.shift();var value=parts.join(': ');if(header){responseHeaders[header]=value;}});if(recordResponseHeaders){networkRequest.responseHeaders=responseHeaders;}if(shouldRecordBody){var responseBody=_tryReadXHRBody({body:xhr.response,url:url});if((responseBody===null||responseBody===void 0?void 0:responseBody.length)&&responseBody.length<=maxCapturingHttpPayloadSize){networkRequest.responseBody=responseBody;}}});xhr.networkRequest=networkRequest;originalOpen.call(xhr,method,url,async,username,password);};})(XMLHttpRequest.prototype);
@@ -1 +1 @@
1
- {"version":3,"file":"xhr.js","sourceRoot":"","sources":["../../src/patch/xhr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xhr.js","sourceRoot":"","sources":["../../src/patch/xhr.ts"],"names":[],"mappings":"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"}
@@ -18,13 +18,7 @@ export declare class GestureRecorder implements EventRecorder {
18
18
  init(config: RecorderConfig, eventRecorder?: EventRecorder, screenRecorder?: any): void;
19
19
  start(): void;
20
20
  stop(): void;
21
- pause(): void;
22
- resume(): void;
23
21
  private _getScreenDimensions;
24
- private _setupInputTracking;
25
- private _setupGestureHandlers;
26
- private _setupGlobalGestureListener;
27
- private _setupAutomaticTouchCapture;
28
22
  private _removeGestureHandlers;
29
23
  private _recordEvent;
30
24
  private _sendEvent;
@@ -40,9 +34,6 @@ export declare class GestureRecorder implements EventRecorder {
40
34
  recordMultiTouch(touchCount: number, target?: string): void;
41
35
  recordScroll(direction: string, distance: number, velocity: number, target?: string): void;
42
36
  recordZoom(scale: number, target?: string, velocity?: number): void;
43
- recordGestureSequence(gestures: string[], duration: number, target?: string): void;
44
- recordGestureError(error: Error, gestureType: string, target?: string): void;
45
- recordGesturePerformance(gestureType: string, duration: number, target?: string): void;
46
37
  getEvents(): GestureEvent[];
47
38
  clearEvents(): void;
48
39
  getEventStats(): Record<string, number>;
@@ -1 +1 @@
1
- "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureRecorder=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _types=require("../types");var _api=require("@opentelemetry/api");var _reactNative=require("react-native");var _utils=require("../utils");var GestureRecorder=exports.GestureRecorder=function(){function GestureRecorder(){(0,_classCallCheck2["default"])(this,GestureRecorder);this.isRecording=false;this.events=[];this.gestureHandlers=new Map();this.screenDimensions=null;this.lastGestureTime=0;this.gestureThrottleMs=50;this.lastTouchTime=0;this.touchThrottleMs=100;this.isRecordingGesture=false;this.gestureCallStack=[];this.maxGestureCallDepth=5;this.imageNodeId=1;}return(0,_createClass2["default"])(GestureRecorder,[{key:"init",value:function init(config,eventRecorder,screenRecorder){this.config=config;this.eventRecorder=eventRecorder;this.screenRecorder=screenRecorder;this._getScreenDimensions();}},{key:"start",value:function start(){_utils.logger.info('GestureRecorder','Gesture recording started');this.isRecording=true;this.events=[];this._setupGestureHandlers();this._setupAutomaticTouchCapture();}},{key:"stop",value:function stop(){this.isRecording=false;this._removeGestureHandlers();}},{key:"pause",value:function pause(){this.isRecording=false;}},{key:"resume",value:function resume(){this.isRecording=true;}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{this.screenDimensions=_reactNative.Dimensions.get('window');}catch(error){this.screenDimensions={width:375,height:667};}}},{key:"_setupInputTracking",value:function _setupInputTracking(){try{}catch(error){}}},{key:"_setupGestureHandlers",value:function _setupGestureHandlers(){this._setupGlobalGestureListener();}},{key:"_setupGlobalGestureListener",value:function _setupGlobalGestureListener(){try{}catch(error){}}},{key:"_setupAutomaticTouchCapture",value:function _setupAutomaticTouchCapture(){try{}catch(error){}}},{key:"_removeGestureHandlers",value:function _removeGestureHandlers(){this.gestureHandlers.clear();}},{key:"_recordEvent",value:function _recordEvent(event){if(!this.isRecording)return;var now=Date.now();if(now-this.lastGestureTime<this.gestureThrottleMs){return;}this.lastGestureTime=now;this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);}},{key:"_sendEvent",value:function _sendEvent(event){}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{var span=_api.trace.getTracer('gesture').startSpan("Gesture.".concat(event.type),{attributes:{'gesture.type':event.type,'gesture.timestamp':event.timestamp,'gesture.platform':'react-native'}});if(event.coordinates){span.setAttribute('gesture.coordinates.x',event.coordinates.x);span.setAttribute('gesture.coordinates.y',event.coordinates.y);if(this.screenDimensions){var relativeX=event.coordinates.x/this.screenDimensions.width;var relativeY=event.coordinates.y/this.screenDimensions.height;span.setAttribute('gesture.coordinates.relative_x',relativeX);span.setAttribute('gesture.coordinates.relative_y',relativeY);}}if(event.target){span.setAttribute('gesture.target',event.target);}if(event.metadata){Object.entries(event.metadata).forEach(function(_ref){var _ref2=(0,_slicedToArray2["default"])(_ref,2),key=_ref2[0],value=_ref2[1];span.setAttribute("gesture.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}catch(error){}}},{key:"recordTap",value:function recordTap(x,y,target,pressure){var _a,_b;var event={type:'tap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordSwipe",value:function recordSwipe(direction,target,velocity,distance){var _a,_b;var event={type:'swipe',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity||0,distance:distance||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPinch",value:function recordPinch(scale,target,velocity){var _a,_b;var event={type:'pinch',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target,velocity){var _a,_b;var event={type:'pan',timestamp:Date.now(),target:target,metadata:{deltaX:deltaX,deltaY:deltaY,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordLongPress",value:function recordLongPress(duration,target,pressure){var _a,_b;var event={type:'longPress',timestamp:Date.now(),target:target,metadata:{duration:duration,pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordDoubleTap",value:function recordDoubleTap(x,y,target){var _a,_b;var event={type:'doubleTap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordRotate",value:function recordRotate(rotation,target,velocity){var _a,_b;var event={type:'rotate',timestamp:Date.now(),target:target,metadata:{rotation:rotation,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordFling",value:function recordFling(direction,velocity,target){var _a,_b;var event={type:'fling',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordMultiTouch",value:function recordMultiTouch(touchCount,target){var _a,_b;var event={type:'multiTouch',timestamp:Date.now(),target:target,metadata:{touchCount:touchCount,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordScroll",value:function recordScroll(direction,distance,velocity,target){var _a,_b;var event={type:'scroll',timestamp:Date.now(),target:target,metadata:{direction:direction,distance:distance,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordZoom",value:function recordZoom(scale,target,velocity){var _a,_b;var event={type:'zoom',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordGestureSequence",value:function recordGestureSequence(gestures,duration,target){var _a,_b;var event={type:'gestureSequence',timestamp:Date.now(),target:target,metadata:{gestures:gestures.join(','),duration:duration,gestureCount:gestures.length,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordGestureError",value:function recordGestureError(error,gestureType,target){var _a,_b;var event={type:'gestureError',timestamp:Date.now(),target:target,metadata:{errorType:error.name,errorMessage:error.message,gestureType:gestureType,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);try{var span=_api.trace.getTracer('gesture').startSpan("Gesture.".concat(gestureType,".error"),{attributes:{'gesture.type':gestureType,'gesture.error':true,'gesture.error.type':error.name,'gesture.error.message':error.message,'gesture.timestamp':Date.now()}});span.setStatus({code:_api.SpanStatusCode.ERROR,message:error.message});span.recordException(error);span.end();}catch(spanError){}}},{key:"recordGesturePerformance",value:function recordGesturePerformance(gestureType,duration,target){var _a,_b;var event={type:'gesturePerformance',timestamp:Date.now(),target:target,metadata:{gestureType:gestureType,duration:duration,performance:'monitoring',screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"getEvents",value:function getEvents(){return(0,_toConsumableArray2["default"])(this.events);}},{key:"clearEvents",value:function clearEvents(){this.events=[];}},{key:"getEventStats",value:function getEventStats(){var stats={};this.events.forEach(function(event){stats[event.type]=(stats[event.type]||0)+1;});return stats;}},{key:"setGestureThrottle",value:function setGestureThrottle(throttleMs){this.gestureThrottleMs=throttleMs;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"recordEvent",value:function recordEvent(event){if(this.eventRecorder){this.eventRecorder.recordEvent(event);}}},{key:"_createMouseInteractionEvent",value:function _createMouseInteractionEvent(x,y,interactionType,target){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.MouseInteraction,type:interactionType,id:this.imageNodeId,x:x,y:y,pointerType:2},timestamp:Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"_createMouseMoveEvent",value:function _createMouseMoveEvent(x,y,target){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.MouseMove,positions:[{x:x,y:y,id:this.imageNodeId,timeOffset:0}]},timestamp:Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"recordTouchStart",value:function recordTouchStart(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs){_utils.logger.debug('GestureRecorder',"Touch start throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch start recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseInteractionEvent(x,y,_types.MouseInteractionType.MouseDown,target);}},{key:"recordTouchMove",value:function recordTouchMove(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs*2){_utils.logger.debug('GestureRecorder',"Touch move throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs*2,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch move recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseMoveEvent(x,y,target);}},{key:"recordTouchEnd",value:function recordTouchEnd(x,y,target,pressure){var _a;if(this.isRecordingGesture){_utils.logger.error('GestureRecorder','CYCLIC CALL DETECTED! Already recording gesture',this.gestureCallStack);return;}if(this.gestureCallStack.length>=this.maxGestureCallDepth){_utils.logger.error('GestureRecorder','MAX GESTURE CALL DEPTH REACHED!',this.gestureCallStack);return;}this.isRecordingGesture=true;this.gestureCallStack.push('recordTouchEnd');try{_utils.logger.debug('GestureRecorder','Touch end recorded',{x:x,y:y,target:target,pressure:pressure});this.recordTap(x,y,target,pressure);this._createMouseInteractionEvent(x,y,_types.MouseInteractionType.MouseUp,target);this._createMouseInteractionEvent(x,y,_types.MouseInteractionType.Click,target);_utils.logger.debug('GestureRecorder','Forcing screen capture after touch end');(_a=this.screenRecorder)===null||_a===void 0?void 0:_a.forceCapture();}finally{this.isRecordingGesture=false;this.gestureCallStack.pop();}}},{key:"recordTouchCancel",value:function recordTouchCancel(x,y,target){this._createMouseInteractionEvent(x,y,_types.MouseInteractionType.MouseUp,target);}},{key:"setImageNodeId",value:function setImageNodeId(nodeId){this.imageNodeId=nodeId;}}]);}();
1
+ "use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.GestureRecorder=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _api=require("@opentelemetry/api");var _reactNative=require("react-native");var _utils=require("../utils");var _types=require("@rrweb/types");var GestureRecorder=exports.GestureRecorder=function(){function GestureRecorder(){(0,_classCallCheck2["default"])(this,GestureRecorder);this.isRecording=false;this.events=[];this.gestureHandlers=new Map();this.screenDimensions=null;this.lastGestureTime=0;this.gestureThrottleMs=50;this.lastTouchTime=0;this.touchThrottleMs=100;this.isRecordingGesture=false;this.gestureCallStack=[];this.maxGestureCallDepth=5;this.imageNodeId=1;}return(0,_createClass2["default"])(GestureRecorder,[{key:"init",value:function init(config,eventRecorder,screenRecorder){this.config=config;this.eventRecorder=eventRecorder;this.screenRecorder=screenRecorder;this._getScreenDimensions();}},{key:"start",value:function start(){_utils.logger.info('GestureRecorder','Gesture recording started');this.isRecording=true;this.events=[];}},{key:"stop",value:function stop(){this.isRecording=false;this._removeGestureHandlers();}},{key:"_getScreenDimensions",value:function _getScreenDimensions(){try{this.screenDimensions=_reactNative.Dimensions.get('window');}catch(error){this.screenDimensions={width:375,height:667};}}},{key:"_removeGestureHandlers",value:function _removeGestureHandlers(){this.gestureHandlers.clear();}},{key:"_recordEvent",value:function _recordEvent(event){if(!this.isRecording)return;var now=Date.now();if(now-this.lastGestureTime<this.gestureThrottleMs){return;}this.lastGestureTime=now;this.events.push(event);this._sendEvent(event);this._recordOpenTelemetrySpan(event);}},{key:"_sendEvent",value:function _sendEvent(event){}},{key:"_recordOpenTelemetrySpan",value:function _recordOpenTelemetrySpan(event){try{var span=_api.trace.getTracer('@opentelemetry/instrumentation-user-interaction').startSpan("Gesture.".concat(event.type),{attributes:{'gesture.type':event.type,'gesture.timestamp':event.timestamp,'gesture.platform':'react-native'}});if(event.coordinates){span.setAttribute('gesture.coordinates.x',event.coordinates.x);span.setAttribute('gesture.coordinates.y',event.coordinates.y);if(this.screenDimensions){var relativeX=event.coordinates.x/this.screenDimensions.width;var relativeY=event.coordinates.y/this.screenDimensions.height;span.setAttribute('gesture.coordinates.relative_x',relativeX);span.setAttribute('gesture.coordinates.relative_y',relativeY);}}if(event.target){span.setAttribute('gesture.target',event.target);}if(event.metadata){Object.entries(event.metadata).forEach(function(_ref){var _ref2=(0,_slicedToArray2["default"])(_ref,2),key=_ref2[0],value=_ref2[1];span.setAttribute("gesture.metadata.".concat(key),String(value));});}span.setStatus({code:_api.SpanStatusCode.OK});span.end();}catch(error){}}},{key:"recordTap",value:function recordTap(x,y,target,pressure){var _a,_b;var event={type:'tap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordSwipe",value:function recordSwipe(direction,target,velocity,distance){var _a,_b;var event={type:'swipe',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity||0,distance:distance||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPinch",value:function recordPinch(scale,target,velocity){var _a,_b;var event={type:'pinch',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordPan",value:function recordPan(deltaX,deltaY,target,velocity){var _a,_b;var event={type:'pan',timestamp:Date.now(),target:target,metadata:{deltaX:deltaX,deltaY:deltaY,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordLongPress",value:function recordLongPress(duration,target,pressure){var _a,_b;var event={type:'longPress',timestamp:Date.now(),target:target,metadata:{duration:duration,pressure:pressure||1.0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordDoubleTap",value:function recordDoubleTap(x,y,target){var _a,_b;var event={type:'doubleTap',timestamp:Date.now(),coordinates:{x:x,y:y},target:target,metadata:{screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordRotate",value:function recordRotate(rotation,target,velocity){var _a,_b;var event={type:'rotate',timestamp:Date.now(),target:target,metadata:{rotation:rotation,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordFling",value:function recordFling(direction,velocity,target){var _a,_b;var event={type:'fling',timestamp:Date.now(),target:target,metadata:{direction:direction,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordMultiTouch",value:function recordMultiTouch(touchCount,target){var _a,_b;var event={type:'multiTouch',timestamp:Date.now(),target:target,metadata:{touchCount:touchCount,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordScroll",value:function recordScroll(direction,distance,velocity,target){var _a,_b;var event={type:'scroll',timestamp:Date.now(),target:target,metadata:{direction:direction,distance:distance,velocity:velocity,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"recordZoom",value:function recordZoom(scale,target,velocity){var _a,_b;var event={type:'zoom',timestamp:Date.now(),target:target,metadata:{scale:scale,velocity:velocity||0,screenWidth:(_a=this.screenDimensions)===null||_a===void 0?void 0:_a.width,screenHeight:(_b=this.screenDimensions)===null||_b===void 0?void 0:_b.height}};this._recordEvent(event);}},{key:"getEvents",value:function getEvents(){return(0,_toConsumableArray2["default"])(this.events);}},{key:"clearEvents",value:function clearEvents(){this.events=[];}},{key:"getEventStats",value:function getEventStats(){var stats={};this.events.forEach(function(event){stats[event.type]=(stats[event.type]||0)+1;});return stats;}},{key:"setGestureThrottle",value:function setGestureThrottle(throttleMs){this.gestureThrottleMs=throttleMs;}},{key:"isRecordingEnabled",value:function isRecordingEnabled(){return this.isRecording;}},{key:"recordEvent",value:function recordEvent(event){if(this.eventRecorder){this.eventRecorder.recordEvent(event);}}},{key:"_createMouseInteractionEvent",value:function _createMouseInteractionEvent(x,y,interactionType,target){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.MouseInteraction,type:interactionType,id:this.imageNodeId,x:x,y:y,pointerType:2},timestamp:Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"_createMouseMoveEvent",value:function _createMouseMoveEvent(x,y,target){var incrementalSnapshotEvent={type:_types.EventType.IncrementalSnapshot,data:{source:_types.IncrementalSource.TouchMove,positions:[{x:x,y:y,id:this.imageNodeId,timeOffset:0}]},timestamp:Date.now()};this.recordEvent(incrementalSnapshotEvent);}},{key:"recordTouchStart",value:function recordTouchStart(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs){_utils.logger.debug('GestureRecorder',"Touch start throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch start recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchStart,target);}},{key:"recordTouchMove",value:function recordTouchMove(x,y,target,pressure){var now=Date.now();if(now-this.lastTouchTime<this.touchThrottleMs*2){_utils.logger.debug('GestureRecorder',"Touch move throttled (".concat(now-this.lastTouchTime,"ms < ").concat(this.touchThrottleMs*2,"ms)"));return;}this.lastTouchTime=now;_utils.logger.debug('GestureRecorder','Touch move recorded',{x:x,y:y,target:target,pressure:pressure});this._createMouseMoveEvent(x,y,target);}},{key:"recordTouchEnd",value:function recordTouchEnd(x,y,target,pressure){var _a;if(this.isRecordingGesture){_utils.logger.error('GestureRecorder','CYCLIC CALL DETECTED! Already recording gesture',this.gestureCallStack);return;}if(this.gestureCallStack.length>=this.maxGestureCallDepth){_utils.logger.error('GestureRecorder','MAX GESTURE CALL DEPTH REACHED!',this.gestureCallStack);return;}this.isRecordingGesture=true;this.gestureCallStack.push('recordTouchEnd');try{_utils.logger.debug('GestureRecorder','Touch end recorded',{x:x,y:y,target:target,pressure:pressure});this.recordTap(x,y,target,pressure);this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchEnd,target);_utils.logger.debug('GestureRecorder','Forcing screen capture after touch end');(_a=this.screenRecorder)===null||_a===void 0?void 0:_a.forceCapture();}finally{this.isRecordingGesture=false;this.gestureCallStack.pop();}}},{key:"recordTouchCancel",value:function recordTouchCancel(x,y,target){this._createMouseInteractionEvent(x,y,_types.MouseInteractions.TouchCancel,target);}},{key:"setImageNodeId",value:function setImageNodeId(nodeId){this.imageNodeId=nodeId;}}]);}();