import { ScrollView, Text, View, Image , } from "react-native"; import tw from "twrnc"; import InputField from "@/components/InputField"; import { images,icons } from "@/constants"; import { useCallback, useState } from "react"; import CustomButton from "@/components/CustomButton"; import { Link ,useRouter } from "expo-router"; import OAuth from "@/components/OAuth"; import { useSignIn } from "@clerk/clerk-expo"; const SignIn = () => { const { signIn, setActive, isLoaded } = useSignIn(); const router = useRouter(); const [form,setForm]= useState({ email:"", password:"", }); const onSignInPress =useCallback( async () => { if (!isLoaded) { console.log("Clerk is not loaded yet."); return; } console.log("signIn object:", signIn); try { const signInAttempt = await signIn.create({ identifier: form.email, password :form.password , }) if (signInAttempt.status === "complete") { await setActive({ session: signInAttempt.createdSessionId }) console.log("Successfully signed in! Navigating to home..."); router.push("/(root)/(tabs)/home") } else { console.error(JSON.stringify(signInAttempt, null, 2)) } } catch (err:any) { console.error("Sign-in attempt did not complete:", JSON.stringify(err, null, 2)) } }, [isLoaded,form.email,form.password] ); return ( Welcome☺️ setForm({... form, email:value})} /> setForm({... form, password:value})} /> Don't Have an Account? Sign Up { /* Verification Modal */ } ); }; export default SignIn;