import {useMemo} from 'react' import {Image as RNImage, View} from 'react-native' import Animated, {FadeIn, FadeOut} from 'react-native-reanimated' import {Image} from 'expo-image' import {msg} from '@lingui/core/macro' import {useLingui} from '@lingui/react' import {Trans} from '@lingui/react/macro' import {useHaptics} from '#/lib/haptics' import {Logo} from '#/view/icons/Logo' import {Logotype} from '#/view/icons/Logotype' import {atoms as a, useTheme} from '#/alf' import {Button, ButtonText} from '#/components/Button' // @ts-ignore import splashImagePointer from '../../../../assets/splash/illustration-mobile.png' // @ts-ignore import darkSplashImagePointer from '../../../../assets/splash/illustration-mobile-dark.png' const splashImageUri = RNImage.resolveAssetSource(splashImagePointer).uri const darkSplashImageUri = RNImage.resolveAssetSource( darkSplashImagePointer, ).uri export const SplashScreen = ({ onPressSignin, onPressCreateAccount, }: { onPressSignin: () => void onPressCreateAccount: () => void }) => { const t = useTheme() const {_} = useLingui() const isDarkMode = t.name !== 'light' const playHaptic = useHaptics() const styles = useMemo(() => { const logoFill = isDarkMode ? 'white' : t.palette.primary_500 return { logoFill, logoShadow: isDarkMode ? [ t.atoms.shadow_md, { shadowColor: logoFill, shadowOpacity: 0.5, shadowOffset: { width: 0, height: 0, }, }, ] : [], } }, [t, isDarkMode]) return ( <> ) }