diff --git a/src/components/Header.tsx b/src/components/Header.tsx new file mode 100644 index 0000000..39053ad --- /dev/null +++ b/src/components/Header.tsx @@ -0,0 +1,53 @@ +import { ChevronLeft } from 'lucide-react-native'; +import React from 'react'; +import { View, Text, TouchableOpacity } from 'react-native'; + +import { useColors } from '../hooks/useColors'; + +/** + Componente Header para telas com título e botão de voltar opcional. + @param title Título da página onde se encontra o header + @param showBackButton Booleano para mostrar ou esconder o botão de voltar + @param handleBack Função a ser chamada ao pressionar o botão de voltar + + @example +
router.replace('(tabs)')} + */ + +interface HeaderProps { + title: string; + showBackButton?: boolean; + handleBack?: () => void; +} + +export default function Header({ + title, + showBackButton, + handleBack, +}: HeaderProps) { + const colorScheme = useColors(); + + return ( + + + {showBackButton && ( + + + + )} + + + + + {title.toUpperCase()} + + + + {/** Spacing to alignment */} + + + ); +}