UNPKG

@cyber-rom/nestjs-scylladb

Version:

Based on https://www.npmjs.com/package/@ouato/nestjs-express-cassandra With support columns name mapping

35 lines (30 loc) 1.14 kB
import {DynamicModule, Module} from '@nestjs/common'; import {ScyllaModuleOptions, ScyllaModuleAsyncOptions, ScyllaFeaturesModuleOptions} from './interfaces'; import {createScyllaProviders} from './scylla.providers'; import {ScyllaCoreModule} from './scylla-core.module'; @Module({}) export class ScyllaModule { static forRoot(options: ScyllaModuleOptions): DynamicModule { return { module: ScyllaModule, imports: [ScyllaCoreModule.forRoot(options)], global: options.isGlobal, }; } static forFeature(options: ScyllaFeaturesModuleOptions): DynamicModule { const providers = createScyllaProviders(options.entities || [], options.connection || 'default'); return { module: ScyllaModule, exports: providers, providers, global: options.isGlobal, }; } static forRootAsync(options: ScyllaModuleAsyncOptions): DynamicModule { return { module: ScyllaModule, global: options.isGlobal, imports: [ScyllaCoreModule.forRootAsync(options)], }; } }