Files
gridpilot.gg/apps/website/lib/di/modules/driver.module.ts
2026-01-14 02:02:24 +01:00

22 lines
808 B
TypeScript

import { ContainerModule } from 'inversify';
import { DRIVER_SERVICE_TOKEN, DRIVER_API_CLIENT_TOKEN, ONBOARDING_SERVICE_TOKEN } from '../tokens';
import { DriverService } from '@/lib/services/drivers/DriverService';
import { OnboardingService } from '@/lib/services/onboarding/OnboardingService';
import { DriversApiClient } from '@/lib/api/drivers/DriversApiClient';
export const DriverModule = new ContainerModule((options) => {
const bind = options.bind;
bind(DRIVER_SERVICE_TOKEN)
.toDynamicValue((ctx) => {
const apiClient = ctx.get<DriversApiClient>(DRIVER_API_CLIENT_TOKEN);
return new DriverService(apiClient);
})
.inSingletonScope();
bind(ONBOARDING_SERVICE_TOKEN)
.toDynamicValue(() => {
return new OnboardingService();
})
.inSingletonScope();
});