@cloudcare/cocos-session-replay 0.1.0-alpha.6 → 0.1.0-alpha.7

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 (66) hide show
  1. package/README.md +51 -0
  2. package/dist/creator2/core/client.d.ts +57 -0
  3. package/dist/creator2/core/client.d.ts.map +1 -1
  4. package/dist/creator2/core/client.js +57 -0
  5. package/dist/creator2/core/client.js.map +1 -1
  6. package/dist/creator2/core/replay-diagnostics.d.ts +3 -5
  7. package/dist/creator2/core/replay-diagnostics.d.ts.map +1 -1
  8. package/dist/creator2/core/replay-diagnostics.js.map +1 -1
  9. package/dist/creator2/core/replay-encoding.d.ts +2 -0
  10. package/dist/creator2/core/replay-encoding.d.ts.map +1 -1
  11. package/dist/creator2/core/replay-encoding.js +4 -1
  12. package/dist/creator2/core/replay-encoding.js.map +1 -1
  13. package/dist/creator2/core/replay.d.ts +3 -2
  14. package/dist/creator2/core/replay.d.ts.map +1 -1
  15. package/dist/creator2/core/replay.js +53 -46
  16. package/dist/creator2/core/replay.js.map +1 -1
  17. package/dist/creator2/core/types.d.ts +5 -9
  18. package/dist/creator2/core/types.d.ts.map +1 -1
  19. package/dist/creator2/core/validation.d.ts +0 -2
  20. package/dist/creator2/core/validation.d.ts.map +1 -1
  21. package/dist/creator2/core/validation.js +1 -14
  22. package/dist/creator2/core/validation.js.map +1 -1
  23. package/dist/creator2/core/version.d.ts +1 -1
  24. package/dist/creator2/core/version.js +1 -1
  25. package/dist/creator3/core/client.d.ts +57 -0
  26. package/dist/creator3/core/client.d.ts.map +1 -1
  27. package/dist/creator3/core/client.js +57 -0
  28. package/dist/creator3/core/client.js.map +1 -1
  29. package/dist/creator3/core/replay-diagnostics.d.ts +3 -5
  30. package/dist/creator3/core/replay-diagnostics.d.ts.map +1 -1
  31. package/dist/creator3/core/replay-diagnostics.js.map +1 -1
  32. package/dist/creator3/core/replay-encoding.d.ts +2 -0
  33. package/dist/creator3/core/replay-encoding.d.ts.map +1 -1
  34. package/dist/creator3/core/replay-encoding.js +4 -1
  35. package/dist/creator3/core/replay-encoding.js.map +1 -1
  36. package/dist/creator3/core/replay.d.ts +3 -2
  37. package/dist/creator3/core/replay.d.ts.map +1 -1
  38. package/dist/creator3/core/replay.js +72 -60
  39. package/dist/creator3/core/replay.js.map +1 -1
  40. package/dist/creator3/core/types.d.ts +5 -9
  41. package/dist/creator3/core/types.d.ts.map +1 -1
  42. package/dist/creator3/core/validation.d.ts +0 -2
  43. package/dist/creator3/core/validation.d.ts.map +1 -1
  44. package/dist/creator3/core/validation.js +1 -14
  45. package/dist/creator3/core/validation.js.map +1 -1
  46. package/dist/creator3/core/version.d.ts +1 -1
  47. package/dist/creator3/core/version.js +1 -1
  48. package/dist/creator3/creator3/capture.d.ts +8 -0
  49. package/dist/creator3/creator3/capture.d.ts.map +1 -1
  50. package/dist/creator3/creator3/capture.js +171 -40
  51. package/dist/creator3/creator3/capture.js.map +1 -1
  52. package/dist/creator3/creator3/pointer.d.ts +3 -1
  53. package/dist/creator3/creator3/pointer.d.ts.map +1 -1
  54. package/dist/creator3/creator3/pointer.js +63 -8
  55. package/dist/creator3/creator3/pointer.js.map +1 -1
  56. package/native/ios/FTCocosReplayBridge.podspec +1 -1
  57. package/native-integration.json +2 -2
  58. package/package.json +2 -2
  59. package/dist/creator2/core/replay-budget.d.ts +0 -28
  60. package/dist/creator2/core/replay-budget.d.ts.map +0 -1
  61. package/dist/creator2/core/replay-budget.js +0 -126
  62. package/dist/creator2/core/replay-budget.js.map +0 -1
  63. package/dist/creator3/core/replay-budget.d.ts +0 -28
  64. package/dist/creator3/core/replay-budget.d.ts.map +0 -1
  65. package/dist/creator3/core/replay-budget.js +0 -118
  66. package/dist/creator3/core/replay-budget.js.map +0 -1
package/README.md CHANGED
@@ -38,6 +38,57 @@ sdk.leaveCocos();
38
38
 
39
39
  If automatic scene tracking is disabled, pass a `viewName` to `enterCocos`. Use `leaveCocos` instead of `shutdown` in Hybrid mode. Replay uses the native host's existing RUM session, image storage, and uploader.
40
40
 
41
+ ## Image size and traffic
42
+
43
+ The per-image behavior below is included in `0.1.0-alpha.7`. The device reference used locally packed development `0.1.0-alpha.6` packages containing commit `ef1137b`; published `0.1.0-alpha.6` packages predate this change.
44
+
45
+ Set the capture frequency and per-image limits independently:
46
+
47
+ ```ts
48
+ const replay = {
49
+ captureFps: 3,
50
+ maxImageDimension: 720,
51
+ imagePolicy: { quality: 'medium' as const, maxFrameBytes: 40 * 1024 },
52
+ };
53
+ sdk.attach({ replay }); // Or pass replay to sdk.start in standalone mode.
54
+ ```
55
+
56
+ `captureFps` accepts integers from 1 to 5 (default 1). `maxImageDimension` accepts 1–2048 and overrides the preset's longest edge. `imagePolicy.maxFrameBytes` accepts 1 KiB–1 MiB and overrides the preset's encoded size limit for **every image**, including new-view and rotation frames. The native encoder reduces quality, then dimensions if needed; a frame that still exceeds the limit is rejected while pending touches can continue to be written.
57
+
58
+ | Preset | Longest edge | Initial encoding quality | Per-image limit | Full-rate image ceiling at 2 FPS (MiB/min) | Full-rate image ceiling at 3 FPS (MiB/min) |
59
+ | --- | ---: | ---: | ---: | ---: | ---: |
60
+ | `low` | 480 px | 0.35 | 20 KiB | 2.34 | 3.52 |
61
+ | `medium` (default preset) | 720 px | 0.45 | 40 KiB | 4.69 | 7.03 |
62
+ | `high` | 960 px | 0.60 | 80 KiB | 9.38 | 14.06 |
63
+
64
+ These are approximate theoretical image-only ceilings per recorded session at the configured frame rate, calculated as `maxFrameBytes × captureFps × 60 / 1048576`. They are **not measured typical traffic, a traffic range, or a rolling quota**. Configuration does not establish a useful lower bound: actual traffic depends on encoded image size, scene changes, and the number of accepted frames. Report typical ranges only from measurements of representative scenes at each configuration. A static scene may stop producing additional images after its first frame, but that does not make zero a representative minimum for an active recording. Replay segments, touch events, other telemetry, network overhead, and retries are excluded. Session sampling reduces aggregate traffic across users; it does not reduce the per-image limit in a recorded session.
65
+
66
+ ### Battle re-encoding sizing reference
67
+
68
+ The following **sample-based estimates** provide a numeric lower and upper reference for active gameplay. A local test re-encoded 21 existing 720×405 Battle WebP images with libwebp 1.6.0, using the Android policy's initial quality and size-reduction steps. All 21 images were accepted in each preset. The ranges multiply the smallest and largest encoded sample sizes by 120 or 180 images per minute; they do not discount static frames or missed captures.
69
+
70
+ | Preset | Encoded sample size (bytes/image) | Estimated images at 2 FPS (MiB/min) | Estimated images at 3 FPS (MiB/min) |
71
+ | --- | ---: | ---: | ---: |
72
+ | `low` | 5,482–6,054 | 0.63–0.69 | 0.94–1.04 |
73
+ | `medium` | 10,168–11,282 | 1.16–1.29 | 1.75–1.94 |
74
+ | `high` | 10,776–12,100 | 1.23–1.38 | 1.85–2.08 |
75
+
76
+ This is a local re-encoding estimate using already-compressed images, **not a continuous 2/3 FPS device recording, an iOS JPEG measurement, or guaranteed bounds for other scenes**. Low was resized to 480×270; medium and high used the source 720×405 without upscaling, so the high row does not characterize a 960 px capture. Textures, particles, camera motion, alpha, and native encoder differences can change the range. Only image data is included; the separate full-rate ceilings above still describe the configured per-image limits.
77
+
78
+ ### Android device reference
79
+
80
+ A September 13, 2026 Creator 2.4.9 Android Battle recording configured for 3 FPS, medium, 720 px and 40 KiB/image produced 83 available WebP images totaling 1,008,030 bytes over 28.516 seconds between its first and last image. Each image was 720×405, with an encoded size of 11,280–13,098 bytes (mean 12,144.94 bytes). Image traffic was **2.02 MiB/min**. The full view averaged 2.88 FPS, including an initial 1.017-second interval; the subsequent 81 intervals averaged **2.95 FPS**.
81
+
82
+ At a full 3 FPS, the measured smallest and largest Battle images imply **1.94–2.25 MiB/min**, with **2.08 MiB/min** at the mean size. This is a sample-based planning reference, not guaranteed bounds for other scenes. It is more representative of this Android Battle scene than the earlier medium re-encoding estimate of 1.75–1.94 MiB/min. The low/high rows above remain re-encoding estimates; no device measurements for those presets are claimed.
83
+
84
+ For measurements, use `unique image payload bytes / recorded seconds × 60 / 1048576`. Deduplicate repeated playback downloads by resource ID and use the duration of the same records whose bytes are counted. Across this recording, the raw record span was 68.953 seconds while the console session header showed 48.15 seconds; mixing those durations would distort the result. Two images outside Battle were unavailable from the server, so the whole-session download total is incomplete. The Battle images were all available.
85
+
86
+ For planning, use `average encoded bytes × expected saved images per minute / 1048576`; at a full rate the expected count is `captureFps × 60`. Add Replay segments, touch metadata, transport overhead and retries separately. Downloaded image payload is not a measurement of all device upload traffic. Session sampling scales aggregate recorded minutes, while error-session sampling adds further recordings; neither changes the size limit of an accepted image.
87
+
88
+ There is no rolling minute budget, budget-triggered throttling, or 100 KiB first-frame allowance. Remove the old `maxBytesPerMinute` and `adaptiveCapture` options; they are no longer part of the API, and extra legacy JavaScript properties do not enable a limit. Capture processing time is included in the target frame interval. Identical/approximately static frames, native encoding rejection, and device processing delays can still reduce actual output; missed time slots are skipped without concurrent image jobs.
89
+
90
+ Supplying `imagePolicy` enables the native V2 image encoder (Android WebP, iOS JPEG) and its size limits, even when using `{}` to select the medium preset. Update the native Replay SDK and rebuild the native application. An unavailable V2 encoder produces an explicit error and does not fall back to unbounded storage. Omitting `imagePolicy` preserves legacy image storage: it still uses `captureFps` and `maxImageDimension`, but has **no encoded-byte limit**, and the table above does not apply. Legacy image bytes are reported as unavailable in diagnostics rather than estimated as the per-frame limit.
91
+
41
92
  ## Migration from the combined package
42
93
 
43
94
  Add this package and compose the existing SDK with `withSessionReplay`. Move the old `setReplayCamera(camera)` call to `sdk.setReplayCamera(camera)`. Import Replay configuration types from this package. Existing `start({ replay })`, `attach({ replay })`, and `sdk.replay` operations are available on the composed SDK.
@@ -15,11 +15,68 @@ export declare class FTCocosReplaySDK {
15
15
  readonly logger: FTCocosSDK['logger'];
16
16
  readonly trace: FTCocosSDK['trace'];
17
17
  constructor(base: FTCocosSDK, replay: FTSessionReplay, capture: FTReplayCapture, configure: (config: FTSessionReplayConfig | undefined) => void);
18
+ /**
19
+ * Initializes the base SDK and configured modules for a standalone Cocos app.
20
+ * Supplying `config.replay` also enables native Session Replay and starts
21
+ * canvas capture. Omitting it does not start Replay.
22
+ *
23
+ * Call once during application startup, after composing with withSessionReplay.
24
+ * Do not combine with {@link attach}, which requires a native host-owned SDK.
25
+ *
26
+ * @param config - Base SDK settings, optional modules, and Replay settings.
27
+ * @throws If the SDK is already started or attached, Replay settings are
28
+ * invalid, or the required native Replay integration is unavailable.
29
+ */
18
30
  start(config: FTCocosReplayConfig): void;
31
+ /**
32
+ * Attaches Cocos tracking to an SDK initialized by the native Hybrid host.
33
+ * Supplying `config.replay` prepares canvas capture for {@link enterCocos};
34
+ * capture does not start until that method is called. The native host owns
35
+ * native SDK and Replay initialization, including sampling settings.
36
+ *
37
+ * Call before the first {@link enterCocos}. Repeated calls after attachment
38
+ * have no effect and do not update the configuration.
39
+ *
40
+ * @param config - Optional Cocos automatic tracking and Hybrid Replay settings.
41
+ * @throws If standalone initialization has already started, Replay settings
42
+ * are invalid, or the required native Replay integration is unavailable.
43
+ */
19
44
  attach(config?: FTCocosHybridReplayConfig): void;
45
+ /**
46
+ * Selects the Cocos camera used for subsequent Session Replay captures.
47
+ * Update it when changing scenes if the selected camera belongs to the old
48
+ * scene. Selecting a camera does not start Replay capture.
49
+ *
50
+ * @param camera - A Camera component from the matching Creator engine in the
51
+ * active scene, or null/undefined to restore automatic camera selection.
52
+ */
20
53
  setReplayCamera(camera: unknown): void;
54
+ /**
55
+ * Starts Cocos automatic tracking and any Replay capture enabled by
56
+ * {@link attach} in Hybrid mode. Repeated calls while entered have no effect.
57
+ *
58
+ * @param options - Options for the Cocos view being entered. Supply `viewName`
59
+ * when automatic scene tracking is disabled.
60
+ * @throws If the SDK is not attached in Hybrid mode, the required view name
61
+ * is missing, or tracking or Replay startup fails.
62
+ */
21
63
  enterCocos(options?: FTCocosEnterOptions): void;
64
+ /**
65
+ * Stops Cocos automatic tracking and Hybrid Replay capture while keeping the
66
+ * native host SDK running. Call {@link enterCocos} to resume Cocos tracking.
67
+ * Has no effect before attachment or when Cocos has already been left.
68
+ *
69
+ * @throws If the SDK was started in standalone mode, or tracking or Replay
70
+ * cleanup fails.
71
+ */
22
72
  leaveCocos(): void;
73
+ /**
74
+ * Stops standalone Cocos tracking, Session Replay, and the base native SDK.
75
+ * Has no effect if the base SDK is idle. Hybrid applications must use
76
+ * {@link leaveCocos} because the native host owns SDK shutdown.
77
+ *
78
+ * @throws If the SDK is attached in Hybrid mode or shutdown cleanup fails.
79
+ */
23
80
  shutdown(): void;
24
81
  }
25
82
  export declare function composeSessionReplay(base: FTCocosSDK, engine: 'creator2' | 'creator3', create: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC1G,OAAO,EAAE,eAAe,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAChG,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,qBAAqB,EAA+B,MAAM,YAAY,CAAC;AAIrI,MAAM,WAAW,eAAgB,SAAQ,eAAe;IAAG,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CAAE;AAE9F,mFAAmF;AACnF,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,QAAQ,CAAC,MAAM,EAAE,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAT5B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;gBAGjB,IAAI,EAAE,UAAU,EACxB,MAAM,EAAE,eAAe,EACf,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,CAAC,MAAM,EAAE,qBAAqB,GAAG,SAAS,KAAK,IAAI;IAQjF,KAAK,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI;IAMxC,MAAM,CAAC,MAAM,GAAE,yBAA8B,GAAG,IAAI;IAMpD,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IACtC,UAAU,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,IAAI;IAC/C,UAAU,IAAI,IAAI;IAClB,QAAQ,IAAI,IAAI;CACjB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,UAAU,GAAG,UAAU,EAC/B,MAAM,EAAE,MAAM;IAAE,SAAS,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,qBAAqB,CAAA;CAAE,GACxG,gBAAgB,CAkClB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC1G,OAAO,EAAE,eAAe,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAChG,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,qBAAqB,EAA+B,MAAM,YAAY,CAAC;AAIrI,MAAM,WAAW,eAAgB,SAAQ,eAAe;IAAG,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CAAE;AAE9F,mFAAmF;AACnF,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,QAAQ,CAAC,MAAM,EAAE,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAT5B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;gBAGjB,IAAI,EAAE,UAAU,EACxB,MAAM,EAAE,eAAe,EACf,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,CAAC,MAAM,EAAE,qBAAqB,GAAG,SAAS,KAAK,IAAI;IAQjF;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI;IAMxC;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,MAAM,GAAE,yBAA8B,GAAG,IAAI;IAMpD;;;;;;;OAOG;IACH,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAEtC;;;;;;;;OAQG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,IAAI;IAE/C;;;;;;;OAOG;IACH,UAAU,IAAI,IAAI;IAElB;;;;;;OAMG;IACH,QAAQ,IAAI,IAAI;CACjB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,UAAU,GAAG,UAAU,EAC/B,MAAM,EAAE,MAAM;IAAE,SAAS,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,qBAAqB,CAAA;CAAE,GACxG,gBAAgB,CAkClB"}
@@ -28,6 +28,18 @@ var FTCocosReplaySDK = /** @class */ (function () {
28
28
  this.logger = base.logger;
29
29
  this.trace = base.trace;
30
30
  }
31
+ /**
32
+ * Initializes the base SDK and configured modules for a standalone Cocos app.
33
+ * Supplying `config.replay` also enables native Session Replay and starts
34
+ * canvas capture. Omitting it does not start Replay.
35
+ *
36
+ * Call once during application startup, after composing with withSessionReplay.
37
+ * Do not combine with {@link attach}, which requires a native host-owned SDK.
38
+ *
39
+ * @param config - Base SDK settings, optional modules, and Replay settings.
40
+ * @throws If the SDK is already started or attached, Replay settings are
41
+ * invalid, or the required native Replay integration is unavailable.
42
+ */
31
43
  FTCocosReplaySDK.prototype.start = function (config) {
32
44
  var replay = config.replay, base = __rest(config, ["replay"]);
33
45
  this.configure(replay);
@@ -38,6 +50,19 @@ var FTCocosReplaySDK = /** @class */ (function () {
38
50
  this.configure(undefined);
39
51
  }
40
52
  };
53
+ /**
54
+ * Attaches Cocos tracking to an SDK initialized by the native Hybrid host.
55
+ * Supplying `config.replay` prepares canvas capture for {@link enterCocos};
56
+ * capture does not start until that method is called. The native host owns
57
+ * native SDK and Replay initialization, including sampling settings.
58
+ *
59
+ * Call before the first {@link enterCocos}. Repeated calls after attachment
60
+ * have no effect and do not update the configuration.
61
+ *
62
+ * @param config - Optional Cocos automatic tracking and Hybrid Replay settings.
63
+ * @throws If standalone initialization has already started, Replay settings
64
+ * are invalid, or the required native Replay integration is unavailable.
65
+ */
41
66
  FTCocosReplaySDK.prototype.attach = function (config) {
42
67
  if (config === void 0) { config = {}; }
43
68
  var replay = config.replay, base = __rest(config, ["replay"]);
@@ -49,9 +74,41 @@ var FTCocosReplaySDK = /** @class */ (function () {
49
74
  this.configure(undefined);
50
75
  }
51
76
  };
77
+ /**
78
+ * Selects the Cocos camera used for subsequent Session Replay captures.
79
+ * Update it when changing scenes if the selected camera belongs to the old
80
+ * scene. Selecting a camera does not start Replay capture.
81
+ *
82
+ * @param camera - A Camera component from the matching Creator engine in the
83
+ * active scene, or null/undefined to restore automatic camera selection.
84
+ */
52
85
  FTCocosReplaySDK.prototype.setReplayCamera = function (camera) { this.capture.setCamera(camera); };
86
+ /**
87
+ * Starts Cocos automatic tracking and any Replay capture enabled by
88
+ * {@link attach} in Hybrid mode. Repeated calls while entered have no effect.
89
+ *
90
+ * @param options - Options for the Cocos view being entered. Supply `viewName`
91
+ * when automatic scene tracking is disabled.
92
+ * @throws If the SDK is not attached in Hybrid mode, the required view name
93
+ * is missing, or tracking or Replay startup fails.
94
+ */
53
95
  FTCocosReplaySDK.prototype.enterCocos = function (options) { this.base.enterCocos(options); };
96
+ /**
97
+ * Stops Cocos automatic tracking and Hybrid Replay capture while keeping the
98
+ * native host SDK running. Call {@link enterCocos} to resume Cocos tracking.
99
+ * Has no effect before attachment or when Cocos has already been left.
100
+ *
101
+ * @throws If the SDK was started in standalone mode, or tracking or Replay
102
+ * cleanup fails.
103
+ */
54
104
  FTCocosReplaySDK.prototype.leaveCocos = function () { this.base.leaveCocos(); };
105
+ /**
106
+ * Stops standalone Cocos tracking, Session Replay, and the base native SDK.
107
+ * Has no effect if the base SDK is idle. Hybrid applications must use
108
+ * {@link leaveCocos} because the native host owns SDK shutdown.
109
+ *
110
+ * @throws If the SDK is attached in Hybrid mode or shutdown cleanup fails.
111
+ */
55
112
  FTCocosReplaySDK.prototype.shutdown = function () { this.base.shutdown(); };
56
113
  return FTCocosReplaySDK;
57
114
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../src/session-replay/core/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../src/session-replay/core/client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAyGA,oDAsCC;AA9ID,yCAAgG;AAEhG,2CAAuD;AACvD,iDAA8E;AAI9E,mFAAmF;AACnF;IAME,0BACmB,IAAgB,EACxB,MAAuB,EACf,OAAwB,EACxB,SAA8D;QAH9D,SAAI,GAAJ,IAAI,CAAY;QACxB,WAAM,GAAN,MAAM,CAAiB;QACf,YAAO,GAAP,OAAO,CAAiB;QACxB,cAAS,GAAT,SAAS,CAAqD;QAE/E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;OAWG;IACH,gCAAK,GAAL,UAAM,MAA2B;QACvB,IAAA,MAAM,GAAc,MAAM,OAApB,EAAK,IAAI,UAAK,MAAM,EAA5B,UAAmB,CAAF,CAAY;QACnC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvB,IAAI,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;gBAAS,CAAC;YAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,iCAAM,GAAN,UAAO,MAAsC;QAAtC,uBAAA,EAAA,WAAsC;QACnC,IAAA,MAAM,GAAc,MAAM,OAApB,EAAK,IAAI,UAAK,MAAM,EAA5B,UAAmB,CAAF,CAAY;QACnC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvB,IAAI,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;gBAAS,CAAC;YAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,CAAC;IACxE,CAAC;IAED;;;;;;;OAOG;IACH,0CAAe,GAAf,UAAgB,MAAe,IAAU,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE1E;;;;;;;;OAQG;IACH,qCAAU,GAAV,UAAW,OAA6B,IAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAElF;;;;;;;OAOG;IACH,qCAAU,GAAV,cAAqB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAE9C;;;;;;OAMG;IACH,mCAAQ,GAAR,cAAmB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC5C,uBAAC;AAAD,CAAC,AA9FD,IA8FC;AA9FY,4CAAgB;AAgG7B,SAAgB,oBAAoB,CAClC,IAAgB,EAChB,MAA+B,EAC/B,MAAyG;IAEzG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,OAAO,IAAI,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;QAC1F,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,oCAAuB,EAAE,MAAM,EAAE;QACzE,IAAA,KAAmC,MAAM,EAAE,EAAzC,SAAS,eAAA,EAAE,OAAO,aAAA,EAAE,QAAQ,cAAa,CAAC;QAClD,IAAM,MAAM,GAAG,IAAI,2BAAe,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAM,OAAA,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,EAAtC,CAAsC,CAAC,CAAC;QAC/G,IAAI,OAA0C,CAAC;QAC/C,IAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAA,MAAM,IAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,OAAO;YACL,KAAK,EAAE,MAAM;YACb,SAAS,EAAE;gBACT,WAAW,EAAE;oBACX,IAAI,OAAO,KAAK,SAAS;wBAAE,OAAO;oBAClC,cAAc,CAAC,OAAO,CAAC,CAAC;oBACxB,IAAA,4BAAY,EAAC,OAAO,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;oBACtD,IAAA,4BAAY,EAAC,OAAO,CAAC,wBAAwB,EAAE,iCAAiC,CAAC,CAAC;oBAClF,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBACzC,CAAC;gBACD,UAAU,EAAE,cAAQ,IAAI,OAAO,KAAK,SAAS;oBAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACvE,YAAY,EAAE;oBACZ,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBAC1B,cAAc,CAAC,OAAO,CAAC,CAAC;wBACxB,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACxC,CAAC;oBACD,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;gBACD,cAAc,EAAE,cAAM,OAAA,MAAM,CAAC,YAAY,EAAE,EAArB,CAAqB;gBAC3C,KAAK,EAAE,cAAM,OAAA,MAAM,CAAC,WAAW,EAAE,EAApB,CAAoB;gBACjC,KAAK,EAAE,cAAM,OAAA,MAAM,CAAC,WAAW,EAAE,EAApB,CAAoB;gBACjC,QAAQ,EAAE,cAAM,OAAA,MAAM,CAAC,IAAI,EAAE,EAAb,CAAa;aAC9B;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,MAAmC;IACzD,IAAA,0BAAU,EAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC9B,IAAA,iCAAiB,EAAC,MAAM,CAAC,CAAC;IAC1B,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,KAAK,MAAM,IAAI,MAAM,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;QAC1G,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,SAA4B,EAAE,MAAe;IACzE,IAAI,SAAS,CAAC,QAAQ,KAAK,aAAa;QAAE,OAAO;IACjD,IAAI,CAAC;QACH,IAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAuB,qBAAqB,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;QACzF,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,MAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC9F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,oIAA6H,MAAM,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC;IAChK,CAAC;AACH,CAAC"}
@@ -1,9 +1,7 @@
1
- export type FTReplaySkipReason = 'dedupe' | 'approx_static' | 'throttle' | 'budget' | 'busy' | 'error';
1
+ export type FTReplaySkipReason = 'dedupe' | 'approx_static' | 'image_rejected' | 'busy' | 'error';
2
2
  export type FTReplayDiagnosticEvent = {
3
3
  type: 'capture_attempt';
4
4
  timestamp: number;
5
- usedBytes: number;
6
- maxBytesPerMinute: number;
7
5
  } | {
8
6
  type: 'capture_skipped';
9
7
  timestamp: number;
@@ -11,12 +9,12 @@ export type FTReplayDiagnosticEvent = {
11
9
  } | {
12
10
  type: 'image_saved';
13
11
  timestamp: number;
14
- byteSize: number;
12
+ byteSize?: number;
15
13
  width: number;
16
14
  height: number;
17
15
  mimeType?: string;
18
16
  priority: boolean;
19
- byteSizeSource: 'native' | 'frame_limit_estimate';
17
+ byteSizeSource: 'native' | 'unavailable';
20
18
  } | {
21
19
  type: 'segment_encoded';
22
20
  timestamp: number;
@@ -1 +1 @@
1
- {"version":3,"file":"replay-diagnostics.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-diagnostics.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAC1B,QAAQ,GACR,eAAe,GACf,UAAU,GACV,QAAQ,GACR,MAAM,GACN,OAAO,CAAC;AAEZ,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,GAC5F;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,GAC1E;IACA,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,QAAQ,GAAG,sBAAsB,CAAC;CACnD,GACC;IACA,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;CACnB,GACC;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAmBlD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiB1D"}
1
+ {"version":3,"file":"replay-diagnostics.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-diagnostics.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAC1B,QAAQ,GACR,eAAe,GACf,gBAAgB,GAChB,MAAM,GACN,OAAO,CAAC;AAEZ,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,GAC1E;IACA,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,QAAQ,GAAG,aAAa,CAAC;CAC1C,GACC;IACA,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;CACnB,GACC;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAmBlD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiB1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"replay-diagnostics.js","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-diagnostics.ts"],"names":[],"mappings":";;AAuCA,oDAQC;AAED,oDAiBC;AA5BD,gFAAgF;AAChF,SAAgB,oBAAoB,CAAC,KAA8B;IACjE,IAAM,QAAQ,GAAI,UAAuC,CAAC,sCAAsC,CAAC;IACjG,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO;IAC3C,IAAI,CAAC;QACH,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;IAAC,WAAM,CAAC;QACP,sEAAsE;IACxE,CAAC;AACH,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAa;IAChD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,IAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI,GAAG,IAAI;YAAE,KAAK,IAAI,CAAC,CAAC;aACvB,IAAI,IAAI,GAAG,KAAK;YAAE,KAAK,IAAI,CAAC,CAAC;aAC7B,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACtE,IAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACxC,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;gBACnC,KAAK,IAAI,CAAC,CAAC;gBACX,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;QACH,CAAC;;YAAM,KAAK,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"replay-diagnostics.js","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-diagnostics.ts"],"names":[],"mappings":";;AAsCA,oDAQC;AAED,oDAiBC;AA5BD,gFAAgF;AAChF,SAAgB,oBAAoB,CAAC,KAA8B;IACjE,IAAM,QAAQ,GAAI,UAAuC,CAAC,sCAAsC,CAAC;IACjG,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO;IAC3C,IAAI,CAAC;QACH,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;IAAC,WAAM,CAAC;QACP,sEAAsE;IACxE,CAAC;AACH,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAa;IAChD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,IAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI,GAAG,IAAI;YAAE,KAAK,IAAI,CAAC,CAAC;aACvB,IAAI,IAAI,GAAG,KAAK;YAAE,KAAK,IAAI,CAAC,CAAC;aAC7B,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACtE,IAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACxC,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;gBACnC,KAAK,IAAI,CAAC,CAAC;gBACX,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;QACH,CAAC;;YAAM,KAAK,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -2,11 +2,13 @@ import type { FTRUMContext } from './types.js';
2
2
  export interface FTReplayImageRecord {
3
3
  context: FTRUMContext;
4
4
  resourceId: string;
5
+ /** Logical display bounds, independent of the resource's encoded pixels. */
5
6
  width: number;
6
7
  height: number;
7
8
  mimeType?: `image/${string}`;
8
9
  timestamp: number;
9
10
  contextChanged: boolean;
11
+ viewportChanged?: boolean;
10
12
  pointerEvents?: FTReplayPointerRecord[];
11
13
  }
12
14
  export interface FTReplayPointerRecord {
@@ -1 +1 @@
1
- {"version":3,"file":"replay-encoding.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-encoding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,qBAAqB,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,YAAY,CAAC;IACtB,aAAa,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,mBAAmB,GAAG;IACnE,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAiCA;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,sBAAsB,GAAG;IACzE,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAMA"}
1
+ {"version":3,"file":"replay-encoding.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-encoding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,qBAAqB,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,YAAY,CAAC;IACtB,aAAa,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,mBAAmB,GAAG;IACnE,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAiCA;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,sBAAsB,GAAG;IACzE,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAMA"}
@@ -17,8 +17,11 @@ function encodeReplayImageRecord(input) {
17
17
  var _a;
18
18
  var wireframe = __assign(__assign({ id: 1, type: 'image', x: 0, y: 0, width: input.width, height: input.height, base64: null, border: null, clip: null, isEmpty: false }, (input.mimeType ? { mimeType: input.mimeType } : {})), { resourceId: input.resourceId, shapeStyle: null });
19
19
  var records = [];
20
+ if (input.contextChanged || input.viewportChanged) {
21
+ records.push({ type: 4, data: { width: input.width, height: input.height }, timestamp: input.timestamp });
22
+ }
20
23
  if (input.contextChanged) {
21
- records.push({ type: 4, data: { width: input.width, height: input.height }, timestamp: input.timestamp }, { type: 6, data: { has_focus: true }, timestamp: input.timestamp });
24
+ records.push({ type: 6, data: { has_focus: true }, timestamp: input.timestamp });
22
25
  }
23
26
  records.push({
24
27
  type: 10,
@@ -1 +1 @@
1
- {"version":3,"file":"replay-encoding.js","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-encoding.ts"],"names":[],"mappings":";;;;;;;;;;;;;AA0BA,0DAoCC;AAED,gEASC;AA/CD,SAAgB,uBAAuB,CAAC,KAA0B;;IAIhE,IAAM,SAAS,uBACb,EAAE,EAAE,CAAC,EACL,IAAI,EAAE,OAAO,EACb,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,MAAM,EAAE,IAAI,EACZ,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,KAAK,IACX,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACvD,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,UAAU,EAAE,IAAI,GACjB,CAAC;IACF,IAAM,OAAO,GAAc,EAAE,CAAC;IAC9B,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CACV,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAC3F,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CACnE,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,IAAI,CAAC;QACX,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE;QACjC,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,OAAZ,OAAO,EAAS,CAAA,MAAA,KAAK,CAAC,aAAa,0CAAE,GAAG,CAAC,aAAa,CAAC,KAAI,EAAE,EAAE;IAC/D,OAAO;QACL,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;QAC/C,WAAW,EAAE,OAAO,CAAC,MAAM;KAC5B,CAAC;AACJ,CAAC;AAED,SAAgB,0BAA0B,CAAC,KAA6B;IAItE,IAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACvD,OAAO;QACL,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;QAC/C,WAAW,EAAE,OAAO,CAAC,MAAM;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,OAA8B;IACnD,OAAO;QACL,IAAI,EAAE,EAAE;QACR,IAAI,EAAE;YACJ,MAAM,EAAE,CAAC;YACT,gBAAgB,EAAE,OAAO,CAAC,SAAS;YACnC,WAAW,EAAE,OAAO;YACpB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,CAAC,EAAE,OAAO,CAAC,CAAC;SACb;QACD,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,OAAqB,EAAE,OAAkB;IAC/D,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,SAAA;QACP,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"replay-encoding.js","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay-encoding.ts"],"names":[],"mappings":";;;;;;;;;;;;;AA4BA,0DAoCC;AAED,gEASC;AA/CD,SAAgB,uBAAuB,CAAC,KAA0B;;IAIhE,IAAM,SAAS,uBACb,EAAE,EAAE,CAAC,EACL,IAAI,EAAE,OAAO,EACb,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,MAAM,EAAE,IAAI,EACZ,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,KAAK,IACX,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACvD,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,UAAU,EAAE,IAAI,GACjB,CAAC;IACF,IAAM,OAAO,GAAc,EAAE,CAAC;IAC9B,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5G,CAAC;IACD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,CAAC,IAAI,CAAC;QACX,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE;QACjC,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,OAAZ,OAAO,EAAS,CAAA,MAAA,KAAK,CAAC,aAAa,0CAAE,GAAG,CAAC,aAAa,CAAC,KAAI,EAAE,EAAE;IAC/D,OAAO;QACL,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;QAC/C,WAAW,EAAE,OAAO,CAAC,MAAM;KAC5B,CAAC;AACJ,CAAC;AAED,SAAgB,0BAA0B,CAAC,KAA6B;IAItE,IAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACvD,OAAO;QACL,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;QAC/C,WAAW,EAAE,OAAO,CAAC,MAAM;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,OAA8B;IACnD,OAAO;QACL,IAAI,EAAE,EAAE;QACR,IAAI,EAAE;YACJ,MAAM,EAAE,CAAC;YACT,gBAAgB,EAAE,OAAO,CAAC,SAAS;YACnC,WAAW,EAAE,OAAO;YACpB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,CAAC,EAAE,OAAO,CAAC,CAAC;SACb;QACD,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,OAAqB,EAAE,OAAkB;IAC/D,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,SAAA;QACP,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;AACL,CAAC"}
@@ -8,6 +8,8 @@ export interface FTCanvasCapture {
8
8
  capture(maxImageDimension: number): Promise<FTCapturedFrame | undefined>;
9
9
  persist(frame: FTCapturedFrame, fingerprint: string): Promise<FTStoredFrame>;
10
10
  disposeStoredFrame(frame: FTStoredFrame): void | Promise<void>;
11
+ /** Cancel pending GPU capture and release reusable capture resources. */
12
+ dispose?(): void;
11
13
  setPrivacy(node: unknown, mode: 'mask' | 'hide' | 'unmask'): void;
12
14
  }
13
15
  export interface FTReplayPointerEvent {
@@ -47,13 +49,12 @@ export declare class FTSessionReplay {
47
49
  private captureGeneration;
48
50
  private config;
49
51
  private imagePolicy;
50
- private budget;
51
52
  private lastFingerprint;
52
53
  private lastContextKey;
53
54
  private lastPrivacyKey;
54
55
  private lastFrameSample;
55
56
  private lastImageTimestamp;
56
- private lastImageSize;
57
+ private lastDisplaySize;
57
58
  private lastViewportSize;
58
59
  private imagePolicyEnabled;
59
60
  private supportsSaveImageV2;
@@ -1 +1 @@
1
- {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../../../src/session-replay/core/replay.ts"],"names":[],"mappings":"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"}