mirror of
https://github.com/rubickCenter/rubick
synced 2025-07-26 02:39:33 +08:00
52 lines
1.2 KiB
TypeScript
52 lines
1.2 KiB
TypeScript
import defaultConfig from '@/common/constans/defaultConfig';
|
|
import DBInstance from './db';
|
|
const LOCAL_CONFIG_KEY = 'rubick-local-config';
|
|
|
|
const db = new DBInstance();
|
|
|
|
const localConfig = {
|
|
async init(): Promise<any> {
|
|
const localConfig = await db.dbGet({ data: { id: LOCAL_CONFIG_KEY } });
|
|
if (
|
|
!localConfig ||
|
|
!localConfig.data ||
|
|
localConfig.data.version !== defaultConfig.version
|
|
) {
|
|
const data: any = {
|
|
_id: LOCAL_CONFIG_KEY,
|
|
data: defaultConfig,
|
|
};
|
|
if (localConfig && localConfig.data) {
|
|
data._rev = localConfig.data._rev;
|
|
}
|
|
await db.dbPut({
|
|
data: { data },
|
|
});
|
|
}
|
|
},
|
|
async getConfig(): Promise<any> {
|
|
const data: any =
|
|
(await db.dbGet({ data: { id: LOCAL_CONFIG_KEY } })) || {};
|
|
return data.data;
|
|
},
|
|
|
|
async setConfig(data) {
|
|
const localConfig: any =
|
|
(await db.dbGet({ data: { id: LOCAL_CONFIG_KEY } })) || {};
|
|
await db.dbPut({
|
|
data: {
|
|
data: {
|
|
_id: LOCAL_CONFIG_KEY,
|
|
_rev: localConfig._rev,
|
|
data: {
|
|
...localConfig.data,
|
|
...data,
|
|
},
|
|
},
|
|
},
|
|
});
|
|
},
|
|
};
|
|
|
|
export default localConfig;
|