chore: extend root eslint config in twenty-server (#5101)

Reopening @thaisguigon work from
https://github.com/twentyhq/twenty/pull/4781

---------

Co-authored-by: Thaïs Guigon <guigon.thais@gmail.com>
This commit is contained in:
Weiko
2024-04-22 17:34:24 +02:00
committed by GitHub
parent b9a7eb5a98
commit fa4670b14d
66 changed files with 645 additions and 628 deletions

View File

@ -44,7 +44,7 @@ export class CacheStorageService {
});
}
async setPop(key: string, size: number = 1) {
async setPop(key: string, size = 1) {
if (this.isRedisCache()) {
return (this.cache as RedisCache).store.client.sPop(
`${this.namespace}:${key}`,

View File

@ -38,24 +38,24 @@ export class EnvironmentVariables {
@CastToBoolean()
@IsOptional()
@IsBoolean()
DEBUG_MODE: boolean = false;
DEBUG_MODE = false;
@CastToPositiveNumber()
@IsOptional()
@IsNumber()
@Min(0)
@Max(65535)
DEBUG_PORT: number = 9000;
DEBUG_PORT = 9000;
@CastToBoolean()
@IsOptional()
@IsBoolean()
SIGN_IN_PREFILLED: boolean = false;
SIGN_IN_PREFILLED = false;
@CastToBoolean()
@IsOptional()
@IsBoolean()
IS_BILLING_ENABLED: boolean = false;
IS_BILLING_ENABLED = false;
@IsString()
@ValidateIf((env) => env.IS_BILLING_ENABLED === true)
@ -69,7 +69,7 @@ export class EnvironmentVariables {
@CastToPositiveNumber()
@IsOptional()
@ValidateIf((env) => env.IS_BILLING_ENABLED === true)
BILLING_FREE_TRIAL_DURATION_IN_DAYS: number = 7;
BILLING_FREE_TRIAL_DURATION_IN_DAYS = 7;
@IsString()
@ValidateIf((env) => env.IS_BILLING_ENABLED === true)
@ -82,17 +82,17 @@ export class EnvironmentVariables {
@CastToBoolean()
@IsOptional()
@IsBoolean()
TELEMETRY_ENABLED: boolean = true;
TELEMETRY_ENABLED = true;
@CastToBoolean()
@IsOptional()
@IsBoolean()
TELEMETRY_ANONYMIZATION_ENABLED: boolean = true;
TELEMETRY_ANONYMIZATION_ENABLED = true;
@CastToPositiveNumber()
@IsNumber()
@IsOptional()
PORT: number = 3000;
PORT = 3000;
// Database
@IsDefined()
@ -118,33 +118,33 @@ export class EnvironmentVariables {
@IsDuration()
@IsOptional()
ACCESS_TOKEN_EXPIRES_IN: string = '30m';
ACCESS_TOKEN_EXPIRES_IN = '30m';
@IsString()
REFRESH_TOKEN_SECRET: string;
@IsDuration()
@IsOptional()
REFRESH_TOKEN_EXPIRES_IN: string = '30m';
REFRESH_TOKEN_EXPIRES_IN = '30m';
@IsDuration()
@IsOptional()
REFRESH_TOKEN_COOL_DOWN: string = '1m';
REFRESH_TOKEN_COOL_DOWN = '1m';
@IsString()
LOGIN_TOKEN_SECRET: string = '30m';
LOGIN_TOKEN_SECRET = '30m';
@IsDuration()
@IsOptional()
LOGIN_TOKEN_EXPIRES_IN: string = '15m';
LOGIN_TOKEN_EXPIRES_IN = '15m';
@IsString()
@IsOptional()
FILE_TOKEN_SECRET: string = 'random_string';
FILE_TOKEN_SECRET = 'random_string';
@IsDuration()
@IsOptional()
FILE_TOKEN_EXPIRES_IN: string = '1d';
FILE_TOKEN_EXPIRES_IN = '1d';
// Auth
@IsUrl({ require_tld: false })
@ -154,7 +154,7 @@ export class EnvironmentVariables {
@CastToBoolean()
@IsOptional()
@IsBoolean()
AUTH_GOOGLE_ENABLED: boolean = false;
AUTH_GOOGLE_ENABLED = false;
@IsString()
@ValidateIf((env) => env.AUTH_GOOGLE_ENABLED === true)
@ -188,7 +188,7 @@ export class EnvironmentVariables {
@IsString()
@ValidateIf((env) => env.STORAGE_TYPE === StorageDriverType.Local)
STORAGE_LOCAL_PATH: string = '.local-storage';
STORAGE_LOCAL_PATH = '.local-storage';
// Support
@IsEnum(SupportDriver)
@ -210,7 +210,7 @@ export class EnvironmentVariables {
@CastToBoolean()
@IsBoolean()
@IsOptional()
LOGGER_IS_BUFFER_ENABLED: boolean = true;
LOGGER_IS_BUFFER_ENABLED = true;
@IsEnum(ExceptionHandlerDriver)
@IsOptional()
@ -253,7 +253,7 @@ export class EnvironmentVariables {
@IsDuration()
@IsOptional()
PASSWORD_RESET_TOKEN_EXPIRES_IN: string = '5m';
PASSWORD_RESET_TOKEN_EXPIRES_IN = '5m';
@CastToPositiveNumber()
@IsNumber()
@ -263,49 +263,49 @@ export class EnvironmentVariables {
'"WORKSPACE_INACTIVE_DAYS_BEFORE_NOTIFICATION" should be strictly lower that "WORKSPACE_INACTIVE_DAYS_BEFORE_DELETION"',
})
@ValidateIf((env) => env.WORKSPACE_INACTIVE_DAYS_BEFORE_DELETION > 0)
WORKSPACE_INACTIVE_DAYS_BEFORE_NOTIFICATION: number = 30;
WORKSPACE_INACTIVE_DAYS_BEFORE_NOTIFICATION = 30;
@CastToPositiveNumber()
@IsNumber()
@ValidateIf((env) => env.WORKSPACE_INACTIVE_DAYS_BEFORE_NOTIFICATION > 0)
WORKSPACE_INACTIVE_DAYS_BEFORE_DELETION: number = 60;
WORKSPACE_INACTIVE_DAYS_BEFORE_DELETION = 60;
@CastToBoolean()
@IsOptional()
@IsBoolean()
IS_SIGN_UP_DISABLED: boolean = false;
IS_SIGN_UP_DISABLED = false;
@CastToPositiveNumber()
@IsOptional()
@IsNumber()
MUTATION_MAXIMUM_RECORD_AFFECTED: number = 100;
MUTATION_MAXIMUM_RECORD_AFFECTED = 100;
REDIS_HOST: string = '127.0.0.1';
REDIS_HOST = '127.0.0.1';
@CastToPositiveNumber()
REDIS_PORT: number = 6379;
REDIS_PORT = 6379;
API_TOKEN_EXPIRES_IN: string = '100y';
API_TOKEN_EXPIRES_IN = '100y';
SHORT_TERM_TOKEN_EXPIRES_IN: string = '5m';
SHORT_TERM_TOKEN_EXPIRES_IN = '5m';
@CastToBoolean()
MESSAGING_PROVIDER_GMAIL_ENABLED: boolean = false;
MESSAGING_PROVIDER_GMAIL_ENABLED = false;
MESSAGE_QUEUE_TYPE: string = MessageQueueDriverType.Sync;
EMAIL_FROM_ADDRESS: string = 'noreply@yourdomain.com';
EMAIL_FROM_ADDRESS = 'noreply@yourdomain.com';
EMAIL_SYSTEM_ADDRESS: string = 'system@yourdomain.com';
EMAIL_SYSTEM_ADDRESS = 'system@yourdomain.com';
EMAIL_FROM_NAME: string = 'Felix from Twenty';
EMAIL_FROM_NAME = 'Felix from Twenty';
EMAIL_DRIVER: EmailDriver = EmailDriver.Logger;
EMAIL_SMTP_HOST: string;
@CastToPositiveNumber()
EMAIL_SMTP_PORT: number = 587;
EMAIL_SMTP_PORT = 587;
EMAIL_SMTP_USER: string;
@ -314,18 +314,18 @@ export class EnvironmentVariables {
OPENROUTER_API_KEY: string;
@CastToPositiveNumber()
API_RATE_LIMITING_TTL: number = 100;
API_RATE_LIMITING_TTL = 100;
@CastToPositiveNumber()
API_RATE_LIMITING_LIMIT: number = 500;
API_RATE_LIMITING_LIMIT = 500;
CACHE_STORAGE_TYPE: string = 'memory';
CACHE_STORAGE_TYPE = 'memory';
@CastToPositiveNumber()
CACHE_STORAGE_TTL: number = 3600 * 24 * 7;
@CastToBoolean()
CALENDAR_PROVIDER_GOOGLE_ENABLED: boolean = false;
CALENDAR_PROVIDER_GOOGLE_ENABLED = false;
AUTH_GOOGLE_APIS_CALLBACK_URL: string;

View File

@ -33,18 +33,19 @@ export class MessageQueueModule {
const config = await options.useFactory(...args);
switch (config.type) {
case MessageQueueDriverType.PgBoss:
case MessageQueueDriverType.PgBoss: {
const boss = new PgBossDriver(config.options);
await boss.init();
return boss;
case MessageQueueDriverType.BullMQ:
}
case MessageQueueDriverType.BullMQ: {
return new BullMQDriver(config.options);
default:
}
default: {
return new SyncDriver(JobsModule.moduleRef);
}
}
},
inject: options.inject || [],