|
import React from 'react' |
|
import type { ReactNode } from 'react' |
|
import Header from './header' |
|
import SwrInitor from '@/app/components/swr-initor' |
|
import { AppContextProvider } from '@/context/app-context' |
|
import GA, { GaType } from '@/app/components/base/ga' |
|
import HeaderWrapper from '@/app/components/header/header-wrapper' |
|
import { EventEmitterContextProvider } from '@/context/event-emitter' |
|
import { ProviderContextProvider } from '@/context/provider-context' |
|
import { ModalContextProvider } from '@/context/modal-context' |
|
|
|
const Layout = ({ children }: { children: ReactNode }) => { |
|
return ( |
|
<> |
|
<GA gaType={GaType.admin} /> |
|
<SwrInitor> |
|
<AppContextProvider> |
|
<EventEmitterContextProvider> |
|
<ProviderContextProvider> |
|
<ModalContextProvider> |
|
<HeaderWrapper> |
|
<Header /> |
|
</HeaderWrapper> |
|
<div className='relative flex flex-col overflow-y-auto bg-white shrink-0 h-0 grow'> |
|
{children} |
|
</div> |
|
</ModalContextProvider> |
|
</ProviderContextProvider> |
|
</EventEmitterContextProvider> |
|
</AppContextProvider> |
|
</SwrInitor> |
|
</> |
|
) |
|
} |
|
|
|
export const metadata = { |
|
title: 'Dify', |
|
} |
|
|
|
export default Layout |
|
|