dependencies Legend  Declarations  Module  Bootstrap  Providers  Exports cluster_AppModule cluster_AppModule_imports cluster_AppModule_providers AuthModule AuthModule AppModule AppModule AuthModule->AppModule HelperModule HelperModule HelperModule->AppModule CoursesService100 CoursesService100 CoursesService100->AppModule EmailService EmailService EmailService->AppModule FIleService100 FIleService100 FIleService100->AppModule GlobalService100 GlobalService100 GlobalService100->AppModule LanguageService100 LanguageService100 LanguageService100->AppModule PdfService PdfService PdfService->AppModule UserService100 UserService100 UserService100->AppModule
import { Module } from "@nestjs/common";
import { ServeStaticModule } from "@nestjs/serve-static";
import { TypeOrmModule } from "@nestjs/typeorm";
import * as path from "path";
import { AuthModule } from "./module/auth/auth.module";
import { HelperModule } from "./module/helper/helper.module";
import { JwtModule } from "@nestjs/jwt";
import { Config } from "./module/config/entity/config";
import { UserController100 } from "./controller/1.0.0/user.controller";
import { UserService100 } from "./service/1.0.0/user.service";
import { MulterModule } from "@nestjs/platform-express";
import { User } from "./entity/user.entity";
import { Group } from "./entity/group.entity";
import { EmailService } from "./service/1.0.0/email.service";
import { Course } from "./entity/course.entity";
import { CourseController100 } from "./controller/1.0.0/course.controller";
import { FileController100 } from "./controller/1.0.0/file.controller";
import { CoursesService100 } from "./service/1.0.0/course.service";
import { FIleService100 } from "./service/1.0.0/file-descriptor.service";
import { Files } from "./entity/file-descriptor.entity";
import { UserCourse } from "./entity/user-course.entity";
import { CourseType } from "./entity/course-type.entity";
import { UserUniqueFiled } from "./entity/user-unique-field.entity";
import { PdfService } from "./service/1.0.0/pdf.service";
import { FilesCourse } from "./entity/file-course.entity";
import { GlobalService100 } from "./service/1.0.0/global.service";
import { FileType } from "./entity/file-type.entity";
import { Language } from "./entity/language.entity";
import { LanguageService100 } from "./service/1.0.0/language.service";
import { LanguageController100 } from "./controller/1.0.0/language.controller";
import { CourseStatus } from "./entity/course-status.entity";


@Module({
  imports: [
    MulterModule.register({
      dest: path.resolve(__dirname, "../files"),
    }),
    ServeStaticModule.forRoot({
      rootPath: path.resolve(__dirname, "../webroot"),
    }),
    // database
    TypeOrmModule.forRoot(),
    // entity
    TypeOrmModule.forFeature([
      User,
      Group,
      Course,
      Files,
      UserCourse,
      CourseType,
      UserUniqueFiled,
      FilesCourse,
      FileType,
      Language,
      CourseStatus,
    ]),

    JwtModule.register({
      secret: Config.get("JWT_SECRET"),
      signOptions: {
        expiresIn: "365d",
      },
    }),
    AuthModule,
    HelperModule,
  ],

  controllers: [
    // 1.0.0
    UserController100,
    CourseController100,
    FileController100,
    LanguageController100,
  ],

  providers: [
    // 1.0.0
    UserService100,
    EmailService,
    CoursesService100,
    FIleService100,
    PdfService,
    GlobalService100,
    LanguageService100,
  ],
})
export class AppModule {}

result-matching ""

    No results matching ""