Skip to content
Snippets Groups Projects
Select Git revision
  • 3472192fdb66f7f8554f448b1e1d76d6b35801b4
  • dev default protected
  • renovate/ghcr.io-browserless-chromium-2.x
  • 168-pro-connect
  • renovate/major-nest-monorepo
  • renovate/luxon-3.x
  • renovate/gouvfr-anct-timetable-to-osm-opening-hours-2.x
  • renovate/major-typescript-eslint-monorepo
  • renovate/npm-11.x
  • renovate/mysql-9.x
  • renovate/mongo-express-1.x
  • renovate/major-jest-monorepo
  • renovate/tsconfig-paths-4.x
  • renovate/jest-junit-16.x
  • renovate/express-5.x
  • renovate/elastic-elasticsearch-8.x
  • renovate/ghost-5.x
  • renovate/elasticsearch-7.x
  • renovate/devdependencies-(non-major)
  • 722-envsubst-client-side-conf
  • master protected
  • v4.0.3
  • v4.0.1
  • v4.0.0
  • v3.4.3
  • v3.4.2
  • v3.4.1
  • v3.4.0
  • v3.3.1
  • v3.3.0
  • v3.2.0
  • v3.1.0
  • v3.0.1
  • v3.0.0
  • v2.5.0
  • v2.4.2
  • v2.4.1
  • v2.4.0
  • v2.3.2
  • v2.3.1
  • v2.3.0
41 results

structures.module.ts

Blame
  • user avatar
    Mathieu Ponton authored
    0cfbff93
    History
    structures.module.ts 2.12 KiB
    import { HttpModule } from '@nestjs/axios';
    import { forwardRef, Module } from '@nestjs/common';
    import { JwtModule } from '@nestjs/jwt';
    import { MongooseModule } from '@nestjs/mongoose';
    import { CategoriesModule } from '../categories/categories.module';
    import { MailerModule } from '../mailer/mailer.module';
    import { PersonalOffersModule } from '../personal-offers/personal-offers.module';
    import { SearchModule } from '../search/search.module';
    import { TempUserModule } from '../temp-user/temp-user.module';
    import { UsersModule } from '../users/users.module';
    import { Structure, StructureSchema } from './schemas/structure.schema';
    import { StructuresSearchService } from './services/structures-search.service';
    import { StructuresService } from './services/structures.service';
    import { StructureTypeController } from './structure-type/structure-type.controller';
    import { StructureType, StructureTypeSchema } from './structure-type/structure-type.schema';
    import { StructureTypeService } from './structure-type/structure-type.service';
    import { StructuresController } from './structures.controller';
    import { config } from 'dotenv';
    import { StructuresExportService } from './services/structures-export.service';
    import { StructuresImportService } from './services/structures-import.service';
    config();
    
    @Module({
      imports: [
        MongooseModule.forFeature([
          { name: Structure.name, schema: StructureSchema },
          { name: StructureType.name, schema: StructureTypeSchema },
        ]),
        HttpModule,
        MailerModule,
        forwardRef(() => UsersModule),
        forwardRef(() => PersonalOffersModule),
        CategoriesModule,
        TempUserModule,
        SearchModule,
        JwtModule.register({
          secret: process.env.JWT_SECRET,
          signOptions: { expiresIn: '30d' }, // 1 month validity
        }),
      ],
      controllers: [StructuresController, StructureTypeController],
      exports: [StructuresService, StructureTypeService, StructuresExportService, StructuresImportService],
      providers: [
        StructuresSearchService,
        StructuresService,
        StructureTypeService,
        StructuresExportService,
        StructuresImportService,
      ],
    })
    export class StructuresModule {}