UNPKG

manifest

Version:

The backend for AI code editors

115 lines (114 loc) 5.79 kB
"use strict"; 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 __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.AppModule = void 0; const common_1 = require("@nestjs/common"); const config_1 = require("@nestjs/config"); const typeorm_1 = require("@nestjs/typeorm"); const auth_module_1 = require("./auth/auth.module"); const database_1 = __importDefault(require("./config/database")); const general_1 = __importDefault(require("./config/general")); const storage_1 = __importDefault(require("./config/storage")); const paths_1 = __importDefault(require("./config/paths")); const crud_module_1 = require("./crud/crud.module"); const entity_module_1 = require("./entity/entity.module"); const entity_loader_service_1 = require("./entity/services/entity-loader.service"); const logger_module_1 = require("./logger/logger.module"); const logger_service_1 = require("./logger/logger.service"); const manifest_module_1 = require("./manifest/manifest.module"); const seed_module_1 = require("./seed/seed.module"); const health_module_1 = require("./health/health.module"); const open_api_module_1 = require("./open-api/open-api.module"); const validation_module_1 = require("./validation/validation.module"); const upload_module_1 = require("./upload/upload.module"); const storage_module_1 = require("./storage/storage.module"); const manifest_service_1 = require("./manifest/services/manifest.service"); const hook_module_1 = require("./hook/hook.module"); const endpoint_module_1 = require("./endpoint/endpoint.module"); const policy_module_1 = require("./policy/policy.module"); const handler_module_1 = require("./handler/handler.module"); const sdk_module_1 = require("./sdk/sdk.module"); const middleware_module_1 = require("./middleware/middleware.module"); const event_module_1 = require("./event/event.module"); let AppModule = class AppModule { constructor(loggerService) { this.loggerService = loggerService; } async onModuleInit() { await this.init(); } async init() { const isSeed = process.argv[1].includes('seed'); const isTest = process.env.NODE_ENV === 'test'; if (!isSeed && !isTest) { this.loggerService.initMessage(); } } }; exports.AppModule = AppModule; exports.AppModule = AppModule = __decorate([ (0, common_1.Module)({ imports: [ config_1.ConfigModule.forRoot({ isGlobal: true, envFilePath: ['.env', '.env.contribution'], load: [general_1.default, database_1.default, paths_1.default, storage_1.default] }), typeorm_1.TypeOrmModule.forRootAsync({ imports: [config_1.ConfigModule, entity_module_1.EntityModule, manifest_module_1.ManifestModule], useFactory: async (configService, entityLoaderService, manifestService) => { let dbConnection; let databaseConfig; switch (configService.get('DB_CONNECTION')) { case 'postgres': dbConnection = 'postgres'; databaseConfig = configService.get('database').postgres; break; case 'mysql': dbConnection = 'mysql'; databaseConfig = configService.get('database').mysql; break; default: dbConnection = 'sqlite'; databaseConfig = configService.get('database').sqlite; break; } await manifestService.loadManifest(configService.get('paths').manifestFile); const entities = entityLoaderService.loadEntities(dbConnection); return Object.assign(databaseConfig, { entities }); }, inject: [config_1.ConfigService, entity_loader_service_1.EntityLoaderService, manifest_service_1.ManifestService] }), manifest_module_1.ManifestModule, entity_module_1.EntityModule, seed_module_1.SeedModule, crud_module_1.CrudModule, auth_module_1.AuthModule, logger_module_1.LoggerModule, health_module_1.HealthModule, open_api_module_1.OpenApiModule, validation_module_1.ValidationModule, upload_module_1.UploadModule, storage_module_1.StorageModule, hook_module_1.HookModule, endpoint_module_1.EndpointModule, policy_module_1.PolicyModule, handler_module_1.HandlerModule, sdk_module_1.SdkModule, middleware_module_1.MiddlewareModule, event_module_1.EventModule ] }), __metadata("design:paramtypes", [logger_service_1.LoggerService]) ], AppModule);