1import { AVPlaybackStatus } from './AV';
2import ExponentAV from './ExponentAV';
3import { requestFullscreen, exitFullscreen } from './FullscreenUtils.web';
4
5export default {
6  get name(): string {
7    return 'ExpoVideoManager';
8  },
9  get ScaleNone(): string {
10    return 'none';
11  },
12  get ScaleToFill(): string {
13    return 'fill';
14  },
15  get ScaleAspectFit(): string {
16    return 'contain';
17  },
18  get ScaleAspectFill(): string {
19    return 'cover';
20  },
21
22  async setFullscreen(
23    element: HTMLMediaElement,
24    isFullScreenEnabled: boolean
25  ): Promise<AVPlaybackStatus> {
26    if (isFullScreenEnabled) {
27      await requestFullscreen(element);
28    } else {
29      await exitFullscreen(element);
30    }
31    return ExponentAV.getStatusForVideo(element);
32  },
33};
34