40 lines
1.3 KiB
TypeScript
40 lines
1.3 KiB
TypeScript
import { publicProcedure, router } from '@rpc/index'
|
|
import { ILLMConfigSchema, INoticeConfigSchema, ILanguageConfigSchema } from '@shared/types/IConfig'
|
|
import { configService } from '@main/services/configService'
|
|
|
|
export const configRouter = router({
|
|
// 获取大模型配置
|
|
getChatConfigs: publicProcedure.query(() => {
|
|
return configService.getChatModelsConfig()
|
|
}),
|
|
|
|
// 保存大模型配置
|
|
saveChatConfig: publicProcedure.input(ILLMConfigSchema).mutation(async ({ input }) => {
|
|
const { type, config } = input
|
|
configService.saveChatModelConfig(type, config)
|
|
return { success: true }
|
|
}),
|
|
|
|
// 获取通知配置
|
|
getNoticeConfigs: publicProcedure.query(() => {
|
|
return configService.getNotificationConfig()
|
|
}),
|
|
|
|
// 保存通知配置
|
|
saveNoticeConfigs: publicProcedure.input(INoticeConfigSchema).mutation(async ({ input }) => {
|
|
configService.saveNotificationConfig(input)
|
|
return { success: true }
|
|
}),
|
|
|
|
// 获取语言配置
|
|
getLanguageConfig: publicProcedure.query(() => {
|
|
return configService.getLanguageConfig()
|
|
}),
|
|
|
|
// 保存语言配置
|
|
saveLanguageConfig: publicProcedure.input(ILanguageConfigSchema).mutation(async ({ input }) => {
|
|
configService.saveLanguageConfig(input)
|
|
return { success: true }
|
|
})
|
|
})
|