Skip to content

Commit 0dc337b

Browse files
committed
refactor: update the ways to use the nestjs services inside the rest and graphql module
1 parent 9043d66 commit 0dc337b

53 files changed

Lines changed: 611 additions & 196 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.vscode/settings.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"cdktf",
1919
"codecov",
2020
"Concat",
21+
"datasources",
2122
"datetime",
2223
"dbml",
2324
"deepmerge",

apps/api/src/app/app.module.ts

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ import {
77
FileStorageModule,
88
GraphQLModule,
99
MailerModule,
10-
ModelsModule,
10+
ModelsRestModule,
11+
ModelsServicesModule,
1112
PasswordModule,
1213
} from './modules';
1314

@@ -16,25 +17,21 @@ import { LoggerModule } from '@trxn/nestjs-core';
1617
@Module({
1718
imports: [
1819
// Internal database services
19-
DatabaseModule,
20-
20+
// DatabaseModule,
2121
// API modules
22-
ModelsModule,
23-
GraphQLModule,
24-
22+
ModelsServicesModule,
23+
ModelsRestModule,
24+
// GraphQLModule,
2525
// Authentication modules
26-
AuthenticationModule,
27-
PasswordModule,
28-
26+
// AuthenticationModule,
27+
// PasswordModule,
2928
// Miscellaneous
30-
MailerModule,
31-
FileStorageModule,
32-
29+
// MailerModule,
30+
// FileStorageModule,
3331
// Logger
34-
LoggerModule,
35-
32+
// LoggerModule,
3633
// Cli
37-
ConsoleModule,
34+
// ConsoleModule,
3835
],
3936
})
4037
export class AppModule {}

apps/api/src/app/modules/authentication.module.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { APP_GUARD, APP_INTERCEPTOR } from '@nestjs/core';
33

44
import { CaslModule } from './casl.module';
55
import { EncryptionModule } from './encryption.module';
6-
import { ModelsModule } from './models.module';
6+
import { ModelsServicesModule } from './models-services.module';
77

88
import { getSelectPrismaUserQuery } from '@trxn/generated-casl';
99
import { USER_SERVICE } from '@trxn/generated-nestjs-models-common';
@@ -18,7 +18,7 @@ import { CaslExceptionInterceptor, PoliciesGuard } from '@trxn/nestjs-casl';
1818
imports: [
1919
CaslModule,
2020
TraxionAuthenticationModule.registerAsync({
21-
imports: [ModelsModule, EncryptionModule],
21+
imports: [ModelsServicesModule, EncryptionModule],
2222
useFactory: (userService, encryptionService) => ({
2323
user: {
2424
customSelect: getSelectPrismaUserQuery(),

apps/api/src/app/modules/database.module.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
1-
import { Global, Module } from '@nestjs/common';
1+
import { Module } from '@nestjs/common';
22
import { APP_INTERCEPTOR } from '@nestjs/core';
3+
import { PrismaClient } from '@prisma/client';
34

45
import { PrismaExceptionInterceptor } from '@trxn/nestjs-core';
56
import { DatabaseModule as TraxionDatabaseModule } from '@trxn/nestjs-database';
67

7-
@Global()
88
@Module({
9-
imports: [TraxionDatabaseModule.register({})],
9+
imports: [
10+
TraxionDatabaseModule.register({
11+
// prismaClient: new PrismaClient(),
12+
}),
13+
],
1014
exports: [TraxionDatabaseModule],
1115
providers: [
1216
{ provide: APP_INTERCEPTOR, useClass: PrismaExceptionInterceptor },

apps/api/src/app/modules/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,6 @@ export * from './encryption.module';
55
export * from './file-storage.module';
66
export * from './graphql.module';
77
export * from './mailer.module';
8-
export * from './models.module';
8+
export * from './models-services.module';
9+
export * from './rest.module';
910
export * from './password.module';
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import { Module } from '@nestjs/common';
2+
import { PrismaClient } from '@prisma/client';
3+
4+
import { DatabaseModule } from './database.module';
5+
import { EncryptionModule } from './encryption.module';
6+
7+
import {
8+
ModelsModule as TraxionModelsModule,
9+
UserMiddlewareModule,
10+
} from '@trxn/generated-nestjs-models';
11+
import { ModelsServicesModule as ServicesModule } from '@trxn/generated-nestjs-models-common';
12+
import { ModelsRestModule } from '@trxn/generated-nestjs-models-rest';
13+
import { BcryptService } from '@trxn/nestjs-bcrypt';
14+
import { DATABASE_SERVICE } from '@trxn/nestjs-database';
15+
16+
@Module({
17+
imports: [
18+
// UserMiddlewareModule.registerAsync({
19+
// imports: [EncryptionModule],
20+
// inject: [BcryptService],
21+
// useFactory: (bcryptService: BcryptService) => ({
22+
// encryptionService: bcryptService,
23+
// }),
24+
// }),
25+
26+
ServicesModule.register({
27+
imports: [DatabaseModule],
28+
}),
29+
],
30+
exports: [ServicesModule],
31+
})
32+
export class ModelsServicesModule {}

apps/api/src/app/modules/models.module.ts

Lines changed: 0 additions & 24 deletions
This file was deleted.

apps/api/src/app/modules/password.module.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Module } from '@nestjs/common';
22

33
import { EncryptionModule } from './encryption.module';
44
import { MailerModule } from './mailer.module';
5-
import { ModelsModule } from './models.module';
5+
import { ModelsServicesModule } from './models-services.module';
66

77
import { USER_SERVICE } from '@trxn/generated-nestjs-models-common';
88
import { BcryptService, EncryptionService } from '@trxn/nestjs-bcrypt';
@@ -12,7 +12,7 @@ import { PasswordModule as TraxionPasswordModule } from '@trxn/nestjs-password';
1212
@Module({
1313
imports: [
1414
TraxionPasswordModule.registerAsync({
15-
imports: [ModelsModule, MailerModule, EncryptionModule],
15+
imports: [ModelsServicesModule, MailerModule, EncryptionModule],
1616
useFactory: (
1717
userService,
1818
resetPasswordSendEmailService: ResetPasswordSendEmailService,
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { Module } from '@nestjs/common';
2+
3+
import { ModelsServicesModule } from './models-services.module';
4+
5+
import { ModelsRestModule as RestModule } from '@trxn/generated-nestjs-models-rest';
6+
7+
@Module({
8+
imports: [
9+
RestModule.register({
10+
imports: [ModelsServicesModule],
11+
}),
12+
],
13+
exports: [RestModule],
14+
})
15+
export class ModelsRestModule {}

hapify-models.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@
116116
},
117117
{
118118
"name": "name",
119-
"properties": ["unique", "label", "searchable"],
119+
"properties": ["unique", "label", "searchable", "sortable"],
120120
"type": "string"
121121
},
122122
{

0 commit comments

Comments
 (0)