1
- import React , { useCallback , useEffect , useState } from 'react' ;
2
- import { TouchableWithoutFeedback } from 'react-native' ;
3
- import { WebView } from 'react-native-webview' ;
4
- import webplayer from './template' ;
5
- import { LayoutProps } from './types' ;
1
+ import React from 'react'
2
+ import { TouchableWithoutFeedback } from 'react-native'
3
+ import { WebView } from 'react-native-webview'
4
+
5
+ import webplayer from './template'
6
+ import { LayoutProps } from './types'
6
7
7
8
export const Vimeo : React . FC < LayoutProps > = ( {
8
9
videoId,
@@ -18,49 +19,49 @@ export const Vimeo: React.FC<LayoutProps> = ({
18
19
speed = false ,
19
20
style,
20
21
} ) => {
21
- const [ isReady , setReady ] = useState < boolean > ( ) ;
22
+ const [ isReady , setReady ] = React . useState < boolean > ( )
22
23
23
- const [ autoPlayValue , setAutoPlay ] = useState < boolean > ( autoPlay ) ;
24
- const toggleAutoPlay = useCallback ( ( ) => setAutoPlay ( ! autoPlayValue ) , [
24
+ const [ autoPlayValue , setAutoPlay ] = React . useState < boolean > ( autoPlay )
25
+ const toggleAutoPlay = React . useCallback ( ( ) => setAutoPlay ( ! autoPlayValue ) , [
25
26
autoPlayValue ,
26
- ] ) ;
27
+ ] )
27
28
28
- const handlers : any = { } ;
29
+ const handlers : any = { }
29
30
const registerHandlers = ( ) => {
30
- registerBridgeEventHandler ( 'ready' , onReady ?? onReadyDefault ) ;
31
- registerBridgeEventHandler ( 'play' , onPlay ) ;
32
- registerBridgeEventHandler ( 'playProgress' , onPlayProgress ) ;
33
- registerBridgeEventHandler ( 'pause' , onPause ) ;
34
- registerBridgeEventHandler ( 'finish' , onFinish ) ;
35
- } ;
31
+ registerBridgeEventHandler ( 'ready' , onReady ?? onReadyDefault )
32
+ registerBridgeEventHandler ( 'play' , onPlay )
33
+ registerBridgeEventHandler ( 'playProgress' , onPlayProgress )
34
+ registerBridgeEventHandler ( 'pause' , onPause )
35
+ registerBridgeEventHandler ( 'finish' , onFinish )
36
+ }
36
37
37
38
const registerBridgeEventHandler = ( eventName : string , handler : any ) => {
38
- handlers [ eventName ] = handler ;
39
- } ;
39
+ handlers [ eventName ] = handler
40
+ }
40
41
41
- useEffect ( ( ) => {
42
- registerHandlers ( ) ;
43
- } , [ videoId , scalesPageToFit ] ) ;
42
+ React . useEffect ( ( ) => {
43
+ registerHandlers ( )
44
+ } , [ videoId , scalesPageToFit ] )
44
45
45
46
const onBridgeMessage = ( event : any ) => {
46
- const message = event . nativeEvent . data ;
47
- let payload ;
47
+ const message = event . nativeEvent . data
48
+ let payload
48
49
try {
49
- payload = JSON . parse ( message ) ;
50
+ payload = JSON . parse ( message )
50
51
if ( payload ?. name === 'finish' ) {
51
- toggleAutoPlay ( ) ;
52
+ toggleAutoPlay ( )
52
53
}
53
54
} catch ( err ) {
54
- return ;
55
+ return
55
56
}
56
- let handler = handlers [ payload . name ] ;
57
- if ( handler ) handler ( payload . data ) ;
58
- } ;
57
+ let handler = handlers [ payload . name ]
58
+ if ( handler ) handler ( payload . data )
59
+ }
59
60
60
61
const onReadyDefault = ( ) => {
61
- setReady ( true ) ;
62
- if ( onReady ) setTimeout ( onReady ) ;
63
- } ;
62
+ setReady ( true )
63
+ if ( onReady ) setTimeout ( onReady )
64
+ }
64
65
65
66
return (
66
67
< TouchableWithoutFeedback onPress = { toggleAutoPlay } >
@@ -82,5 +83,5 @@ export const Vimeo: React.FC<LayoutProps> = ({
82
83
] }
83
84
/>
84
85
</ TouchableWithoutFeedback >
85
- ) ;
86
- } ;
86
+ )
87
+ }
0 commit comments