import { ReactElement } from "react"; import Head from "next/head"; import { AppProps } from "next/app"; import { ThemeProvider } from "next-themes"; // styles import "styles/globals.css"; import "styles/command-pallette.css"; import "styles/nprogress.css"; import "styles/emoji.css"; import "styles/react-day-picker.css"; // constants import { THEMES } from "constants/themes"; import { SITE_TITLE } from "constants/seo-variables"; // mobx store provider import { StoreProvider } from "contexts/store-context"; import { AppProvider } from "lib/app-provider"; // types import { NextPageWithLayout } from "lib/types"; type AppPropsWithLayout = AppProps & { Component: NextPageWithLayout; }; function MyApp({ Component, pageProps }: AppPropsWithLayout) { // Use the layout defined at the page level, if available const getLayout = Component.getLayout ?? ((page: ReactElement) => page); return ( <>