upd: login tanpa verifikasi otp

Deskripsi:
- dibuat untuk pengecekan aplikasi oleh tim google play store

No Issues
This commit is contained in:
2025-09-02 11:08:58 +08:00
parent db0f0ecd6c
commit 265656413d
2 changed files with 15 additions and 11 deletions

View File

@@ -1,5 +1,6 @@
import Styles from "@/constants/Styles"
import { apiCheckPhoneLogin, apiSendOtp } from "@/lib/api"
import { useAuthSession } from "@/providers/AuthProvider"
import AsyncStorage from "@react-native-async-storage/async-storage"
import { useState } from "react"
import { Image, SafeAreaView, View } from "react-native"
@@ -10,7 +11,6 @@ import ModalLoading from "../modalLoading"
import Text from "../Text"
import ToastCustom from "../toastCustom"
type Props = {
onValidate: ({ phone, otp }: { phone: string, otp: number }) => void
}
@@ -19,20 +19,27 @@ export default function ViewLogin({ onValidate }: Props) {
const [loadingLogin, setLoadingLogin] = useState(false)
const [disableLogin, setDisableLogin] = useState(true)
const [phone, setPhone] = useState('')
const { signIn, encryptToken } = useAuthSession();
const handleCheckPhone = async () => {
try {
setLoadingLogin(true)
const response = await apiCheckPhoneLogin({ phone: `62${phone}` });
const response = await apiCheckPhoneLogin({ phone: `62${phone}` })
if (response.success) {
const otp = Math.floor(1000 + Math.random() * 9000)
const responseOtp = await apiSendOtp({ phone: `62${phone}`, otp })
if (responseOtp == 200) {
await AsyncStorage.setItem('user', response.id);
return onValidate({ phone: `62${phone}`, otp })
if (response.isWithoutOTP) {
const encrypted = await encryptToken(response.id)
signIn(encrypted)
} else {
const otp = Math.floor(1000 + Math.random() * 9000)
const responseOtp = await apiSendOtp({ phone: `62${phone}`, otp })
if (responseOtp == 200) {
await AsyncStorage.setItem('user', response.id)
return onValidate({ phone: `62${phone}`, otp })
}
}
} else {
return Toast.show({ type: 'small', text1: response.message, position: 'top' })
}
return Toast.show({ type: 'small', text1: response.message, position: 'top' })
} catch (error) {
return Toast.show({ type: 'small', text1: 'Terjadi kesalahan', position: 'top' })
} finally {

View File

@@ -2,9 +2,6 @@ import axios from 'axios';
import Constants from 'expo-constants';
const api = axios.create({
// baseURL: 'http://10.0.2.2:3000/api',
// baseURL: 'https://stg-darmasaba.wibudev.com/api',
// baseURL: 'http://192.168.154.198:3000/api',
baseURL: Constants?.expoConfig?.extra?.URL_API
});