mirror of
https://github.com/farion1231/cc-switch.git
synced 2026-07-28 16:56:16 +08:00
feat(workspace): add full-text search for daily memory files
Add backend search command that performs case-insensitive matching across all daily memory files, supporting both date and content queries. Frontend includes animated search bar (⌘F), debounced input, snippet display with match count badge, and search state preservation across edits.
This commit is contained in:
@@ -8,6 +8,15 @@ export interface DailyMemoryFileInfo {
|
||||
preview: string;
|
||||
}
|
||||
|
||||
export interface DailyMemorySearchResult {
|
||||
filename: string;
|
||||
date: string;
|
||||
sizeBytes: number;
|
||||
modifiedAt: number;
|
||||
snippet: string;
|
||||
matchCount: number;
|
||||
}
|
||||
|
||||
export const workspaceApi = {
|
||||
async readFile(filename: string): Promise<string | null> {
|
||||
return invoke<string | null>("read_workspace_file", { filename });
|
||||
@@ -32,4 +41,12 @@ export const workspaceApi = {
|
||||
async deleteDailyMemoryFile(filename: string): Promise<void> {
|
||||
return invoke<void>("delete_daily_memory_file", { filename });
|
||||
},
|
||||
|
||||
async searchDailyMemoryFiles(
|
||||
query: string,
|
||||
): Promise<DailyMemorySearchResult[]> {
|
||||
return invoke<DailyMemorySearchResult[]>("search_daily_memory_files", {
|
||||
query,
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user