Files
Chromacase/front/components/Play/SvgContainer.tsx

28 lines
661 B
TypeScript

import React from 'react';
import { ViewStyle, Image, Platform, StyleProp, ImageStyle } from 'react-native';
import { SvgCssUri } from 'react-native-svg/css';
type SvgContainerProps = {
url: string;
onReady?: () => void;
style?: ViewStyle;
};
export const SvgContainer = ({ url, onReady, style }: SvgContainerProps) => {
if (Platform.OS === 'web') {
return (
<Image source={{ uri: url }} onLoad={onReady} style={style as StyleProp<ImageStyle>} />
);
}
return (
<SvgCssUri
uri={url}
style={style}
// force to not look at the width and height of the actual file
height={undefined}
width={undefined}
onLoad={onReady}
/>
);
};