|
@@ -2,13 +2,16 @@ import {Fragment, useCallback, useRef} from 'react';
|
|
|
import styled from '@emotion/styled';
|
|
|
|
|
|
import NegativeSpaceContainer from 'sentry/components/container/negativeSpaceContainer';
|
|
|
-import ReplayIFrameRoot from 'sentry/components/replays/player/replayIFrameRoot';
|
|
|
-import {Provider as ReplayContextProvider} from 'sentry/components/replays/replayContext';
|
|
|
+import ReplayPlayer from 'sentry/components/replays/player/replayPlayer';
|
|
|
+import ReplayPlayerMeasurer from 'sentry/components/replays/player/replayPlayerMeasurer';
|
|
|
import {Tooltip} from 'sentry/components/tooltip';
|
|
|
import {t} from 'sentry/locale';
|
|
|
import {space} from 'sentry/styles/space';
|
|
|
import {trackAnalytics} from 'sentry/utils/analytics';
|
|
|
import toPixels from 'sentry/utils/number/toPixels';
|
|
|
+import {ReplayPlayerEventsContextProvider} from 'sentry/utils/replays/playback/providers/replayPlayerEventsContext';
|
|
|
+import {ReplayPlayerPluginsContextProvider} from 'sentry/utils/replays/playback/providers/replayPlayerPluginsContext';
|
|
|
+import {ReplayPlayerStateContextProvider} from 'sentry/utils/replays/playback/providers/replayPlayerStateContext';
|
|
|
import type ReplayReader from 'sentry/utils/replays/replayReader';
|
|
|
import {useDimensions} from 'sentry/utils/useDimensions';
|
|
|
import useOrganization from 'sentry/utils/useOrganization';
|
|
@@ -99,30 +102,32 @@ function DiffSides({leftOffsetMs, replay, rightOffsetMs, viewDimensions, width})
|
|
|
|
|
|
return (
|
|
|
<Fragment>
|
|
|
- <Cover style={{width}}>
|
|
|
- <Placement style={{width}}>
|
|
|
- <ReplayContextProvider
|
|
|
- analyticsContext="replay_comparison_modal_left"
|
|
|
- initialTimeOffsetMs={{offsetMs: leftOffsetMs}}
|
|
|
- isFetching={false}
|
|
|
- replay={replay}
|
|
|
- >
|
|
|
- <ReplayIFrameRoot viewDimensions={viewDimensions} />
|
|
|
- </ReplayContextProvider>
|
|
|
- </Placement>
|
|
|
- </Cover>
|
|
|
- <Cover ref={rightSideElem} style={{width: 0}}>
|
|
|
- <Placement style={{width}}>
|
|
|
- <ReplayContextProvider
|
|
|
- analyticsContext="replay_comparison_modal_right"
|
|
|
- initialTimeOffsetMs={{offsetMs: rightOffsetMs}}
|
|
|
- isFetching={false}
|
|
|
- replay={replay}
|
|
|
- >
|
|
|
- <ReplayIFrameRoot viewDimensions={viewDimensions} />
|
|
|
- </ReplayContextProvider>
|
|
|
- </Placement>
|
|
|
- </Cover>
|
|
|
+ <ReplayPlayerPluginsContextProvider>
|
|
|
+ <ReplayPlayerEventsContextProvider replay={replay}>
|
|
|
+ <Cover style={{width}}>
|
|
|
+ <Placement style={{width}}>
|
|
|
+ <ReplayPlayerStateContextProvider>
|
|
|
+ <NegativeSpaceContainer>
|
|
|
+ <ReplayPlayerMeasurer measure="width">
|
|
|
+ {style => <ReplayPlayer style={style} offsetMs={leftOffsetMs} />}
|
|
|
+ </ReplayPlayerMeasurer>
|
|
|
+ </NegativeSpaceContainer>
|
|
|
+ </ReplayPlayerStateContextProvider>
|
|
|
+ </Placement>
|
|
|
+ </Cover>
|
|
|
+ <Cover ref={rightSideElem} style={{width: 0}}>
|
|
|
+ <Placement style={{width}}>
|
|
|
+ <ReplayPlayerStateContextProvider>
|
|
|
+ <NegativeSpaceContainer>
|
|
|
+ <ReplayPlayerMeasurer measure="width">
|
|
|
+ {style => <ReplayPlayer style={style} offsetMs={rightOffsetMs} />}
|
|
|
+ </ReplayPlayerMeasurer>
|
|
|
+ </NegativeSpaceContainer>
|
|
|
+ </ReplayPlayerStateContextProvider>
|
|
|
+ </Placement>
|
|
|
+ </Cover>
|
|
|
+ </ReplayPlayerEventsContextProvider>
|
|
|
+ </ReplayPlayerPluginsContextProvider>
|
|
|
<Divider ref={dividerElem} onMouseDown={onDividerMouseDownWithAnalytics} />
|
|
|
</Fragment>
|
|
|
);
|