feat(recall): IPC + preload + InboxApi — 5 channels (#6 v0.2.3)
- ipcMain.handle: list/markOpened/dismiss/emitShown/emitSnoozed - preload inboxApi: 5 entries (ipcRenderer.invoke) - shared/types InboxApi: 5 method signatures Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -136,6 +136,12 @@ export function registerInboxApi(deps: InboxIpcDeps): void {
|
|||||||
|
|
||||||
ipcMain.handle('inbox:retryAllFailed', async () => deps.capture.retryAllFailed());
|
ipcMain.handle('inbox:retryAllFailed', async () => deps.capture.retryAllFailed());
|
||||||
ipcMain.handle('inbox:failedCount', () => deps.repo.countFailed());
|
ipcMain.handle('inbox:failedCount', () => deps.repo.countFailed());
|
||||||
|
|
||||||
|
ipcMain.handle('inbox:listRecallCandidate', () => deps.capture.listRecallCandidate());
|
||||||
|
ipcMain.handle('inbox:markRecallOpened', (_e, id: string) => deps.capture.markRecallOpened(id));
|
||||||
|
ipcMain.handle('inbox:dismissRecall', (_e, id: string) => deps.capture.dismissRecall(id));
|
||||||
|
ipcMain.handle('inbox:emitRecallShown', (_e, id: string) => deps.capture.emitRecallShown(id));
|
||||||
|
ipcMain.handle('inbox:emitRecallSnoozed', (_e, id: string) => deps.capture.emitRecallSnoozed(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
export function pushNoteUpdated(getWin: () => BrowserWindow | null, note: Note): void {
|
export function pushNoteUpdated(getWin: () => BrowserWindow | null, note: Note): void {
|
||||||
|
|||||||
@@ -39,7 +39,12 @@ const api: InklingApi = {
|
|||||||
return () => ipcRenderer.off('ollama:status', listener);
|
return () => ipcRenderer.off('ollama:status', listener);
|
||||||
},
|
},
|
||||||
retryAllFailed: () => ipcRenderer.invoke('inbox:retryAllFailed'),
|
retryAllFailed: () => ipcRenderer.invoke('inbox:retryAllFailed'),
|
||||||
getFailedCount: () => ipcRenderer.invoke('inbox:failedCount')
|
getFailedCount: () => ipcRenderer.invoke('inbox:failedCount'),
|
||||||
|
listRecallCandidate: () => ipcRenderer.invoke('inbox:listRecallCandidate'),
|
||||||
|
markRecallOpened: (id: string) => ipcRenderer.invoke('inbox:markRecallOpened', id),
|
||||||
|
dismissRecall: (id: string) => ipcRenderer.invoke('inbox:dismissRecall', id),
|
||||||
|
emitRecallShown: (id: string) => ipcRenderer.invoke('inbox:emitRecallShown', id),
|
||||||
|
emitRecallSnoozed: (id: string) => ipcRenderer.invoke('inbox:emitRecallSnoozed', id)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -84,6 +84,11 @@ export interface InboxApi {
|
|||||||
onOllamaStatus(cb: (status: { ok: boolean; reason?: string }) => void): () => void;
|
onOllamaStatus(cb: (status: { ok: boolean; reason?: string }) => void): () => void;
|
||||||
retryAllFailed(): Promise<{ count: number }>;
|
retryAllFailed(): Promise<{ count: number }>;
|
||||||
getFailedCount(): Promise<number>;
|
getFailedCount(): Promise<number>;
|
||||||
|
listRecallCandidate(): Promise<Note | null>;
|
||||||
|
markRecallOpened(id: string): Promise<{ note: Note }>;
|
||||||
|
dismissRecall(id: string): Promise<{ note: Note }>;
|
||||||
|
emitRecallShown(id: string): Promise<void>;
|
||||||
|
emitRecallSnoozed(id: string): Promise<void>;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface InklingApi {
|
export interface InklingApi {
|
||||||
|
|||||||
Reference in New Issue
Block a user