@multiplayer-app/session-recorder-react-native 1.3.16 → 1.3.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/lib/module/config/constants.js +3 -0
  2. package/lib/module/config/constants.js.map +1 -1
  3. package/lib/module/config/defaults.js +5 -1
  4. package/lib/module/config/defaults.js.map +1 -1
  5. package/lib/module/config/session-recorder.js +5 -1
  6. package/lib/module/config/session-recorder.js.map +1 -1
  7. package/lib/module/otel/CrashBufferSpanProcessor.js +41 -0
  8. package/lib/module/otel/CrashBufferSpanProcessor.js.map +1 -0
  9. package/lib/module/otel/index.js +28 -9
  10. package/lib/module/otel/index.js.map +1 -1
  11. package/lib/module/recorder/index.js +15 -1
  12. package/lib/module/recorder/index.js.map +1 -1
  13. package/lib/module/services/api.service.js +24 -2
  14. package/lib/module/services/api.service.js.map +1 -1
  15. package/lib/module/services/crashBuffer.service.js +248 -0
  16. package/lib/module/services/crashBuffer.service.js.map +1 -0
  17. package/lib/module/services/socket.service.js +9 -2
  18. package/lib/module/services/socket.service.js.map +1 -1
  19. package/lib/module/session-recorder.js +152 -6
  20. package/lib/module/session-recorder.js.map +1 -1
  21. package/lib/module/types/session-recorder.js.map +1 -1
  22. package/lib/typescript/src/config/constants.d.ts +1 -0
  23. package/lib/typescript/src/config/constants.d.ts.map +1 -1
  24. package/lib/typescript/src/config/defaults.d.ts.map +1 -1
  25. package/lib/typescript/src/config/session-recorder.d.ts.map +1 -1
  26. package/lib/typescript/src/otel/CrashBufferSpanProcessor.d.ts +18 -0
  27. package/lib/typescript/src/otel/CrashBufferSpanProcessor.d.ts.map +1 -0
  28. package/lib/typescript/src/otel/index.d.ts +8 -0
  29. package/lib/typescript/src/otel/index.d.ts.map +1 -1
  30. package/lib/typescript/src/recorder/index.d.ts +8 -1
  31. package/lib/typescript/src/recorder/index.d.ts.map +1 -1
  32. package/lib/typescript/src/services/api.service.d.ts +27 -2
  33. package/lib/typescript/src/services/api.service.d.ts.map +1 -1
  34. package/lib/typescript/src/services/crashBuffer.service.d.ts +46 -0
  35. package/lib/typescript/src/services/crashBuffer.service.d.ts.map +1 -0
  36. package/lib/typescript/src/services/socket.service.d.ts +4 -3
  37. package/lib/typescript/src/services/socket.service.d.ts.map +1 -1
  38. package/lib/typescript/src/session-recorder.d.ts +8 -0
  39. package/lib/typescript/src/session-recorder.d.ts.map +1 -1
  40. package/lib/typescript/src/types/session-recorder.d.ts +18 -0
  41. package/lib/typescript/src/types/session-recorder.d.ts.map +1 -1
  42. package/package.json +2 -2
  43. package/src/config/constants.ts +3 -0
  44. package/src/config/defaults.ts +5 -0
  45. package/src/config/session-recorder.ts +5 -0
  46. package/src/otel/CrashBufferSpanProcessor.ts +61 -0
  47. package/src/otel/index.ts +90 -34
  48. package/src/recorder/index.ts +30 -3
  49. package/src/services/api.service.ts +68 -13
  50. package/src/services/crashBuffer.service.ts +327 -0
  51. package/src/services/socket.service.ts +36 -22
  52. package/src/session-recorder.ts +226 -19
  53. package/src/types/session-recorder.ts +18 -0
@@ -12,6 +12,9 @@ export const SESSION_SUBSCRIBE_EVENT = 'debug-session:subscribe';
12
12
  export const SESSION_UNSUBSCRIBE_EVENT = 'debug-session:unsubscribe';
13
13
  export const SESSION_AUTO_CREATED = 'debug-session:auto-created';
14
14
  export const SESSION_ADD_EVENT = 'debug-session:rrweb:add-event';
15
+
16
+ // Backend-triggered flush of client-side crash buffer
17
+ export const SESSION_SAVE_BUFFER_EVENT = 'debug-session:save-buffer';
15
18
  export const DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE = 100000;
16
19
  export const SESSION_RESPONSE = 'multiplayer-debug-session-response';
17
20
  export const REMOTE_SESSION_RECORDING_START = 'remote-session-recording:start';
@@ -1 +1 @@
1
- {"version":3,"names":["OTEL_MP_SAMPLE_TRACE_RATIO","SESSION_ID_PROP_NAME","SESSION_SHORT_ID_PROP_NAME","SESSION_STATE_PROP_NAME","SESSION_TYPE_PROP_NAME","SESSION_PROP_NAME","SESSION_STARTED_EVENT","SESSION_STOPPED_EVENT","SESSION_SUBSCRIBE_EVENT","SESSION_UNSUBSCRIBE_EVENT","SESSION_AUTO_CREATED","SESSION_ADD_EVENT","DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE","SESSION_RESPONSE","REMOTE_SESSION_RECORDING_START","REMOTE_SESSION_RECORDING_STOP","SOCKET_SET_USER_EVENT","CONTINUOUS_DEBUGGING_TIMEOUT","DEBUG_SESSION_MAX_DURATION_SECONDS","OTEL_IGNORE_URLS"],"sourceRoot":"../../../src","sources":["config/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,0BAA0B,GAAG,IAAI;AAE9C,OAAO,MAAMC,oBAAoB,GAAG,wBAAwB;AAE5D,OAAO,MAAMC,0BAA0B,GAAG,8BAA8B;AAExE,OAAO,MAAMC,uBAAuB,GAAG,2BAA2B;AAElE,OAAO,MAAMC,sBAAsB,GAAG,0BAA0B;AAEhE,OAAO,MAAMC,iBAAiB,GAAG,0BAA0B;AAE3D,OAAO,MAAMC,qBAAqB,GAAG,uBAAuB;AAE5D,OAAO,MAAMC,qBAAqB,GAAG,uBAAuB;AAE5D,OAAO,MAAMC,uBAAuB,GAAG,yBAAyB;AAEhE,OAAO,MAAMC,yBAAyB,GAAG,2BAA2B;AAEpE,OAAO,MAAMC,oBAAoB,GAAG,4BAA4B;AAEhE,OAAO,MAAMC,iBAAiB,GAAG,+BAA+B;AAEhE,OAAO,MAAMC,uCAAuC,GAAG,MAAM;AAE7D,OAAO,MAAMC,gBAAgB,GAAG,oCAAoC;AAEpE,OAAO,MAAMC,8BAA8B,GAAG,gCAAgC;AAE9E,OAAO,MAAMC,6BAA6B,GAAG,+BAA+B;AAE5E,OAAO,MAAMC,qBAAqB,GAAG,iBAAiB;AAEtD,OAAO,MAAMC,4BAA4B,GAAG,KAAK,CAAC,CAAC;;AAEnD,OAAO,MAAMC,kCAAkC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;;AAEhE;AACA;AACA;;AAEA;AACA,OAAO,MAAMC,gBAAgB,GAAG;AAC9B;AACA,gBAAgB;AAChB;AACA,0CAA0C,EAC1C,gDAAgD,EAChD,kDAAkD;AAElD;AACA,qDAAqD,EACrD,2DAA2D,EAC3D,6DAA6D;AAE7D;AACA,gDAAgD;AAEhD;AACA,+CAA+C,EAC/C,8CAA8C,EAC9C,6CAA6C,EAC7C,4DAA4D,EAC5D,4DAA4D,EAC5D;;AAEA;AACA;AAAA,CACD","ignoreList":[]}
1
+ {"version":3,"names":["OTEL_MP_SAMPLE_TRACE_RATIO","SESSION_ID_PROP_NAME","SESSION_SHORT_ID_PROP_NAME","SESSION_STATE_PROP_NAME","SESSION_TYPE_PROP_NAME","SESSION_PROP_NAME","SESSION_STARTED_EVENT","SESSION_STOPPED_EVENT","SESSION_SUBSCRIBE_EVENT","SESSION_UNSUBSCRIBE_EVENT","SESSION_AUTO_CREATED","SESSION_ADD_EVENT","SESSION_SAVE_BUFFER_EVENT","DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE","SESSION_RESPONSE","REMOTE_SESSION_RECORDING_START","REMOTE_SESSION_RECORDING_STOP","SOCKET_SET_USER_EVENT","CONTINUOUS_DEBUGGING_TIMEOUT","DEBUG_SESSION_MAX_DURATION_SECONDS","OTEL_IGNORE_URLS"],"sourceRoot":"../../../src","sources":["config/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,0BAA0B,GAAG,IAAI;AAE9C,OAAO,MAAMC,oBAAoB,GAAG,wBAAwB;AAE5D,OAAO,MAAMC,0BAA0B,GAAG,8BAA8B;AAExE,OAAO,MAAMC,uBAAuB,GAAG,2BAA2B;AAElE,OAAO,MAAMC,sBAAsB,GAAG,0BAA0B;AAEhE,OAAO,MAAMC,iBAAiB,GAAG,0BAA0B;AAE3D,OAAO,MAAMC,qBAAqB,GAAG,uBAAuB;AAE5D,OAAO,MAAMC,qBAAqB,GAAG,uBAAuB;AAE5D,OAAO,MAAMC,uBAAuB,GAAG,yBAAyB;AAEhE,OAAO,MAAMC,yBAAyB,GAAG,2BAA2B;AAEpE,OAAO,MAAMC,oBAAoB,GAAG,4BAA4B;AAEhE,OAAO,MAAMC,iBAAiB,GAAG,+BAA+B;;AAEhE;AACA,OAAO,MAAMC,yBAAyB,GAAG,2BAA2B;AAEpE,OAAO,MAAMC,uCAAuC,GAAG,MAAM;AAE7D,OAAO,MAAMC,gBAAgB,GAAG,oCAAoC;AAEpE,OAAO,MAAMC,8BAA8B,GAAG,gCAAgC;AAE9E,OAAO,MAAMC,6BAA6B,GAAG,+BAA+B;AAE5E,OAAO,MAAMC,qBAAqB,GAAG,iBAAiB;AAEtD,OAAO,MAAMC,4BAA4B,GAAG,KAAK,CAAC,CAAC;;AAEnD,OAAO,MAAMC,kCAAkC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;;AAEhE;AACA;AACA;;AAEA;AACA,OAAO,MAAMC,gBAAgB,GAAG;AAC9B;AACA,gBAAgB;AAChB;AACA,0CAA0C,EAC1C,gDAAgD,EAChD,kDAAkD;AAElD;AACA,qDAAqD,EACrD,2DAA2D,EAC3D,6DAA6D;AAE7D;AACA,gDAAgD;AAEhD;AACA,+CAA+C,EAC/C,8CAA8C,EAC9C,6CAA6C,EAC7C,4DAA4D,EAC5D,4DAA4D,EAC5D;;AAEA;AACA;AAAA,CACD","ignoreList":[]}
@@ -77,6 +77,10 @@ export const BASE_CONFIG = {
77
77
  enabled: false,
78
78
  level: LogLevel.INFO
79
79
  },
80
- useWebsocket: true
80
+ useWebsocket: true,
81
+ buffering: {
82
+ enabled: true,
83
+ windowMinutes: 1
84
+ }
81
85
  };
82
86
  //# sourceMappingURL=defaults.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SessionRecorderSdk","MULTIPLAYER_BASE_API_URL","MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL","LogLevel","WidgetButtonPlacement","OTEL_MP_SAMPLE_TRACE_RATIO","DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE","mask","sensitiveFields","sensitiveHeaders","DEFAULT_MASKING_CONFIG","isContentMaskingEnabled","maskBody","maskHeaders","maskBodyFieldsList","maskHeadersList","headersToInclude","headersToExclude","maskImages","maskLabels","maskButtons","maskWebViews","maskTextInputs","maskSandboxedViews","DEFAULT_WIDGET_TEXT_CONFIG","initialTitleWithContinuous","initialTitleWithoutContinuous","initialDescriptionWithContinuous","initialDescriptionWithoutContinuous","continuousRecordingLabel","startRecordingButtonText","finalTitle","finalDescription","commentPlaceholder","saveButtonText","cancelButtonText","continuousOverlayTitle","continuousOverlayDescription","saveLastSnapshotButtonText","submitDialogTitle","submitDialogSubtitle","submitDialogCommentLabel","submitDialogCommentPlaceholder","submitDialogSubmitText","submitDialogCancelText","BASE_CONFIG","apiKey","version","application","environment","showContinuousRecording","widget","enabled","button","visible","placement","bottomRight","textOverrides","apiBaseUrl","exporterEndpoint","schemifyDocSpanPayload","ignoreUrls","propagateTraceHeaderCorsUrls","sampleTraceRatio","maxCapturingHttpPayloadSize","captureBody","captureHeaders","masking","recordScreen","recordGestures","recordNavigation","logger","level","INFO","useWebsocket"],"sourceRoot":"../../../src","sources":["config/defaults.ts"],"mappings":";;AAAA,SACEA,kBAAkB,EAClBC,wBAAwB,EACxBC,iDAAiD,QAC5C,0CAA0C;AACjD,SACEC,QAAQ,EACRC,qBAAqB,QAEhB,mBAAU;AACjB,SACEC,0BAA0B,EAC1BC,uCAAuC,QAClC,gBAAa;AAEpB,MAAM;EAAEC,IAAI;EAAEC,eAAe;EAAEC;AAAiB,CAAC,GAAGT,kBAAkB;AAEtE,OAAO,MAAMU,sBAAyD,GAAG;EACvEC,uBAAuB,EAAE,IAAI;EAC7BC,QAAQ,EAAEL,IAAI,CAACC,eAAe,CAAC;EAC/BK,WAAW,EAAEN,IAAI,CAACE,gBAAgB,CAAC;EACnCK,kBAAkB,EAAEN,eAAe;EACnCO,eAAe,EAAEN,gBAAgB;EACjCO,gBAAgB,EAAE,EAAE;EACpBC,gBAAgB,EAAE,EAAE;EACpB;EACAC,UAAU,EAAE,KAAK;EACjBC,UAAU,EAAE,KAAK;EACjBC,WAAW,EAAE,KAAK;EAClBC,YAAY,EAAE,KAAK;EACnBC,cAAc,EAAE,KAAK;EACrBC,kBAAkB,EAAE;AACtB,CAAC;AAED,OAAO,MAAMC,0BAA6E,GAC1F;EACEC,0BAA0B,EAAE,uBAAuB;EACnDC,6BAA6B,EAAE,uBAAuB;EACtDC,gCAAgC,EAC9B,kEAAkE;EACpEC,mCAAmC,EACjC,kEAAkE;EACpEC,wBAAwB,EAAE,sBAAsB;EAChDC,wBAAwB,EAAE,iBAAiB;EAC3CC,UAAU,EAAE,iBAAiB;EAC7BC,gBAAgB,EACd,0FAA0F;EAC5FC,kBAAkB,EAAE,kBAAkB;EACtCC,cAAc,EAAE,kBAAkB;EAClCC,gBAAgB,EAAE,kBAAkB;EACpCC,sBAAsB,EAAE,mCAAmC;EAC3DC,4BAA4B,EAC1B,mOAAmO;EACrOC,0BAA0B,EAAE,gBAAgB;EAC5CC,iBAAiB,EAAE,gBAAgB;EACnCC,oBAAoB,EAClB,iJAAiJ;EACnJC,wBAAwB,EAAE,+CAA+C;EACzEC,8BAA8B,EAAE,kBAAkB;EAClDC,sBAAsB,EAAE,MAAM;EAC9BC,sBAAsB,EAAE;AAC1B,CAAC;AAED,OAAO,MAAMC,WAAmC,GAAG;EACjDC,MAAM,EAAE,EAAE;EAEVC,OAAO,EAAE,EAAE;EACXC,WAAW,EAAE,EAAE;EACfC,WAAW,EAAE,EAAE;EAEfC,uBAAuB,EAAE,IAAI;EAE7BC,MAAM,EAAE;IACNC,OAAO,EAAE,IAAI;IACbC,MAAM,EAAE;MACNC,OAAO,EAAE,IAAI;MACbC,SAAS,EAAEnD,qBAAqB,CAACoD;IACnC,CAAC;IACDC,aAAa,EAAEjC;EACjB,CAAC;EAEDkC,UAAU,EAAEzD,wBAAwB;EACpC0D,gBAAgB,EAAEzD,iDAAiD;EAEnE0D,sBAAsB,EAAE,IAAI;EAE5BC,UAAU,EAAE,EAAE;EACdC,4BAA4B,EAAE,EAAE;EAEhCC,gBAAgB,EAAE1D,0BAA0B;EAC5C2D,2BAA2B,EAAE1D,uCAAuC;EAEpE2D,WAAW,EAAE,IAAI;EACjBC,cAAc,EAAE,IAAI;EACpBC,OAAO,EAAEzD,sBAAsB;EAE/B0D,YAAY,EAAE,IAAI;EAClBC,cAAc,EAAE,IAAI;EACpBC,gBAAgB,EAAE,IAAI;EAEtBC,MAAM,EAAE;IACNnB,OAAO,EAAE,KAAK;IACdoB,KAAK,EAAErE,QAAQ,CAACsE;EAClB,CAAC;EAEDC,YAAY,EAAE;AAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["SessionRecorderSdk","MULTIPLAYER_BASE_API_URL","MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL","LogLevel","WidgetButtonPlacement","OTEL_MP_SAMPLE_TRACE_RATIO","DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE","mask","sensitiveFields","sensitiveHeaders","DEFAULT_MASKING_CONFIG","isContentMaskingEnabled","maskBody","maskHeaders","maskBodyFieldsList","maskHeadersList","headersToInclude","headersToExclude","maskImages","maskLabels","maskButtons","maskWebViews","maskTextInputs","maskSandboxedViews","DEFAULT_WIDGET_TEXT_CONFIG","initialTitleWithContinuous","initialTitleWithoutContinuous","initialDescriptionWithContinuous","initialDescriptionWithoutContinuous","continuousRecordingLabel","startRecordingButtonText","finalTitle","finalDescription","commentPlaceholder","saveButtonText","cancelButtonText","continuousOverlayTitle","continuousOverlayDescription","saveLastSnapshotButtonText","submitDialogTitle","submitDialogSubtitle","submitDialogCommentLabel","submitDialogCommentPlaceholder","submitDialogSubmitText","submitDialogCancelText","BASE_CONFIG","apiKey","version","application","environment","showContinuousRecording","widget","enabled","button","visible","placement","bottomRight","textOverrides","apiBaseUrl","exporterEndpoint","schemifyDocSpanPayload","ignoreUrls","propagateTraceHeaderCorsUrls","sampleTraceRatio","maxCapturingHttpPayloadSize","captureBody","captureHeaders","masking","recordScreen","recordGestures","recordNavigation","logger","level","INFO","useWebsocket","buffering","windowMinutes"],"sourceRoot":"../../../src","sources":["config/defaults.ts"],"mappings":";;AAAA,SACEA,kBAAkB,EAClBC,wBAAwB,EACxBC,iDAAiD,QAC5C,0CAA0C;AACjD,SACEC,QAAQ,EACRC,qBAAqB,QAEhB,mBAAU;AACjB,SACEC,0BAA0B,EAC1BC,uCAAuC,QAClC,gBAAa;AAEpB,MAAM;EAAEC,IAAI;EAAEC,eAAe;EAAEC;AAAiB,CAAC,GAAGT,kBAAkB;AAEtE,OAAO,MAAMU,sBAAyD,GAAG;EACvEC,uBAAuB,EAAE,IAAI;EAC7BC,QAAQ,EAAEL,IAAI,CAACC,eAAe,CAAC;EAC/BK,WAAW,EAAEN,IAAI,CAACE,gBAAgB,CAAC;EACnCK,kBAAkB,EAAEN,eAAe;EACnCO,eAAe,EAAEN,gBAAgB;EACjCO,gBAAgB,EAAE,EAAE;EACpBC,gBAAgB,EAAE,EAAE;EACpB;EACAC,UAAU,EAAE,KAAK;EACjBC,UAAU,EAAE,KAAK;EACjBC,WAAW,EAAE,KAAK;EAClBC,YAAY,EAAE,KAAK;EACnBC,cAAc,EAAE,KAAK;EACrBC,kBAAkB,EAAE;AACtB,CAAC;AAED,OAAO,MAAMC,0BAA6E,GAC1F;EACEC,0BAA0B,EAAE,uBAAuB;EACnDC,6BAA6B,EAAE,uBAAuB;EACtDC,gCAAgC,EAC9B,kEAAkE;EACpEC,mCAAmC,EACjC,kEAAkE;EACpEC,wBAAwB,EAAE,sBAAsB;EAChDC,wBAAwB,EAAE,iBAAiB;EAC3CC,UAAU,EAAE,iBAAiB;EAC7BC,gBAAgB,EACd,0FAA0F;EAC5FC,kBAAkB,EAAE,kBAAkB;EACtCC,cAAc,EAAE,kBAAkB;EAClCC,gBAAgB,EAAE,kBAAkB;EACpCC,sBAAsB,EAAE,mCAAmC;EAC3DC,4BAA4B,EAC1B,mOAAmO;EACrOC,0BAA0B,EAAE,gBAAgB;EAC5CC,iBAAiB,EAAE,gBAAgB;EACnCC,oBAAoB,EAClB,iJAAiJ;EACnJC,wBAAwB,EAAE,+CAA+C;EACzEC,8BAA8B,EAAE,kBAAkB;EAClDC,sBAAsB,EAAE,MAAM;EAC9BC,sBAAsB,EAAE;AAC1B,CAAC;AAED,OAAO,MAAMC,WAAmC,GAAG;EACjDC,MAAM,EAAE,EAAE;EAEVC,OAAO,EAAE,EAAE;EACXC,WAAW,EAAE,EAAE;EACfC,WAAW,EAAE,EAAE;EAEfC,uBAAuB,EAAE,IAAI;EAE7BC,MAAM,EAAE;IACNC,OAAO,EAAE,IAAI;IACbC,MAAM,EAAE;MACNC,OAAO,EAAE,IAAI;MACbC,SAAS,EAAEnD,qBAAqB,CAACoD;IACnC,CAAC;IACDC,aAAa,EAAEjC;EACjB,CAAC;EAEDkC,UAAU,EAAEzD,wBAAwB;EACpC0D,gBAAgB,EAAEzD,iDAAiD;EAEnE0D,sBAAsB,EAAE,IAAI;EAE5BC,UAAU,EAAE,EAAE;EACdC,4BAA4B,EAAE,EAAE;EAEhCC,gBAAgB,EAAE1D,0BAA0B;EAC5C2D,2BAA2B,EAAE1D,uCAAuC;EAEpE2D,WAAW,EAAE,IAAI;EACjBC,cAAc,EAAE,IAAI;EACpBC,OAAO,EAAEzD,sBAAsB;EAE/B0D,YAAY,EAAE,IAAI;EAClBC,cAAc,EAAE,IAAI;EACpBC,gBAAgB,EAAE,IAAI;EAEtBC,MAAM,EAAE;IACNnB,OAAO,EAAE,KAAK;IACdoB,KAAK,EAAErE,QAAQ,CAACsE;EAClB,CAAC;EAEDC,YAAY,EAAE,IAAI;EAElBC,SAAS,EAAE;IACTvB,OAAO,EAAE,IAAI;IACbwB,aAAa,EAAE;EACjB;AACF,CAAC","ignoreList":[]}
@@ -39,7 +39,11 @@ export const getSessionRecorderConfig = c => {
39
39
  masking: getMaskingConfig(c.masking),
40
40
  widget: getWidgetConfig(c.widget),
41
41
  logger: getLoggerConfig(c.logger),
42
- useWebsocket: isValidBoolean(c.useWebsocket, BASE_CONFIG.useWebsocket)
42
+ useWebsocket: isValidBoolean(c.useWebsocket, BASE_CONFIG.useWebsocket),
43
+ buffering: {
44
+ enabled: isValidBoolean(c.buffering?.enabled, BASE_CONFIG.buffering.enabled),
45
+ windowMinutes: isValidNumber(c.buffering?.windowMinutes, BASE_CONFIG.buffering.windowMinutes)
46
+ }
43
47
  };
44
48
  };
45
49
  //# sourceMappingURL=session-recorder.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["LogLevel","BASE_CONFIG","getMaskingConfig","isValidString","isValidNumber","isValidBoolean","isValidArray","getWidgetConfig","getLoggerConfig","config","logger","level","INFO","enabled","getSessionRecorderConfig","c","apiKey","version","application","environment","exporterEndpoint","apiBaseUrl","showContinuousRecording","ignoreUrls","sampleTraceRatio","propagateTraceHeaderCorsUrls","schemifyDocSpanPayload","maxCapturingHttpPayloadSize","captureBody","captureHeaders","recordScreen","recordGestures","recordNavigation","masking","widget","useWebsocket"],"sourceRoot":"../../../src","sources":["config/session-recorder.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["LogLevel","BASE_CONFIG","getMaskingConfig","isValidString","isValidNumber","isValidBoolean","isValidArray","getWidgetConfig","getLoggerConfig","config","logger","level","INFO","enabled","getSessionRecorderConfig","c","apiKey","version","application","environment","exporterEndpoint","apiBaseUrl","showContinuousRecording","ignoreUrls","sampleTraceRatio","propagateTraceHeaderCorsUrls","schemifyDocSpanPayload","maxCapturingHttpPayloadSize","captureBody","captureHeaders","recordScreen","recordGestures","recordNavigation","masking","widget","useWebsocket","buffering","windowMinutes"],"sourceRoot":"../../../src","sources":["config/session-recorder.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ import { MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX, MULTIPLAYER_TRACE_CONTINUOUS_SESSION_CACHE_PREFIX } from '@multiplayer-app/session-recorder-common';
4
+ import { TraceFlags } from '@opentelemetry/api';
5
+ /**
6
+ * Implementation of the {@link SpanProcessor} that batches spans exported by
7
+ * the SDK then pushes them to the exporter pipeline.
8
+ */
9
+ export class CrashBufferSpanProcessor {
10
+ constructor(_exporter, _crashBuffer, _serializeSpan) {
11
+ this._exporter = _exporter;
12
+ this._crashBuffer = _crashBuffer;
13
+ this._serializeSpan = _serializeSpan;
14
+ }
15
+ forceFlush() {
16
+ return this._exporter.forceFlush();
17
+ }
18
+ onStart(_span, _parentContext) {
19
+ return this._exporter.onStart(_span, _parentContext);
20
+ }
21
+ onEnd(span) {
22
+ const traceId = span.spanContext().traceId;
23
+ if ((span.spanContext().traceFlags & TraceFlags.SAMPLED) === 0) {
24
+ return;
25
+ }
26
+ if (traceId.startsWith(MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX) || traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_SESSION_CACHE_PREFIX)) {
27
+ if (this._crashBuffer) {
28
+ this._crashBuffer.appendSpans([{
29
+ ts: span.startTime[0] * 1000 + span.startTime[1] / 1000000,
30
+ span: this._serializeSpan(span)
31
+ }]);
32
+ }
33
+ return;
34
+ }
35
+ this._exporter.onEnd(span);
36
+ }
37
+ shutdown() {
38
+ return this._exporter.shutdown();
39
+ }
40
+ }
41
+ //# sourceMappingURL=CrashBufferSpanProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX","MULTIPLAYER_TRACE_CONTINUOUS_SESSION_CACHE_PREFIX","TraceFlags","CrashBufferSpanProcessor","constructor","_exporter","_crashBuffer","_serializeSpan","forceFlush","onStart","_span","_parentContext","onEnd","span","traceId","spanContext","traceFlags","SAMPLED","startsWith","appendSpans","ts","startTime","shutdown"],"sourceRoot":"../../../src","sources":["otel/CrashBufferSpanProcessor.ts"],"mappings":";;AAAA,SACEA,sCAAsC,EACtCC,iDAAiD,QAC5C,0CAA0C;AAEjD,SAAuBC,UAAU,QAAQ,oBAAoB;AAQ7D;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,CAA0B;EAC7DC,WAAWA,CACQC,SAA6B,EAC7BC,YAAqC,EACrCC,cAA2C,EAC5D;IAAA,KAHiBF,SAA6B,GAA7BA,SAA6B;IAAA,KAC7BC,YAAqC,GAArCA,YAAqC;IAAA,KACrCC,cAA2C,GAA3CA,cAA2C;EAC3D;EAEHC,UAAUA,CAAA,EAAkB;IAC1B,OAAO,IAAI,CAACH,SAAS,CAACG,UAAU,CAAC,CAAC;EACpC;EAEAC,OAAOA,CAACC,KAAW,EAAEC,cAAuB,EAAQ;IAClD,OAAO,IAAI,CAACN,SAAS,CAACI,OAAO,CAACC,KAAK,EAAEC,cAAc,CAAC;EACtD;EAEAC,KAAKA,CAACC,IAAkB,EAAQ;IAC9B,MAAMC,OAAO,GAAGD,IAAI,CAACE,WAAW,CAAC,CAAC,CAACD,OAAO;IAE1C,IAAI,CAACD,IAAI,CAACE,WAAW,CAAC,CAAC,CAACC,UAAU,GAAGd,UAAU,CAACe,OAAO,MAAM,CAAC,EAAE;MAC9D;IACF;IAEA,IACEH,OAAO,CAACI,UAAU,CAAClB,sCAAsC,CAAC,IAC1Dc,OAAO,CAACI,UAAU,CAACjB,iDAAiD,CAAC,EACrE;MACA,IAAI,IAAI,CAACK,YAAY,EAAE;QACrB,IAAI,CAACA,YAAY,CAACa,WAAW,CAAC,CAC5B;UACEC,EAAE,EAAEP,IAAI,CAACQ,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAGR,IAAI,CAACQ,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO;UAC1DR,IAAI,EAAE,IAAI,CAACN,cAAc,CAACM,IAAI;QAChC,CAAC,CACF,CAAC;MACJ;MACA;IACF;IAEA,IAAI,CAACR,SAAS,CAACO,KAAK,CAACC,IAAI,CAAC;EAC5B;EAEAS,QAAQA,CAAA,EAAkB;IACxB,OAAO,IAAI,CAACjB,SAAS,CAACiB,QAAQ,CAAC,CAAC;EAClC;AACF","ignoreList":[]}
@@ -2,25 +2,29 @@
2
2
 
3
3
  import { resourceFromAttributes } from '@opentelemetry/resources';
4
4
  import { W3CTraceContextPropagator } from '@opentelemetry/core';
5
- import { BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
5
+ import { AlwaysOnSampler, BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
6
6
  import * as SemanticAttributes from '@opentelemetry/semantic-conventions';
7
7
  import { registerInstrumentations } from '@opentelemetry/instrumentation';
8
- import { SessionType, ATTR_MULTIPLAYER_SESSION_ID, SessionRecorderIdGenerator, SessionRecorderTraceIdRatioBasedSampler, SessionRecorderBrowserTraceExporter } from '@multiplayer-app/session-recorder-common';
8
+ import { SessionType, SessionRecorderSdk, SessionRecorderIdGenerator, SessionRecorderBrowserTraceExporter, ATTR_MULTIPLAYER_SESSION_ID, MULTIPLAYER_TRACE_CLIENT_ID_LENGTH } from '@multiplayer-app/session-recorder-common';
9
9
  import { getInstrumentations } from "./instrumentations/index.js";
10
10
  import { getExporterEndpoint } from "./helpers.js";
11
11
  import { trace, SpanStatusCode, context } from '@opentelemetry/api';
12
12
  import { getPlatformAttributes } from "../utils/platform.js";
13
13
  import { WebTracerProvider } from '@opentelemetry/sdk-trace-web';
14
+ import { CrashBufferSpanProcessor } from "./CrashBufferSpanProcessor.js";
14
15
  export class TracerReactNativeSDK {
16
+ clientId = '';
15
17
  sessionId = '';
16
18
  globalErrorHandlerRegistered = false;
17
19
  constructor() {}
18
20
  _setSessionId(sessionId, sessionType = SessionType.MANUAL) {
19
21
  this.sessionId = sessionId;
20
- this.idGenerator?.setSessionId(sessionId, sessionType);
22
+ this.idGenerator?.setSessionId(sessionId, sessionType, this.clientId);
21
23
  }
22
24
  init(options) {
23
25
  this.config = options;
26
+ const clientIdGenerator = SessionRecorderSdk.getIdGenerator(MULTIPLAYER_TRACE_CLIENT_ID_LENGTH);
27
+ this.clientId = clientIdGenerator();
24
28
  const {
25
29
  application,
26
30
  version,
@@ -31,6 +35,7 @@ export class TracerReactNativeSDK {
31
35
  apiKey: options.apiKey,
32
36
  url: getExporterEndpoint(options.exporterEndpoint)
33
37
  });
38
+ this.batchSpanProcessor = new BatchSpanProcessor(this.exporter);
34
39
  this.tracerProvider = new WebTracerProvider({
35
40
  resource: resourceFromAttributes({
36
41
  [SemanticAttributes.SEMRESATTRS_SERVICE_NAME]: application,
@@ -39,8 +44,8 @@ export class TracerReactNativeSDK {
39
44
  ...getPlatformAttributes()
40
45
  }),
41
46
  idGenerator: this.idGenerator,
42
- sampler: new SessionRecorderTraceIdRatioBasedSampler(this.config.sampleTraceRatio || 0.15),
43
- spanProcessors: [this._getSpanSessionIdProcessor(), new BatchSpanProcessor(this.exporter)]
47
+ sampler: new AlwaysOnSampler(),
48
+ spanProcessors: [this._getSpanSessionIdProcessor(), new CrashBufferSpanProcessor(this.batchSpanProcessor, this.crashBuffer, this.exporter.serializeSpan.bind(this.exporter))]
44
49
  });
45
50
  this.tracerProvider.register({
46
51
  propagator: new W3CTraceContextPropagator()
@@ -53,15 +58,27 @@ export class TracerReactNativeSDK {
53
58
  });
54
59
  this._registerGlobalErrorHandlers();
55
60
  }
61
+ setCrashBuffer(crashBuffer, windowMs) {
62
+ this.crashBuffer = crashBuffer;
63
+ if (crashBuffer && typeof windowMs === 'number' && Number.isFinite(windowMs)) {
64
+ crashBuffer.setDefaultWindowMs(windowMs);
65
+ }
66
+ }
67
+ async exportTraces(spans) {
68
+ if (this.batchSpanProcessor) {
69
+ spans.map(span => {
70
+ this.batchSpanProcessor?.onEnd(span);
71
+ });
72
+ return Promise.resolve();
73
+ }
74
+ throw new Error('Buffer span processor not initialized');
75
+ }
56
76
  _getSpanSessionIdProcessor() {
57
77
  return {
58
78
  onStart: span => {
59
79
  if (this.sessionId) {
60
80
  span.setAttribute(ATTR_MULTIPLAYER_SESSION_ID, this.sessionId);
61
81
  }
62
- // Add React Native specific attributes
63
- span.setAttribute('platform', 'react-native');
64
- span.setAttribute('timestamp', Date.now());
65
82
  },
66
83
  onEnd: () => {},
67
84
  shutdown: () => Promise.resolve(),
@@ -150,7 +167,9 @@ export class TracerReactNativeSDK {
150
167
  if (typeof previous === 'function') {
151
168
  try {
152
169
  previous(error, isFatal);
153
- } catch (_e) {/* ignore */}
170
+ } catch (_e) {
171
+ /* ignore */
172
+ }
154
173
  }
155
174
  }
156
175
  });
@@ -1 +1 @@
1
- {"version":3,"names":["resourceFromAttributes","W3CTraceContextPropagator","BatchSpanProcessor","SemanticAttributes","registerInstrumentations","SessionType","ATTR_MULTIPLAYER_SESSION_ID","SessionRecorderIdGenerator","SessionRecorderTraceIdRatioBasedSampler","SessionRecorderBrowserTraceExporter","getInstrumentations","getExporterEndpoint","trace","SpanStatusCode","context","getPlatformAttributes","WebTracerProvider","TracerReactNativeSDK","sessionId","globalErrorHandlerRegistered","constructor","_setSessionId","sessionType","MANUAL","idGenerator","setSessionId","init","options","config","application","version","environment","exporter","apiKey","url","exporterEndpoint","tracerProvider","resource","SEMRESATTRS_SERVICE_NAME","SEMRESATTRS_SERVICE_VERSION","SEMRESATTRS_DEPLOYMENT_ENVIRONMENT","sampler","sampleTraceRatio","spanProcessors","_getSpanSessionIdProcessor","register","propagator","instrumentations","_registerGlobalErrorHandlers","onStart","span","setAttribute","Date","now","onEnd","shutdown","Promise","resolve","forceFlush","start","Error","stop","setApiKey","captureException","error","errorInfo","activeSpan","getSpan","active","_recordException","_ignored","tracer","getTracer","startSpan","name","end","recordException","setStatus","code","ERROR","message","stack","Object","entries","forEach","key","value","ErrorUtilsRef","global","ErrorUtils","setGlobalHandler","previous","getGlobalHandler","isFatal","err","String","_e"],"sourceRoot":"../../../src","sources":["otel/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["resourceFromAttributes","W3CTraceContextPropagator","AlwaysOnSampler","BatchSpanProcessor","SemanticAttributes","registerInstrumentations","SessionType","SessionRecorderSdk","SessionRecorderIdGenerator","SessionRecorderBrowserTraceExporter","ATTR_MULTIPLAYER_SESSION_ID","MULTIPLAYER_TRACE_CLIENT_ID_LENGTH","getInstrumentations","getExporterEndpoint","trace","SpanStatusCode","context","getPlatformAttributes","WebTracerProvider","CrashBufferSpanProcessor","TracerReactNativeSDK","clientId","sessionId","globalErrorHandlerRegistered","constructor","_setSessionId","sessionType","MANUAL","idGenerator","setSessionId","init","options","config","clientIdGenerator","getIdGenerator","application","version","environment","exporter","apiKey","url","exporterEndpoint","batchSpanProcessor","tracerProvider","resource","SEMRESATTRS_SERVICE_NAME","SEMRESATTRS_SERVICE_VERSION","SEMRESATTRS_DEPLOYMENT_ENVIRONMENT","sampler","spanProcessors","_getSpanSessionIdProcessor","crashBuffer","serializeSpan","bind","register","propagator","instrumentations","_registerGlobalErrorHandlers","setCrashBuffer","windowMs","Number","isFinite","setDefaultWindowMs","exportTraces","spans","map","span","onEnd","Promise","resolve","Error","onStart","setAttribute","shutdown","forceFlush","start","stop","setApiKey","captureException","error","errorInfo","activeSpan","getSpan","active","_recordException","_ignored","tracer","getTracer","startSpan","name","end","recordException","setStatus","code","ERROR","message","stack","Object","entries","forEach","key","value","ErrorUtilsRef","global","ErrorUtils","setGlobalHandler","previous","getGlobalHandler","isFatal","err","String","_e"],"sourceRoot":"../../../src","sources":["otel/index.ts"],"mappings":"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","ignoreList":[]}
@@ -10,6 +10,8 @@ import { NavigationTracker } from "./navigationTracker.js";
10
10
  export class RecorderReactNativeSDK {
11
11
  isRecording = false;
12
12
  recordedEvents = [];
13
+ bufferingEnabled = false;
14
+ bufferWindowMs = 2 * 60 * 1000;
13
15
  sessionId = null;
14
16
  sessionType = SessionType.MANUAL;
15
17
  constructor() {
@@ -17,9 +19,12 @@ export class RecorderReactNativeSDK {
17
19
  this.gestureRecorder = new GestureRecorder();
18
20
  this.navigationTracker = new NavigationTracker();
19
21
  }
20
- init(config, socketService) {
22
+ init(config, socketService, crashBuffer, buffering) {
21
23
  this.config = config;
22
24
  this.socketService = socketService;
25
+ this.crashBuffer = crashBuffer;
26
+ this.bufferingEnabled = Boolean(buffering?.enabled);
27
+ this.bufferWindowMs = Math.max(10_000, buffering?.windowMs || 1 * 60 * 1000);
23
28
  this.screenRecorder.init(config, this);
24
29
  this.navigationTracker.init(config, this.screenRecorder);
25
30
  this.gestureRecorder.init(config, this, this.screenRecorder);
@@ -71,6 +76,15 @@ export class RecorderReactNativeSDK {
71
76
  if (!this.isRecording) {
72
77
  return;
73
78
  }
79
+
80
+ // Buffer-only mode (no active debug session): persist locally.
81
+ if (!this.sessionId && this.crashBuffer && this.bufferingEnabled) {
82
+ void this.crashBuffer.appendEvent({
83
+ ts: event.timestamp,
84
+ event
85
+ }, this.bufferWindowMs);
86
+ return;
87
+ }
74
88
  if (this.socketService) {
75
89
  logger.debug('RecorderReactNativeSDK', 'Sending to socket service', event);
76
90
  // Skip packing to avoid blob creation issues in Hermes
@@ -1 +1 @@
1
- {"version":3,"names":["SessionType","logger","ScreenRecorder","GestureRecorder","NavigationTracker","RecorderReactNativeSDK","isRecording","recordedEvents","sessionId","sessionType","MANUAL","constructor","screenRecorder","gestureRecorder","navigationTracker","init","config","socketService","start","Error","recordScreen","recordGestures","recordNavigation","stop","close","setNavigationRef","ref","setViewShotRef","recordEvent","event","debug","send","eventType","type","timestamp","debugSessionId","debugSessionType","recordTouchStart","x","y","target","pressure","recordTouchMove","recordTouchEnd","getRecordedEvents","clearRecordedEvents","getRecordingStats","totalEvents","length"],"sourceRoot":"../../../src","sources":["recorder/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["SessionType","logger","ScreenRecorder","GestureRecorder","NavigationTracker","RecorderReactNativeSDK","isRecording","recordedEvents","bufferingEnabled","bufferWindowMs","sessionId","sessionType","MANUAL","constructor","screenRecorder","gestureRecorder","navigationTracker","init","config","socketService","crashBuffer","buffering","Boolean","enabled","Math","max","windowMs","start","Error","recordScreen","recordGestures","recordNavigation","stop","close","setNavigationRef","ref","setViewShotRef","recordEvent","event","appendEvent","ts","timestamp","debug","send","eventType","type","debugSessionId","debugSessionType","recordTouchStart","x","y","target","pressure","recordTouchMove","recordTouchEnd","getRecordedEvents","clearRecordedEvents","getRecordingStats","totalEvents","length"],"sourceRoot":"../../../src","sources":["recorder/index.ts"],"mappings":"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","ignoreList":[]}
@@ -42,6 +42,28 @@ export class ApiService {
42
42
  }
43
43
  }
44
44
 
45
+ /**
46
+ * Create a new error span session
47
+ * @param request - Session create error span request data
48
+ * @param signal - Optional AbortSignal for request cancellation
49
+ */
50
+ async createErrorSession(request, signal) {
51
+ return this.makeRequest('/debug-sessions/error-span/start', 'POST', request, signal);
52
+ }
53
+ async updateSessionAttributes(sessionId, requestBody, signal) {
54
+ return this.makeRequest(`/debug-sessions/${sessionId}`, 'PATCH', requestBody, signal);
55
+ }
56
+
57
+ /**
58
+ * Export events to the session debugger API
59
+ * @param sessionId - ID of the session to export events
60
+ * @param requestBody - Request body containing events
61
+ * @param signal - Optional AbortSignal for request cancellation
62
+ */
63
+ async exportEvents(sessionId, requestBody, signal) {
64
+ return this.makeRequest(`/debug-sessions/${sessionId}/rrweb-events`, 'POST', requestBody, signal);
65
+ }
66
+
45
67
  /**
46
68
  * Make a request to the session debugger API
47
69
  * @param path - API endpoint path (relative to the base URL)
@@ -140,8 +162,8 @@ export class ApiService {
140
162
  }
141
163
 
142
164
  /**
143
- * Check debug session should be started remotely
144
- */
165
+ * Check debug session should be started remotely
166
+ */
145
167
  async checkRemoteSession(requestBody, signal) {
146
168
  return this.makeRequest('/remote-debug-session/check', 'POST', requestBody, signal);
147
169
  }
@@ -1 +1 @@
1
- {"version":3,"names":["ApiService","baseUrl","constructor","config","apiKey","apiBaseUrl","exporterEndpoint","init","updateConfigs","setApiKey","makeRequest","path","method","body","signal","url","params","JSON","stringify","headers","response","fetch","ok","Error","statusText","status","json","error","name","message","startSession","request","res","stopSession","sessionId","cancelSession","startContinuousDebugSession","saveContinuousDebugSession","stopContinuousDebugSession","checkRemoteSession","requestBody"],"sourceRoot":"../../../src","sources":["services/api.service.ts"],"mappings":";;AAgCA,OAAO,MAAMA,UAAU,CAAC;EAEdC,OAAO,GAAW,6BAA6B;EAEvDC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACC,MAAM,GAAG;MACZC,MAAM,EAAE,EAAE;MACVC,UAAU,EAAE,EAAE;MACdC,gBAAgB,EAAE;IACpB,CAAC;EACH;EAEAC,IAAIA,CAACJ,MAAwB,EAAQ;IACnC,IAAI,CAACA,MAAM,GAAG;MACZ,GAAG,IAAI,CAACA,MAAM;MACd,GAAGA;IACL,CAAC;IACD,IAAIA,MAAM,CAACE,UAAU,EAAE;MACrB,IAAI,CAACJ,OAAO,GAAGE,MAAM,CAACE,UAAU;IAClC;EACF;;EAEA;AACF;AACA;AACA;EACSG,aAAaA,CAACL,MAAiC,EAAE;IACtD,IAAI,IAAI,CAACA,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,GAAG;QAAE,GAAG,IAAI,CAACA,MAAM;QAAE,GAAGA;MAAO,CAAC;IAC7C;EACF;;EAEA;AACF;AACA;AACA;EACEM,SAASA,CAACL,MAAc,EAAQ;IAC9B,IAAI,IAAI,CAACD,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAACC,MAAM,GAAGA,MAAM;IAC7B;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,MAAcM,WAAWA,CACvBC,IAAY,EACZC,MAAc,EACdC,IAAU,EACVC,MAAoB,EACN;IACd,MAAMC,GAAG,GAAG,GAAG,IAAI,CAACd,OAAO,YAAYU,IAAI,EAAE;IAC7C,MAAMK,MAAM,GAAG;MACbJ,MAAM;MACNC,IAAI,EAAEA,IAAI,GAAGI,IAAI,CAACC,SAAS,CAACL,IAAI,CAAC,GAAG,IAAI;MACxCM,OAAO,EAAE;QACP,cAAc,EAAE,kBAAkB;QAClC,IAAI,IAAI,CAAChB,MAAM,EAAEC,MAAM,IAAI;UAAE,WAAW,EAAE,IAAI,CAACD,MAAM,CAACC;QAAO,CAAC;MAChE;IACF,CAAC;IAED,IAAI;MACF,MAAMgB,QAAQ,GAAG,MAAMC,KAAK,CAACN,GAAG,EAAE;QAChC,GAAGC,MAAM;QACTF;MACF,CAAC,CAAC;MAEF,IAAI,CAACM,QAAQ,CAACE,EAAE,EAAE;QAChB,MAAM,IAAIC,KAAK,CAAC,+BAA+B,GAAGH,QAAQ,CAACI,UAAU,CAAC;MACxE;MAEA,IAAIJ,QAAQ,CAACK,MAAM,KAAK,GAAG,EAAE;QAC3B,OAAO,IAAI;MACb;MAEA,OAAO,MAAML,QAAQ,CAACM,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC,OAAOC,KAAU,EAAE;MACnB,IAAIA,KAAK,EAAEC,IAAI,KAAK,YAAY,EAAE;QAChC,MAAM,IAAIL,KAAK,CAAC,iBAAiB,CAAC;MACpC;MACA,MAAM,IAAIA,KAAK,CAAC,wBAAwB,GAAGI,KAAK,CAACE,OAAO,CAAC;IAC3D;EACF;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMC,YAAYA,CAChBC,OAA4B,EAC5BjB,MAAoB,EACN;IACd,IAAI;MACF,MAAMkB,GAAG,GAAG,MAAM,IAAI,CAACtB,WAAW,CAChC,uBAAuB,EACvB,MAAM,EACNqB,OAAO,EACPjB,MACF,CAAC;MACD,OAAOkB,GAAG;IACZ,CAAC,CAAC,OAAOL,KAAU,EAAE;MACnB,MAAMA,KAAK;IACb;EACF;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMM,WAAWA,CACfC,SAAiB,EACjBH,OAA2B,EACb;IACd,OAAO,IAAI,CAACrB,WAAW,CACrB,mBAAmBwB,SAAS,OAAO,EACnC,OAAO,EACPH,OACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;EACE,MAAMI,aAAaA,CAACD,SAAiB,EAAgB;IACnD,OAAO,IAAI,CAACxB,WAAW,CAAC,mBAAmBwB,SAAS,SAAS,EAAE,QAAQ,CAAC;EAC1E;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAME,2BAA2BA,CAC/BL,OAA4B,EAC5BjB,MAAoB,EACN;IACd,OAAO,IAAI,CAACJ,WAAW,CACrB,kCAAkC,EAClC,MAAM,EACNqB,OAAO,EACPjB,MACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,MAAMuB,0BAA0BA,CAC9BH,SAAiB,EACjBH,OAA4B,EAC5BjB,MAAoB,EACN;IACd,OAAO,IAAI,CAACJ,WAAW,CACrB,8BAA8BwB,SAAS,OAAO,EAC9C,MAAM,EACNH,OAAO,EACPjB,MACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;EACE,MAAMwB,0BAA0BA,CAACJ,SAAiB,EAAgB;IAChE,OAAO,IAAI,CAACxB,WAAW,CACrB,8BAA8BwB,SAAS,SAAS,EAChD,QACF,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAMK,kBAAkBA,CACtBC,WAAsC,EACtC1B,MAAoB,EACkB;IACtC,OAAO,IAAI,CAACJ,WAAW,CACrB,6BAA6B,EAC7B,MAAM,EACN8B,WAAW,EACX1B,MACF,CAAC;EACH;AACF","ignoreList":[]}
1
+ {"version":3,"names":["ApiService","baseUrl","constructor","config","apiKey","apiBaseUrl","exporterEndpoint","init","updateConfigs","setApiKey","createErrorSession","request","signal","makeRequest","updateSessionAttributes","sessionId","requestBody","exportEvents","path","method","body","url","params","JSON","stringify","headers","response","fetch","ok","Error","statusText","status","json","error","name","message","startSession","res","stopSession","cancelSession","startContinuousDebugSession","saveContinuousDebugSession","stopContinuousDebugSession","checkRemoteSession"],"sourceRoot":"../../../src","sources":["services/api.service.ts"],"mappings":"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","ignoreList":[]}