Files
gridpilot.gg/apps/website/lib/services/home/getHomeData.ts
2026-01-07 22:05:53 +01:00

28 lines
1.1 KiB
TypeScript

import { ContainerManager } from '@/lib/di/container';
import { SESSION_SERVICE_TOKEN, LANDING_SERVICE_TOKEN } from '@/lib/di/tokens';
import { LandingService } from '@/lib/services/landing/LandingService';
import { SessionService } from '@/lib/services/auth/SessionService';
import { redirect } from 'next/navigation';
import { FeatureFlagService } from '@/lib/feature/FeatureFlagService';
export async function getHomeData() {
const container = ContainerManager.getInstance().getContainer();
const sessionService = container.get<SessionService>(SESSION_SERVICE_TOKEN);
const landingService = container.get<LandingService>(LANDING_SERVICE_TOKEN);
const session = await sessionService.getSession();
if (session) {
redirect('/dashboard');
}
const featureService = await FeatureFlagService.fromAPI();
const isAlpha = featureService.isEnabled('alpha_features');
const discovery = await landingService.getHomeDiscovery();
return {
isAlpha,
upcomingRaces: discovery.upcomingRaces,
topLeagues: discovery.topLeagues,
teams: discovery.teams,
};
}