迁移类型校验到zod

This commit is contained in:
手瓜一十雪
2025-04-13 20:05:11 +08:00
parent 4084e431ec
commit 8a116d2d7b
101 changed files with 951 additions and 945 deletions

View File

@@ -44,7 +44,7 @@ export class NTQQFileApi {
'https://secret-service.bietiaop.com/rkeys',
'http://ss.xingzhige.com/music_card/rkey',
],
this.context.logger
this.context.logger
);
}
@@ -308,18 +308,18 @@ export class NTQQFileApi {
element.elementType === ElementType.FILE
) {
switch (element.elementType) {
case ElementType.PIC:
case ElementType.PIC:
element.picElement!.sourcePath = elementResults?.[elementIndex] ?? '';
break;
case ElementType.VIDEO:
break;
case ElementType.VIDEO:
element.videoElement!.filePath = elementResults?.[elementIndex] ?? '';
break;
case ElementType.PTT:
break;
case ElementType.PTT:
element.pttElement!.filePath = elementResults?.[elementIndex] ?? '';
break;
case ElementType.FILE:
break;
case ElementType.FILE:
element.fileElement!.filePath = elementResults?.[elementIndex] ?? '';
break;
break;
}
elementIndex++;
}

View File

@@ -1,22 +1,21 @@
import { ConfigBase } from '@/common/config-base';
import { NapCatCore } from '@/core';
import { Type, Static } from '@sinclair/typebox';
import { AnySchema } from 'ajv';
import { z } from 'zod';
export const NapcatConfigSchema = Type.Object({
fileLog: Type.Boolean({ default: false }),
consoleLog: Type.Boolean({ default: true }),
fileLogLevel: Type.String({ default: 'debug' }),
consoleLogLevel: Type.String({ default: 'info' }),
packetBackend: Type.String({ default: 'auto' }),
packetServer: Type.String({ default: '' }),
o3HookMode: Type.Number({ default: 0 }),
export const NapcatConfigSchema = z.object({
fileLog: z.boolean().default(false),
consoleLog: z.boolean().default(true),
fileLogLevel: z.string().default('debug'),
consoleLogLevel: z.string().default('info'),
packetBackend: z.string().default('auto'),
packetServer: z.string().default(''),
o3HookMode: z.number().default(0),
});
export type NapcatConfig = Static<typeof NapcatConfigSchema>;
export type NapcatConfig = z.infer<typeof NapcatConfigSchema>;
export class NapCatConfigLoader extends ConfigBase<NapcatConfig> {
constructor(core: NapCatCore, configPath: string, schema: AnySchema) {
constructor(core: NapCatCore, configPath: string, schema: z.ZodType<any>) {
super('napcat', core, configPath, schema);
}
}
}

View File

@@ -115,7 +115,7 @@ export interface GroupEssenceMsg {
add_digest_uin: string;
add_digest_nick: string;
add_digest_time: number;
msg_content: unknown[];
msg_content: { msg_type: number, text?: string, image_url?: string }[];
can_be_removed: true;
}