refactor(server): config system (#11081)

This commit is contained in:
forehalo
2025-03-27 12:32:28 +00:00
parent 7091111f85
commit 0ea38680fa
274 changed files with 7583 additions and 5841 deletions
@@ -815,4 +815,10 @@ export const USER_FRIENDLY_ERRORS = {
type: 'action_forbidden',
message: 'You can not mention yourself.',
},
// app config
invalid_app_config: {
type: 'invalid_input',
message: 'Invalid app config.',
},
} satisfies Record<string, UserFriendlyErrorOptions>;
@@ -917,6 +917,12 @@ export class MentionUserOneselfDenied extends UserFriendlyError {
super('action_forbidden', 'mention_user_oneself_denied', message);
}
}
export class InvalidAppConfig extends UserFriendlyError {
constructor(message?: string) {
super('invalid_input', 'invalid_app_config', message);
}
}
export enum ErrorNames {
INTERNAL_SERVER_ERROR,
NETWORK_ERROR,
@@ -1034,7 +1040,8 @@ export enum ErrorNames {
UNSUPPORTED_CLIENT_VERSION,
NOTIFICATION_NOT_FOUND,
MENTION_USER_DOC_ACCESS_DENIED,
MENTION_USER_ONESELF_DENIED
MENTION_USER_ONESELF_DENIED,
INVALID_APP_CONFIG
}
registerEnumType(ErrorNames, {
name: 'ErrorNames'
@@ -5,7 +5,6 @@ import { fileURLToPath } from 'node:url';
import { Logger, Module, OnModuleInit } from '@nestjs/common';
import { Args, Query, Resolver } from '@nestjs/graphql';
import { Config } from '../config/provider';
import { generateUserFriendlyErrors } from './def';
import { ActionForbidden, ErrorDataUnionType, ErrorNames } from './errors.gen';
@@ -23,9 +22,8 @@ class ErrorResolver {
})
export class ErrorModule implements OnModuleInit {
logger = new Logger('ErrorModule');
constructor(private readonly config: Config) {}
onModuleInit() {
if (!this.config.node.dev) {
if (!env.dev) {
return;
}
this.logger.log('Generating UserFriendlyError classes');