Releases: hifengzy/ima-sync
Releases · hifengzy/ima-sync
Release list
0.2.2
0.2.1
0.2.0
迁移至 declarative settings API + 修复设置页卡死
新特性
- 设置页迁移到 Obsidian 1.13.0 声明式设置 API(
getSettingDefinitions),设置项现可在 Obsidian 全局设置搜索中命中 minAppVersion升至 1.13.0
Bug 修复
- 修复设置页打开即卡死:render 回调里
setting.setDesc在 declarative 上下文触发框架 full rebuild 循环,改为setting.descEl.setText(直接 DOM) setControlValue移除多余的refreshDomState调用(框架在 Promise resolve 后自动刷新 visible/disabled)
工程改进
package.jsonverify 脚本改用--alias:obsidian=./test/mock-obsidian.ts(修复之前--external:obsidian导致测试无法运行)- 新增
normalizeControlValue单元测试(95 用例)+ SettingTab 专用 mock - 移除
test/verify-unit.mjs打包产物跟踪
Full Changelog: 0.1.4...0.2.0
0.1.4
修复 Obsidian 社区第四轮审查 Warning(constants.ts 断言多余)
Warning 修复
src/constants.ts:MediaType从 TypeScriptenum改为as const对象,移除isFolder/isNoteType中的as MediaType断言
根因说明
本轮审查的 no-unnecessary-type-assertion 与上轮的 no-unsafe-enum-comparison 构成规则两难(断言加也错、不加也错)。改用 as const 对象消除 enum 类型本身,让比较变为 number === number,同时满足两条规则。
测试
- 新增
test/verify-constants.ts单元测试,30 用例全过(覆盖isFolder/isNoteType边界) - 集成测试:
verify-frontmatter/verify-image-naming/verify-quota全通过,tsc零错误,无回归
Full Changelog: 0.1.3...0.1.4
0.1.3
修复 Obsidian 社区第三轮审查反馈(2 Error + 5 Warning)
Error
- E1
imaClient.ts: 删除无描述且已失效的eslint-disable指令 - E2
SettingTab.ts: 移除setDestructive()与getSettingDefinitions()覆写(均为@since 1.13.0API),保持minAppVersion 1.7.0兼容
Warning
- W1
imaClient.ts: 删除多余的as unknown as断言 - W2
constants.ts:isFolder/isNoteType加as MediaType断言,避免number与 enum 直接比较 - W3
SettingTab.ts:KbPickerModal回调包入void IIFE,符合(kb) => void签名 - W4 5 处
replace回调捕获组参数补string标注(htmlToMarkdown/imageDownloader/webArticle)
Full Changelog: 0.1.2...0.1.3
0.1.2
0.1.1
chore: bump version to 0.1.1 Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>