diff --git a/src/app.config.ts b/src/app.config.ts index c62cd325..93c58b45 100644 --- a/src/app.config.ts +++ b/src/app.config.ts @@ -1,4 +1,5 @@ -import { AxiosRequestConfig } from 'axios' +/* eslint-disable @typescript-eslint/consistent-type-imports */ +import type { AxiosRequestConfig } from 'axios' import cluster from 'cluster' import { argv } from 'zx-cjs' diff --git a/src/app.module.ts b/src/app.module.ts index a35105a7..0119fc34 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -52,97 +52,99 @@ import { HelperModule } from './processors/helper/helper.module' import { LoggerModule } from './processors/logger/logger.module' import { RedisModule } from './processors/redis/redis.module' -@Module({}) +@Module({ + imports: [ + LoggerModule, + DatabaseModule, + RedisModule, + + AggregateModule, + AnalyzeModule, + AuthModule, + BackupModule, + CategoryModule, + CommentModule, + ConfigsModule, + DEMO_MODE && DemoModule, + DependencyModule, + FeedModule, + FileModule, + HealthModule, + + LinkModule, + MarkdownModule, + NoteModule, + OptionModule, + PageModule, + PostModule, + ProjectModule, + PTYModule, + RecentlyModule, + UpdateModule, + TopicModule, + SayModule, + SearchModule, + ServerlessModule, + SitemapModule, + SnippetModule, + ToolModule, + UserModule, + + PageProxyModule, + RenderEjsModule, + + GatewayModule, + HelperModule, + + isDev && DebugModule, + ].filter(Boolean) as Type[], + controllers: [AppController], + providers: [ + { + provide: APP_INTERCEPTOR, + useClass: QueryInterceptor, + }, + + { + provide: APP_INTERCEPTOR, + useClass: HttpCacheInterceptor, // 4 + }, + { + provide: APP_INTERCEPTOR, + useClass: AnalyzeInterceptor, + }, + { + provide: APP_INTERCEPTOR, + useClass: CountingInterceptor, // 3 + }, + { + provide: APP_INTERCEPTOR, + useClass: JSONTransformInterceptor, // 2 + }, + { + provide: APP_INTERCEPTOR, + useClass: ResponseInterceptor, // 1 + }, + { + provide: APP_INTERCEPTOR, + useClass: IdempotenceInterceptor, // 0 + }, + + { + provide: APP_FILTER, + useClass: AllExceptionsFilter, + }, + { + provide: APP_GUARD, + useClass: RolesGuard, + }, + ], +}) export class AppModule { static register(isInit: boolean): DynamicModule { return { module: AppModule, - imports: [ - LoggerModule, - DatabaseModule, - RedisModule, - - AggregateModule, - AnalyzeModule, - AuthModule, - BackupModule, - CategoryModule, - CommentModule, - ConfigsModule, - DEMO_MODE && DemoModule, - DependencyModule, - FeedModule, - FileModule, - HealthModule, - !isInit && InitModule, - LinkModule, - MarkdownModule, - NoteModule, - OptionModule, - PageModule, - PostModule, - ProjectModule, - PTYModule, - RecentlyModule, - UpdateModule, - TopicModule, - SayModule, - SearchModule, - ServerlessModule, - SitemapModule, - SnippetModule, - ToolModule, - UserModule, - - PageProxyModule, - RenderEjsModule, - - GatewayModule, - HelperModule, - - isDev ? DebugModule : undefined, - ].filter(Boolean) as Type[], - controllers: [AppController], - providers: [ - { - provide: APP_INTERCEPTOR, - useClass: QueryInterceptor, - }, - - { - provide: APP_INTERCEPTOR, - useClass: HttpCacheInterceptor, // 4 - }, - { - provide: APP_INTERCEPTOR, - useClass: AnalyzeInterceptor, - }, - { - provide: APP_INTERCEPTOR, - useClass: CountingInterceptor, // 3 - }, - { - provide: APP_INTERCEPTOR, - useClass: JSONTransformInterceptor, // 2 - }, - { - provide: APP_INTERCEPTOR, - useClass: ResponseInterceptor, // 1 - }, - { - provide: APP_INTERCEPTOR, - useClass: IdempotenceInterceptor, // 0 - }, - - { - provide: APP_FILTER, - useClass: AllExceptionsFilter, - }, - { - provide: APP_GUARD, - useClass: RolesGuard, - }, - ], + imports: [!isInit && InitModule].filter(Boolean) as Type[], } } } diff --git a/src/processors/helper/helper.macro.service.ts b/src/processors/helper/helper.macro.service.ts index 5711254b..01aea846 100644 --- a/src/processors/helper/helper.macro.service.ts +++ b/src/processors/helper/helper.macro.service.ts @@ -1,16 +1,8 @@ import dayjs from 'dayjs' -import { - BadRequestException, - Inject, - Injectable, - Logger, - Scope, -} from '@nestjs/common' -import { REQUEST } from '@nestjs/core' +import { BadRequestException, Injectable, Logger } from '@nestjs/common' import { ConfigsService } from '~/modules/configs/configs.service' -import { Request } from '~/types/request' import { deepCloneWithFunction } from '~/utils' import { safeEval } from '~/utils/safe-eval.util' @@ -20,15 +12,11 @@ const RegMap = { '?': /^\?\??(.*?)\??\?$/g, } as const -@Injectable({ - scope: Scope.REQUEST, - durable: true, -}) +@Injectable({}) export class TextMacroService { private readonly logger: Logger constructor( - private readonly configService: ConfigsService, - @Inject(REQUEST) private readonly request: Request, + private readonly configService: ConfigsService, // @Inject(REQUEST) private readonly request: Request, ) { this.logger = new Logger(TextMacroService.name) } @@ -86,9 +74,9 @@ export class TextMacroService { // time utils dayjs: deepCloneWithFunction(dayjs), fromNow: (time: Date | string) => dayjs(time).fromNow(), - onlyMe: (text: string) => { - return this.request.isMaster ? text : '' - }, + // onlyMe: (text: string) => { + // return this.request.isMaster ? text : '' + // }, // typography center: (text: string) => {