UNPKG

@nestjs/typeorm

Version:

Nest - modern, fast, powerful node.js web framework (@typeorm)

52 lines (51 loc) 2.26 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var TypeOrmModule_1; import { Module } from '@nestjs/common'; import { EntitiesMetadataStorage } from './entities-metadata.storage.js'; import { TypeOrmCoreModule } from './typeorm-core.module.js'; import { DEFAULT_DATA_SOURCE_NAME } from './typeorm.constants.js'; import { createTypeOrmProviders } from './typeorm.providers.js'; /** * @publicApi */ let TypeOrmModule = TypeOrmModule_1 = class TypeOrmModule { /** * Registers the TypeORM module with the given options. * * @param options The TypeORM data source options. * @param name Optional data source name. When provided, it overrides * `options.name` (if any) so the data source name can be configured * separately from the connection options – mirroring `forRootAsync`. */ static forRoot(options, name) { const resolvedOptions = name !== undefined ? { ...(options ?? {}), name } : options; return { module: TypeOrmModule_1, imports: [TypeOrmCoreModule.forRoot(resolvedOptions)], }; } static forFeature(entities = [], dataSource = DEFAULT_DATA_SOURCE_NAME) { const providers = createTypeOrmProviders(entities, dataSource); EntitiesMetadataStorage.addEntitiesByDataSource(dataSource, [...entities]); return { module: TypeOrmModule_1, providers: providers, exports: providers, }; } static forRootAsync(options) { return { module: TypeOrmModule_1, imports: [TypeOrmCoreModule.forRootAsync(options)], }; } }; TypeOrmModule = TypeOrmModule_1 = __decorate([ Module({}) ], TypeOrmModule); export { TypeOrmModule };