dify/web/app/(commonLayout)/providers.tsx
Coding On Star 8d293023cc
feat: gate cloud analytics behind cookie consent (#39408)
Co-authored-by: CodingOnStar <hanxujiang@dify.com>
2026-07-23 02:40:54 +00:00

35 lines
1.3 KiB
TypeScript

import type { ReactNode } from 'react'
import { EducationVerifyActionRecorder } from '@/app/components/education-verify-action-recorder'
import { OAuthRegistrationAnalytics } from '@/app/components/oauth-registration-analytics'
import { EventEmitterContextProvider } from '@/context/event-emitter-provider'
import { ModalContextProvider } from '@/context/modal-context-provider'
import { ProviderContextProvider } from '@/context/provider-context-provider'
import { ConsoleBootstrapGate } from './console-bootstrap-gate'
import { ExternalServiceSync } from './external-service-sync'
import { CommonLayoutHydrationBoundary } from './hydration-boundary'
export async function ConsoleRuntimeProviders({ children }: { children: ReactNode }) {
return (
<>
<OAuthRegistrationAnalytics />
<EducationVerifyActionRecorder />
<CommonLayoutHydrationBoundary>
<ConsoleBootstrapGate>
<ExternalServiceSync />
{children}
</ConsoleBootstrapGate>
</CommonLayoutHydrationBoundary>
</>
)
}
export function ConsoleContextProviders({ children }: { children: ReactNode }) {
return (
<EventEmitterContextProvider>
<ProviderContextProvider>
<ModalContextProvider>{children}</ModalContextProvider>
</ProviderContextProvider>
</EventEmitterContextProvider>
)
}