text: import React from 'react';
  import 'react-native-gesture-handler';
  import { Provider, connect } from 'react-redux';
  import { PersistGate } from 'redux-persist/integration/react';
  import { IntlProvider } from 'react-intl';
  import firebase from '@react-native-firebase/app';
  import { flattenMessages } from './utils/flattenMessages';
  import messages from './config/locales';
  
  import Application from './screens/application';
  import { store, persistor } from './redux/store/store';
  
  const _renderApp = ({ locale }) => (
    <PersistGate loading={null} persistor={persistor}>
      <IntlProvider locale={locale} messages={flattenMessages(messages[locale])}>
        <Application />
      </IntlProvider>
    </PersistGate>
  );
  
  const mapStateToProps = (state) => ({
    locale: state.application.language,
  });
  
  const App = connect(mapStateToProps)(_renderApp);
  
  export default () => {
    return (
      <Provider store={store}>
        <App />
      </Provider>
    );
  };
  