|
1 | 1 | import { Module } from '@nestjs/common';
|
2 |
| -import { JsonApiModule, TypeOrmModule } from '@klerick/json-api-nestjs'; |
3 |
| -import { Users, Addresses, Comments, Roles, BookList } from 'database'; |
| 2 | +import { |
| 3 | + JsonApiModule, |
| 4 | + MicroOrmJsonApiModule, |
| 5 | + TypeOrmJsonApiModule, |
| 6 | +} from '@klerick/json-api-nestjs'; |
| 7 | +import { |
| 8 | + Users, |
| 9 | + Addresses, |
| 10 | + Comments, |
| 11 | + Roles, |
| 12 | + BookList, |
| 13 | +} from '@nestjs-json-api/typeorm-database'; |
| 14 | + |
| 15 | +import { |
| 16 | + Users as mkUsers, |
| 17 | + Addresses as mkAddresses, |
| 18 | + Comments as mkComments, |
| 19 | + Roles as mkRoles, |
| 20 | + BookList as mkBookList, |
| 21 | +} from '@nestjs-json-api/microorm-database'; |
| 22 | + |
4 | 23 | import { ExtendBookListController } from './controllers/extend-book-list/extend-book-list.controller';
|
5 | 24 | import { ExtendUserController } from './controllers/extend-user/extend-user.controller';
|
6 | 25 | import { ExampleService } from './service/example.service';
|
7 | 26 |
|
| 27 | +const typeOrm = () => |
| 28 | + JsonApiModule.forRoot(TypeOrmJsonApiModule, { |
| 29 | + entities: [Users, Addresses, Comments, Roles, BookList], |
| 30 | + controllers: [ExtendBookListController, ExtendUserController], |
| 31 | + providers: [ExampleService], |
| 32 | + options: { |
| 33 | + debug: true, |
| 34 | + requiredSelectField: false, |
| 35 | + operationUrl: 'operation', |
| 36 | + }, |
| 37 | + }); |
| 38 | + |
| 39 | +const microOrm = () => |
| 40 | + JsonApiModule.forRoot(MicroOrmJsonApiModule, { |
| 41 | + entities: [mkUsers, mkAddresses, mkComments, mkRoles, mkBookList], |
| 42 | + controllers: [ExtendBookListController, ExtendUserController], |
| 43 | + providers: [ExampleService], |
| 44 | + options: { |
| 45 | + debug: true, |
| 46 | + requiredSelectField: false, |
| 47 | + operationUrl: 'operation', |
| 48 | + }, |
| 49 | + }); |
| 50 | + |
| 51 | +const ormModule = process.env['ORM_TYPE'] === 'typeorm' ? typeOrm : microOrm; |
| 52 | + |
8 | 53 | @Module({
|
9 |
| - imports: [ |
10 |
| - JsonApiModule.forRoot({ |
11 |
| - entities: [Users, Addresses, Comments, Roles, BookList], |
12 |
| - controllers: [ExtendBookListController, ExtendUserController], |
13 |
| - providers: [ExampleService], |
14 |
| - type: TypeOrmModule, |
15 |
| - options: { |
16 |
| - debug: true, |
17 |
| - requiredSelectField: false, |
18 |
| - operationUrl: 'operation', |
19 |
| - }, |
20 |
| - }), |
21 |
| - ], |
| 54 | + imports: [ormModule()], |
22 | 55 | })
|
23 | 56 | export class ResourcesModule {}
|
0 commit comments