mirror of
https://github.com/langgenius/dify.git
synced 2026-06-17 14:51:10 +08:00
Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: yyh <yuanyouhuilyz@gmail.com> Co-authored-by: Joel <iamjoel007@gmail.com> Co-authored-by: hjlarry <hjlarry@163.com> Co-authored-by: fatelei <fatelei@gmail.com> Co-authored-by: Asuka Minato <i@asukaminato.eu.org> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Xiyuan Chen <52963600+GareArc@users.noreply.github.com> Co-authored-by: gigglewang <gigglewang@dify.ai> Co-authored-by: Yunlu Wen <yunlu.wen@dify.ai> Co-authored-by: chariri <w@chariri.moe> Co-authored-by: Evan <2869018789@qq.com> Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com>
53 lines
2.2 KiB
TypeScript
53 lines
2.2 KiB
TypeScript
import type { ReactNode } from 'react'
|
|
import * as React from 'react'
|
|
import InSiteMessageNotification from '@/app/components/app/in-site-message/notification'
|
|
import AmplitudeProvider from '@/app/components/base/amplitude'
|
|
import { GoogleAnalyticsScripts } from '@/app/components/base/ga'
|
|
import Zendesk from '@/app/components/base/zendesk'
|
|
import { EducationVerifyActionRecorder } from '@/app/components/education-verify-action-recorder'
|
|
import { GotoAnything } from '@/app/components/goto-anything'
|
|
import MainNavLayout from '@/app/components/main-nav/layout'
|
|
import { OAuthRegistrationAnalytics } from '@/app/components/oauth-registration-analytics'
|
|
import ReadmePanel from '@/app/components/plugins/readme-panel'
|
|
import WorkflowGeneratorMount from '@/app/components/workflow/workflow-generator/mount'
|
|
import { AppContextProvider } from '@/context/app-context-provider'
|
|
import { EventEmitterContextProvider } from '@/context/event-emitter-provider'
|
|
import { ModalContextProvider } from '@/context/modal-context-provider'
|
|
import { ProviderContextProvider } from '@/context/provider-context-provider'
|
|
import PartnerStack from '../components/billing/partner-stack'
|
|
import { CommonLayoutHydrationBoundary } from './hydration-boundary'
|
|
import RoleRouteGuard from './role-route-guard'
|
|
|
|
const Layout = async ({ children }: { children: ReactNode }) => {
|
|
return (
|
|
<>
|
|
<GoogleAnalyticsScripts />
|
|
<AmplitudeProvider />
|
|
<OAuthRegistrationAnalytics />
|
|
<EducationVerifyActionRecorder />
|
|
<CommonLayoutHydrationBoundary>
|
|
<AppContextProvider>
|
|
<EventEmitterContextProvider>
|
|
<ProviderContextProvider>
|
|
<ModalContextProvider>
|
|
<MainNavLayout>
|
|
<RoleRouteGuard>
|
|
{children}
|
|
</RoleRouteGuard>
|
|
</MainNavLayout>
|
|
<InSiteMessageNotification />
|
|
<PartnerStack />
|
|
<ReadmePanel />
|
|
<GotoAnything />
|
|
<WorkflowGeneratorMount />
|
|
</ModalContextProvider>
|
|
</ProviderContextProvider>
|
|
</EventEmitterContextProvider>
|
|
</AppContextProvider>
|
|
</CommonLayoutHydrationBoundary>
|
|
<Zendesk />
|
|
</>
|
|
)
|
|
}
|
|
export default Layout
|