@sentry/replay 7.77.0 → 7.78.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.
Files changed (38) hide show
  1. package/cjs/index.js +170 -1163
  2. package/cjs/index.js.map +1 -1
  3. package/esm/index.js +171 -1164
  4. package/esm/index.js.map +1 -1
  5. package/package.json +9 -8
  6. package/types/coreHandlers/handleClick.d.ts +10 -2
  7. package/types/coreHandlers/handleClick.d.ts.map +1 -1
  8. package/types/coreHandlers/handleScope.d.ts.map +1 -1
  9. package/types/coreHandlers/util/domUtils.d.ts +2 -0
  10. package/types/coreHandlers/util/domUtils.d.ts.map +1 -1
  11. package/types/coreHandlers/util/networkUtils.d.ts.map +1 -1
  12. package/types/integration.d.ts +1 -1
  13. package/types/integration.d.ts.map +1 -1
  14. package/types/types/replay.d.ts +17 -1
  15. package/types/types/replay.d.ts.map +1 -1
  16. package/types/types/request.d.ts +1 -1
  17. package/types/types/request.d.ts.map +1 -1
  18. package/types/util/handleRecordingEmit.d.ts.map +1 -1
  19. package/types/util/sendReplayRequest.d.ts +8 -0
  20. package/types/util/sendReplayRequest.d.ts.map +1 -1
  21. package/types-ts3.8/coreHandlers/handleClick.d.ts +10 -2
  22. package/types-ts3.8/coreHandlers/util/domUtils.d.ts +2 -0
  23. package/types-ts3.8/integration.d.ts +1 -1
  24. package/types-ts3.8/types/replay.d.ts +17 -1
  25. package/types-ts3.8/types/request.d.ts +1 -1
  26. package/types-ts3.8/util/sendReplayRequest.d.ts +8 -0
  27. package/types/util/truncateJson/completeJson.d.ts +0 -9
  28. package/types/util/truncateJson/completeJson.d.ts.map +0 -1
  29. package/types/util/truncateJson/constants.d.ts +0 -12
  30. package/types/util/truncateJson/constants.d.ts.map +0 -1
  31. package/types/util/truncateJson/evaluateJson.d.ts +0 -6
  32. package/types/util/truncateJson/evaluateJson.d.ts.map +0 -1
  33. package/types/util/truncateJson/fixJson.d.ts +0 -6
  34. package/types/util/truncateJson/fixJson.d.ts.map +0 -1
  35. package/types-ts3.8/util/truncateJson/completeJson.d.ts +0 -9
  36. package/types-ts3.8/util/truncateJson/constants.d.ts +0 -12
  37. package/types-ts3.8/util/truncateJson/evaluateJson.d.ts +0 -6
  38. package/types-ts3.8/util/truncateJson/fixJson.d.ts +0 -6
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentry/replay",
3
- "version": "7.77.0",
3
+ "version": "7.78.0",
4
4
  "description": "User replays for Sentry",
5
5
  "main": "cjs/index.js",
6
6
  "module": "esm/index.js",
@@ -25,16 +25,17 @@
25
25
  "homepage": "https://docs.sentry.io/platforms/javascript/session-replay/",
26
26
  "devDependencies": {
27
27
  "@babel/core": "^7.17.5",
28
- "@sentry-internal/replay-worker": "7.77.0",
29
- "@sentry-internal/rrweb": "2.1.0",
30
- "@sentry-internal/rrweb-snapshot": "2.1.0",
28
+ "@sentry-internal/replay-worker": "7.78.0",
29
+ "@sentry-internal/rrweb": "2.2.0",
30
+ "@sentry-internal/rrweb-snapshot": "2.2.0",
31
+ "fflate": "^0.8.1",
31
32
  "jsdom-worker": "^0.2.1"
32
33
  },
33
34
  "dependencies": {
34
- "@sentry-internal/tracing": "7.77.0",
35
- "@sentry/core": "7.77.0",
36
- "@sentry/types": "7.77.0",
37
- "@sentry/utils": "7.77.0"
35
+ "@sentry-internal/tracing": "7.78.0",
36
+ "@sentry/core": "7.78.0",
37
+ "@sentry/types": "7.78.0",
38
+ "@sentry/utils": "7.78.0"
38
39
  },
39
40
  "engines": {
40
41
  "node": ">=12"
@@ -1,5 +1,5 @@
1
1
  import type { Breadcrumb } from '@sentry/types';
2
- import type { ReplayClickDetector, ReplayContainer, SlowClickConfig } from '../types';
2
+ import type { RecordingEvent, ReplayClickDetector, ReplayContainer, SlowClickConfig } from '../types';
3
3
  import { addBreadcrumbEvent } from './util/addBreadcrumbEvent';
4
4
  /** Handle a click. */
5
5
  export declare function handleClick(clickDetector: ReplayClickDetector, clickBreadcrumb: Breadcrumb, node: HTMLElement): void;
@@ -21,8 +21,14 @@ export declare class ClickDetector implements ReplayClickDetector {
21
21
  addListeners(): void;
22
22
  /** Clean up listeners. */
23
23
  removeListeners(): void;
24
- /** Handle a click */
24
+ /** @inheritDoc */
25
25
  handleClick(breadcrumb: Breadcrumb, node: HTMLElement): void;
26
+ /** @inheritDoc */
27
+ registerMutation(timestamp?: number): void;
28
+ /** @inheritDoc */
29
+ registerScroll(timestamp?: number): void;
30
+ /** @inheritDoc */
31
+ registerClick(element: HTMLElement): void;
26
32
  /** Count multiple clicks on elements. */
27
33
  private _handleMultiClick;
28
34
  /** Get all pending clicks for a given node. */
@@ -36,4 +42,6 @@ export declare class ClickDetector implements ReplayClickDetector {
36
42
  }
37
43
  /** exported for tests only */
38
44
  export declare function ignoreElement(node: HTMLElement, ignoreSelector: string): boolean;
45
+ /** Update the click detector based on a recording event of rrweb. */
46
+ export declare function updateClickDetectorForRecordingEvent(clickDetector: ReplayClickDetector, event: RecordingEvent): void;
39
47
  //# sourceMappingURL=handleClick.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handleClick.d.ts","sourceRoot":"","sources":["../../../../src/coreHandlers/handleClick.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EAGf,eAAe,EAChB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAiB/D,sBAAsB;AACtB,wBAAgB,WAAW,CAAC,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAEpH;AAED,yFAAyF;AACzF,qBAAa,aAAc,YAAW,mBAAmB;IAEvD,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAS;IAEhC,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,kBAAkB,CAAC,CAAgC;IAC3D,OAAO,CAAC,mBAAmB,CAA4B;gBAGrD,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,eAAe,EAEhC,mBAAmB,4BAAqB;IAe1C,+DAA+D;IACxD,YAAY,IAAI,IAAI;IAiD3B,0BAA0B;IACnB,eAAe,IAAI,IAAI;IAU9B,qBAAqB;IACd,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IA4BnE,yCAAyC;IACzC,OAAO,CAAC,iBAAiB;IAMzB,+CAA+C;IAC/C,OAAO,CAAC,UAAU;IAIlB,sCAAsC;IACtC,OAAO,CAAC,YAAY;IAmCpB,qDAAqD;IACrD,OAAO,CAAC,oBAAoB;IAwD5B,wCAAwC;IACxC,OAAO,CAAC,oBAAoB;CAO7B;AAID,8BAA8B;AAC9B,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAyBhF"}
1
+ {"version":3,"file":"handleClick.d.ts","sourceRoot":"","sources":["../../../../src/coreHandlers/handleClick.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,eAAe,EAGf,eAAe,EAChB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AA2B/D,sBAAsB;AACtB,wBAAgB,WAAW,CAAC,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAEpH;AAED,yFAAyF;AACzF,qBAAa,aAAc,YAAW,mBAAmB;IAEvD,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAS;IAEhC,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,kBAAkB,CAAC,CAAgC;IAC3D,OAAO,CAAC,mBAAmB,CAA4B;gBAGrD,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,eAAe,EAEhC,mBAAmB,4BAAqB;IAe1C,+DAA+D;IACxD,YAAY,IAAI,IAAI;IAe3B,0BAA0B;IACnB,eAAe,IAAI,IAAI;IAU9B,kBAAkB;IACX,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IA4BnE,kBAAkB;IACX,gBAAgB,CAAC,SAAS,SAAa,GAAG,IAAI;IAIrD,kBAAkB;IACX,cAAc,CAAC,SAAS,SAAa,GAAG,IAAI;IAInD,kBAAkB;IACX,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAKhD,yCAAyC;IACzC,OAAO,CAAC,iBAAiB;IAMzB,+CAA+C;IAC/C,OAAO,CAAC,UAAU;IAIlB,sCAAsC;IACtC,OAAO,CAAC,YAAY;IAmCpB,qDAAqD;IACrD,OAAO,CAAC,oBAAoB;IAwD5B,wCAAwC;IACxC,OAAO,CAAC,oBAAoB;CAO7B;AAID,8BAA8B;AAC9B,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAyBhF;AAWD,qEAAqE;AACrE,wBAAgB,oCAAoC,CAAC,aAAa,EAAE,mBAAmB,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI,CAkCpH"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleScope.d.ts","sourceRoot":"","sources":["../../../../src/coreHandlers/handleScope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAIvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAOxD,KAAK,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AAMrE,eAAO,MAAM,mBAAmB,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,CAAC,KAAK,EAAE,KAAK,KAAK,IAc9E,CAAC;AAEJ;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,GAAG,IAAI,CA4B3D;AAED,8BAA8B;AAC9B,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,sBAAsB,GAChE,WAAW,CAkDb"}
1
+ {"version":3,"file":"handleScope.d.ts","sourceRoot":"","sources":["../../../../src/coreHandlers/handleScope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAIvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAMxD,KAAK,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AAMrE,eAAO,MAAM,mBAAmB,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,CAAC,KAAK,EAAE,KAAK,KAAK,IAc9E,CAAC;AAEJ;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,GAAG,IAAI,CA4B3D;AAED,8BAA8B;AAC9B,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,sBAAsB,GAChE,WAAW,CAgDb"}
@@ -5,6 +5,8 @@ export interface DomHandlerData {
5
5
  target: EventTarget;
6
6
  };
7
7
  }
8
+ /** Get the closest interactive parent element, or else return the given element. */
9
+ export declare function getClosestInteractive(element: Element): Element;
8
10
  /**
9
11
  * For clicks, we check if the target is inside of a button or link
10
12
  * If so, we use this as the target instead
@@ -1 +1 @@
1
- {"version":3,"file":"domUtils.d.ts","sourceRoot":"","sources":["../../../../../src/coreHandlers/util/domUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAE7D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,IAAI,GAAG;QAAE,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC;CACvC;AAID;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,UAAU,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CASnG;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG;IAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAM/F"}
1
+ {"version":3,"file":"domUtils.d.ts","sourceRoot":"","sources":["../../../../../src/coreHandlers/util/domUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAE7D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,IAAI,GAAG;QAAE,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC;CACvC;AAID,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAG/D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,UAAU,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAQnG;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG;IAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAM/F"}
@@ -1 +1 @@
1
- {"version":3,"file":"networkUtils.d.ts","sourceRoot":"","sources":["../../../../../src/coreHandlers/util/networkUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAIzD,OAAO,KAAK,EACV,WAAW,EAEX,kBAAkB,EAClB,wBAAwB,EACxB,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAGrB,8BAA8B;AAC9B,wBAAgB,WAAW,CACzB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,WAAW,EAAE,WAAW,GAAG,mBAAmB,GAC7C,MAAM,GAAG,SAAS,CAiCpB;AAED,4DAA4D;AAC5D,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAO9F;AAED,+CAA+C;AAC/C,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAc/D;AAED,8DAA8D;AAC9D,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,wBAAwB,GAAG,IAAI,GACpC,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAqBnD;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAYpF;AAED,0FAA0F;AAC1F,wBAAgB,oCAAoC,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,8BAA8B,CAQjH;AAED,yEAAyE;AACzE,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,8BAA8B,GAAG,SAAS,CAgC5C;AAED,8BAA8B;AAC9B,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CASnH;AAoDD,oDAAoD;AACpD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAI1E;AAED,yBAAyB;AACzB,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,SAA0B,GAAG,MAAM,CAoBjF"}
1
+ {"version":3,"file":"networkUtils.d.ts","sourceRoot":"","sources":["../../../../../src/coreHandlers/util/networkUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAIzD,OAAO,KAAK,EACV,WAAW,EAEX,kBAAkB,EAClB,wBAAwB,EACxB,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAErB,8BAA8B;AAC9B,wBAAgB,WAAW,CACzB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,WAAW,EAAE,WAAW,GAAG,mBAAmB,GAC7C,MAAM,GAAG,SAAS,CAiCpB;AAED,4DAA4D;AAC5D,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAO9F;AAED,+CAA+C;AAC/C,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAc/D;AAED,8DAA8D;AAC9D,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,wBAAwB,GAAG,IAAI,GACpC,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAqBnD;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAYpF;AAED,0FAA0F;AAC1F,wBAAgB,oCAAoC,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,8BAA8B,CAQjH;AAED,yEAAyE;AACzE,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,8BAA8B,GAAG,SAAS,CAgC5C;AAED,8BAA8B;AAC9B,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CASnH;AA+DD,oDAAoD;AACpD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAI1E;AAED,yBAAyB;AACzB,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,SAA0B,GAAG,MAAM,CAoBjF"}
@@ -25,7 +25,7 @@ export declare class Replay implements Integration {
25
25
  */
26
26
  private readonly _initialOptions;
27
27
  private _replay?;
28
- constructor({ flushMinDelay, flushMaxDelay, minReplayDuration, maxReplayDuration, stickySession, useCompression, workerUrl, _experiments, sessionSampleRate, errorSampleRate, maskAllText, maskAllInputs, blockAllMedia, mutationBreadcrumbLimit, mutationLimit, slowClickTimeout, slowClickIgnoreSelectors, networkDetailAllowUrls, networkDetailDenyUrls, networkCaptureBodies, networkRequestHeaders, networkResponseHeaders, mask, maskAttributes, unmask, block, unblock, ignore, maskFn, beforeAddRecordingEvent, blockClass, blockSelector, maskInputOptions, maskTextClass, maskTextSelector, ignoreClass, }?: ReplayConfiguration);
28
+ constructor({ flushMinDelay, flushMaxDelay, minReplayDuration, maxReplayDuration, stickySession, useCompression, workerUrl, _experiments, sessionSampleRate, errorSampleRate, maskAllText, maskAllInputs, blockAllMedia, mutationBreadcrumbLimit, mutationLimit, slowClickTimeout, slowClickIgnoreSelectors, networkDetailAllowUrls, networkDetailDenyUrls, networkCaptureBodies, networkRequestHeaders, networkResponseHeaders, mask, maskAttributes, unmask, block, unblock, ignore, maskFn, beforeAddRecordingEvent, beforeErrorSampling, blockClass, blockSelector, maskInputOptions, maskTextClass, maskTextSelector, ignoreClass, }?: ReplayConfiguration);
29
29
  /** If replay has already been initialized */
30
30
  protected get _isInitialized(): boolean;
31
31
  /** Update _isInitialized */
@@ -1 +1 @@
1
- {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/integration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA8B,WAAW,EAAE,MAAM,eAAe,CAAC;AAW7E,OAAO,KAAK,EAAoB,mBAAmB,EAAuB,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAcrH;;GAEG;AACH,qBAAa,MAAO,YAAW,WAAW;IACxC;;OAEG;IACH,OAAc,EAAE,EAAE,MAAM,CAAY;IAEpC;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IAErD;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAE7D,OAAO,CAAC,OAAO,CAAC,CAAkB;gBAEf,EACjB,aAAuC,EACvC,aAAuC,EACvC,iBAAuC,EACvC,iBAAuC,EACvC,aAAoB,EACpB,cAAqB,EACrB,SAAS,EACT,YAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,WAAkB,EAClB,aAAoB,EACpB,aAAoB,EAEpB,uBAA6B,EAC7B,aAAsB,EAEtB,gBAAwB,EACxB,wBAA6B,EAE7B,sBAA2B,EAC3B,qBAA0B,EAC1B,oBAA2B,EAC3B,qBAA0B,EAC1B,sBAA2B,EAE3B,IAAS,EACT,cAAyC,EACzC,MAAW,EACX,KAAU,EACV,OAAY,EACZ,MAAW,EACX,MAAM,EAEN,uBAAuB,EAGvB,UAAU,EAEV,aAAa,EAEb,gBAAgB,EAEhB,aAAa,EAEb,gBAAgB,EAEhB,WAAW,GACZ,GAAE,mBAAwB;IAsH3B,6CAA6C;IAC7C,SAAS,KAAK,cAAc,IAAI,OAAO,CAEtC;IAED,4BAA4B;IAC5B,SAAS,KAAK,cAAc,CAAC,KAAK,EAAE,OAAO,EAE1C;IAED;;OAEG;IACI,SAAS,IAAI,IAAI;IAkBxB;;;;;;OAMG;IACI,KAAK,IAAI,IAAI;IAQpB;;;OAGG;IACI,cAAc,IAAI,IAAI;IAQ7B;;;OAGG;IACI,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B;;;;;;OAMG;IACI,KAAK,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhE;;OAEG;IACI,WAAW,IAAI,MAAM,GAAG,SAAS;IAOxC;;OAEG;IACH,SAAS,CAAC,WAAW,IAAI,IAAI;IAQ7B,6BAA6B;IAC7B,OAAO,CAAC,MAAM;CASf"}
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/integration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA8B,WAAW,EAAE,MAAM,eAAe,CAAC;AAW7E,OAAO,KAAK,EAAoB,mBAAmB,EAAuB,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAcrH;;GAEG;AACH,qBAAa,MAAO,YAAW,WAAW;IACxC;;OAEG;IACH,OAAc,EAAE,EAAE,MAAM,CAAY;IAEpC;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IAErD;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAE7D,OAAO,CAAC,OAAO,CAAC,CAAkB;gBAEf,EACjB,aAAuC,EACvC,aAAuC,EACvC,iBAAuC,EACvC,iBAAuC,EACvC,aAAoB,EACpB,cAAqB,EACrB,SAAS,EACT,YAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,WAAkB,EAClB,aAAoB,EACpB,aAAoB,EAEpB,uBAA6B,EAC7B,aAAsB,EAEtB,gBAAwB,EACxB,wBAA6B,EAE7B,sBAA2B,EAC3B,qBAA0B,EAC1B,oBAA2B,EAC3B,qBAA0B,EAC1B,sBAA2B,EAE3B,IAAS,EACT,cAAyC,EACzC,MAAW,EACX,KAAU,EACV,OAAY,EACZ,MAAW,EACX,MAAM,EAEN,uBAAuB,EACvB,mBAAmB,EAGnB,UAAU,EAEV,aAAa,EAEb,gBAAgB,EAEhB,aAAa,EAEb,gBAAgB,EAEhB,WAAW,GACZ,GAAE,mBAAwB;IAuH3B,6CAA6C;IAC7C,SAAS,KAAK,cAAc,IAAI,OAAO,CAEtC;IAED,4BAA4B;IAC5B,SAAS,KAAK,cAAc,CAAC,KAAK,EAAE,OAAO,EAE1C;IAED;;OAEG;IACI,SAAS,IAAI,IAAI;IAkBxB;;;;;;OAMG;IACI,KAAK,IAAI,IAAI;IAQpB;;;OAGG;IACI,cAAc,IAAI,IAAI;IAQ7B;;;OAGG;IACI,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B;;;;;;OAMG;IACI,KAAK,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhE;;OAEG;IACI,WAAW,IAAI,MAAM,GAAG,SAAS;IAOxC;;OAEG;IACH,SAAS,CAAC,WAAW,IAAI,IAAI;IAQ7B,6BAA6B;IAC7B,OAAO,CAAC,MAAM;CASf"}
@@ -1,4 +1,4 @@
1
- import type { Breadcrumb, FetchBreadcrumbHint, HandlerDataFetch, ReplayRecordingData, ReplayRecordingMode, SentryWrappedXMLHttpRequest, Transaction, XhrBreadcrumbHint } from '@sentry/types';
1
+ import type { Breadcrumb, ErrorEvent, FetchBreadcrumbHint, HandlerDataFetch, ReplayRecordingData, ReplayRecordingMode, SentryWrappedXMLHttpRequest, Transaction, XhrBreadcrumbHint } from '@sentry/types';
2
2
  import type { SKIPPED, THROTTLED } from '../util/throttle';
3
3
  import type { AllPerformanceEntry, AllPerformanceEntryData, ReplayPerformanceEntry } from './performance';
4
4
  import type { ReplayFrameEvent } from './replayFrame';
@@ -171,6 +171,15 @@ export interface ReplayPluginOptions extends ReplayNetworkOptions {
171
171
  * continue to function.
172
172
  */
173
173
  beforeAddRecordingEvent?: BeforeAddRecordingEvent;
174
+ /**
175
+ * An optional callback to be called before we decide to sample based on an error.
176
+ * If specified, this callback will receive an error that was captured by Sentry.
177
+ * Return `true` to continue sampling for this error, or `false` to ignore this error for replay sampling.
178
+ * Note that returning `true` means that the `replaysOnErrorSampleRate` will be checked,
179
+ * not that it will definitely be sampled.
180
+ * Use this to filter out groups of errors that should def. not be sampled.
181
+ */
182
+ beforeErrorSampling?: (event: ErrorEvent) => boolean;
174
183
  /**
175
184
  * _experiments allows users to enable experimental or internal features.
176
185
  * We don't consider such features as part of the public API and hence we don't guarantee semver for them.
@@ -361,7 +370,14 @@ export interface SendBufferedReplayOptions {
361
370
  export interface ReplayClickDetector {
362
371
  addListeners(): void;
363
372
  removeListeners(): void;
373
+ /** Handle a click breadcrumb. */
364
374
  handleClick(breadcrumb: Breadcrumb, node: HTMLElement): void;
375
+ /** Register a mutation that happened at a given time. */
376
+ registerMutation(timestamp?: number): void;
377
+ /** Register a scroll that happened at a given time. */
378
+ registerScroll(timestamp?: number): void;
379
+ /** Register that a click on an element happened. */
380
+ registerClick(element: HTMLElement): void;
365
381
  }
366
382
  export interface ReplayContainer {
367
383
  eventBuffer: EventBuffer | null;
@@ -1 +1 @@
1
- {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../../src/types/replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../../src/types/replay.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  type JsonObject = Record<string, unknown>;
2
2
  type JsonArray = unknown[];
3
3
  export type NetworkBody = JsonObject | JsonArray | string;
4
- export type NetworkMetaWarning = 'JSON_TRUNCATED' | 'TEXT_TRUNCATED' | 'INVALID_JSON' | 'URL_SKIPPED';
4
+ export type NetworkMetaWarning = 'MAYBE_JSON_TRUNCATED' | 'TEXT_TRUNCATED' | 'URL_SKIPPED';
5
5
  interface NetworkMeta {
6
6
  warnings?: NetworkMetaWarning[];
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/types/request.ts"],"names":[],"mappings":"AAAA,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC1C,KAAK,SAAS,GAAG,OAAO,EAAE,CAAC;AAE3B,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,cAAc,GAAG,aAAa,CAAC;AAEtG,UAAU,WAAW;IACnB,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/types/request.ts"],"names":[],"mappings":"AAAA,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC1C,KAAK,SAAS,GAAG,OAAO,EAAE,CAAC;AAE3B,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAE3F,UAAU,WAAW;IACnB,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleRecordingEmit.d.ts","sourceRoot":"","sources":["../../../../src/util/handleRecordingEmit.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAIxF,KAAK,qBAAqB,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAEnF;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,GAAG,qBAAqB,CAuFrF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,sBAAsB,CAsBlF"}
1
+ {"version":3,"file":"handleRecordingEmit.d.ts","sourceRoot":"","sources":["../../../../src/util/handleRecordingEmit.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAIxF,KAAK,qBAAqB,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAEnF;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,GAAG,qBAAqB,CA2FrF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,sBAAsB,CAsBlF"}
@@ -1,4 +1,5 @@
1
1
  import type { TransportMakeRequestResponse } from '@sentry/types';
2
+ import type { RateLimits } from '@sentry/utils';
2
3
  import type { SendReplayData } from '../types';
3
4
  /**
4
5
  * Send replay attachment using `fetch()`
@@ -10,4 +11,11 @@ export declare function sendReplayRequest({ recordingData, replayId, segmentId:
10
11
  export declare class TransportStatusCodeError extends Error {
11
12
  constructor(statusCode: number);
12
13
  }
14
+ /**
15
+ * This error indicates that we hit a rate limit API error.
16
+ */
17
+ export declare class RateLimitError extends Error {
18
+ rateLimits: RateLimits;
19
+ constructor(rateLimits: RateLimits);
20
+ }
13
21
  //# sourceMappingURL=sendReplayRequest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendReplayRequest.d.ts","sourceRoot":"","sources":["../../../../src/util/sendReplayRequest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,4BAA4B,EAAE,MAAM,eAAe,CAAC;AAG/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAM/C;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,aAAa,EACb,QAAQ,EACR,SAAS,EAAE,UAAU,EACrB,YAAY,EACZ,SAAS,EACT,OAAO,GACR,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,GAAG,4BAA4B,CAAC,CA+G/D;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;gBAC9B,UAAU,EAAE,MAAM;CAGtC"}
1
+ {"version":3,"file":"sendReplayRequest.d.ts","sourceRoot":"","sources":["../../../../src/util/sendReplayRequest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,4BAA4B,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAM/C;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,aAAa,EACb,QAAQ,EACR,SAAS,EAAE,UAAU,EACrB,YAAY,EACZ,SAAS,EACT,OAAO,GACR,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,GAAG,4BAA4B,CAAC,CAoH/D;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;gBAC9B,UAAU,EAAE,MAAM;CAGtC;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;IAChC,UAAU,EAAE,UAAU,CAAC;gBAEX,UAAU,EAAE,UAAU;CAI1C"}
@@ -1,5 +1,5 @@
1
1
  import { Breadcrumb } from '@sentry/types';
2
- import { ReplayClickDetector, ReplayContainer, SlowClickConfig } from '../types';
2
+ import { RecordingEvent, ReplayClickDetector, ReplayContainer, SlowClickConfig } from '../types';
3
3
  import { addBreadcrumbEvent } from './util/addBreadcrumbEvent';
4
4
  /** Handle a click. */
5
5
  export declare function handleClick(clickDetector: ReplayClickDetector, clickBreadcrumb: Breadcrumb, node: HTMLElement): void;
@@ -21,8 +21,14 @@ export declare class ClickDetector implements ReplayClickDetector {
21
21
  addListeners(): void;
22
22
  /** Clean up listeners. */
23
23
  removeListeners(): void;
24
- /** Handle a click */
24
+ /** @inheritDoc */
25
25
  handleClick(breadcrumb: Breadcrumb, node: HTMLElement): void;
26
+ /** @inheritDoc */
27
+ registerMutation(timestamp?: number): void;
28
+ /** @inheritDoc */
29
+ registerScroll(timestamp?: number): void;
30
+ /** @inheritDoc */
31
+ registerClick(element: HTMLElement): void;
26
32
  /** Count multiple clicks on elements. */
27
33
  private _handleMultiClick;
28
34
  /** Get all pending clicks for a given node. */
@@ -36,4 +42,6 @@ export declare class ClickDetector implements ReplayClickDetector {
36
42
  }
37
43
  /** exported for tests only */
38
44
  export declare function ignoreElement(node: HTMLElement, ignoreSelector: string): boolean;
45
+ /** Update the click detector based on a recording event of rrweb. */
46
+ export declare function updateClickDetectorForRecordingEvent(clickDetector: ReplayClickDetector, event: RecordingEvent): void;
39
47
  //# sourceMappingURL=handleClick.d.ts.map
@@ -5,6 +5,8 @@ export interface DomHandlerData {
5
5
  target: EventTarget;
6
6
  };
7
7
  }
8
+ /** Get the closest interactive parent element, or else return the given element. */
9
+ export declare function getClosestInteractive(element: Element): Element;
8
10
  /**
9
11
  * For clicks, we check if the target is inside of a button or link
10
12
  * If so, we use this as the target instead
@@ -25,7 +25,7 @@ export declare class Replay implements Integration {
25
25
  */
26
26
  private readonly _initialOptions;
27
27
  private _replay?;
28
- constructor({ flushMinDelay, flushMaxDelay, minReplayDuration, maxReplayDuration, stickySession, useCompression, workerUrl, _experiments, sessionSampleRate, errorSampleRate, maskAllText, maskAllInputs, blockAllMedia, mutationBreadcrumbLimit, mutationLimit, slowClickTimeout, slowClickIgnoreSelectors, networkDetailAllowUrls, networkDetailDenyUrls, networkCaptureBodies, networkRequestHeaders, networkResponseHeaders, mask, maskAttributes, unmask, block, unblock, ignore, maskFn, beforeAddRecordingEvent, blockClass, blockSelector, maskInputOptions, maskTextClass, maskTextSelector, ignoreClass, }?: ReplayConfiguration);
28
+ constructor({ flushMinDelay, flushMaxDelay, minReplayDuration, maxReplayDuration, stickySession, useCompression, workerUrl, _experiments, sessionSampleRate, errorSampleRate, maskAllText, maskAllInputs, blockAllMedia, mutationBreadcrumbLimit, mutationLimit, slowClickTimeout, slowClickIgnoreSelectors, networkDetailAllowUrls, networkDetailDenyUrls, networkCaptureBodies, networkRequestHeaders, networkResponseHeaders, mask, maskAttributes, unmask, block, unblock, ignore, maskFn, beforeAddRecordingEvent, beforeErrorSampling, blockClass, blockSelector, maskInputOptions, maskTextClass, maskTextSelector, ignoreClass, }?: ReplayConfiguration);
29
29
  /*If replay has already been initialized
30
30
  Update _isInitialized */
31
31
  protected _isInitialized: boolean;
@@ -1,4 +1,4 @@
1
- import { Breadcrumb, FetchBreadcrumbHint, HandlerDataFetch, ReplayRecordingData, ReplayRecordingMode, SentryWrappedXMLHttpRequest, Transaction, XhrBreadcrumbHint } from '@sentry/types';
1
+ import { Breadcrumb, ErrorEvent, FetchBreadcrumbHint, HandlerDataFetch, ReplayRecordingData, ReplayRecordingMode, SentryWrappedXMLHttpRequest, Transaction, XhrBreadcrumbHint } from '@sentry/types';
2
2
  import { SKIPPED, THROTTLED } from '../util/throttle';
3
3
  import { AllPerformanceEntry, AllPerformanceEntryData, ReplayPerformanceEntry } from './performance';
4
4
  import { ReplayFrameEvent } from './replayFrame';
@@ -171,6 +171,15 @@ export interface ReplayPluginOptions extends ReplayNetworkOptions {
171
171
  * continue to function.
172
172
  */
173
173
  beforeAddRecordingEvent?: BeforeAddRecordingEvent;
174
+ /**
175
+ * An optional callback to be called before we decide to sample based on an error.
176
+ * If specified, this callback will receive an error that was captured by Sentry.
177
+ * Return `true` to continue sampling for this error, or `false` to ignore this error for replay sampling.
178
+ * Note that returning `true` means that the `replaysOnErrorSampleRate` will be checked,
179
+ * not that it will definitely be sampled.
180
+ * Use this to filter out groups of errors that should def. not be sampled.
181
+ */
182
+ beforeErrorSampling?: (event: ErrorEvent) => boolean;
174
183
  /**
175
184
  * _experiments allows users to enable experimental or internal features.
176
185
  * We don't consider such features as part of the public API and hence we don't guarantee semver for them.
@@ -361,7 +370,14 @@ export interface SendBufferedReplayOptions {
361
370
  export interface ReplayClickDetector {
362
371
  addListeners(): void;
363
372
  removeListeners(): void;
373
+ /** Handle a click breadcrumb. */
364
374
  handleClick(breadcrumb: Breadcrumb, node: HTMLElement): void;
375
+ /** Register a mutation that happened at a given time. */
376
+ registerMutation(timestamp?: number): void;
377
+ /** Register a scroll that happened at a given time. */
378
+ registerScroll(timestamp?: number): void;
379
+ /** Register that a click on an element happened. */
380
+ registerClick(element: HTMLElement): void;
365
381
  }
366
382
  export interface ReplayContainer {
367
383
  eventBuffer: EventBuffer | null;
@@ -1,7 +1,7 @@
1
1
  type JsonObject = Record<string, unknown>;
2
2
  type JsonArray = unknown[];
3
3
  export type NetworkBody = JsonObject | JsonArray | string;
4
- export type NetworkMetaWarning = 'JSON_TRUNCATED' | 'TEXT_TRUNCATED' | 'INVALID_JSON' | 'URL_SKIPPED';
4
+ export type NetworkMetaWarning = 'MAYBE_JSON_TRUNCATED' | 'TEXT_TRUNCATED' | 'URL_SKIPPED';
5
5
  interface NetworkMeta {
6
6
  warnings?: NetworkMetaWarning[];
7
7
  }
@@ -1,4 +1,5 @@
1
1
  import { TransportMakeRequestResponse } from '@sentry/types';
2
+ import { RateLimits } from '@sentry/utils';
2
3
  import { SendReplayData } from '../types';
3
4
  /**
4
5
  * Send replay attachment using `fetch()`
@@ -10,4 +11,11 @@ export declare function sendReplayRequest({ recordingData, replayId, segmentId:
10
11
  export declare class TransportStatusCodeError extends Error {
11
12
  constructor(statusCode: number);
12
13
  }
14
+ /**
15
+ * This error indicates that we hit a rate limit API error.
16
+ */
17
+ export declare class RateLimitError extends Error {
18
+ rateLimits: RateLimits;
19
+ constructor(rateLimits: RateLimits);
20
+ }
13
21
  //# sourceMappingURL=sendReplayRequest.d.ts.map
@@ -1,9 +0,0 @@
1
- import type { JsonToken } from './constants';
2
- /**
3
- * Complete an incomplete JSON string.
4
- * This will ensure that the last element always has a `"~~"` to indicate it was truncated.
5
- * For example, `[1,2,` will be completed to `[1,2,"~~"]`
6
- * and `{"aa":"b` will be completed to `{"aa":"b~~"}`
7
- */
8
- export declare function completeJson(incompleteJson: string, stack: JsonToken[]): string;
9
- //# sourceMappingURL=completeJson.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"completeJson.d.ts","sourceRoot":"","sources":["../../../../../src/util/truncateJson/completeJson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAgB7C;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,CA4B/E"}
@@ -1,12 +0,0 @@
1
- export declare const OBJ = 10;
2
- export declare const OBJ_KEY = 11;
3
- export declare const OBJ_KEY_STR = 12;
4
- export declare const OBJ_VAL = 13;
5
- export declare const OBJ_VAL_STR = 14;
6
- export declare const OBJ_VAL_COMPLETED = 15;
7
- export declare const ARR = 20;
8
- export declare const ARR_VAL = 21;
9
- export declare const ARR_VAL_STR = 22;
10
- export declare const ARR_VAL_COMPLETED = 23;
11
- export type JsonToken = typeof OBJ | typeof OBJ_KEY | typeof OBJ_KEY_STR | typeof OBJ_VAL | typeof OBJ_VAL_STR | typeof OBJ_VAL_COMPLETED | typeof ARR | typeof ARR_VAL | typeof ARR_VAL_STR | typeof ARR_VAL_COMPLETED;
12
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/util/truncateJson/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,GAAG,KAAK,CAAC;AACtB,eAAO,MAAM,OAAO,KAAK,CAAC;AAC1B,eAAO,MAAM,WAAW,KAAK,CAAC;AAC9B,eAAO,MAAM,OAAO,KAAK,CAAC;AAC1B,eAAO,MAAM,WAAW,KAAK,CAAC;AAC9B,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,eAAO,MAAM,GAAG,KAAK,CAAC;AACtB,eAAO,MAAM,OAAO,KAAK,CAAC;AAC1B,eAAO,MAAM,WAAW,KAAK,CAAC;AAC9B,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,MAAM,MAAM,SAAS,GACjB,OAAO,GAAG,GACV,OAAO,OAAO,GACd,OAAO,WAAW,GAClB,OAAO,OAAO,GACd,OAAO,WAAW,GAClB,OAAO,iBAAiB,GACxB,OAAO,GAAG,GACV,OAAO,OAAO,GACd,OAAO,WAAW,GAClB,OAAO,iBAAiB,CAAC"}
@@ -1,6 +0,0 @@
1
- import type { JsonToken } from './constants';
2
- /**
3
- * Evaluate an (incomplete) JSON string.
4
- */
5
- export declare function evaluateJson(json: string): JsonToken[];
6
- //# sourceMappingURL=evaluateJson.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"evaluateJson.d.ts","sourceRoot":"","sources":["../../../../../src/util/truncateJson/evaluateJson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAc7C;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,CAQtD"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Takes an incomplete JSON string, and returns a hopefully valid JSON string.
3
- * Note that this _can_ fail, so you should check the return value is valid JSON.
4
- */
5
- export declare function fixJson(incompleteJson: string): string;
6
- //# sourceMappingURL=fixJson.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fixJson.d.ts","sourceRoot":"","sources":["../../../../../src/util/truncateJson/fixJson.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,OAAO,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAItD"}
@@ -1,9 +0,0 @@
1
- import { JsonToken } from './constants';
2
- /**
3
- * Complete an incomplete JSON string.
4
- * This will ensure that the last element always has a `"~~"` to indicate it was truncated.
5
- * For example, `[1,2,` will be completed to `[1,2,"~~"]`
6
- * and `{"aa":"b` will be completed to `{"aa":"b~~"}`
7
- */
8
- export declare function completeJson(incompleteJson: string, stack: JsonToken[]): string;
9
- //# sourceMappingURL=completeJson.d.ts.map
@@ -1,12 +0,0 @@
1
- export declare const OBJ = 10;
2
- export declare const OBJ_KEY = 11;
3
- export declare const OBJ_KEY_STR = 12;
4
- export declare const OBJ_VAL = 13;
5
- export declare const OBJ_VAL_STR = 14;
6
- export declare const OBJ_VAL_COMPLETED = 15;
7
- export declare const ARR = 20;
8
- export declare const ARR_VAL = 21;
9
- export declare const ARR_VAL_STR = 22;
10
- export declare const ARR_VAL_COMPLETED = 23;
11
- export type JsonToken = typeof OBJ | typeof OBJ_KEY | typeof OBJ_KEY_STR | typeof OBJ_VAL | typeof OBJ_VAL_STR | typeof OBJ_VAL_COMPLETED | typeof ARR | typeof ARR_VAL | typeof ARR_VAL_STR | typeof ARR_VAL_COMPLETED;
12
- //# sourceMappingURL=constants.d.ts.map
@@ -1,6 +0,0 @@
1
- import { JsonToken } from './constants';
2
- /**
3
- * Evaluate an (incomplete) JSON string.
4
- */
5
- export declare function evaluateJson(json: string): JsonToken[];
6
- //# sourceMappingURL=evaluateJson.d.ts.map
@@ -1,6 +0,0 @@
1
- /**
2
- * Takes an incomplete JSON string, and returns a hopefully valid JSON string.
3
- * Note that this _can_ fail, so you should check the return value is valid JSON.
4
- */
5
- export declare function fixJson(incompleteJson: string): string;
6
- //# sourceMappingURL=fixJson.d.ts.map