-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApp.tsx
42 lines (38 loc) · 1.26 KB
/
App.tsx
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
import React from "react";
import { Provider } from "react-native-paper";
import { NavigationContainer } from "@react-navigation/native";
import { ApolloProvider } from "react-apollo";
import { SafeAreaProvider } from "react-native-safe-area-context";
import App from "./src";
import { theme } from "helpers/theme";
import makeApolloClient from "helpers/apollo";
import { Spinner, LoadingProvider } from "components";
import { HeaderTitleContext } from "contexts";
import { useHeaderTitle } from "hooks";
console.disableYellowBox = true;
//console.ignoredYellowBox = ["Require cycle: node_modules/react-native-paper"];
console.ignoredYellowBox = ["Require cycle"];
const Main = () => {
const headerTitle = useHeaderTitle();
const client = makeApolloClient();
if (!client) {
return null;
}
return (
<Provider theme={theme}>
<ApolloProvider client={client}>
<NavigationContainer>
<SafeAreaProvider>
<HeaderTitleContext.Provider value={headerTitle}>
<LoadingProvider>
<App />
<Spinner />
</LoadingProvider>
</HeaderTitleContext.Provider>
</SafeAreaProvider>
</NavigationContainer>
</ApolloProvider>
</Provider>
);
};
export default Main;