// @refresh react import React from 'react'; import {StyleSheet} from 'react-native'; import Animated from 'react-native-reanimated'; import Tagg from './Tagg'; import {PROFILE_CUTOUT_BOTTOM_Y} from '../../constants'; import {StatusBarHeight} from '../../utils'; const {View, ScrollView, interpolate, Extrapolate} = Animated; interface TaggsBarProps { y: Animated.Value; profileBodyHeight: number; } const TaggsBar: React.FC = ({y, profileBodyHeight}) => { const taggs: Array = []; for (let i = 0; i < 10; i++) { taggs.push(); } const shadowOpacity: Animated.Node = interpolate(y, { inputRange: [ PROFILE_CUTOUT_BOTTOM_Y + profileBodyHeight, PROFILE_CUTOUT_BOTTOM_Y + profileBodyHeight + 20, ], outputRange: [0, 0.2], extrapolate: Extrapolate.CLAMP, }); const paddingTop: Animated.Node = interpolate(y, { inputRange: [ 0, PROFILE_CUTOUT_BOTTOM_Y + profileBodyHeight - 30, PROFILE_CUTOUT_BOTTOM_Y + profileBodyHeight, ], outputRange: [20, 20, StatusBarHeight], extrapolate: Extrapolate.CLAMP, }); const paddingBottom: Animated.Node = interpolate(y, { inputRange: [ 0, PROFILE_CUTOUT_BOTTOM_Y + profileBodyHeight - 30, PROFILE_CUTOUT_BOTTOM_Y + profileBodyHeight, ], outputRange: [30, 30, 15], extrapolate: Extrapolate.CLAMP, }); return ( {taggs} ); }; const styles = StyleSheet.create({ container: { backgroundColor: 'white', shadowColor: '#000', shadowRadius: 10, shadowOffset: {width: 0, height: 2}, zIndex: 1, }, contentContainer: { alignItems: 'center', paddingHorizontal: 15, }, tagg: { marginHorizontal: 14, }, }); export default TaggsBar;