16 lines
624 B
TypeScript
16 lines
624 B
TypeScript
import { AnalyticsApiClient } from '@/lib/api/analytics/AnalyticsApiClient';
|
|
import { DashboardService } from '@/lib/services/analytics/DashboardService';
|
|
import { ContainerModule } from 'inversify';
|
|
import { ANALYTICS_API_CLIENT_TOKEN, ANALYTICS_DASHBOARD_SERVICE_TOKEN } from '../tokens';
|
|
|
|
export const AnalyticsModule = new ContainerModule((options) => {
|
|
const bind = options.bind;
|
|
|
|
bind(ANALYTICS_DASHBOARD_SERVICE_TOKEN)
|
|
.toDynamicValue((ctx) => {
|
|
const apiClient = ctx.get<AnalyticsApiClient>(ANALYTICS_API_CLIENT_TOKEN);
|
|
return new DashboardService(apiClient);
|
|
})
|
|
.inSingletonScope();
|
|
});
|