import { Ionicons } from "@expo/vector-icons"; import React from "react"; import { Animated, Pressable, View } from "react-native"; import { Text } from "@/components/common/Text"; import { useScaledTVTypography } from "@/constants/TVTypography"; import { useTVFocusAnimation } from "./hooks/useTVFocusAnimation"; export interface TVOptionCardProps { label: string; sublabel?: string; selected: boolean; hasTVPreferredFocus?: boolean; onPress: () => void; width?: number; height?: number; } export const TVOptionCard = React.forwardRef( ( { label, sublabel, selected, hasTVPreferredFocus = false, onPress, width = 160, height = 75, }, ref, ) => { const typography = useScaledTVTypography(); const { focused, handleFocus, handleBlur, animatedStyle } = useTVFocusAnimation({ scaleAmount: 1.05 }); return ( {label} {sublabel && ( {sublabel} )} {selected && !focused && ( )} ); }, );