22 lines
813 B
TypeScript
22 lines
813 B
TypeScript
import { Provider } from '@nestjs/common';
|
|
|
|
// Import core interfaces
|
|
import { IAvatarGenerationRepository } from '@gridpilot/media/domain/repositories/IAvatarGenerationRepository';
|
|
import { Logger } from '@gridpilot/shared/logging/Logger';
|
|
|
|
// Import implementations
|
|
import { InMemoryAvatarGenerationRepository } from '@gridpilot/adapters/media/persistence/inmemory/InMemoryAvatarGenerationRepository';
|
|
|
|
// Import tokens
|
|
import { LOGGER_TOKEN } from '../logging/LoggingModule';
|
|
|
|
// Define injection tokens
|
|
export const AVATAR_GENERATION_REPOSITORY_TOKEN = Symbol('IAvatarGenerationRepository');
|
|
|
|
export const MediaProviders: Provider[] = [
|
|
{
|
|
provide: AVATAR_GENERATION_REPOSITORY_TOKEN,
|
|
useFactory: (logger: Logger) => new InMemoryAvatarGenerationRepository(logger),
|
|
inject: [LOGGER_TOKEN],
|
|
},
|
|
]; |