import React from 'react';
import { hydrateRoot } from 'react-dom/client';
//Router
import { BrowserRouter as Router } from 'react-router-dom';
//History
import { createBrowserHistory } from 'history';
//Redux
import { createStore } from 'redux'; //, applyMiddleware
import { Provider } from 'react-redux';
import { composeWithDevTools as composeWithDevToolsWeb } from 'redux-devtools-extension';
import { config } from '../config';
import reducer from './reducers';
import App from './components/App';
import './styles/global.sass';
//Redux DevTools
/* declare global {
interface Window {
__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?: typeof compose;
}
} */
const { env } = config
const composeEnhancers = composeWithDevToolsWeb({
// Specify here name, actionsBlacklist, actionsCreators and other options
});
const preloadedState = window.__PRELOADED_STATE__
const store = env === 'development' ? createStore(
reducer,
preloadedState,
composeEnhancers(),
) : createStore(
reducer,
preloadedState,
)
delete window.__PRELOADED_STATE__
const container = document.getElementById('app');
const history = createBrowserHistory()
const root = hydrateRoot(container,
,
//Add this comment to update later app and remove warning
/*{
onRecoverableError: (error) => {
console.error("recoverable", error);
}
}, */
);
// Use root.render to update later the app
/* root.render(
); */
if (module.hot) {
module.hot.accept();
}