mh-two-thousand-and-two
2024-04-12 3d2ec2fd0578d3ba0a414b0cc4e4a2ae60878596
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import {
  findElmById,
  invokeVmMethod,
  invokeVmMethodWithoutArgs
} from '../util'
 
const METHODS = {
  play (ctx) {
    return invokeVmMethodWithoutArgs(ctx, 'play')
  },
  pause (ctx) {
    return invokeVmMethodWithoutArgs(ctx, 'pause')
  },
  seek (ctx, args) {
    return invokeVmMethod(ctx, 'seek', args.position)
  },
  stop (ctx) {
    return invokeVmMethodWithoutArgs(ctx, 'stop')
  },
  sendDanmu (ctx, args) {
    return invokeVmMethod(ctx, 'sendDanmu', args)
  },
  playbackRate (ctx, args) {
    return invokeVmMethod(ctx, 'playbackRate', args.rate)
  },
  requestFullScreen (ctx, args) {
    return invokeVmMethod(ctx, 'requestFullScreen', args)
  },
  exitFullScreen (ctx) {
    return invokeVmMethodWithoutArgs(ctx, 'exitFullScreen')
  },
  showStatusBar (ctx) {
    return invokeVmMethodWithoutArgs(ctx, 'showStatusBar')
  },
  hideStatusBar (ctx) {
    return invokeVmMethodWithoutArgs(ctx, 'hideStatusBar')
  }
}
 
export function operateVideoPlayer (videoId, pageVm, type, data) {
  return METHODS[type](findElmById(videoId, pageVm), data)
}