2023-05-06 13:50:14 -03:00

37 lines
924 B
TypeScript

import React from 'react';
import { requireNativeComponent, ViewStyle } from 'react-native';
// @ts-ignore
import resolveAssetSource from 'react-native/Libraries/Image/resolveAssetSource';
type TransparentVideoProps = {
style: ViewStyle;
source?: any;
};
const ComponentName = 'TransparentVideoView';
const TransparentVideoView = requireNativeComponent(ComponentName);
class TransparentVideo extends React.PureComponent<TransparentVideoProps> {
render() {
const source = resolveAssetSource(this.props.source) || {};
let uri = source.uri || '';
if (uri && uri.match(/^\//)) {
uri = `file://${uri}`;
}
const nativeProps = Object.assign({}, this.props);
Object.assign(nativeProps, {
style: nativeProps.style,
src: {
uri,
type: source.type || '',
},
});
return <TransparentVideoView {...nativeProps} />;
}
}
export default TransparentVideo;