chore: add typeorm config

This commit is contained in:
mahyargdz
2025-01-19 10:23:18 +03:30
parent 3fb52961c7
commit 583fa52160
16 changed files with 877 additions and 461 deletions
+13
View File
@@ -0,0 +1,13 @@
import { NestFastifyApplication } from "@nestjs/platform-fastify";
import { DocumentBuilder, SwaggerModule } from "@nestjs/swagger";
export function getSwaggerDocument(app: NestFastifyApplication) {
const swaggerConfig = new DocumentBuilder()
.setTitle("The Danak dsc api document")
.setDescription("The Danak dsc API description")
.setVersion("1.0.0")
.build();
const swaggerDocument = SwaggerModule.createDocument(app, swaggerConfig);
SwaggerModule.setup("api-docs", app, swaggerDocument);
}
+23
View File
@@ -0,0 +1,23 @@
import { ConfigService } from "@nestjs/config";
import { TypeOrmModuleAsyncOptions } from "@nestjs/typeorm";
export function DatabaseConfigs(): TypeOrmModuleAsyncOptions {
return {
inject: [ConfigService],
useFactory(configService: ConfigService) {
return {
type: "postgres",
host: configService.getOrThrow<string>("DB_HOST"),
port: configService.getOrThrow<number>("DB_PORT"),
database: configService.getOrThrow<string>("DB_NAME"),
username: configService.getOrThrow<string>("DB_USER"),
password: configService.getOrThrow<string>("DB_PASS"),
synchronize: true,
logging: configService.getOrThrow<string>("NODE_ENV") == "production" ? false : true,
migrationsTableName: "typeorm_migrations",
migrationsRun: false,
autoLoadEntities: true,
};
},
};
}