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