(basePlayer: {
_timeline: RuntimeTimelineLike | null;
play: () => void;
pause: () => void;
seek: (timeSeconds: number, options?: { keepPlaying?: boolean }) => void;
getTime: () => number;
getDuration: () => number;
isPlaying: () => boolean;
renderSeek: (timeSeconds: number) => void;
})
| 191 | }); |
| 192 | }; |
| 193 | const createPlayerApiCompat = (basePlayer: { |
| 194 | _timeline: RuntimeTimelineLike | null; |
| 195 | play: () => void; |
| 196 | pause: () => void; |
| 197 | seek: (timeSeconds: number, options?: { keepPlaying?: boolean }) => void; |
| 198 | getTime: () => number; |
| 199 | getDuration: () => number; |
| 200 | isPlaying: () => boolean; |
| 201 | renderSeek: (timeSeconds: number) => void; |
| 202 | }): PlayerAPI => { |
| 203 | const defaultStageZoom: ReturnType<PlayerAPI["getStageZoom"]> = { |
| 204 | scale: 1, |
| 205 | focusX: 960, |
| 206 | focusY: 540, |
| 207 | }; |
| 208 | const emptyStageZoomKeyframes: ReturnType<PlayerAPI["getStageZoomKeyframes"]> = []; |
| 209 | const emptyVisibleElements: ReturnType<PlayerAPI["getVisibleElements"]> = []; |
| 210 | const defaultRenderState: ReturnType<PlayerAPI["getRenderState"]> = { |
| 211 | time: basePlayer.getTime(), |
| 212 | duration: basePlayer.getDuration(), |
| 213 | isPlaying: basePlayer.isPlaying(), |
| 214 | renderMode: false, |
| 215 | timelineDirty: false, |
| 216 | }; |
| 217 | return { |
| 218 | play: basePlayer.play, |
| 219 | pause: basePlayer.pause, |
| 220 | seek: basePlayer.seek, |
| 221 | getTime: basePlayer.getTime, |
| 222 | getDuration: basePlayer.getDuration, |
| 223 | isPlaying: basePlayer.isPlaying, |
| 224 | getMainTimeline: () => null, |
| 225 | getElementBounds: () => {}, |
| 226 | getElementsAtPoint: () => {}, |
| 227 | setElementPosition: () => {}, |
| 228 | previewElementPosition: () => {}, |
| 229 | setElementKeyframes: () => {}, |
| 230 | setElementScale: () => {}, |
| 231 | setElementFontSize: () => {}, |
| 232 | setElementTextContent: () => {}, |
| 233 | setElementTextColor: () => {}, |
| 234 | setElementTextShadow: () => {}, |
| 235 | setElementTextFontWeight: () => {}, |
| 236 | setElementTextFontFamily: () => {}, |
| 237 | setElementTextOutline: () => {}, |
| 238 | setElementTextHighlight: () => {}, |
| 239 | setElementVolume: () => {}, |
| 240 | setStageZoom: () => {}, |
| 241 | getStageZoom: () => defaultStageZoom, |
| 242 | setStageZoomKeyframes: () => {}, |
| 243 | getStageZoomKeyframes: () => emptyStageZoomKeyframes, |
| 244 | addElement: () => false, |
| 245 | removeElement: () => false, |
| 246 | updateElementTiming: () => false, |
| 247 | setElementTiming: () => {}, |
| 248 | updateElementSrc: () => false, |
| 249 | updateElementLayer: () => false, |
| 250 | updateElementBasePosition: () => false, |
no test coverage detected