File size: 1,457 Bytes
9eea1c5
cdf301a
9eea1c5
cdf301a
 
 
 
9eea1c5
b2a31fd
 
cdf301a
9eea1c5
cdf301a
9eea1c5
 
 
cdf301a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
02f98b1
b2a31fd
 
 
cdf301a
 
9eea1c5
 
 
cdf301a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
'use client';

import './globals.css';
import Sidebar from '@/components/Sidebar';
import { NexusAuthWrapper } from "@components/NexusAuth";
import { ToastContainer, Flip } from 'react-toastify';
import { CheckCircleIcon, InformationCircleIcon, ExclamationCircleIcon } from '@heroicons/react/20/solid';

import { RelayAPIProvider } from '@components/RelayAPI';

import { ToastProvider } from "@lib/ToastContext";

export default function RootLayout({ children }) {
  return (
    <html lang="en">
      <body>
        <ToastProvider>
          <ToastContainer
            transition={Flip}
            theme="dark"
            icon={({ type, theme }) => {
              switch (type) {
                case 'info':
                  return <InformationCircleIcon className="text-indigo-400" />;
                case 'error':
                  return <InformationCircleIcon className="text-red-500" />;
                case 'success':
                  return <CheckCircleIcon className="h-5 w-5 text-green-500" />;
                case 'warning':
                  return <ExclamationCircleIcon className="text-yellow-500" />;
                default:
                  return null;
              }
            }}
          />
          <NexusAuthWrapper>
            <RelayAPIProvider>
              <Sidebar />
              {children}
            </RelayAPIProvider>
          </NexusAuthWrapper>
        </ToastProvider>
      </body>
    </html>
  );
}