### Description Implement <ScrollRestoration /> ### Refs [https://github.com/twentyhq/twenty/issues/4357](https://github.com/twentyhq/twenty/issues/4183) ### Demo https://github.com/twentyhq/twenty/assets/140154534/321242e1-4751-4204-8c86-e9b921c1733e Fixes #4357 --------- Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com> Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com> Co-authored-by: v1b3m <vibenjamin6@gmail.com> Co-authored-by: RubensRafael <rubensrafael2@live.com>
43 lines
1.4 KiB
TypeScript
43 lines
1.4 KiB
TypeScript
import ReactDOM from 'react-dom/client';
|
|
import { HelmetProvider } from 'react-helmet-async';
|
|
import { RecoilRoot } from 'recoil';
|
|
import { IconsProvider } from 'twenty-ui';
|
|
|
|
import { CaptchaProvider } from '@/captcha/components/CaptchaProvider';
|
|
import { ApolloDevLogEffect } from '@/debug/components/ApolloDevLogEffect';
|
|
import { RecoilDebugObserverEffect } from '@/debug/components/RecoilDebugObserver';
|
|
import { AppErrorBoundary } from '@/error-handler/components/AppErrorBoundary';
|
|
import { ExceptionHandlerProvider } from '@/error-handler/components/ExceptionHandlerProvider';
|
|
import { SnackBarProviderScope } from '@/ui/feedback/snack-bar-manager/scopes/SnackBarProviderScope';
|
|
|
|
import '@emotion/react';
|
|
|
|
import { App } from './App';
|
|
|
|
import './index.css';
|
|
import 'react-loading-skeleton/dist/skeleton.css';
|
|
|
|
const root = ReactDOM.createRoot(
|
|
document.getElementById('root') ?? document.body,
|
|
);
|
|
|
|
root.render(
|
|
<RecoilRoot>
|
|
<AppErrorBoundary>
|
|
<CaptchaProvider>
|
|
<RecoilDebugObserverEffect />
|
|
<ApolloDevLogEffect />
|
|
<SnackBarProviderScope snackBarManagerScopeId="snack-bar-manager">
|
|
<IconsProvider>
|
|
<ExceptionHandlerProvider>
|
|
<HelmetProvider>
|
|
<App />
|
|
</HelmetProvider>
|
|
</ExceptionHandlerProvider>
|
|
</IconsProvider>
|
|
</SnackBarProviderScope>
|
|
</CaptchaProvider>
|
|
</AppErrorBoundary>
|
|
</RecoilRoot>,
|
|
);
|