* Change to using arrow functions Co-authored-by: v1b3m <vibenjamin6@gmail.com> Co-authored-by: Matheus <matheus_benini@hotmail.com> * Add lint rule --------- Co-authored-by: v1b3m <vibenjamin6@gmail.com> Co-authored-by: Matheus <matheus_benini@hotmail.com> Co-authored-by: Charles Bochet <charles@twenty.com>
45 lines
1.2 KiB
TypeScript
45 lines
1.2 KiB
TypeScript
import { NestFactory } from '@nestjs/core';
|
|
import { ValidationPipe } from '@nestjs/common';
|
|
|
|
import * as bodyParser from 'body-parser';
|
|
import { graphqlUploadExpress } from 'graphql-upload';
|
|
import bytes from 'bytes';
|
|
|
|
import { AppModule } from './app.module';
|
|
|
|
import { settings } from './constants/settings';
|
|
import { LoggerService } from './integrations/logger/logger.service';
|
|
import { EnvironmentService } from './integrations/environment/environment.service';
|
|
|
|
const bootstrap = async () => {
|
|
const app = await NestFactory.create(AppModule, {
|
|
cors: true,
|
|
});
|
|
|
|
// Apply validation pipes globally
|
|
app.useGlobalPipes(new ValidationPipe());
|
|
|
|
app.use(bodyParser.json({ limit: settings.storage.maxFileSize }));
|
|
app.use(
|
|
bodyParser.urlencoded({
|
|
limit: settings.storage.maxFileSize,
|
|
extended: true,
|
|
}),
|
|
);
|
|
|
|
// Graphql file upload
|
|
app.use(
|
|
graphqlUploadExpress({
|
|
maxFieldSize: bytes(settings.storage.maxFileSize),
|
|
maxFiles: 10,
|
|
}),
|
|
);
|
|
const loggerService = app.get(LoggerService);
|
|
app.useLogger(loggerService);
|
|
app.useLogger(app.get(EnvironmentService).getLogLevels());
|
|
|
|
await app.listen(app.get(EnvironmentService).getPort());
|
|
};
|
|
|
|
bootstrap();
|