import { FC, useState } from 'react'; import { Modal, StyleSheet } from 'react-native'; import { GestureResponderEvent } from 'react-native/Libraries/Types/CoreEventTypes'; import { AppPressable } from '../../buttons'; import { AppIcon } from '../../images_and_icons'; import { AppBox } from '../../layout'; import { AppText } from '../../text'; import { useAppTheme } from '~/view/theme'; type Props = { title?: string; tipTitle?: string; message: string; }; export const AppTip: FC = ({ title, message, tipTitle }) => { const { buttonSizes } = useAppTheme(); const [state, setState] = useState({ show: false, translateY: 0 }); const handlePress = (e: GestureResponderEvent) => { const finalTranslateY = e.nativeEvent.pageY - e.nativeEvent.locationY + buttonSizes.s; setState(prev => ({ show: !prev.show, translateY: finalTranslateY })); }; const onDismiss = () => { setState({ show: false, translateY: 0 }); }; return ( <> {title && ( {title} )} {tipTitle && {tipTitle}} {message} ); };