import { createConnection, getConnectionManager } from 'typeorm'; export const databaseProviders = [ { provide: 'DATABASE_CONNECTION', useFactory: async () => { try { return await createConnection({ type: 'mongodb', url: process.env.MONGODB_URI || 'mongodb://localhost:27017', useNewUrlParser: true, logging: true, useUnifiedTopology: true, entities: [__dirname + '/../../**/*.entity{.ts,.js}'], // synchronize: true, }); } catch (err) { // If AlreadyHasActiveConnectionError occurs, return already existent connection if (err.name === 'AlreadyHasActiveConnectionError') { const existentConn = getConnectionManager().get('default'); return existentConn; } console.error(err); } }, }, ];