mirror of
https://github.com/makeplane/plane
synced 2024-06-14 14:31:34 +00:00
43 lines
1.5 KiB
TypeScript
43 lines
1.5 KiB
TypeScript
"use client";
|
|
|
|
import { ReactNode } from "react";
|
|
import { ThemeProvider } from "next-themes";
|
|
import { SWRConfig } from "swr";
|
|
// constants
|
|
import { SWR_CONFIG } from "@/constants/swr-config";
|
|
// helpers
|
|
import { ASSET_PREFIX } from "@/helpers/common.helper";
|
|
// lib
|
|
import { InstanceProvider } from "@/lib/instance-provider";
|
|
import { StoreProvider } from "@/lib/store-provider";
|
|
import { UserProvider } from "@/lib/user-provider";
|
|
// styles
|
|
import "./globals.css";
|
|
|
|
function RootLayout({ children }: { children: ReactNode }) {
|
|
return (
|
|
<html lang="en">
|
|
<head>
|
|
<link rel="apple-touch-icon" sizes="180x180" href={`${ASSET_PREFIX}/favicon/apple-touch-icon.png`} />
|
|
<link rel="icon" type="image/png" sizes="32x32" href={`${ASSET_PREFIX}/favicon/favicon-32x32.png`} />
|
|
<link rel="icon" type="image/png" sizes="16x16" href={`${ASSET_PREFIX}/favicon/favicon-16x16.png`} />
|
|
<link rel="manifest" href={`${ASSET_PREFIX}/site.webmanifest.json`} />
|
|
<link rel="shortcut icon" href={`${ASSET_PREFIX}/favicon/favicon.ico`} />
|
|
</head>
|
|
<body className={`antialiased`}>
|
|
<ThemeProvider themes={["light", "dark"]} defaultTheme="system" enableSystem>
|
|
<SWRConfig value={SWR_CONFIG}>
|
|
<StoreProvider>
|
|
<InstanceProvider>
|
|
<UserProvider>{children}</UserProvider>
|
|
</InstanceProvider>
|
|
</StoreProvider>
|
|
</SWRConfig>
|
|
</ThemeProvider>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|
|
|
|
export default RootLayout;
|