@kiosinc/commons-rn 0.1.43 → 0.1.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/lib/commonjs/auth/api/authentication.js.map +1 -1
  2. package/lib/commonjs/auth/hooks/useAuthentication.js +26 -1
  3. package/lib/commonjs/auth/hooks/useAuthentication.js.map +1 -1
  4. package/lib/commonjs/auth/screens/Login.js +130 -0
  5. package/lib/commonjs/auth/screens/Login.js.map +1 -0
  6. package/lib/commonjs/auth/screens/{LoginScreen.js → LoginWithEmail.js} +12 -57
  7. package/lib/commonjs/auth/screens/LoginWithEmail.js.map +1 -0
  8. package/lib/commonjs/auth/screens/LoginWithPhoneNumber.js +87 -0
  9. package/lib/commonjs/auth/screens/LoginWithPhoneNumber.js.map +1 -0
  10. package/lib/commonjs/auth/screens/ResetPassword.js +3 -3
  11. package/lib/commonjs/auth/screens/ResetPassword.js.map +1 -1
  12. package/lib/commonjs/auth/screens/SignUp.js +3 -3
  13. package/lib/commonjs/auth/screens/SignUp.js.map +1 -1
  14. package/lib/commonjs/auth/screens/VerifyPhoneNumber.js +6 -4
  15. package/lib/commonjs/auth/screens/VerifyPhoneNumber.js.map +1 -1
  16. package/lib/commonjs/auth/screens/VerifyPhoneNumberForLogin.js +109 -0
  17. package/lib/commonjs/auth/screens/VerifyPhoneNumberForLogin.js.map +1 -0
  18. package/lib/commonjs/auth/screens/index.js +10 -6
  19. package/lib/commonjs/auth/screens/index.js.map +1 -1
  20. package/lib/commonjs/auth/screens/validators.js +5 -1
  21. package/lib/commonjs/auth/screens/validators.js.map +1 -1
  22. package/lib/module/auth/api/authentication.js.map +1 -1
  23. package/lib/module/auth/hooks/useAuthentication.js +26 -1
  24. package/lib/module/auth/hooks/useAuthentication.js.map +1 -1
  25. package/lib/module/auth/screens/Login.js +120 -0
  26. package/lib/module/auth/screens/Login.js.map +1 -0
  27. package/lib/module/auth/screens/{LoginScreen.js → LoginWithEmail.js} +12 -57
  28. package/lib/module/auth/screens/LoginWithEmail.js.map +1 -0
  29. package/lib/module/auth/screens/LoginWithPhoneNumber.js +78 -0
  30. package/lib/module/auth/screens/LoginWithPhoneNumber.js.map +1 -0
  31. package/lib/module/auth/screens/ResetPassword.js +1 -1
  32. package/lib/module/auth/screens/ResetPassword.js.map +1 -1
  33. package/lib/module/auth/screens/SignUp.js +1 -1
  34. package/lib/module/auth/screens/SignUp.js.map +1 -1
  35. package/lib/module/auth/screens/VerifyPhoneNumber.js +4 -2
  36. package/lib/module/auth/screens/VerifyPhoneNumber.js.map +1 -1
  37. package/lib/module/auth/screens/VerifyPhoneNumberForLogin.js +101 -0
  38. package/lib/module/auth/screens/VerifyPhoneNumberForLogin.js.map +1 -0
  39. package/lib/module/auth/screens/index.js +12 -8
  40. package/lib/module/auth/screens/index.js.map +1 -1
  41. package/lib/module/auth/screens/validators.js +3 -0
  42. package/lib/module/auth/screens/validators.js.map +1 -1
  43. package/lib/typescript/src/auth/api/authentication.d.ts +6 -1
  44. package/lib/typescript/src/auth/api/authentication.d.ts.map +1 -1
  45. package/lib/typescript/src/auth/hooks/useAuthentication.d.ts +12 -1
  46. package/lib/typescript/src/auth/hooks/useAuthentication.d.ts.map +1 -1
  47. package/lib/typescript/src/auth/screens/Login.d.ts +3 -0
  48. package/lib/typescript/src/auth/screens/Login.d.ts.map +1 -0
  49. package/lib/typescript/src/auth/screens/LoginWithEmail.d.ts +3 -0
  50. package/lib/typescript/src/auth/screens/LoginWithEmail.d.ts.map +1 -0
  51. package/lib/typescript/src/auth/screens/LoginWithPhoneNumber.d.ts +3 -0
  52. package/lib/typescript/src/auth/screens/LoginWithPhoneNumber.d.ts.map +1 -0
  53. package/lib/typescript/src/auth/screens/ResetPassword.d.ts +1 -1
  54. package/lib/typescript/src/auth/screens/ResetPassword.d.ts.map +1 -1
  55. package/lib/typescript/src/auth/screens/SignUp.d.ts +1 -1
  56. package/lib/typescript/src/auth/screens/SignUp.d.ts.map +1 -1
  57. package/lib/typescript/src/auth/screens/VerifyPhoneNumber.d.ts +2 -2
  58. package/lib/typescript/src/auth/screens/VerifyPhoneNumber.d.ts.map +1 -1
  59. package/lib/typescript/src/auth/screens/VerifyPhoneNumberForLogin.d.ts +8 -0
  60. package/lib/typescript/src/auth/screens/VerifyPhoneNumberForLogin.d.ts.map +1 -0
  61. package/lib/typescript/src/auth/screens/index.d.ts.map +1 -1
  62. package/lib/typescript/src/auth/screens/validators.d.ts +5 -0
  63. package/lib/typescript/src/auth/screens/validators.d.ts.map +1 -1
  64. package/package.json +2 -1
  65. package/src/auth/api/authentication.ts +6 -1
  66. package/src/auth/hooks/useAuthentication.ts +20 -1
  67. package/src/auth/screens/Login.tsx +140 -0
  68. package/src/auth/screens/LoginWithEmail.tsx +120 -0
  69. package/src/auth/screens/LoginWithPhoneNumber.tsx +78 -0
  70. package/src/auth/screens/ResetPassword.tsx +1 -1
  71. package/src/auth/screens/SignUp.tsx +1 -1
  72. package/src/auth/screens/VerifyPhoneNumber.tsx +8 -6
  73. package/src/auth/screens/VerifyPhoneNumberForLogin.tsx +112 -0
  74. package/src/auth/screens/index.tsx +13 -8
  75. package/src/auth/screens/validators.ts +5 -0
  76. package/lib/commonjs/auth/screens/LoginScreen.js.map +0 -1
  77. package/lib/module/auth/screens/LoginScreen.js.map +0 -1
  78. package/lib/typescript/src/auth/screens/LoginScreen.d.ts +0 -3
  79. package/lib/typescript/src/auth/screens/LoginScreen.d.ts.map +0 -1
  80. package/src/auth/screens/LoginScreen.tsx +0 -172
@@ -78,6 +78,25 @@ export const useAuthentication = () => {
78
78
  }
79
79
  },
80
80
  }),
81
+ useConfirmPhoneNumber: () =>
82
+ useMutation(async ({ code }: { code: string }) => {
83
+ await confirmationResult.confirm(code);
84
+ }),
85
+ useVerifyPhoneNumberForLogin: () =>
86
+ useMutation(async ({ phoneNumber }: { phoneNumber: string }) => {
87
+ const response: any = await checkIsRegisteredAPI({ phoneNumber });
88
+ console.log('response', response);
89
+ if (response?.data?.isRegistered === true) {
90
+ confirmationResult = await auth().signInWithPhoneNumber(phoneNumber);
91
+ navigation.navigate('VerifyPhoneNumberForLogin', { phoneNumber });
92
+ } else {
93
+ Alert.show({
94
+ description: t('authentication.userDoesNotExist', {
95
+ emailOrPhoneNumber: phoneNumber,
96
+ }),
97
+ });
98
+ }
99
+ }),
81
100
  useVerifyPhoneNumber: () =>
82
101
  useMutation(async (payload: TUserData): Promise<any> => {
83
102
  try {
@@ -99,7 +118,7 @@ export const useAuthentication = () => {
99
118
  } catch {
100
119
  Alert.show({
101
120
  description: t('authentication.userDoesNotExist', {
102
- email,
121
+ emailOrPhoneNumber: email,
103
122
  }),
104
123
  });
105
124
  }
@@ -0,0 +1,140 @@
1
+ import {
2
+ ParentView,
3
+ Text,
4
+ View,
5
+ LinkButton,
6
+ KeyboardAvoidingView,
7
+ Header,
8
+ } from '../../components';
9
+ import {
10
+ type NavigationProp,
11
+ useNavigation,
12
+ useTheme,
13
+ } from '@react-navigation/native';
14
+ import React, { useEffect } from 'react';
15
+ import { useTranslation } from 'react-i18next';
16
+ import AppLogo from '../../assets/icons/appLogo.svg';
17
+ import { useMMKVString } from 'react-native-mmkv';
18
+ import { MMKV_KEYS } from '../../constants';
19
+ import FastImage from 'react-native-fast-image';
20
+ import Config from 'react-native-config';
21
+ import { useQueryClient } from '@tanstack/react-query';
22
+ import { StyleSheet } from 'react-native';
23
+ import { createMaterialTopTabNavigator } from '@react-navigation/material-top-tabs';
24
+ import { LoginWithPhoneNumber } from './LoginWithPhoneNumber';
25
+ import { LoginWithEmail } from './LoginWithEmail';
26
+
27
+ const Tab = createMaterialTopTabNavigator();
28
+
29
+ const TabBarTitle =
30
+ ({ title }: { title: string }) =>
31
+ ({ focused }: { focused: boolean }) => {
32
+ return (
33
+ <Text variant="labelLarge" color={focused ? 'primary' : 'onBackground'}>
34
+ {title}
35
+ </Text>
36
+ );
37
+ };
38
+
39
+ export const Login = () => {
40
+ const { t } = useTranslation();
41
+ const navigation = useNavigation<NavigationProp<RootStackType>>();
42
+
43
+ const [_, setBusinessId] = useMMKVString(MMKV_KEYS.BUSINESS_ID);
44
+ const queryClient = useQueryClient();
45
+ useEffect(() => {
46
+ queryClient.invalidateQueries();
47
+ setBusinessId(undefined);
48
+ FastImage.clearMemoryCache();
49
+ FastImage.clearDiskCache();
50
+ }, [queryClient, setBusinessId]);
51
+
52
+ const theme = useTheme();
53
+ const tabBarStyles = getStyles(theme);
54
+
55
+ return (
56
+ <ParentView px="16">
57
+ <Header left={10} position={'absolute'} zIndex={'100'} />
58
+ <View flex={1} justifyContent={'center'}>
59
+ <KeyboardAvoidingView
60
+ flex={1}
61
+ behavior="padding"
62
+ alignSelf="center"
63
+ justifyContent={'center'}
64
+ width={{ phone: '100%', tablet: 372 }}
65
+ >
66
+ <View alignItems="center">
67
+ <AppLogo />
68
+ <Text style={styles.text} variant="titleLarge">
69
+ {t('authentication.logIn')}
70
+ </Text>
71
+ </View>
72
+ <View height={340} pt="24">
73
+ <Tab.Navigator
74
+ screenOptions={{
75
+ tabBarIndicatorStyle: tabBarStyles.tabBarIndicatorStyle,
76
+ tabBarStyle: {
77
+ backgroundColor: theme.colors.background,
78
+ },
79
+ }}
80
+ >
81
+ <Tab.Screen
82
+ options={{
83
+ tabBarLabel: TabBarTitle({
84
+ title: t('authentication.phoneNumber'),
85
+ }),
86
+ }}
87
+ name="LoginWithPhoneNumber"
88
+ component={LoginWithPhoneNumber}
89
+ />
90
+ <Tab.Screen
91
+ options={{
92
+ tabBarLabel: TabBarTitle({
93
+ title: t('authentication.email'),
94
+ }),
95
+ }}
96
+ name="LoginWithEmail"
97
+ component={LoginWithEmail}
98
+ />
99
+ </Tab.Navigator>
100
+ </View>
101
+ {Config.APP_NAME !== 'git' && (
102
+ <View
103
+ alignItems="center"
104
+ justifyContent="center"
105
+ pt="4"
106
+ flexDirection="row"
107
+ >
108
+ <Text variant="labelLarge">{t('authentication.newToApp')}</Text>
109
+ <LinkButton
110
+ mode="text"
111
+ onPress={() => {
112
+ navigation.navigate('SignUp');
113
+ }}
114
+ >
115
+ {t('authentication.signUp')}
116
+ </LinkButton>
117
+ </View>
118
+ )}
119
+ </KeyboardAvoidingView>
120
+ </View>
121
+ </ParentView>
122
+ );
123
+ };
124
+
125
+ const styles = StyleSheet.create({
126
+ text: { paddingTop: '5%' },
127
+ });
128
+
129
+ const getStyles = (theme: any) =>
130
+ StyleSheet.create({
131
+ tabBarIndicatorStyle: {
132
+ backgroundColor: theme.colors.primary,
133
+ left: '20%',
134
+ width: '10%',
135
+ height: 3,
136
+ borderTopLeftRadius: 10,
137
+ borderTopRightRadius: 10,
138
+ alignSelf: 'center',
139
+ },
140
+ });
@@ -0,0 +1,120 @@
1
+ import {
2
+ View,
3
+ TextInput,
4
+ Button,
5
+ LinkButton,
6
+ Snackbar,
7
+ } from '../../components';
8
+ import { type NavigationProp, useNavigation } from '@react-navigation/native';
9
+ import React, { useState } from 'react';
10
+ import { useTranslation } from 'react-i18next';
11
+ import { Controller, useForm } from 'react-hook-form';
12
+ import { yupResolver } from '@hookform/resolvers/yup';
13
+ import { loginValidationSchema } from './validators';
14
+ import auth from '@react-native-firebase/auth';
15
+ import { StyleSheet } from 'react-native';
16
+
17
+ type FormData = {
18
+ email: string;
19
+ password: string;
20
+ };
21
+
22
+ export const LoginWithEmail = () => {
23
+ const { t } = useTranslation();
24
+ const navigation = useNavigation<NavigationProp<RootStackType>>();
25
+ const [isLoading, setIsLoading] = useState(false);
26
+
27
+ const {
28
+ handleSubmit,
29
+ control,
30
+ formState: { errors },
31
+ } = useForm<FormData>({
32
+ resolver: yupResolver(loginValidationSchema(t)),
33
+ defaultValues: {
34
+ email: '',
35
+ password: '',
36
+ },
37
+ });
38
+
39
+ const onSubmit = (data: FormData) => {
40
+ setIsLoading(true);
41
+ auth()
42
+ .signInWithEmailAndPassword(data.email, data.password)
43
+ .catch(() => {
44
+ Snackbar.show({ title: t('authentication.wrongCredentials') });
45
+ })
46
+ .finally(() => {
47
+ setIsLoading(false);
48
+ });
49
+ };
50
+
51
+ return (
52
+ <View paddingTop={'24'}>
53
+ <View height={160}>
54
+ <Controller
55
+ control={control}
56
+ render={({ field: { onChange, onBlur, value } }) => {
57
+ return (
58
+ <TextInput
59
+ my="5"
60
+ keyboardType="email-address"
61
+ autoCapitalize="none"
62
+ mode="outlined"
63
+ autoComplete="email"
64
+ error={!!errors.email?.message}
65
+ errorMessage={errors.email?.message}
66
+ onBlur={onBlur}
67
+ onChangeText={onChange}
68
+ value={value}
69
+ label={t('authentication.email')}
70
+ />
71
+ );
72
+ }}
73
+ name="email"
74
+ />
75
+ <Controller
76
+ control={control}
77
+ render={({ field: { onChange, onBlur, value } }) => {
78
+ return (
79
+ <TextInput
80
+ mt="5"
81
+ secureTextEntry={true}
82
+ mode="outlined"
83
+ autoComplete="current-password"
84
+ error={!!errors.password?.message}
85
+ errorMessage={errors.password?.message}
86
+ onBlur={onBlur}
87
+ onChangeText={onChange}
88
+ value={value}
89
+ label={t('authentication.password')}
90
+ />
91
+ );
92
+ }}
93
+ name="password"
94
+ />
95
+ <LinkButton
96
+ alignSelf="flex-end"
97
+ mode="text"
98
+ onPress={() => {
99
+ navigation.navigate('ResetPassword');
100
+ }}
101
+ >
102
+ {t('authentication.forgotPassword')}
103
+ </LinkButton>
104
+ </View>
105
+ <Button
106
+ loading={isLoading}
107
+ style={styles.button}
108
+ mode="contained"
109
+ onPress={handleSubmit(onSubmit)}
110
+ >
111
+ {t('authentication.logIn')}
112
+ </Button>
113
+ </View>
114
+ );
115
+ };
116
+
117
+ const styles = StyleSheet.create({
118
+ button: { marginVertical: '5%' },
119
+ text: { paddingTop: '5%' },
120
+ });
@@ -0,0 +1,78 @@
1
+ import { Button, PhoneInput, View } from '../../components';
2
+ import React, { useState } from 'react';
3
+ import { useTranslation } from 'react-i18next';
4
+ import { Controller, useForm } from 'react-hook-form';
5
+ import { yupResolver } from '@hookform/resolvers/yup';
6
+ import { loginWithPhoneNumberValidationSchema } from './validators';
7
+ import { StyleSheet } from 'react-native';
8
+ import { useAuthentication } from '../hooks/useAuthentication';
9
+ import { ICountry } from 'react-native-international-phone-number';
10
+
11
+ type FormData = {
12
+ phoneNumber: string;
13
+ };
14
+
15
+ export const LoginWithPhoneNumber = () => {
16
+ const { t } = useTranslation();
17
+ const { useVerifyPhoneNumberForLogin } = useAuthentication();
18
+ const { mutate: sendCode, isLoading: isSendingCode } =
19
+ useVerifyPhoneNumberForLogin();
20
+ const [selectedCountry, setSelectedCountry] = useState<ICountry>();
21
+
22
+ const {
23
+ handleSubmit,
24
+ control,
25
+ formState: { errors },
26
+ } = useForm<FormData>({
27
+ resolver: yupResolver(loginWithPhoneNumberValidationSchema(t)),
28
+ defaultValues: {
29
+ phoneNumber: '',
30
+ },
31
+ });
32
+
33
+ const onSubmit = (data: FormData) => {
34
+ sendCode({
35
+ phoneNumber: (
36
+ (selectedCountry?.callingCode ?? '') + data.phoneNumber
37
+ ).replaceAll(' ', ''),
38
+ });
39
+ };
40
+
41
+ return (
42
+ <View paddingTop="24">
43
+ <View height={160}>
44
+ <Controller
45
+ control={control}
46
+ render={({ field: { onChange, onBlur, value } }) => {
47
+ return (
48
+ <PhoneInput
49
+ placeholder="Phone Number"
50
+ onBlur={onBlur}
51
+ onChangePhoneNumber={onChange}
52
+ value={value}
53
+ defaultCountry="US"
54
+ errorMessage={errors.phoneNumber?.message}
55
+ selectedCountry={selectedCountry as ICountry}
56
+ onChangeSelectedCountry={setSelectedCountry}
57
+ />
58
+ );
59
+ }}
60
+ name="phoneNumber"
61
+ />
62
+ </View>
63
+ <Button
64
+ loading={isSendingCode}
65
+ style={styles.button}
66
+ mode="contained"
67
+ onPress={handleSubmit(onSubmit)}
68
+ >
69
+ {t('authentication.logIn')}
70
+ </Button>
71
+ </View>
72
+ );
73
+ };
74
+
75
+ const styles = StyleSheet.create({
76
+ button: { marginVertical: '5%' },
77
+ text: { paddingTop: '5%' },
78
+ });
@@ -19,7 +19,7 @@ type FormData = {
19
19
  email: string;
20
20
  };
21
21
 
22
- export const ResetPasswordScreen = () => {
22
+ export const ResetPassword = () => {
23
23
  const { t } = useTranslation();
24
24
  const navigation = useNavigation<NavigationProp<RootStackType>>();
25
25
  const { useResetPassword } = useAuthentication();
@@ -31,7 +31,7 @@ export type TUserForm = {
31
31
  name?: string;
32
32
  };
33
33
 
34
- export const SignUpScreen = () => {
34
+ export const SignUp = () => {
35
35
  const [selectedCountry, setSelectedCountry] = useState<ICountry>();
36
36
  const { t } = useTranslation();
37
37
  const { useIsCheckRegistered } = useAuthentication();
@@ -20,14 +20,14 @@ type FormData = {
20
20
  code: string;
21
21
  };
22
22
 
23
- type VerifyPhoneNumberScreenProps = {
23
+ type VerifyPhoneNumberProps = {
24
24
  route: RouteProp<RootStackType, 'VerifyPhoneNumber'>;
25
25
  };
26
26
 
27
- export const VerifyPhoneNumberScreen: React.FC<
28
- VerifyPhoneNumberScreenProps
29
- > = ({ route }) => {
30
- const params = route.params;
27
+ export const VerifyPhoneNumber: React.FC<VerifyPhoneNumberProps> = ({
28
+ route,
29
+ }) => {
30
+ const params = route.params as any;
31
31
  const { t } = useTranslation();
32
32
  const { useSignUp, useVerifyPhoneNumber } = useAuthentication();
33
33
 
@@ -65,7 +65,9 @@ export const VerifyPhoneNumberScreen: React.FC<
65
65
  textAlign="center"
66
66
  variant="bodyLarge"
67
67
  >
68
- {t('authentication.codeSent')}
68
+ {t('authentication.codeSent', {
69
+ phoneNumber: params.phoneNumber,
70
+ })}
69
71
  </Text>
70
72
  </View>
71
73
  <Controller
@@ -0,0 +1,112 @@
1
+ import {
2
+ ParentView,
3
+ Text,
4
+ View,
5
+ Button,
6
+ LinkButton,
7
+ OtpInputs,
8
+ KeyboardAvoidingView,
9
+ Header,
10
+ } from '../../components';
11
+ import type { RouteProp } from '@react-navigation/native';
12
+ import React from 'react';
13
+ import { useTranslation } from 'react-i18next';
14
+ import { Controller, useForm } from 'react-hook-form';
15
+ import { yupResolver } from '@hookform/resolvers/yup';
16
+ import { verificationValidationSchema } from './validators';
17
+ import { useAuthentication } from '../hooks/useAuthentication';
18
+
19
+ type FormData = {
20
+ code: string;
21
+ };
22
+
23
+ type VerifyPhoneNumberForLoginProps = {
24
+ route: RouteProp<RootStackType, 'VerifyPhoneNumberForLogin'>;
25
+ };
26
+
27
+ export const VerifyPhoneNumberForLogin: React.FC<
28
+ VerifyPhoneNumberForLoginProps
29
+ > = ({ route }) => {
30
+ const params = route.params as any;
31
+ const { t } = useTranslation();
32
+ const { useVerifyPhoneNumberForLogin, useConfirmPhoneNumber } =
33
+ useAuthentication();
34
+
35
+ const { mutate: confirmCode, isLoading: isConfirmingCode } =
36
+ useConfirmPhoneNumber();
37
+ const { mutate: resendCode, isLoading: isResendingCode } =
38
+ useVerifyPhoneNumberForLogin();
39
+
40
+ const { handleSubmit, control } = useForm<FormData>({
41
+ resolver: yupResolver(verificationValidationSchema),
42
+ defaultValues: {
43
+ code: '',
44
+ },
45
+ });
46
+
47
+ const onSubmit = (data: FormData) => {
48
+ confirmCode({ code: data.code });
49
+ };
50
+
51
+ return (
52
+ <ParentView px="16">
53
+ <Header left={10} position={'absolute'} zIndex={'100'} />
54
+ <View flex={1} justifyContent={'center'}>
55
+ <KeyboardAvoidingView
56
+ alignSelf="center"
57
+ justifyContent={'center'}
58
+ width={{ phone: '100%', tablet: 372 }}
59
+ >
60
+ <View alignItems="center">
61
+ <Text pb="8" textAlign="center" variant="titleLarge">
62
+ {t('authentication.loginWithNumber')}
63
+ </Text>
64
+ <Text
65
+ color="onSurfaceVariant"
66
+ pb="48"
67
+ textAlign="center"
68
+ variant="bodyLarge"
69
+ >
70
+ {t('authentication.codeSent', {
71
+ phoneNumber: params.phoneNumber,
72
+ })}{' '}
73
+ </Text>
74
+ </View>
75
+ <Controller
76
+ control={control}
77
+ render={({ field: { onChange, value } }) => {
78
+ return (
79
+ <OtpInputs
80
+ handleChange={onChange}
81
+ code={value}
82
+ numberOfInputs={6}
83
+ />
84
+ );
85
+ }}
86
+ name="code"
87
+ />
88
+ <Button
89
+ mt="48"
90
+ disabled={isResendingCode}
91
+ loading={isConfirmingCode}
92
+ mode="contained"
93
+ onPress={handleSubmit(onSubmit)}
94
+ >
95
+ {t('continue')}
96
+ </Button>
97
+ <LinkButton
98
+ disabled={isResendingCode || isConfirmingCode}
99
+ loading={isResendingCode}
100
+ mt="48"
101
+ mode="text"
102
+ onPress={() => {
103
+ resendCode(params as any);
104
+ }}
105
+ >
106
+ {t('authentication.resendCode')}
107
+ </LinkButton>
108
+ </KeyboardAvoidingView>
109
+ </View>
110
+ </ParentView>
111
+ );
112
+ };
@@ -1,25 +1,30 @@
1
1
  import React from 'react';
2
- import { LoginScreen } from './LoginScreen';
3
- import { ResetPasswordScreen } from './ResetPassword';
2
+ import { ResetPassword } from './ResetPassword';
4
3
  import { ResetPasswordInstructionSent } from './ResetPasswordInstructionsSent';
5
- import { SignUpScreen } from './SignUp';
6
- import { VerifyPhoneNumberScreen } from './VerifyPhoneNumber';
4
+ import { SignUp } from './SignUp';
7
5
  import { SignUpPassword } from './SignUpPassword';
8
6
  import { ChangePassword } from './ChangePassword';
7
+ import { VerifyPhoneNumberForLogin } from './VerifyPhoneNumberForLogin';
8
+ import { VerifyPhoneNumber } from './VerifyPhoneNumber';
9
+ import { Login } from './Login';
9
10
 
10
11
  export const renderAuthNavigator = (RootStack: any) => {
11
12
  return (
12
13
  <RootStack.Group>
13
- <RootStack.Screen name="Login" component={LoginScreen} />
14
- <RootStack.Screen name="ResetPassword" component={ResetPasswordScreen} />
14
+ <RootStack.Screen name="Login" component={Login} />
15
+ <RootStack.Screen name="ResetPassword" component={ResetPassword} />
15
16
  <RootStack.Screen
16
17
  name="ResetPasswordInstructionSent"
17
18
  component={ResetPasswordInstructionSent}
18
19
  />
19
- <RootStack.Screen name="SignUp" component={SignUpScreen} />
20
+ <RootStack.Screen name="SignUp" component={SignUp} />
20
21
  <RootStack.Screen
21
22
  name="VerifyPhoneNumber"
22
- component={VerifyPhoneNumberScreen}
23
+ component={VerifyPhoneNumber}
24
+ />
25
+ <RootStack.Screen
26
+ name="VerifyPhoneNumberForLogin"
27
+ component={VerifyPhoneNumberForLogin}
23
28
  />
24
29
  <RootStack.Screen name="SignUpPassword" component={SignUpPassword} />
25
30
  </RootStack.Group>
@@ -74,6 +74,11 @@ export const loginValidationSchema = (t: TFunction) =>
74
74
  password: password(t),
75
75
  });
76
76
 
77
+ export const loginWithPhoneNumberValidationSchema = (t: TFunction) =>
78
+ yup.object().shape({
79
+ phoneNumber: phoneNumber(t),
80
+ });
81
+
77
82
  export const resetPasswordValidationSchema = (t: TFunction) =>
78
83
  yup.object().shape({
79
84
  email: emailForLogin(t),
@@ -1 +0,0 @@
1
- {"version":3,"names":["_components","require","_native","_react","_interopRequireWildcard","_reactI18next","_appLogo","_interopRequireDefault","_reactHookForm","_yup","_validators","_auth","_reactNativeMmkv","_constants","_reactNativeFastImage","_reactNativeConfig","_reactQuery","_reactNative","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","LoginScreen","useTranslation","navigation","useNavigation","isLoading","setIsLoading","useState","_","setBusinessId","useMMKVString","MMKV_KEYS","BUSINESS_ID","queryClient","useQueryClient","useEffect","invalidateQueries","undefined","FastImage","clearMemoryCache","clearDiskCache","handleSubmit","control","formState","errors","useForm","resolver","yupResolver","loginValidationSchema","defaultValues","email","password","onSubmit","data","auth","signInWithEmailAndPassword","catch","Snackbar","show","title","finally","createElement","ParentView","px","Header","left","position","zIndex","View","flex","justifyContent","KeyboardAvoidingView","behavior","alignSelf","width","phone","tablet","alignItems","Text","style","styles","text","variant","Controller","render","field","onChange","onBlur","value","TextInput","my","keyboardType","autoCapitalize","mode","autoComplete","error","message","errorMessage","onChangeText","label","name","secureTextEntry","LinkButton","onPress","navigate","Button","loading","button","Config","APP_NAME","pt","flexDirection","exports","StyleSheet","create","marginVertical","paddingVertical"],"sourceRoot":"../../../../src","sources":["auth/screens/LoginScreen.tsx"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["ParentView","Text","View","TextInput","Button","LinkButton","KeyboardAvoidingView","Snackbar","Header","useNavigation","React","useEffect","useState","useTranslation","AppLogo","Controller","useForm","yupResolver","loginValidationSchema","auth","useMMKVString","MMKV_KEYS","FastImage","Config","useQueryClient","StyleSheet","LoginScreen","t","navigation","isLoading","setIsLoading","_","setBusinessId","BUSINESS_ID","queryClient","invalidateQueries","undefined","clearMemoryCache","clearDiskCache","handleSubmit","control","formState","errors","resolver","defaultValues","email","password","onSubmit","data","signInWithEmailAndPassword","catch","show","title","finally","createElement","px","left","position","zIndex","flex","justifyContent","behavior","alignSelf","width","phone","tablet","alignItems","style","styles","text","variant","render","field","onChange","onBlur","value","my","keyboardType","autoCapitalize","mode","autoComplete","error","message","errorMessage","onChangeText","label","name","secureTextEntry","onPress","navigate","loading","button","APP_NAME","pt","flexDirection","create","marginVertical","paddingVertical"],"sourceRoot":"../../../../src","sources":["auth/screens/LoginScreen.tsx"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const LoginScreen: () => JSX.Element;
3
- //# sourceMappingURL=LoginScreen.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LoginScreen.d.ts","sourceRoot":"","sources":["../../../../../src/auth/screens/LoginScreen.tsx"],"names":[],"mappings":";AA+BA,eAAO,MAAM,WAAW,mBAuIvB,CAAC"}