Version 1.0.1 addresses critical security concerns and code quality improvements identified during the Obsidian Community Plugin review process. This update ensures the plugin meets all Obsidian plugin development guidelines.
- 🛡️ HTML Security: Replaced all
innerHTMLusage with safe DOM API methods (textContent,createEl())- Fixed potential XSS vulnerabilities in
FrameSuggestModal.ts - Fixed HTML injection risks in
ExcalinkSettingTab.ts - All user content now safely rendered using Obsidian's DOM helpers
- Fixed potential XSS vulnerabilities in
- 🎨 CSS Refactoring: Moved all inline styles to
styles.cssfor better theme compatibility- Removed
styleproperty assignments from JavaScript - Added proper CSS classes:
.excalink-description,.excalink-plugin-info,.modal-button-container - Better integration with Obsidian themes and user customizations
- Removed
- 🚀 Console Cleanup: Significantly reduced console logging to prevent dev console pollution
- Removed excessive debug statements that were active in production
- Kept only critical error logging and user-controlled debug output
- Added
DebugLoggerutility for conditional logging based on user settings
- ✨ Best Practices: Enhanced adherence to Obsidian plugin development guidelines
- Improved security posture with safe DOM manipulation
- Better separation of concerns with CSS-based styling
- Cleaner development experience with reduced console noise
FrameSuggestModal.ts- Security fixes for DOM manipulationExcalinkSettingTab.ts- HTML security and CSS refactoringmain.ts- Console logging cleanupstyles.css- New CSS classes for moved inline stylesDebugLogger.ts- New utility for conditional logging (NEW FILE)manifest.json- Version bump to 1.0.1package.json- Version bump to 1.0.1versions.json- Added 1.0.1 compatibility entryREADME.md- Updated changelog
This update is fully backward compatible. No user action required:
- All existing settings are preserved
- Plugin functionality remains unchanged
- Visual appearance may have minor improvements due to better CSS structure
- Debug output is now controlled by the "Enable Debug Logging" setting
- Awaiting community plugin review approval
- Planning additional features based on user feedback
- Continued performance and security improvements
- All functionality tested with the security and styling changes
- No breaking changes to user workflows
- Console logging verified to be minimal in production use
Download: Available from GitHub Releases
Compatibility: Obsidian 0.15.0+