v1.0.4
✨ 设置页重构:恢复自定义Tab分页
-
移除声明式设置API,恢复直接Tab分页UI
- 移除
getSettingDefinitions()/getControlValue()/setControlValue()方法 - 移除
SettingPage/SettingDefinitionItem导入 - 移除
MainSettingPage/PresetsSettingPage/ImportExportSettingPage子类 - 所有Tab分页UI直接在
SymbolStripperSettingTab.display()中渲染 - 点击插件设置直接显示Tab分页界面,无多余跳转层
- 移除
-
Tab分页结构
- 常规:右键菜单、跟随栏、位置九宫格、剔除刷、语言切换
- 预设:使用说明、筛选框、可折叠预设列表、添加按钮
- 导入/导出:JSON导出/导入
✅ 审核合规修复
-
修复 Warning: prefer-create-el
- 导出:
document.createElement('a')→containerEl.createDiv({cls:'sr-hidden'}).createEl('a', {attr:{...}}) - 导入:
document.createElement('input')→containerEl.createDiv({cls:'sr-hidden'}).createEl('input', {type:'file', attr:{...}})
- 导出:
-
修复 Warning: 不安全的any类型
catch(e: any)→catch(e: unknown)+instanceof Error类型守卫
✨ Settings Page Refactor: Restored Custom Tab Navigation
-
Removed declarative settings API, restored direct Tab navigation UI
- Removed
getSettingDefinitions()/getControlValue()/setControlValue()methods - Removed
SettingPage/SettingDefinitionItemimports - Removed
MainSettingPage/PresetsSettingPage/ImportExportSettingPagesubclasses - All Tab navigation UI rendered directly in
SymbolStripperSettingTab.display() - Clicking plugin settings shows Tab interface directly, no extra navigation layer
- Removed
-
Tab structure
- General: context menu, following toolbar, position grid, eraser brush, language
- Presets: usage guide, filter, collapsible preset list, add button
- Import/Export: JSON export/import
✅ Review Compliance Fixes
-
Fixed Warning: prefer-create-el
- Export:
document.createElement('a')→containerEl.createDiv({cls:'sr-hidden'}).createEl('a', {attr:{...}}) - Import:
document.createElement('input')→containerEl.createDiv({cls:'sr-hidden'}).createEl('input', {type:'file', attr:{...}})
- Export:
-
Fixed Warning: unsafe any types
catch(e: any)→catch(e: unknown)+instanceof Errortype guard
Full Changelog: v1.0.3...v1.0.4