mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-03-10 08:09:23 -04:00

This commit introduces support for exporting a KeePassXC database in HTML format via the CLI tool. The key changes include: - Refactoring HtmlExporter: - Moved HtmlExporter to the format directory and made its API compatible with CsvExporter. - Since the original HtmlExporter had a direct dependency on the gui/Icons functions and indirect dependencies on the gui/DatabaseIcons class, only the non-GUI parts were moved to format/HtmlExporter. - All icon-related functionality was encapsulated in a new child class, gui/HtmlGuiExporter. - The gui/HtmlGuiExporter retains the original functionality of the HtmlExporter class. - The format/HtmlExporter now generates HTML export without icons. Adding icon support to format/HtmlExporter would require moving icon management logic to the core, which could have broader implications. - CLI integration: - Updated cli/Export to use format/HtmlExporter. - GUI Integration: - Updated gui/export/ExportDialog to use gui/HtmlGuiExporter. - Build System Updates: - Updated CMakeLists.txt to build HtmlExporter as part of core_SOURCES and HtmlGuiExporter as part of gui_SOURCES. - Testing: - Updated TestCli to automatically verify the output of the HTML export. Signed-off-by: AdriandMartin <adriandmartin@protonmail.com>