Files
zn-ai/src/main/utils/index.ts
2026-03-28 16:19:45 +08:00

37 lines
945 B
TypeScript

import { CONFIG_KEYS } from '@common/constants'
import logManager from '@main/service/logger'
import configManager from '@main/service/config-service'
import path from 'node:path'
import en from '@locales/en.json'
import zh from '@locales/zh.json'
type MessageSchema = typeof zh;
const messages: Record<string, MessageSchema> = { en, zh }
export function createTranslator() {
return (key?: string) => {
if (!key) return void 0;
try {
const keys = key?.split('.');
let result: any = messages[configManager.get(CONFIG_KEYS.LANGUAGE)];
for (const _key of keys) {
result = result[_key];
}
return result as string;
} catch (e) {
logManager.error('failed to translate key:', key, e);
return key
}
}
}
let logo: string | void = void 0;
export function createLogo() {
if (logo != null) {
return logo;
}
logo = path.join(__dirname, '/public/logo.ico');
return logo;
}