feat: integrate login, registration steps and splash screen changes
This commit is contained in:
@@ -0,0 +1,204 @@
|
||||
Diagnose log at 2026-05-08T08:22:50Z
|
||||
|
||||
AppPath: C:\Users\Lincpay\AppData\Local\Programs\Git\mingw64\bin\git-credential-manager.exe
|
||||
InstallDir: C:\Users\Lincpay\AppData\Local\Programs\Git\mingw64\bin\
|
||||
Version: 2.5.0+d34930736e131ad80e5690e5634ced1808aff3e2
|
||||
|
||||
------------
|
||||
Diagnostic: Environment
|
||||
Skipped: False
|
||||
Success: True
|
||||
Exception: None
|
||||
Log:
|
||||
OSType: Windows
|
||||
OSVersion: 10.0 (build 26200)
|
||||
Reading environment variables... OK
|
||||
Variables:
|
||||
HOMEPATH=\Users\Lincpay
|
||||
DriverData=C:\Windows\System32\Drivers\DriverData
|
||||
COMPUTERNAME=DESKTOP-TAFQRBL
|
||||
GIT_TRACE2_PARENT_SID=3fbdeb66-dea1-404d-b65e-01414608f6f1
|
||||
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
|
||||
OneDrive=C:\Users\Lincpay\OneDrive
|
||||
CODEX_THREAD_ID=019e0662-b081-7d10-a202-980cf9131ff1
|
||||
SESSIONNAME=Console
|
||||
TMP=C:\Users\Lincpay\AppData\Local\Temp
|
||||
PROCESSOR_REVISION=8e0c
|
||||
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW;.CPL
|
||||
USERNAME=Lincpay
|
||||
GIT_EXEC_PATH=C:/Users/Lincpay/AppData/Local/Programs/Git/mingw64/libexec/git-core
|
||||
TEMP=C:\Users\Lincpay\AppData\Local\Temp
|
||||
LOCALAPPDATA=C:\Users\Lincpay\AppData\Local
|
||||
MSYSTEM=MINGW64
|
||||
TERM=xterm-256color
|
||||
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 142 Stepping 12, GenuineIntel
|
||||
ProgramData=C:\ProgramData
|
||||
windir=C:\WINDOWS
|
||||
JAVA_HOME=C:\Program Files\Microsoft\jdk-17.0.14.7-hotspot\
|
||||
USERDOMAIN=DESKTOP-TAFQRBL
|
||||
PROCESSOR_LEVEL=6
|
||||
NUMBER_OF_PROCESSORS=8
|
||||
TMPDIR=C:\Users\Lincpay\AppData\Local\Temp
|
||||
VSCODE_IPC_HOOK=\\.\pipe\547cb42d-1.107.0-main-sock
|
||||
ProgramFiles(x86)=C:\Program Files (x86)
|
||||
PUBLIC=C:\Users\Public
|
||||
VSCODE_NLS_CONFIG={"userLocale":"en-us","osLocale":"en-in","resolvedLanguage":"en","defaultMessagesFile":"C:\\Users\\Lincpay\\AppData\\Local\\Programs\\Antigravity\\resources\\app\\out\\nls.messages.json","locale":"en-us","availableLanguages":{}}
|
||||
CommonProgramFiles=C:\Program Files (x86)\Common Files
|
||||
VSCODE_ESM_ENTRYPOINT=vs/workbench/api/node/extensionHostProcess
|
||||
GRADLE_HOME=C:\ProgramData\chocolatey\lib\gradle\tools\gradle-8.12.1
|
||||
ProgramFiles=C:\Program Files (x86)
|
||||
PLINK_PROTOCOL=ssh
|
||||
COLORTERM=truecolor
|
||||
MSYS=enable_pcon
|
||||
PATH=C:/Users/Lincpay/AppData/Local/Programs/Git/mingw64/libexec/git-core;C:\Users\Lincpay\AppData\Local\Programs\Git\mingw64\bin;C:\Users\Lincpay\AppData\Local\Programs\Git\usr\bin;C:\Users\Lincpay\bin;C:\Users\Lincpay\.codex\tmp\arg0\codex-arg0wLCfTN;C:\Python313\Scripts\;C:\Python313\;C:\Program Files\Microsoft\jdk-17.0.14.7-hotspot\bin;C:\Program Files\Java\jdk-17\bin;C:\Users\Lincpay\AppData\Local\Android\Sdk\platform-tools;C:\ProgramData\chocolatey\bin;C:\Users\DELL\AppData\Local\nvm;C:\nvm4w\nodejs;C:\Users\Lincpay\AppData\Local\Android\Sdk\emulator;C:\Program Files\nodejs\;C:\Windows\System32;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Users\Lincpay\.console-ninja\.bin;C:\Users\Lincpay\AppData\Local\Microsoft\WindowsApps;C:\Users\Lincpay\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\Lincpay\AppData\Local\Programs\Git\cmd;C:\Users\Lincpay\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\MongoDB Atlas CLI\;C:\Users\Lincpay\AppData\Local\Programs\Antigravity\bin;C:\Users\Lincpay\AppData\Local\Android\Sdk\emulator;C:\Users\Lincpay\AppData\Local\Android\Sdk\platform-tools;C:\Users\Lincpay\AppData\Local\Programs\cursor\resources\app\bin;c:\Users\Lincpay\.antigravity\extensions\openai.chatgpt-26.506.21252-win32-x64\bin\windows-x86_64
|
||||
ChocolateyInstall=C:\ProgramData\chocolatey
|
||||
DEBUG=release
|
||||
VSCODE_L10N_BUNDLE_LOCATION=
|
||||
VSCODE_CODE_CACHE_PATH=C:\Users\Lincpay\AppData\Roaming\Antigravity\CachedData\15487b3041e65228cae24980a3f796c905ef582c
|
||||
ProgramW6432=C:\Program Files
|
||||
NVM_SYMLINK=C:\nvm4w\nodejs
|
||||
NVM_HOME=C:\Users\DELL\AppData\Local\nvm
|
||||
HOME=C:\Users\Lincpay
|
||||
VSCODE_HANDLES_UNCAUGHT_ERRORS=true
|
||||
LC_CTYPE=C.UTF-8
|
||||
CommonProgramW6432=C:\Program Files\Common Files
|
||||
ZES_ENABLE_SYSMAN=1
|
||||
LOGONSERVER=\\DESKTOP-TAFQRBL
|
||||
VSCODE_CWD=C:\Users\Lincpay\AppData\Local\Programs\Antigravity
|
||||
EFC_10100_1592913036=1
|
||||
SystemRoot=C:\WINDOWS
|
||||
CODEX_INTERNAL_ORIGINATOR_OVERRIDE=codex_vscode
|
||||
USERDOMAIN_ROAMINGPROFILE=DESKTOP-TAFQRBL
|
||||
APPDATA=C:\Users\Lincpay\AppData\Roaming
|
||||
HOMEDRIVE=C:
|
||||
RUST_LOG=warn
|
||||
VSCODE_PID=14604
|
||||
PSModulePath=C:\Users\Lincpay\Documents\WindowsPowerShell\Modules;C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
|
||||
ELECTRON_RUN_AS_NODE=1
|
||||
CHROME_CRASHPAD_PIPE_NAME=\\.\pipe\crashpad_14604_MTACWRXOBAGKDEGK
|
||||
PROCESSOR_ARCHITEW6432=AMD64
|
||||
PROCESSOR_ARCHITECTURE=x86
|
||||
USERPROFILE=C:\Users\Lincpay
|
||||
OS=Windows_NT
|
||||
ComSpec=C:\WINDOWS\system32\cmd.exe
|
||||
SystemDrive=C:
|
||||
VSCODE_CRASH_REPORTER_PROCESS_TYPE=extensionHost
|
||||
OneDriveConsumer=C:\Users\Lincpay\OneDrive
|
||||
ALLUSERSPROFILE=C:\ProgramData
|
||||
|
||||
|
||||
------------
|
||||
Diagnostic: File system
|
||||
Skipped: False
|
||||
Success: True
|
||||
Exception: None
|
||||
Log:
|
||||
Temporary directory is 'C:\Users\Lincpay\AppData\Local\Temp\'...
|
||||
Checking basic file I/O...
|
||||
Writing to temporary file 'C:\Users\Lincpay\AppData\Local\Temp\96ba4635bdd4d82432d7df06'... OK
|
||||
Reading from temporary file 'C:\Users\Lincpay\AppData\Local\Temp\96ba4635bdd4d82432d7df06'... OK
|
||||
Deleting temporary file 'C:\Users\Lincpay\AppData\Local\Temp\96ba4635bdd4d82432d7df06'... OK
|
||||
Testing IFileSystem instance...
|
||||
UserHomePath: C:\Users\Lincpay
|
||||
UserDataDirectoryPath: C:\Users\Lincpay\.gcm
|
||||
GetCurrentDirectory(): D:\ProcureLinc\Procurelinc
|
||||
|
||||
------------
|
||||
Diagnostic: Networking
|
||||
Skipped: False
|
||||
Success: True
|
||||
Exception: None
|
||||
Log:
|
||||
Checking networking and HTTP stack...
|
||||
Creating HTTP client... OK
|
||||
IsNetworkAvailable: True
|
||||
Sending HEAD request to http://example.com...Sending HEAD request to https://example.com... OK
|
||||
OK
|
||||
Acquiring free TCP port... OK
|
||||
Testing local HTTP loopback connections...
|
||||
Creating new HTTP listener for http://localhost:55697/... OK
|
||||
Waiting for loopback connection... OK
|
||||
Writing response... OK
|
||||
Waiting for response data... OK
|
||||
Loopback connection data OK
|
||||
|
||||
------------
|
||||
Diagnostic: Git
|
||||
Skipped: False
|
||||
Success: True
|
||||
Exception: None
|
||||
Log:
|
||||
Getting Git version... OK
|
||||
Git version is '2.45.2.windows.1'
|
||||
Locating current repository...Git repository at 'D:/ProcureLinc/Procurelinc/.git'
|
||||
OK
|
||||
Listing all Git configuration... OK
|
||||
Git configuration:
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig diff.astextplain.textconv=astextplain
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig filter.lfs.clean=git-lfs clean -- %f
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig filter.lfs.smudge=git-lfs smudge -- %f
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig filter.lfs.process=git-lfs filter-process
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig filter.lfs.required=true
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig http.sslbackend=openssl
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig http.sslcainfo=C:/Users/Lincpay/AppData/Local/Programs/Git/mingw64/etc/ssl/certs/ca-bundle.crt
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig core.autocrlf=true
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig core.fscache=true
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig core.symlinks=false
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig pull.rebase=false
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig credential.helper=manager
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig credential.https://dev.azure.com.usehttppath=true
|
||||
file:C:/Users/Lincpay/AppData/Local/Programs/Git/etc/gitconfig init.defaultbranch=master
|
||||
file:C:/Users/Lincpay/.gitconfig user.email=abintoppo96@gmail.com
|
||||
file:C:/Users/Lincpay/.gitconfig user.name=Abin Toppo
|
||||
file:C:/Users/Lincpay/.gitconfig credential.https://git.lincpay.in.provider=generic
|
||||
file:C:/Users/Lincpay/.gitconfig credential.https://git.zeptic.in.provider=generic
|
||||
file:C:/Users/Lincpay/.gitconfig credential.http://dev1.lincpay:3000.provider=generic
|
||||
file:.git/config core.repositoryformatversion=0
|
||||
file:.git/config core.filemode=false
|
||||
file:.git/config core.bare=false
|
||||
file:.git/config core.logallrefupdates=true
|
||||
file:.git/config core.symlinks=false
|
||||
file:.git/config core.ignorecase=true
|
||||
file:.git/config remote.origin.url=http://dev1.lincpay:3000/rohit/Procurelinc.git
|
||||
file:.git/config remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
|
||||
file:.git/config branch.dev.remote=origin
|
||||
file:.git/config branch.dev.merge=refs/heads/dev
|
||||
file:.git/config branch.dev.vscode-merge-base=origin/main
|
||||
file:.git/config branch.featureDSc/device.vscode-merge-base=origin/dev
|
||||
|
||||
|
||||
------------
|
||||
Diagnostic: Credential storage
|
||||
Skipped: False
|
||||
Success: True
|
||||
Exception: None
|
||||
Log:
|
||||
ICredentialStore instance is of type: CredentialStore
|
||||
Writing test credential... OK
|
||||
Reading test credential... OK
|
||||
Deleting test credential... OK
|
||||
|
||||
------------
|
||||
Diagnostic: Microsoft authentication (AAD/MSA)
|
||||
Skipped: False
|
||||
Success: True
|
||||
Exception: None
|
||||
Log:
|
||||
Broker is not enabled.
|
||||
Flow type is: Auto
|
||||
Gathering MSAL token cache data... OK
|
||||
CacheDirectory: C:\Users\Lincpay\AppData\Local\.IdentityService
|
||||
CacheFileName: msal.cache
|
||||
CacheFilePath: C:\Users\Lincpay\AppData\Local\.IdentityService\msal.cache
|
||||
Creating cache helper... OK
|
||||
Verifying MSAL token cache persistence... OK
|
||||
|
||||
------------
|
||||
Diagnostic: GitHub API
|
||||
Skipped: False
|
||||
Success: True
|
||||
Exception: None
|
||||
Log:
|
||||
Using 'https://github.com/' as API target.
|
||||
Querying '/meta' endpoint... OK
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import React, { useState, useEffect } from 'react';
|
||||
import React, { useState, useEffect, useCallback } from 'react';
|
||||
import { View, Text, StyleSheet, KeyboardAvoidingView, Platform, ScrollView, TouchableOpacity, Dimensions, StatusBar, TextInput, Image } from 'react-native';
|
||||
import { Formik } from 'formik';
|
||||
import * as Yup from 'yup';
|
||||
@@ -15,9 +15,11 @@ import { setToken } from '../../Redux/Slices/Token';
|
||||
import NavigationString from '../../Constant/NavigationString';
|
||||
import ImagePath from '../../Constant/ImagePath';
|
||||
import { TENDER_LOGIN, LOG_IN_URL } from '../../Services/ApiCall/ApiUrls';
|
||||
import { showErrorAlert } from '../../Constant/ShowDailog';
|
||||
import { showErrorAlert, showToast } from '../../Constant/ShowDailog';
|
||||
import AppBackground from '../../components/AppBackground';
|
||||
import FontsFamily from '../../Constant/FontsFamily';
|
||||
import { useRagistrationState } from '../../Services/ApiCall/Hooks';
|
||||
import AsyncStorage from '@react-native-async-storage/async-storage';
|
||||
|
||||
const { width, height } = Dimensions.get('window');
|
||||
|
||||
@@ -35,6 +37,7 @@ const Login = () => {
|
||||
const [passwordVisible, setPasswordVisible] = useState(false);
|
||||
const [activeType, setActiveType] = useState<'tender' | 'auction'>('tender');
|
||||
const [showForm, setShowForm] = useState(false);
|
||||
const { mutateAsync: registrationStateMutate } = useRagistrationState();
|
||||
|
||||
// Animation Shared Values for Reveal
|
||||
const formOpacity = useSharedValue(0);
|
||||
@@ -121,17 +124,95 @@ const Login = () => {
|
||||
onSuccess: (res) => handleSuccess(res, 'auction'),
|
||||
onError: (err) => showErrorAlert(err.message || 'Login failed')
|
||||
});
|
||||
const routeByOrgType = useCallback((params: { otherId: any; orgType: any }) => {
|
||||
const orgType = String(params.orgType ?? '');
|
||||
if (orgType === '4' || orgType === '5' || orgType === '6') {
|
||||
navigation.replace(NavigationString.StageThreeScreen, params);
|
||||
return;
|
||||
}
|
||||
|
||||
if (orgType === '7') {
|
||||
navigation.replace(NavigationString.Partnership, params);
|
||||
return;
|
||||
}
|
||||
|
||||
navigation.replace('Dashboard');
|
||||
}, [navigation]);
|
||||
|
||||
const handleGetData = useCallback(async () => {
|
||||
try {
|
||||
const res = await registrationStateMutate();
|
||||
console.log("splash", res);
|
||||
if (res?.status === false) {
|
||||
navigation.reset({
|
||||
index: 0,
|
||||
routes: [{ name: NavigationString.Login }],
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
if (res?.data?.message === 'No Response From Server' && res?.data?.success === false) {
|
||||
navigation.reset({
|
||||
index: 0,
|
||||
routes: [{ name: NavigationString.Login }],
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (res?.statusCode === 404 || res?.statusCode === 401) {
|
||||
navigation.replace('Registration');
|
||||
return;
|
||||
}
|
||||
|
||||
if (res?.statusCode === 200 && res?.data) {
|
||||
const { registrationStatus, contOtherId, contOrganization } = res.data;
|
||||
const params = { otherId: contOtherId, orgType: contOrganization };
|
||||
switch (registrationStatus) {
|
||||
case null:
|
||||
case undefined:
|
||||
navigation.replace(NavigationString.Registration);
|
||||
break;
|
||||
case 'Pending':
|
||||
routeByOrgType(params);
|
||||
break;
|
||||
case 'Complete':
|
||||
case 'Completed':
|
||||
navigation.replace(NavigationString.Home);
|
||||
break;
|
||||
default:
|
||||
navigation.replace(NavigationString.Login);
|
||||
break;
|
||||
}
|
||||
return;
|
||||
}
|
||||
console.error('API error:', res);
|
||||
showToast(res?.message || 'Something went wrong');
|
||||
navigation.replace('Registration');
|
||||
} catch (error: any) {
|
||||
console.error('Registration status error:', error);
|
||||
showToast(error?.message || 'Something went wrong');
|
||||
|
||||
if (error?.response?.status === 404) {
|
||||
navigation.replace('Registration');
|
||||
} else {
|
||||
await AsyncStorage.removeItem('persist:root');
|
||||
navigation.replace(NavigationString.Login);
|
||||
}
|
||||
}
|
||||
}, [navigation, registrationStateMutate, routeByOrgType]);
|
||||
const handleSuccess = (res: any, type: string) => {
|
||||
if (res.statusCode === 200) {
|
||||
console.log("Response login : ", res)
|
||||
dispatch(setToken({ ...res.data, token: res.token, userType: type }));
|
||||
if (res.statusCode === 200) {
|
||||
if (type === 'tender') {
|
||||
handleGetData()
|
||||
} else {
|
||||
console.log("Response login : ", res, type)
|
||||
navigation.dispatch(
|
||||
CommonActions.reset({
|
||||
index: 0,
|
||||
routes: [{ name: NavigationString.Home }],
|
||||
}),
|
||||
);
|
||||
}
|
||||
} else {
|
||||
showErrorAlert(res.message);
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ import { useSelector } from 'react-redux';
|
||||
import Animated, { FadeInUp, FadeInDown } from 'react-native-reanimated';
|
||||
import { useTheme } from '../../Hooks/useTheme';
|
||||
import AppText from '../../components/AppText';
|
||||
import NavigationString from '../../Constant/NavigationString';
|
||||
|
||||
type RouteParams = {
|
||||
userData?: {
|
||||
@@ -310,6 +311,7 @@ const Registration: React.FC = () => {
|
||||
fileData.append('regfile', documents.registrationCertificate as any);
|
||||
|
||||
const res = await contractorStageTwoSubmit(fileData);
|
||||
console.log('Stage Two Res : ', res)
|
||||
if (res.statusCode === 200) {
|
||||
if (res) {
|
||||
|
||||
@@ -317,20 +319,23 @@ const Registration: React.FC = () => {
|
||||
|
||||
const orgType = selectedOrg;
|
||||
const params = { otherId: res?.data?.contOtherId, orgType: orgType };
|
||||
console.log("params : ", params)
|
||||
if ([4, 5, 6].includes(orgType)) {
|
||||
navigation.replace('StageThree' as never, params as never);
|
||||
navigation.replace(NavigationString.StageThreeScreen as never, params as never);
|
||||
} else if (orgType === 7) {
|
||||
navigation.replace('PartnerShip' as never, { otherId: res?.data?.contOtherId } as never);
|
||||
navigation.replace(NavigationString.Partnership as never, { otherId: res?.data?.contOtherId } as never);
|
||||
} else {
|
||||
navigation.replace('Dashboard' as never);
|
||||
navigation.replace(NavigationString.Home as never);
|
||||
}
|
||||
} else {
|
||||
showToast('Form submission failed');
|
||||
}
|
||||
} else {
|
||||
|
||||
showToast(res.message || 'Form submission failed. Please try again.');
|
||||
}
|
||||
} catch (error: any) {
|
||||
console.log("Error in form submission")
|
||||
if (axios.isAxiosError(error)) {
|
||||
} else {
|
||||
console.error('Unexpected error', error);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import React, { useState } from 'react';
|
||||
import { View } from 'react-native';
|
||||
import { View, TouchableOpacity } from 'react-native';
|
||||
import DatePicker from 'react-native-date-picker';
|
||||
import MyInput from '../../../components/MyInput';
|
||||
import MyDropdown from '../../../Component/Dropdown/MyDropdown';
|
||||
@@ -50,7 +50,10 @@ const StageOne: React.FC<Props> = ({
|
||||
const handleDateConfirm = (selectedDate: Date) => {
|
||||
setOpen(false);
|
||||
setDate(selectedDate);
|
||||
handleChange('expiryDate', selectedDate.toISOString().split('T')[0]);
|
||||
const day = String(selectedDate.getDate()).padStart(2, '0');
|
||||
const month = String(selectedDate.getMonth() + 1).padStart(2, '0');
|
||||
const year = selectedDate.getFullYear();
|
||||
handleChange('expiryDate', `${day}/${month}/${year}`);
|
||||
};
|
||||
|
||||
return (
|
||||
@@ -140,6 +143,8 @@ const StageOne: React.FC<Props> = ({
|
||||
|
||||
{selectedAllMSME !== 3 && selectedOrg !== 8 && (
|
||||
<>
|
||||
<TouchableOpacity onPress={() => setOpen(true)} activeOpacity={0.8}>
|
||||
<View pointerEvents="none">
|
||||
<MyInput
|
||||
label="Expiry Date"
|
||||
placeholder="Select Expiry Date"
|
||||
@@ -147,10 +152,11 @@ const StageOne: React.FC<Props> = ({
|
||||
onChangeText={text => handleChange('expiryDate', text)}
|
||||
onFocus={() => setFocusedField('expiryDate')}
|
||||
onBlur={() => setFocusedField(null)}
|
||||
focused={focusedField === 'expiryDate'}
|
||||
editable={true}
|
||||
rightIconPress={() => setOpen(true)}
|
||||
focused={open || focusedField === 'expiryDate'}
|
||||
editable={false}
|
||||
/>
|
||||
</View>
|
||||
</TouchableOpacity>
|
||||
<DatePicker
|
||||
modal
|
||||
open={open}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import React from 'react';
|
||||
import React, { useState } from 'react';
|
||||
import DatePicker from 'react-native-date-picker';
|
||||
import {
|
||||
TouchableOpacity,
|
||||
ActivityIndicator,
|
||||
@@ -64,6 +65,18 @@ const StageTwo: React.FC<Props> = ({
|
||||
selectedOrg,
|
||||
}) => {
|
||||
const { colors, spacing, shadows } = useTheme();
|
||||
const [open, setOpen] = useState(false);
|
||||
const [date, setDate] = useState(new Date());
|
||||
|
||||
const handleDateConfirm = (selectedDate: Date) => {
|
||||
setOpen(false);
|
||||
setDate(selectedDate);
|
||||
const day = String(selectedDate.getDate()).padStart(2, '0');
|
||||
const month = String(selectedDate.getMonth() + 1).padStart(2, '0');
|
||||
const year = selectedDate.getFullYear();
|
||||
setPanVerified(false);
|
||||
handleChange('dateOfIncorp', `${day}/${month}/${year}`);
|
||||
};
|
||||
|
||||
const verifyButtonStyle = {
|
||||
backgroundColor: colors.primary,
|
||||
@@ -101,6 +114,12 @@ const StageTwo: React.FC<Props> = ({
|
||||
containerStyle={{ marginBottom: spacing.s }}
|
||||
/>
|
||||
|
||||
<TouchableOpacity
|
||||
onPress={() => !panVerified && setOpen(true)}
|
||||
activeOpacity={0.8}
|
||||
disabled={panVerified}
|
||||
>
|
||||
<View pointerEvents="none">
|
||||
<MyInput
|
||||
label={selectedOrg == 8 ? "Date of Birth" : "Date of Incorporation"}
|
||||
placeholder="DD/MM/YYYY"
|
||||
@@ -113,11 +132,21 @@ const StageTwo: React.FC<Props> = ({
|
||||
isVerify={panVerified}
|
||||
onFocus={() => setFocusedField('dob')}
|
||||
onBlur={() => setFocusedField(null)}
|
||||
focused={focusedField === 'dob'}
|
||||
editable={!panVerified}
|
||||
focused={open || focusedField === 'dob'}
|
||||
editable={false}
|
||||
keyboardType="numeric"
|
||||
containerStyle={{ marginBottom: spacing.s }}
|
||||
/>
|
||||
</View>
|
||||
</TouchableOpacity>
|
||||
<DatePicker
|
||||
modal
|
||||
open={open}
|
||||
date={date}
|
||||
onConfirm={handleDateConfirm}
|
||||
onCancel={() => setOpen(false)}
|
||||
mode="date"
|
||||
/>
|
||||
|
||||
<MyInput
|
||||
label="PAN Name"
|
||||
|
||||
@@ -111,6 +111,7 @@ const Signup = () => {
|
||||
|
||||
registerContractor(formData, {
|
||||
onSuccess: (res: any) => {
|
||||
console.log('Register Res : ', res)
|
||||
if (res?.status === '201') {
|
||||
ToastAndroid.show(`${res.message}`, ToastAndroid.SHORT);
|
||||
navigation.pop();
|
||||
@@ -119,6 +120,7 @@ const Signup = () => {
|
||||
}
|
||||
},
|
||||
onError: (error: any) => {
|
||||
console.log('Register Res : ', error)
|
||||
ToastAndroid.show(error.message, ToastAndroid.SHORT);
|
||||
},
|
||||
});
|
||||
|
||||
@@ -82,7 +82,7 @@ const Splash: React.FC = () => {
|
||||
navigation.replace(NavigationString.Home);
|
||||
break;
|
||||
default:
|
||||
navigation.replace(NavigationString.Registration);
|
||||
navigation.replace(NavigationString.Login);
|
||||
break;
|
||||
}
|
||||
return;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// const BASE_URL = `http://192.168.6.194:8090/`
|
||||
const BASE_URL = `https://procurelinc.in/EProcurementSB/`
|
||||
const BASE_URL = `https://dev.procurelinc.in/api/EProcurementSB/`
|
||||
// const BASE_URL_Auction = `http://192.168.6.194/AuctionPostgre/api/auction/`
|
||||
export const BASE_URL_Auction = `https://procurelinc.in/Auction/`
|
||||
// const BASE_URL = `http://192.168.29.226:8090/`
|
||||
|
||||
@@ -302,6 +302,7 @@ export const registerContractor = async (payload: any): Promise<any> => {
|
||||
|
||||
try {
|
||||
const response = await axios.post(SAVE_CONTRACTOR_STAGE1, { ...payload, device: "mobileApp" });
|
||||
console.log('Stage One Res : ', response.data)
|
||||
return response.data;
|
||||
} catch (error: any) {
|
||||
throw error.response?.data || error.message;
|
||||
|
||||
Reference in New Issue
Block a user