From bd44d0c645bd107790690c046f34cbf0066c9de4 Mon Sep 17 00:00:00 2001 From: Billy Vong Date: Fri, 15 Dec 2023 13:52:53 -0500 Subject: [PATCH] feat(replay): Add `canvas.type` setting Defaults to `webp` instead of `png`. This will also allow `quality` to work. Closes https://github.com/getsentry/team-replay/issues/326 --- packages/replay/src/replay.ts | 5 ++++- packages/replay/src/types/replay.ts | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/replay/src/replay.ts b/packages/replay/src/replay.ts index 0085c44c6eb8..d0dc3097bcf6 100644 --- a/packages/replay/src/replay.ts +++ b/packages/replay/src/replay.ts @@ -343,7 +343,10 @@ export class ReplayContainer implements ReplayContainerInterface { ...(canvas && { recordCanvas: true, sampling: { canvas: canvas.fps || 4 }, - dataURLOptions: { quality: canvas.quality || 0.6 }, + dataURLOptions: { + type: canvas.type || 'image/webp', + quality: canvas.quality || 0.6, + }, getCanvasManager: canvas.manager, }), }); diff --git a/packages/replay/src/types/replay.ts b/packages/replay/src/types/replay.ts index d854f258c073..fb1f91c0e1a9 100644 --- a/packages/replay/src/types/replay.ts +++ b/packages/replay/src/types/replay.ts @@ -235,6 +235,7 @@ export interface ReplayPluginOptions extends ReplayNetworkOptions { canvas: { fps?: number; quality?: number; + type?: string; manager: (options: GetCanvasManagerOptions) => CanvasManagerInterface; }; }>;