@@ -0,0 +1,114 @@
|
||||
// preload.js
|
||||
const { contextBridge, ipcRenderer } = require('electron');
|
||||
|
||||
contextBridge.exposeInMainWorld('electronAPI', {
|
||||
|
||||
runInitialization: () => ipcRenderer.invoke('run-initialization'),
|
||||
onInitProgress: (callback) => ipcRenderer.on('init-progress', (_event, value) => callback(value)),
|
||||
initializationComplete: (result) => ipcRenderer.send('initialization-complete', result),
|
||||
|
||||
onInitialData: (callback) => ipcRenderer.on('initial-data', (_event, value) => callback(value)),
|
||||
|
||||
// [新增] 字体下载进度监听
|
||||
onFontDownloadProgress: (callback) => ipcRenderer.on('font-download-progress', (_event, value) => callback(value)),
|
||||
getLanguageConfig: () => ipcRenderer.invoke('get-language-config'),
|
||||
saveLanguageConfig: (lang) => ipcRenderer.invoke('save-language-config', lang),
|
||||
saveTranslatedLanguagePack: (langCode, translatedPack) => ipcRenderer.invoke('save-translated-language-pack', langCode, translatedPack),
|
||||
requestAdminRelaunch: () => ipcRenderer.invoke('check-and-relaunch-as-admin'),
|
||||
|
||||
minimizeWindow: () => ipcRenderer.send('window-minimize'),
|
||||
maximizeWindow: () => ipcRenderer.send('window-maximize'),
|
||||
closeWindow: () => ipcRenderer.send('window-close'),
|
||||
relaunchApp: () => ipcRenderer.send('relaunch-app'),
|
||||
|
||||
openAcknowledgementsWindow: (theme, versions) => ipcRenderer.send('open-acknowledgements-window', theme, versions),
|
||||
closeCurrentWindow: () => ipcRenderer.send('close-current-window'),
|
||||
|
||||
openSecretWindow: (theme) => ipcRenderer.send('open-secret-window', theme),
|
||||
openToolWindow: (viewName, toolId, theme) => ipcRenderer.send('open-tool-window', viewName, toolId, theme),
|
||||
secretWindowMinimize: () => ipcRenderer.send('secret-window-minimize'),
|
||||
secretWindowMaximize: () => ipcRenderer.send('secret-window-maximize'),
|
||||
|
||||
logAction: (logData) => ipcRenderer.invoke('log-action', logData),
|
||||
getLogs: (filterDate) => ipcRenderer.invoke('get-logs', filterDate),
|
||||
clearLogs: () => ipcRenderer.invoke('clear-logs'),
|
||||
getTrafficStats: () => ipcRenderer.invoke('get-traffic-stats'),
|
||||
addTraffic: (bytes) => ipcRenderer.invoke('add-traffic', bytes),
|
||||
reportTraffic: (bytes) => ipcRenderer.send('report-traffic', bytes),
|
||||
|
||||
getAppVersion: () => ipcRenderer.invoke('get-app-version'),
|
||||
|
||||
checkUpdates: () => ipcRenderer.invoke('check-updates'),
|
||||
downloadUpdate: (url) => ipcRenderer.invoke('download-update', url),
|
||||
cancelDownload: () => ipcRenderer.invoke('cancel-download'),
|
||||
onDownloadProgress: (callback) => ipcRenderer.on('download-progress', (_event, value) => callback(value)),
|
||||
onNetworkSpeedUpdate: (callback) => ipcRenderer.on('network-speed-update', (_event, value) => callback(value)),
|
||||
|
||||
// [新增] 安装更新接口
|
||||
installUpdate: (filePath) => ipcRenderer.invoke('install-update', filePath),
|
||||
|
||||
openFile: (filePath) => ipcRenderer.invoke('open-file', filePath),
|
||||
showItemInFolder: (filePath) => ipcRenderer.invoke('show-item-in-folder', filePath),
|
||||
openExternalLink: (url) => ipcRenderer.invoke('open-external-link', url),
|
||||
|
||||
saveMedia: (data) => ipcRenderer.invoke('save-media', data),
|
||||
|
||||
setTheme: (theme) => ipcRenderer.invoke('set-theme', theme),
|
||||
setGlobalVolume: (volume) => ipcRenderer.invoke('set-global-volume'),
|
||||
selectBackgroundImage: () => ipcRenderer.invoke('select-background-image'),
|
||||
clearBackgroundImage: () => ipcRenderer.invoke('clear-background-image'),
|
||||
setBackgroundOpacity: (opacity) => ipcRenderer.invoke('set-background-opacity'),
|
||||
setCardOpacity: (opacity) => ipcRenderer.invoke('set-card-opacity'),
|
||||
|
||||
getSystemInfo: () => ipcRenderer.invoke('get-system-info'),
|
||||
getMemoryUpdate: () => ipcRenderer.invoke('get-memory-update'),
|
||||
getRealtimeStats: () => ipcRenderer.invoke('get-realtime-stats'),
|
||||
getGpuStats: () => ipcRenderer.invoke('get-gpu-stats'),
|
||||
getTrafficHistory: () => ipcRenderer.invoke('get-traffic-history'),
|
||||
|
||||
getCachedIcon: (toolId, url) => ipcRenderer.invoke('get-cached-icon', toolId, url),
|
||||
// [新增] 字体下载接口
|
||||
downloadFont: (data) => ipcRenderer.invoke('download-font', data),
|
||||
|
||||
compressFiles: (data) => ipcRenderer.invoke('compress-files', data),
|
||||
decompressFile: (data) => ipcRenderer.invoke('decompress-file', data),
|
||||
onArchiveProgress: (callback) => ipcRenderer.on('archive-progress', (_event, value) => callback(value)),
|
||||
onArchiveLog: (callback) => ipcRenderer.on('archive-log', (_event, value) => callback(value)),
|
||||
|
||||
launchSystemTool: (command) => ipcRenderer.send('launch-system-tool', command),
|
||||
showConfirmationDialog: (options) => ipcRenderer.invoke('show-confirmation-dialog', options),
|
||||
checkSecretAccess: () => ipcRenderer.invoke('check-secret-access'),
|
||||
recordSecretFailure: () => ipcRenderer.invoke('record-secret-failure'),
|
||||
resetSecretAttempts: () => ipcRenderer.invoke('reset-secret-attempts'),
|
||||
checkAndRelaunchAsAdmin: () => ipcRenderer.invoke('check-and-relaunch-as-admin'),
|
||||
requestNewWindow: (url, options) => ipcRenderer.send('request-new-window', url, options),
|
||||
checkUserAgreement: () => ipcRenderer.invoke('check-user-agreement'),
|
||||
confirmUserAgreement: () => ipcRenderer.invoke('confirm-user-agreement'),
|
||||
selectDirectory: () => ipcRenderer.invoke('select-directory'),
|
||||
downloadResourceAtomic: (data) => ipcRenderer.invoke('download-resource-atomic', data),
|
||||
downloadFileDirect: (data) => ipcRenderer.invoke('download-file-direct', data),
|
||||
cleanEmptyDirs: (path) => ipcRenderer.invoke('clean-empty-dirs', path),
|
||||
setConfigKey: (key, value) => ipcRenderer.invoke('set-config-key', { key, value }),
|
||||
openDownloadWindow: (url) => ipcRenderer.invoke('open-download-window', url),
|
||||
calculateHash: (buffer, algorithm) => ipcRenderer.invoke('calculate-hash', buffer, algorithm),
|
||||
|
||||
// [重构] 接口健康度校验 API
|
||||
getApiHealthStatus: (apiId) => ipcRenderer.invoke('get-api-health-status', apiId),
|
||||
recordApiCall: (callData) => ipcRenderer.invoke('record-api-call', callData),
|
||||
recordApiHealth: (healthData) => ipcRenderer.invoke('record-api-health', healthData),
|
||||
getApiReservations: (category) => ipcRenderer.invoke('get-api-reservations', category),
|
||||
registerApiReservation: (reservation) => ipcRenderer.invoke('register-api-reservation', reservation),
|
||||
updateApiReservation: (apiId, updates) => ipcRenderer.invoke('update-api-reservation', apiId, updates),
|
||||
|
||||
// [重构] 工具健康检查数据库操作 API
|
||||
recordToolHealthCheckResult: (resultData) => ipcRenderer.invoke('record-tool-health-check-result', resultData),
|
||||
getLatestToolHealthCheckResult: (toolId) => ipcRenderer.invoke('get-latest-tool-health-check-result', toolId),
|
||||
getToolHealthCheckHistory: (toolId, limit) => ipcRenderer.invoke('get-tool-health-check-history', toolId, limit),
|
||||
getToolHealthCheckResultsByDate: (checkDate) => ipcRenderer.invoke('get-tool-health-check-results-by-date', checkDate),
|
||||
getLastHealthCheckDate: () => ipcRenderer.invoke('get-last-health-check-date'),
|
||||
shouldForceHealthCheck: (days) => ipcRenderer.invoke('should-force-health-check', days),
|
||||
saveToolHealthCheckSummary: (summaryData) => ipcRenderer.invoke('save-tool-health-check-summary', summaryData),
|
||||
getToolHealthCheckSummary: (checkDate) => ipcRenderer.invoke('get-tool-health-check-summary', checkDate),
|
||||
getAllToolHealthCheckSummaries: (limit) => ipcRenderer.invoke('get-all-tool-health-check-summaries', limit),
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user