daedalOS/pages/_app.tsx
Dustin Brett 24c17c0088
Some checks failed
Tests / tests (push) Has been cancelled
Add memo to everything
2025-07-01 09:10:22 -07:00

32 lines
1.0 KiB
TypeScript

import { type AppProps } from "next/app";
import { memo } from "react";
import { ErrorBoundary } from "components/pages/ErrorBoundary";
import Metadata from "components/pages/Metadata";
import StyledApp from "components/pages/StyledApp";
import { FileSystemProvider } from "contexts/fileSystem";
import { MenuProvider } from "contexts/menu";
import { ProcessProvider } from "contexts/process";
import { SessionProvider } from "contexts/session";
import { ViewportProvider } from "contexts/viewport";
const App = ({ Component: Index, pageProps }: AppProps): React.ReactElement => (
<ViewportProvider>
<ProcessProvider>
<FileSystemProvider>
<SessionProvider>
<ErrorBoundary>
<Metadata />
<StyledApp>
<MenuProvider>
<Index {...pageProps} />
</MenuProvider>
</StyledApp>
</ErrorBoundary>
</SessionProvider>
</FileSystemProvider>
</ProcessProvider>
</ViewportProvider>
);
export default memo(App);