From 462c25ef5ea96297c6d4cee0b17ef8b5aa62c446 Mon Sep 17 00:00:00 2001 From: Neto Chaves Date: Fri, 31 May 2019 23:50:03 -0300 Subject: [PATCH] fix bug 142 and refactor routes --- functions/index.js | 4 +- src/index.js | 12 +++++- src/routes.js | 95 +++++++++++++++++++++++++++------------------- 3 files changed, 69 insertions(+), 42 deletions(-) diff --git a/functions/index.js b/functions/index.js index ca0ad9a..4678afd 100644 --- a/functions/index.js +++ b/functions/index.js @@ -24,14 +24,14 @@ return (exports.sendPushNotification = functions.firestore .catch(error => console.log(error)) const { contactName, contactPhoto } = data - if (source === "2") { + if (source === "1") { const payload = { data: { conversaId }, notification: { title: contactName, - body: contentTranslated, + body: content, sound: "default", android_channel_id: "main-channel", collapseKey: "unichat", diff --git a/src/index.js b/src/index.js index 20f1881..3c09a22 100644 --- a/src/index.js +++ b/src/index.js @@ -1,9 +1,17 @@ import React from "react" import "~/config/ReactotronConfig" +import firebase from "react-native-firebase" -import Routes from "~/routes" +import { createRootNavigator } from "~/routes" -const App = () => +const App = () => { + let isAuth + firebase.auth().onAuthStateChanged(user => { + isAuth = user != null + }) + const Routes = createRootNavigator(isAuth) + return +} export default App diff --git a/src/routes.js b/src/routes.js index 89ebea7..84d0fe8 100644 --- a/src/routes.js +++ b/src/routes.js @@ -2,7 +2,8 @@ import React from "react" import { createAppContainer, createStackNavigator, - createMaterialTopTabNavigator + createMaterialTopTabNavigator, + createSwitchNavigator } from "react-navigation" import PerfilSettings from "~/Screens/PerfilSettings/perfilsettings" import PreviewImage from "~/Screens/PreviewImage/previewImg" @@ -14,17 +15,8 @@ import Conversas from "~/Screens/Conversas/conversas" import Settings from "~/Screens/Config/config" import EditPerfil from "~/Screens/EditPerfil/editperfil" import Languages from "~/Screens/Languages/languages" -import { Icon } from "react-native-elements" -import firebase from "react-native-firebase" -let rota = "AuthScreen" -firebase.auth().onAuthStateChanged(user => { - if (user) { - rota = "Conversas" - } else { - rota = "AuthScreen" - } -}) +import { Icon } from "react-native-elements" const tabBarNavigator = createMaterialTopTabNavigator( { @@ -84,72 +76,99 @@ const tabBarNavigator = createMaterialTopTabNavigator( } } ) -const appStackNavigator = createStackNavigator( + +const HomeStackNavigator = createStackNavigator( { - AuthScreen: { - screen: Auth, + SettingsScreen: { + screen: tabBarNavigator, navigationOptions: { header: null } }, - PerfilSettings: { - screen: PerfilSettings, + EditPerfilScreen: { + screen: EditPerfil, navigationOptions: { header: null } }, - PreviewImage: { - screen: PreviewImage, + LanguagesScreen: { + screen: Languages, + navigationOptions: { + title: "Tela de Idiomas", + headerTitleStyle: { + fontWeight: "normal" + } + } }, - VerificationScreen: { - screen: Verification, + Contacts: { + screen: tabBarNavigator, navigationOptions: { header: null } }, - Conversas: { - screen: tabBarNavigator, + + ChatScreen: { + screen: Chat, navigationOptions: { header: null } }, - ContactsScreen: { + Conversas: { screen: tabBarNavigator, navigationOptions: { header: null } - }, - ChatScreen: { - screen: Chat, + } + }, + { + initialRouteName: "Conversas" + }, + { header: null } +) + +const authStackNavigator = createStackNavigator( + { + AuthScreen: { + screen: Auth, navigationOptions: { header: null } }, - SettingsScreen: { - screen: tabBarNavigator, + PerfilSettings: { + screen: PerfilSettings, navigationOptions: { header: null } }, - EditPerfilScreen: { - screen: EditPerfil, + PreviewImage: { + screen: PreviewImage + }, + VerificationScreen: { + screen: Verification, navigationOptions: { header: null } }, - LanguagesScreen: { - screen: Languages, + Conversas: { + screen: tabBarNavigator, navigationOptions: { - title: "Tela de Idiomas", - headerTitleStyle: { - fontWeight: "normal" - } + header: null } } }, { - initialRouteName: rota + initialRouteName: "AuthScreen" }, { header: null } ) -export default createAppContainer(appStackNavigator) +export const createRootNavigator = (isAuth = false) => { + return createAppContainer( + createSwitchNavigator( + { + Home: HomeStackNavigator, + Auth: authStackNavigator + }, + { initialRouteName: isAuth ? "Home" : "Auth" } + ) + ) +}