From 10d2fc8b8f1337268d2fdc5c8333863d13c22472 Mon Sep 17 00:00:00 2001 From: Amit Haridas Date: Wed, 4 Mar 2026 16:35:56 +0530 Subject: [PATCH] fix: resolve lint errors for v4 release - Fix duplicate editorContainer declaration in renderer.js - Add missing browser globals to eslint config (prompt, FileReader, etc.) - Add global object for Jest test setup - Replace path.basename with portable string split in logo preview --- eslint.config.js | 22 ++++++++++++++++++++++ src/renderer.js | 10 +++++----- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/eslint.config.js b/eslint.config.js index fcb2039..c0e1ef0 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -38,10 +38,30 @@ module.exports = [ document: 'readonly', localStorage: 'readonly', alert: 'readonly', + prompt: 'readonly', + confirm: 'readonly', Event: 'readonly', CustomEvent: 'readonly', HTMLElement: 'readonly', MutationObserver: 'readonly', + TextEncoder: 'readonly', + FileReader: 'readonly', + requestAnimationFrame: 'readonly', + cancelAnimationFrame: 'readonly', + navigator: 'readonly', + location: 'readonly', + fetch: 'readonly', + URL: 'readonly', + Blob: 'readonly', + Image: 'readonly', + DragEvent: 'readonly', + ClipboardEvent: 'readonly', + KeyboardEvent: 'readonly', + MouseEvent: 'readonly', + NodeList: 'readonly', + HTMLInputElement: 'readonly', + HTMLTextAreaElement: 'readonly', + getComputedStyle: 'readonly', // Electron electronAPI: 'readonly', // Libraries @@ -49,6 +69,8 @@ module.exports = [ DOMPurify: 'readonly', hljs: 'readonly', mermaid: 'readonly', + // Node.js global object + global: 'writable', // Jest jest: 'readonly', describe: 'readonly', diff --git a/src/renderer.js b/src/renderer.js index 91b76e4..5e1f1c6 100644 --- a/src/renderer.js +++ b/src/renderer.js @@ -1355,11 +1355,11 @@ document.addEventListener('DOMContentLoaded', () => { }); // Initialize CodeMirror for the initial tab (tab 1) - const editorContainer = document.getElementById('editor-cm-1'); - if (editorContainer) { + const initialEditorContainer = document.getElementById('editor-cm-1'); + if (initialEditorContainer) { const tab = tabManager.tabs.get(1); const isDark = document.body.className.includes('dark'); - tab.editorView = createEditor(editorContainer, { + tab.editorView = createEditor(initialEditorContainer, { content: tab.content, onChange: (newContent) => { tab.content = newContent; @@ -3218,13 +3218,13 @@ ipcRenderer.on('header-footer-settings-data', (event, settings) => { // Logo previews if (settings.header.logo) { - document.getElementById('header-logo-preview').textContent = path.basename(settings.header.logo); + document.getElementById('header-logo-preview').textContent = settings.header.logo.split(/[\\/]/).pop(); } else { document.getElementById('header-logo-preview').textContent = ''; } if (settings.footer.logo) { - document.getElementById('footer-logo-preview').textContent = path.basename(settings.footer.logo); + document.getElementById('footer-logo-preview').textContent = settings.footer.logo.split(/[\\/]/).pop(); } else { document.getElementById('footer-logo-preview').textContent = ''; }