@sentry/replay 7.60.0 → 7.61.0

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.
package/cjs/index.js CHANGED
@@ -3735,8 +3735,16 @@ const handleDomListener = (
3735
3735
 
3736
3736
  const isClick = handlerData.name === 'click';
3737
3737
  const event = isClick && (handlerData.event );
3738
- // Ignore clicks if ctrl/alt/meta keys are held down as they alter behavior of clicks (e.g. open in new tab)
3739
- if (isClick && replay.clickDetector && event && !event.altKey && !event.metaKey && !event.ctrlKey) {
3738
+ // Ignore clicks if ctrl/alt/meta/shift keys are held down as they alter behavior of clicks (e.g. open in new tab)
3739
+ if (
3740
+ isClick &&
3741
+ replay.clickDetector &&
3742
+ event &&
3743
+ !event.altKey &&
3744
+ !event.metaKey &&
3745
+ !event.ctrlKey &&
3746
+ !event.shiftKey
3747
+ ) {
3740
3748
  handleClick(
3741
3749
  replay.clickDetector,
3742
3750
  result ,
@@ -6620,6 +6628,11 @@ function getHandleRecordingEmit(replay) {
6620
6628
  if (replay.recordingMode === 'buffer' && replay.session && replay.eventBuffer) {
6621
6629
  const earliestEvent = replay.eventBuffer.getEarliestTimestamp();
6622
6630
  if (earliestEvent) {
6631
+ // eslint-disable-next-line no-console
6632
+ const log = replay.getOptions()._experiments.traceInternals ? console.info : utils.logger.info;
6633
+ (typeof __SENTRY_DEBUG__ === 'undefined' || __SENTRY_DEBUG__) &&
6634
+ log(`[Replay] Updating session start time to earliest event in buffer at ${earliestEvent}`);
6635
+
6623
6636
  replay.session.started = earliestEvent;
6624
6637
 
6625
6638
  if (replay.getOptions().stickySession) {
@@ -7401,6 +7414,10 @@ class ReplayContainer {
7401
7414
 
7402
7415
  const activityTime = Date.now();
7403
7416
 
7417
+ // eslint-disable-next-line no-console
7418
+ const log = this.getOptions()._experiments.traceInternals ? console.info : utils.logger.info;
7419
+ (typeof __SENTRY_DEBUG__ === 'undefined' || __SENTRY_DEBUG__) && log(`[Replay] Converting buffer to session, starting at ${activityTime}`);
7420
+
7404
7421
  // Allow flush to complete before resuming as a session recording, otherwise
7405
7422
  // the checkout from `startRecording` may be included in the payload.
7406
7423
  // Prefer to keep the error replay as a separate (and smaller) segment
@@ -7956,9 +7973,6 @@ class ReplayContainer {
7956
7973
 
7957
7974
  const earliestEvent = eventBuffer.getEarliestTimestamp();
7958
7975
  if (earliestEvent && earliestEvent < this._context.initialTimestamp) {
7959
- // eslint-disable-next-line no-console
7960
- const log = this.getOptions()._experiments.traceInternals ? console.info : utils.logger.info;
7961
- (typeof __SENTRY_DEBUG__ === 'undefined' || __SENTRY_DEBUG__) && log(`[Replay] Updating initial timestamp to ${earliestEvent}`);
7962
7976
  this._context.initialTimestamp = earliestEvent;
7963
7977
  }
7964
7978
  }
@@ -8073,7 +8087,7 @@ class ReplayContainer {
8073
8087
  return;
8074
8088
  }
8075
8089
 
8076
- const start = this._context.initialTimestamp;
8090
+ const start = this.session.started;
8077
8091
  const now = Date.now();
8078
8092
  const duration = now - start;
8079
8093