UNPKG

@jrosadob/nestjs-sophia-framework

Version:

Franework para microservicios en NestJS

35 lines 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.databaseProviders = void 0; const typeorm_1 = require("typeorm"); const providers_1 = require("./providers"); const config_module_1 = require("../config/config.module"); const config_service_1 = require("../config/config.service"); const logger_1 = require("../logger/logger"); const logger_module_1 = require("../logger/logger.module"); const typeorm_logger_service_1 = require("../logger/typeorm-logger.service"); exports.databaseProviders = [ { provide: providers_1.Providers.DATA_SOURCE, imports: [config_module_1.ConfigModule, logger_module_1.LoggerModule], inject: [config_service_1.ConfigService, logger_1.Logger], useFactory: async (configService, logger) => { const dataSource = new typeorm_1.DataSource({ type: 'mysql', host: configService.get('typeorm.mysql.host'), port: configService.get('typeorm.mysql.port'), database: configService.get('typeorm.mysql.database'), username: configService.get('typeorm.mysql.username'), password: configService.get('typeorm.mysql.password'), entities: [__dirname + './../**/entities/*.entity.{js,ts}'], synchronize: false, logging: true, logger: new typeorm_logger_service_1.TypeOrmLoggerService(logger), }); const data = await dataSource.initialize(); logger.log('Database connection established', 'DatabaseProvider'); return data; }, }, ]; //# sourceMappingURL=database.provider.js.map