diff --git a/package.json b/package.json index b0fa987a..0e0d8ab1 100644 --- a/package.json +++ b/package.json @@ -89,7 +89,6 @@ "eslint-plugin-unused-imports": "^4.0.0", "gpt-tokens": "^1.3.10", "i18next": "^23.11.5", - "localforage": "^1.10.0", "lodash": "^4.17.21", "mime": "^4.0.4", "openai": "patch:openai@npm%3A4.71.1#~/.yarn/patches/openai-npm-4.71.1-b5940d6401.patch", diff --git a/src/renderer/src/databases/index.ts b/src/renderer/src/databases/index.ts index d5c70504..1714d19b 100644 --- a/src/renderer/src/databases/index.ts +++ b/src/renderer/src/databases/index.ts @@ -1,8 +1,6 @@ import { FileType, Topic } from '@renderer/types' import { Dexie, type EntityTable } from 'dexie' -import { populateTopics } from './populate' - // Database declaration (move this to its own module also) export const db = new Dexie('CherryStudio') as Dexie & { files: EntityTable @@ -14,14 +12,10 @@ db.version(1).stores({ files: 'id, name, origin_name, path, size, ext, type, created_at, count' }) -db.version(2) - .stores({ - files: 'id, name, origin_name, path, size, ext, type, created_at, count', - topics: '&id, messages', - settings: '&id, value' - }) - .upgrade(populateTopics) - -db.on('populate', populateTopics) +db.version(2).stores({ + files: 'id, name, origin_name, path, size, ext, type, created_at, count', + topics: '&id, messages', + settings: '&id, value' +}) export default db diff --git a/src/renderer/src/databases/populate.ts b/src/renderer/src/databases/populate.ts deleted file mode 100644 index 638e8f97..00000000 --- a/src/renderer/src/databases/populate.ts +++ /dev/null @@ -1,27 +0,0 @@ -import i18n from '@renderer/i18n' -import { Transaction } from 'dexie' -import localforage from 'localforage' - -export async function populateTopics(trans: Transaction) { - const indexedKeys = await localforage.keys() - - if (indexedKeys.length > 0) { - for (const key of indexedKeys) { - const value: any = await localforage.getItem(key) - if (key.startsWith('topic:')) { - await trans.db.table('topics').add({ id: value.id, messages: value.messages }) - } - if (key === 'image://avatar') { - await trans.db.table('settings').add({ id: key, value: await localforage.getItem(key) }) - } - } - - window.modal.success({ - title: i18n.t('message.upgrade.success.title'), - content: i18n.t('message.upgrade.success.content'), - okText: i18n.t('message.upgrade.success.button'), - centered: true, - onOk: () => window.api.reload() - }) - } -} diff --git a/src/renderer/src/init.ts b/src/renderer/src/init.ts index 2719b7bc..289723e7 100644 --- a/src/renderer/src/init.ts +++ b/src/renderer/src/init.ts @@ -1,17 +1,6 @@ import KeyvStorage from '@kangfenmao/keyv-storage' -import localforage from 'localforage' - -import { APP_NAME } from './config/env' function init() { - localforage.config({ - driver: localforage.INDEXEDDB, - name: 'CherryAI', - version: 1.0, - storeName: 'cherryai', - description: `${APP_NAME} Storage` - }) - window.keyv = new KeyvStorage() window.keyv.init() } diff --git a/src/renderer/src/services/BackupService.ts b/src/renderer/src/services/BackupService.ts index 2b437833..ba2ab8cc 100644 --- a/src/renderer/src/services/BackupService.ts +++ b/src/renderer/src/services/BackupService.ts @@ -2,7 +2,6 @@ import db from '@renderer/databases' import i18n from '@renderer/i18n' import store from '@renderer/store' import dayjs from 'dayjs' -import localforage from 'localforage' export async function backup() { const filename = `cherry-studio.${dayjs().format('YYYYMMDDHHmm')}.zip` @@ -49,7 +48,6 @@ export async function reset() { centered: true, onOk: async () => { await localStorage.clear() - await localforage.clear() await clearDatabase() await window.api.file.clear() window.api.reload() diff --git a/yarn.lock b/yarn.lock index 450abc29..499c94c2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2374,7 +2374,6 @@ __metadata: gpt-tokens: "npm:^1.3.10" html2canvas: "npm:^1.4.1" i18next: "npm:^23.11.5" - localforage: "npm:^1.10.0" lodash: "npm:^4.17.21" markdown-it: "npm:^14.1.0" mime: "npm:^4.0.4" @@ -7186,15 +7185,6 @@ __metadata: languageName: node linkType: hard -"lie@npm:3.1.1": - version: 3.1.1 - resolution: "lie@npm:3.1.1" - dependencies: - immediate: "npm:~3.0.5" - checksum: 10c0/d62685786590351b8e407814acdd89efe1cb136f05cb9236c5a97b2efdca1f631d2997310ad2d565c753db7596799870140e4777c9c9b8c44a0f6bf42d1804a1 - languageName: node - linkType: hard - "lie@npm:~3.3.0": version: 3.3.0 resolution: "lie@npm:3.3.0" @@ -7242,15 +7232,6 @@ __metadata: languageName: node linkType: hard -"localforage@npm:^1.10.0": - version: 1.10.0 - resolution: "localforage@npm:1.10.0" - dependencies: - lie: "npm:3.1.1" - checksum: 10c0/00f19f1f97002e6721587ed5017f502d58faf80dae567d5065d4d1ee0caf0762f40d2e2dba7f0ef7d3f14ee6203242daae9ecad97359bfc10ecff36df11d85a3 - languageName: node - linkType: hard - "locate-path@npm:^3.0.0": version: 3.0.0 resolution: "locate-path@npm:3.0.0"