23 lines
659 B
TypeScript
23 lines
659 B
TypeScript
|
import type { DynamicModule, ModuleMetadata } from "@nestjs/common";
|
||
|
import type { TypeOrmModuleOptions } from "@nestjs/typeorm";
|
||
|
|
||
|
import { Global, Module } from "@nestjs/common";
|
||
|
import { TypeOrmModule } from "@nestjs/typeorm";
|
||
|
|
||
|
import { UniqueConstraint } from "../user/constraints/unique.constraint";
|
||
|
|
||
|
@Global()
|
||
|
@Module({})
|
||
|
export class DatabaseModule {
|
||
|
static forRoot(config: TypeOrmModuleOptions): DynamicModule {
|
||
|
const providers: ModuleMetadata["providers"] = [UniqueConstraint];
|
||
|
return {
|
||
|
global: true,
|
||
|
module: DatabaseModule,
|
||
|
imports: [TypeOrmModule.forRoot(config)],
|
||
|
providers,
|
||
|
exports: providers,
|
||
|
};
|
||
|
}
|
||
|
}
|