import Icon from '@components/Icon' import CustomText from '@components/Text' import { StyleConstants } from '@utils/styles/constants' import { useTheme } from '@utils/styles/ThemeManager' import React, { useMemo } from 'react' import { AccessibilityProps, Pressable, View } from 'react-native' import { Flow } from 'react-native-animated-spinkit' export interface Props { accessibilityLabel?: string accessibilityHint?: string accessibilityState?: AccessibilityProps['accessibilityState'] type?: 'icon' | 'text' content: string native?: boolean background?: boolean loading?: boolean disabled?: boolean destructive?: boolean onPress: () => void } const HeaderRight: React.FC = ({ // Accessibility - Start accessibilityLabel, accessibilityHint, accessibilityState, // Accessibility - End type = 'icon', content, native = true, background = false, loading, disabled, destructive = false, onPress }) => { const { colors, theme } = useTheme() const loadingSpinkit = useMemo( () => ( ), [theme] ) const children = useMemo(() => { switch (type) { case 'icon': return ( <> {loading && loadingSpinkit} ) case 'text': return ( <> {loading && loadingSpinkit} ) } }, [theme, loading, disabled]) return ( ) } export default HeaderRight