import React from "react"; import { Animated, Pressable, ScrollView, View } from "react-native"; import { Text } from "@/components/common/Text"; import { useTVFocusAnimation } from "@/components/tv/hooks/useTVFocusAnimation"; import { useScaledTVTypography } from "@/constants/TVTypography"; interface ToggleItem { id: number; label: string; selected: boolean; } interface TVToggleChipProps { item: ToggleItem; onToggle: (id: number) => void; disabled?: boolean; } const TVToggleChip: React.FC = ({ item, onToggle, disabled = false, }) => { const typography = useScaledTVTypography(); const { focused, handleFocus, handleBlur, animatedStyle } = useTVFocusAnimation({ scaleAmount: 1.08, }); return ( onToggle(item.id)} onFocus={handleFocus} onBlur={handleBlur} disabled={disabled} focusable={!disabled} > {item.label} ); }; interface TVToggleOptionRowProps { label: string; items: ToggleItem[]; onToggle: (id: number) => void; disabled?: boolean; } export const TVToggleOptionRow: React.FC = ({ label, items, onToggle, disabled = false, }) => { const typography = useScaledTVTypography(); if (items.length === 0) return null; return ( {label} {items.map((item) => ( ))} ); };