diff --git a/services/matrix-mana-bot/src/app.module.ts b/services/matrix-mana-bot/src/app.module.ts index eb60cad0d..3f9f1f632 100644 --- a/services/matrix-mana-bot/src/app.module.ts +++ b/services/matrix-mana-bot/src/app.module.ts @@ -16,40 +16,52 @@ import { TodoModule, CalendarModule, AiModule, ClockModule } from '@manacore/bot load: [configuration], }), - // Business Logic Modules from shared package - TodoModule.registerAsync({ - imports: [ConfigModule], - useFactory: (config: ConfigService) => ({ - storagePath: config.get('services.todo.storagePath'), + // Business Logic Modules from shared package (global: true makes them available everywhere) + { + ...TodoModule.registerAsync({ + imports: [ConfigModule], + useFactory: (config: ConfigService) => ({ + storagePath: config.get('services.todo.storagePath'), + }), + inject: [ConfigService], }), - inject: [ConfigService], - }), + global: true, + }, - CalendarModule.registerAsync({ - imports: [ConfigModule], - useFactory: (config: ConfigService) => ({ - storagePath: config.get('services.calendar.storagePath'), + { + ...CalendarModule.registerAsync({ + imports: [ConfigModule], + useFactory: (config: ConfigService) => ({ + storagePath: config.get('services.calendar.storagePath'), + }), + inject: [ConfigService], }), - inject: [ConfigService], - }), + global: true, + }, - AiModule.registerAsync({ - imports: [ConfigModule], - useFactory: (config: ConfigService) => ({ - baseUrl: config.get('services.ai.baseUrl'), - defaultModel: config.get('services.ai.defaultModel'), - timeout: config.get('services.ai.timeout'), + { + ...AiModule.registerAsync({ + imports: [ConfigModule], + useFactory: (config: ConfigService) => ({ + baseUrl: config.get('services.ai.baseUrl'), + defaultModel: config.get('services.ai.defaultModel'), + timeout: config.get('services.ai.timeout'), + }), + inject: [ConfigService], }), - inject: [ConfigService], - }), + global: true, + }, - ClockModule.registerAsync({ - imports: [ConfigModule], - useFactory: (config: ConfigService) => ({ - apiUrl: config.get('services.clock.apiUrl'), + { + ...ClockModule.registerAsync({ + imports: [ConfigModule], + useFactory: (config: ConfigService) => ({ + apiUrl: config.get('services.clock.apiUrl'), + }), + inject: [ConfigService], }), - inject: [ConfigService], - }), + global: true, + }, // Gateway-specific modules BotModule, diff --git a/services/matrix-mana-bot/src/orchestration/orchestration.module.ts b/services/matrix-mana-bot/src/orchestration/orchestration.module.ts index f3a6b8706..d44cdc4e1 100644 --- a/services/matrix-mana-bot/src/orchestration/orchestration.module.ts +++ b/services/matrix-mana-bot/src/orchestration/orchestration.module.ts @@ -1,16 +1,9 @@ import { Module, forwardRef } from '@nestjs/common'; import { OrchestrationService } from './orchestration.service'; import { BotModule } from '../bot/bot.module'; -import { AiModule, TodoModule, CalendarModule } from '@manacore/bot-services'; @Module({ - imports: [ - forwardRef(() => BotModule), - // Import service modules so their services are available - AiModule, - TodoModule, - CalendarModule, - ], + imports: [forwardRef(() => BotModule)], providers: [OrchestrationService], exports: [OrchestrationService], })