mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2025-12-31 16:49:07 +08:00
Revert "feat: add resolveFilePath functionality to resolve restoring from different computer (#5980)"
This reverts commit 3abe0e803c.
This commit is contained in:
parent
e8753e0cf3
commit
09952a4d3b
@ -113,7 +113,7 @@ export enum IpcChannel {
|
||||
File_BinaryImage = 'file:binaryImage',
|
||||
File_Base64File = 'file:base64File',
|
||||
Fs_Read = 'fs:read',
|
||||
File_ResolveFilePath = 'file:resolveFilePath',
|
||||
|
||||
Export_Word = 'export:word',
|
||||
|
||||
Shortcuts_Update = 'shortcuts:update',
|
||||
|
||||
@ -242,7 +242,6 @@ export function registerIpc(mainWindow: BrowserWindow, app: Electron.App) {
|
||||
ipcMain.handle(IpcChannel.File_Download, fileManager.downloadFile)
|
||||
ipcMain.handle(IpcChannel.File_Copy, fileManager.copyFile)
|
||||
ipcMain.handle(IpcChannel.File_BinaryImage, fileManager.binaryImage)
|
||||
ipcMain.handle(IpcChannel.File_ResolveFilePath, (_, name) => fileManager.resolveFilePath(name))
|
||||
|
||||
// fs
|
||||
ipcMain.handle(IpcChannel.Fs_Read, FileService.readFile)
|
||||
|
||||
@ -27,10 +27,6 @@ class FileStorage {
|
||||
this.initStorageDir()
|
||||
}
|
||||
|
||||
public resolveFilePath = (name: string): string => {
|
||||
return path.join(this.storageDir, name)
|
||||
}
|
||||
|
||||
private initStorageDir = (): void => {
|
||||
try {
|
||||
if (!fs.existsSync(this.storageDir)) {
|
||||
|
||||
@ -55,7 +55,6 @@ const api = {
|
||||
},
|
||||
file: {
|
||||
select: (options?: OpenDialogOptions) => ipcRenderer.invoke(IpcChannel.File_Select, options),
|
||||
resolveFilePath: (name: string) => ipcRenderer.invoke(IpcChannel.File_ResolveFilePath, name),
|
||||
upload: (file: FileType) => ipcRenderer.invoke(IpcChannel.File_Upload, file),
|
||||
delete: (fileId: string) => ipcRenderer.invoke(IpcChannel.File_Delete, fileId),
|
||||
read: (fileId: string) => ipcRenderer.invoke(IpcChannel.File_Read, fileId),
|
||||
|
||||
@ -4,7 +4,6 @@ import db from '@renderer/databases'
|
||||
import { upgradeToV7 } from '@renderer/databases/upgrades'
|
||||
import i18n from '@renderer/i18n'
|
||||
import store from '@renderer/store'
|
||||
import { updateKnowledgeBaseFilePath } from '@renderer/services/KnowledgeService'
|
||||
import { setWebDAVSyncState } from '@renderer/store/backup'
|
||||
import dayjs from 'dayjs'
|
||||
|
||||
@ -34,7 +33,6 @@ export async function restore() {
|
||||
}
|
||||
|
||||
await handleData(data)
|
||||
await updateKnowledgeBaseFilePath()
|
||||
} catch (error) {
|
||||
Logger.error('[Backup] restore: Error restoring backup file:', error)
|
||||
window.message.error({ content: i18n.t('error.backup.file_format'), key: 'restore' })
|
||||
@ -214,7 +212,6 @@ export async function restoreFromWebdav(fileName?: string) {
|
||||
|
||||
try {
|
||||
await handleData(JSON.parse(data))
|
||||
await updateKnowledgeBaseFilePath()
|
||||
} catch (error) {
|
||||
console.error('[Backup] Error downloading file from WebDAV:', error)
|
||||
window.message.error({ content: i18n.t('error.backup.file_format'), key: 'restore' })
|
||||
|
||||
@ -12,10 +12,6 @@ class FileManager {
|
||||
return files
|
||||
}
|
||||
|
||||
static async resolveFilePath(name: string): Promise<string> {
|
||||
return window.api.file.resolveFilePath(name)
|
||||
}
|
||||
|
||||
static async addFile(file: FileType): Promise<FileType> {
|
||||
const fileRecord = await db.files.get(file.id)
|
||||
|
||||
|
||||
@ -4,7 +4,6 @@ import { getEmbeddingMaxContext } from '@renderer/config/embedings'
|
||||
import Logger from '@renderer/config/logger'
|
||||
import AiProvider from '@renderer/providers/AiProvider'
|
||||
import store from '@renderer/store'
|
||||
import { updateBases } from '@renderer/store/knowledge'
|
||||
import { FileType, KnowledgeBase, KnowledgeBaseParams, KnowledgeReference } from '@renderer/types'
|
||||
import { ExtractResults } from '@renderer/utils/extract'
|
||||
import { isEmpty } from 'lodash'
|
||||
@ -12,29 +11,6 @@ import { isEmpty } from 'lodash'
|
||||
import { getProviderByModel } from './AssistantService'
|
||||
import FileManager from './FileManager'
|
||||
|
||||
export const updateKnowledgeBaseFilePath = async () => {
|
||||
const bases = store.getState().knowledge.bases
|
||||
const updatedBases = await Promise.all(
|
||||
bases.map(async (base) => {
|
||||
const updatedBase = { ...base }
|
||||
updatedBase.items = await Promise.all(
|
||||
base.items.map(async (item) => {
|
||||
const updatedItem = { ...item }
|
||||
if (item.type === 'file' || item.type === 'directory') {
|
||||
updatedItem.content = { ...(item.content as FileType) }
|
||||
updatedItem.content.path = await FileManager.resolveFilePath(updatedItem.content.name)
|
||||
}
|
||||
return updatedItem
|
||||
})
|
||||
)
|
||||
return updatedBase
|
||||
})
|
||||
)
|
||||
|
||||
// 使用 dispatch 更新状态
|
||||
store.dispatch(updateBases(updatedBases))
|
||||
}
|
||||
|
||||
export const getKnowledgeBaseParams = (base: KnowledgeBase): KnowledgeBaseParams => {
|
||||
const provider = getProviderByModel(base.model)
|
||||
const rerankProvider = getProviderByModel(base.rerankModel)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user