fix(PreloadAPI): change Obsidian api from global window to window.api (#8320)

* fix: change Obsidian API from global window into window.apiI

* fix: format
This commit is contained in:
fullex 2025-07-21 10:20:47 +08:00 committed by GitHub
parent 38a731aa8f
commit 7b58883d33
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 9 additions and 9 deletions

View File

@ -174,6 +174,11 @@ const api = {
export: {
toWord: (markdown: string, fileName: string) => ipcRenderer.invoke(IpcChannel.Export_Word, markdown, fileName)
},
obsidian: {
getVaults: () => ipcRenderer.invoke(IpcChannel.Obsidian_GetVaults),
getFolders: (vaultName: string) => ipcRenderer.invoke(IpcChannel.Obsidian_GetFiles, vaultName),
getFiles: (vaultName: string) => ipcRenderer.invoke(IpcChannel.Obsidian_GetFiles, vaultName)
},
openPath: (path: string) => ipcRenderer.invoke(IpcChannel.Open_Path, path),
shortcuts: {
update: (shortcuts: Shortcut[]) => ipcRenderer.invoke(IpcChannel.Shortcuts_Update, shortcuts)
@ -394,11 +399,6 @@ if (process.contextIsolated) {
try {
contextBridge.exposeInMainWorld('electron', electronAPI)
contextBridge.exposeInMainWorld('api', api)
contextBridge.exposeInMainWorld('obsidian', {
getVaults: () => ipcRenderer.invoke(IpcChannel.Obsidian_GetVaults),
getFolders: (vaultName: string) => ipcRenderer.invoke(IpcChannel.Obsidian_GetFiles, vaultName),
getFiles: (vaultName: string) => ipcRenderer.invoke(IpcChannel.Obsidian_GetFiles, vaultName)
})
} catch (error) {
// eslint-disable-next-line no-restricted-syntax
console.error(error)

View File

@ -181,7 +181,7 @@ const PopupContainer: React.FC<PopupContainerProps> = ({
try {
setLoading(true)
setError(null)
const vaultsData = await window.obsidian.getVaults()
const vaultsData = await window.api.obsidian.getVaults()
if (vaultsData.length === 0) {
setError(i18n.t('chat.topics.export.obsidian_no_vaults'))
setLoading(false)
@ -191,7 +191,7 @@ const PopupContainer: React.FC<PopupContainerProps> = ({
const vaultToUse = defaultObsidianVault || vaultsData[0]?.name
if (vaultToUse) {
setSelectedVault(vaultToUse)
const filesData = await window.obsidian.getFiles(vaultToUse)
const filesData = await window.api.obsidian.getFiles(vaultToUse)
setFiles(filesData)
}
} catch (error) {
@ -210,7 +210,7 @@ const PopupContainer: React.FC<PopupContainerProps> = ({
try {
setLoading(true)
setError(null)
const filesData = await window.obsidian.getFiles(selectedVault)
const filesData = await window.api.obsidian.getFiles(selectedVault)
setFiles(filesData)
} catch (error) {
logger.error('获取Obsidian文件失败:', error)

View File

@ -28,7 +28,7 @@ const ObsidianSettings: FC = () => {
try {
setLoading(true)
setError(null)
const vaultsData = await window.obsidian.getVaults()
const vaultsData = await window.api.obsidian.getVaults()
if (vaultsData.length === 0) {
setError(t('settings.data.obsidian.default_vault_no_vaults'))