import React from "react"; import { Text, type TextProps, type TextStyle } from "react-native"; import { Theme } from "../../theme/theme"; type Variant = "logo" | "title" | "body" | "muted" | "error"; type Props = TextProps & { variant?: Variant; style?: TextStyle | TextStyle[]; }; export default function AppText({ variant = "body", style, ...props }: Props) { const base: TextStyle = { color: Theme.Colors.text, fontSize: Theme.FontSize.md, }; const variants: Record = { logo: { fontSize: Theme.FontSize.xxl, fontWeight: Theme.FontWeight.bold }, title: { fontSize: Theme.FontSize.xl, fontWeight: Theme.FontWeight.bold }, body: { fontSize: Theme.FontSize.md }, muted: { color: Theme.Colors.mutedText, fontSize: Theme.FontSize.sm }, error: { color: Theme.Colors.danger, fontSize: Theme.FontSize.sm }, }; return ; }