subtracks/app/components/GradientBackground.tsx
austinried 62a721ba4d build out artist view
clean up mapping methods a bit
2021-07-15 16:58:08 +09:00

34 lines
913 B
TypeScript

import React from 'react'
import { useWindowDimensions, ViewStyle } from 'react-native'
import LinearGradient from 'react-native-linear-gradient'
import colorStyles from '@app/styles/colors'
const GradientBackground: React.FC<{
height?: number | string
width?: number | string
position?: 'relative' | 'absolute'
style?: ViewStyle
colors?: string[]
locations?: number[]
}> = ({ height, width, position, style, colors, locations, children }) => {
const layout = useWindowDimensions()
return (
<LinearGradient
colors={colors || [colorStyles.gradient.high, colorStyles.gradient.low]}
locations={locations || [0.01, 0.7]}
style={[
style,
{
width: width || '100%',
height: height || layout.height,
position: position || 'absolute',
},
]}>
{children}
</LinearGradient>
)
}
export default GradientBackground