mirror of
https://github.com/hellodigua/ChatLab.git
synced 2026-10-25 17:54:34 +08:00
新增 4 位 PIN、手动锁定、启动锁定和系统闲置锁定。 新增主进程与 preload 能力、桌面端设置面板、全局锁屏覆盖层及四语言界面。 Fixes #190 Co-Authored-By: Claude <noreply@anthropic.com>
19 lines
1007 B
TypeScript
19 lines
1007 B
TypeScript
import { ipcRenderer } from 'electron'
|
|
import type { SecurityApi } from '../../shared/types'
|
|
|
|
export const securityApi: SecurityApi = {
|
|
getConfig: () => ipcRenderer.invoke('app-lock:getConfig'),
|
|
getState: () => ipcRenderer.invoke('app-lock:getState'),
|
|
lock: () => ipcRenderer.invoke('app-lock:lock'),
|
|
unlock: (password) => ipcRenderer.invoke('app-lock:unlock', password),
|
|
setPassword: (password) => ipcRenderer.invoke('app-lock:setPassword', password),
|
|
changePassword: (oldPassword, newPassword) => ipcRenderer.invoke('app-lock:changePassword', oldPassword, newPassword),
|
|
resetPassword: () => ipcRenderer.invoke('app-lock:resetPassword'),
|
|
updateConfig: (updates) => ipcRenderer.invoke('app-lock:updateConfig', updates),
|
|
onLockStateChanged: (callback) => {
|
|
const handler = (_event: Electron.IpcRendererEvent, locked: boolean) => callback(locked)
|
|
ipcRenderer.on('app-lock-state-changed', handler)
|
|
return () => ipcRenderer.removeListener('app-lock-state-changed', handler)
|
|
},
|
|
}
|