MCPcopy Create free account
hub / github.com/CatMuse/HiNote / saveFileHighlights

Method saveFileHighlights

src/storage/HiNoteDataManager.ts:111–130  ·  view source on GitHub ↗

* 保存文件的高亮数据 * @param filePath 文件路径 * @param highlights 高亮数组

(filePath: string, highlights: HiNote[])

Source from the content-addressed store, hash-verified

109 * @param highlights 高亮数组
110 */
111 async saveFileHighlights(filePath: string, highlights: HiNote[]): Promise<void> {
112 const storagePath = this.getStoragePathForFile(filePath);
113
114 // 转换为优化格式
115 const optimizedHighlights: { [id: string]: OptimizedHighlight } = {};
116
117 for (const highlight of highlights) {
118 if (!highlight.id) continue; // 跳过没有 ID 的高亮
119 const optimized = convertToOptimizedHighlight(highlight);
120 optimizedHighlights[highlight.id] = optimized;
121 }
122
123 const data: OptimizedHighlightData = {
124 version: this.CURRENT_VERSION,
125 lastModified: Date.now(),
126 highlights: optimizedHighlights
127 };
128
129 await this.app.vault.adapter.write(storagePath, JSON.stringify(data, null, 2));
130 }
131
132 /**
133 * 删除文件的所有高亮数据

Callers

nothing calls this directly

Calls 2

getStoragePathForFileMethod · 0.95

Tested by

no test coverage detected