/** * @format * @flow strict-local */ import React from 'react'; import { StyleSheet, useColorScheme, } from 'react-native'; import { Provider } from 'react-redux'; import { applyMiddleware, createStore, compose } from 'redux'; import { createLogger } from 'redux-logger'; import thunk from 'redux-thunk'; import { persistStore, persistReducer } from 'redux-persist'; import AsyncStorage from '@react-native-async-storage/async-storage'; import autoMergeLevel2 from 'redux-persist/lib/stateReconciler/autoMergeLevel2'; import allReducers from './src/reducers'; import Navigator from './navigation'; import AlertModal from './src/components/AlertModal'; const persistConfig = { key: 'root', storage: AsyncStorage, stateReconciler: autoMergeLevel2, // see "Merge Process" section for details. whitelist: ['profile'], }; const pReducer = persistReducer(persistConfig, allReducers); const middleWare = []; middleWare.push(thunk); const loggerMiddleware = createLogger({ predicate: () => process.env.NODE_ENV === 'development', }); middleWare.push(loggerMiddleware); const store = createStore(pReducer, compose(applyMiddleware(...middleWare))); const persistor = persistStore(store); const ReactNative = require('react-native'); try { ReactNative.I18nManager.allowRTL(false); enableScreens(); } catch (e) { console.log(e); } console.disableYellowBox = true; const App = () => { const isDarkMode = useColorScheme() === 'dark'; return ( ); }; const styles = StyleSheet.create({ }); export default App;