-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathApp.js
More file actions
54 lines (45 loc) · 1.59 KB
/
App.js
File metadata and controls
54 lines (45 loc) · 1.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import React from 'react';
import AppNavigator from './src/navigator/AppNavigator';
import NavigationService from './src/navigator/NavigationService';
import Preferences from './src/resources/Preferences';
import I18n from 'react-native-i18n';
import InternetConnectionAlert from 'react-native-internet-connection-alert';
import { SafeAreaProvider, SafeAreaView } from 'react-native-safe-area-context';
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = {
initialRoute: 'Splash',
};
}
async componentDidMount() {
this.setLanguage();
this.getPreferences();
}
async setLanguage() {
global.languageID = await Preferences.getPreferences(Preferences.key.LanguageID);
if (global.languageID == null || global.languageID == "") {
var langID = (I18n.currentLocale().substring(0, 2) == "ar") ? "3" : ((I18n.currentLocale().substring(0, 2) == "fr") ? "2" : "1");
Preferences.savePreferences(Preferences.key.LanguageID, langID);
global.languageID = langID;
}
}
async getPreferences() {
global.isLogin = await Preferences.getPreferences(Preferences.key.ISLOGIN);
global.token = await Preferences.getPreferences(Preferences.key.TOKEN);
}
render() {
return (
<InternetConnectionAlert
onChange={connectionState => {
console.log('Connection State: ', connectionState);
}}>
<AppNavigator
ref={navigatorRef => {
NavigationService.setTopLevelNavigator(navigatorRef);
}}
/>
</InternetConnectionAlert>
);
}
}