import ButtonCustom from "@/components/Button/ButtonCustom"; import Spacing from "@/components/_ShareComponent/Spacing"; import ViewWrapper from "@/components/_ShareComponent/ViewWrapper"; import { MainColor } from "@/constants/color-palet"; import { apiLogin, apiVersion } from "@/lib/api"; import { GStyles } from "@/styles/global-styles"; import { router } from "expo-router"; import { useEffect, useState } from "react"; import { Text, View } from "react-native"; import PhoneInput, { ICountry } from "react-native-international-phone-number"; import Toast from "react-native-toast-message"; export default function LoginView() { const [version, setVersion] = useState(""); const [selectedCountry, setSelectedCountry] = useState(null); const [inputValue, setInputValue] = useState(""); useEffect(() => { onLoadVersion(); }, []); async function onLoadVersion() { const res = await apiVersion(); setVersion(res.data); } function handleInputValue(phoneNumber: string) { setInputValue(phoneNumber); } function handleSelectedCountry(country: ICountry) { setSelectedCountry(country); } async function validateData() { if (inputValue.length === 0) { return Toast.show({ type: "error", text1: "Masukan nomor anda", }); } if (selectedCountry === null) { return Toast.show({ type: "error", text1: "Pilih negara", }); } if (inputValue.length < 9) { return Toast.show({ type: "error", text1: "Nomor tidak valid", }); } return true; } async function handleLogin() { const isValid = await validateData(); if (!isValid) return; const callingCode = selectedCountry?.callingCode.replace(/^\+/, "") || ""; const fixNumber = inputValue.replace(/\s+/g, ""); const realNumber = callingCode + fixNumber; const response = await apiLogin({ nomor: realNumber }); if (response.success) { Toast.show({ type: "success", text1: "Success", text2: "Login berhasil", }); router.navigate(`/verification?kodeId=${response.kodeId}`); // router.replace("/(application)/coba"); } else { Toast.show({ type: "error", text1: "Error", text2: response.message, }); } } return ( WELCOME TO HIPMI BADUNG APPS {version} | powered by muku.id Login {/* router.navigate("/admin/investment")}> Admin ( Delete Soon ) */} ); }