| 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 | |