33 MaskInputOptions ,
44 SlimDOMOptions ,
55 createMirror ,
6- DataURLOptions ,
76} from '@sentry-internal/rrweb-snapshot' ;
87import { initObservers , mutationBuffers } from './observer' ;
98import {
@@ -41,7 +40,6 @@ import {
4140 ShadowDomManagerNoop ,
4241} from './shadow-dom-manager' ;
4342import {
44- CanvasManager ,
4543 CanvasManagerConstructorOptions ,
4644 CanvasManagerInterface ,
4745 CanvasManagerNoop ,
@@ -340,6 +338,18 @@ function record<T = eventWithTime>(
340338 const canvasManager : CanvasManagerInterface = _getCanvasManager (
341339 getCanvasManager ,
342340 {
341+ mirror,
342+ win : window ,
343+ mutationCb : ( p : canvasMutationParam ) =>
344+ wrappedEmit (
345+ wrapEvent ( {
346+ type : EventType . IncrementalSnapshot ,
347+ data : {
348+ source : IncrementalSource . CanvasMutation ,
349+ ...p ,
350+ } ,
351+ } ) ,
352+ ) ,
343353 recordCanvas,
344354 blockClass,
345355 blockSelector,
@@ -717,14 +727,6 @@ export function takeFullSnapshot(isCheckout?: boolean) {
717727 _takeFullSnapshot ( isCheckout ) ;
718728}
719729
720- function wrappedEmit ( e : eventWithTime ) {
721- if ( ! _wrappedEmit ) {
722- return ;
723- }
724-
725- _wrappedEmit ( e ) ;
726- }
727-
728730// record.addCustomEvent is removed because Sentry Session Replay does not use it
729731// record.freezePage is removed because Sentry Session Replay does not use it
730732
@@ -734,48 +736,18 @@ record.takeFullSnapshot = takeFullSnapshot;
734736
735737export default record ;
736738
737- type PrivateOptions = 'mutationCb' | 'win' | 'mirror' ;
738- type PublicGetCanvasManagerOptions = Omit <
739- CanvasManagerConstructorOptions ,
740- PrivateOptions
741- > ;
742-
743- interface PrivateGetCanvasManagerOptions
744- extends PublicGetCanvasManagerOptions ,
745- Pick < CanvasManagerConstructorOptions , PrivateOptions > { }
746-
747739function _getCanvasManager (
748740 getCanvasManagerFn :
749741 | undefined
750- | ( ( options : PrivateGetCanvasManagerOptions ) => CanvasManagerInterface ) ,
751- options : PublicGetCanvasManagerOptions ,
742+ | ( ( options : Partial < CanvasManagerConstructorOptions > ) => CanvasManagerInterface ) ,
743+ options : CanvasManagerConstructorOptions ,
752744) {
753745 try {
754746 return getCanvasManagerFn
755- ? getCanvasManagerFn ( {
756- ...options ,
757- mirror,
758- win : window ,
759- mutationCb : ( p : canvasMutationParam ) =>
760- wrappedEmit (
761- wrapEvent ( {
762- type : EventType . IncrementalSnapshot ,
763- data : {
764- source : IncrementalSource . CanvasMutation ,
765- ...p ,
766- } ,
767- } ) ,
768- ) ,
769- } )
747+ ? getCanvasManagerFn ( options )
770748 : new CanvasManagerNoop ( ) ;
771749 } catch {
772750 console . warn ( 'Unable to initialize CanvasManager' ) ;
773751 return new CanvasManagerNoop ( ) ;
774752 }
775753}
776-
777- export function getCanvasManager (
778- options : PublicGetCanvasManagerOptions ,
779- ) : CanvasManagerInterface {
780- return new CanvasManager ( options as CanvasManagerConstructorOptions ) ;
781- }
0 commit comments