lobe-chat
1import { DeepPartial } from 'utility-types';
2
3import { edgeClient } from '@/libs/trpc/client';
4import { LobeAgentConfig } from '@/types/agent';
5import { GlobalServerConfig } from '@/types/serverConfig';
6
7const VERSION_URL = 'https://registry.npmmirror.com/@lobehub/chat';
8
9class GlobalService {
10/**
11* get latest version from npm
12*/
13getLatestVersion = async (): Promise<string> => {
14const res = await fetch(VERSION_URL);
15const data = await res.json();
16
17return data['dist-tags']?.latest;
18};
19
20getGlobalConfig = async (): Promise<GlobalServerConfig> => {
21return edgeClient.config.getGlobalConfig.query();
22};
23
24getDefaultAgentConfig = async (): Promise<DeepPartial<LobeAgentConfig>> => {
25return edgeClient.config.getDefaultAgentConfig.query();
26};
27}
28
29export const globalService = new GlobalService();
30