()
| 13 | ) {} |
| 14 | |
| 15 | async load(): Promise<void> { |
| 16 | try { |
| 17 | const content = await this.app.vault.adapter.read(this.getMappingPath()); |
| 18 | const data: FileMappingData = JSON.parse(content); |
| 19 | |
| 20 | const validation = DataValidator.validateFileMappingData(data); |
| 21 | if (!validation.valid) { |
| 22 | console.warn('文件映射数据验证失败:', validation.errors); |
| 23 | return; |
| 24 | } |
| 25 | |
| 26 | this.fileMapping = new Map(Object.entries(data.mapping)); |
| 27 | } catch { |
| 28 | this.fileMapping = new Map(); |
| 29 | } |
| 30 | } |
| 31 | |
| 32 | async save(): Promise<void> { |
| 33 | const data: FileMappingData = { |
no test coverage detected