1.0.0 • Published 3 years ago

nestjs-provider-helper v1.0.0

Weekly downloads
3
License
MIT
Repository
github
Last release
3 years ago

NestJS Provider Helper

This helper creates a provider structure for NestJS modules in a opinionated way, where every provider must be a implementation of a interface

The ProviderHelper class exposes static methods to create ClassProviders, FactoryProviders, ExistingProviders and ValueProviders

ClassProvider example

@Module({
  controllers: [CatsController],
  providers: [
    ProviderHelper.createClassProvider<ICatService, CatService>('ICatService', CatService),
    ProviderHelper.createClassProvider<ICatRepository, TypeormCatRepository>('ICatRepository', CatRepository),
  ],
})
export class CatsModule {}

FactoryProvider example

@Module({
  controllers: [CatsController],
  providers: [
    ProviderHelper.createClassProvider<ICatRepository, TypeormCatRepository>('ICatRepository', CatRepository),
    ProviderHelper.createFactoryProvider<ICatService, CatService>(
      'ICatService',
      (ICatRepository: catRepository) => new CatService(catRepository),
      ['ICatRepository']
    ),
  ],
})
export class CatsModule {}