diff --git a/renderer.js b/renderer.js index 724892b..9ced0bf 100644 --- a/renderer.js +++ b/renderer.js @@ -9,6 +9,7 @@ window.addEventListener('DOMContentLoaded', async () => { const readmeBtn = document.getElementById('readmeBtn'); const initRepoBtn = document.getElementById('initRepoBtn'); const pushBtn = document.getElementById('pushBtn'); + const rewritePendingBtn = document.getElementById('rewritePendingBtn'); const panel = document.querySelector('.flex-1.p-4.overflow-y-auto'); const PAGE_SIZE = 50; @@ -107,6 +108,24 @@ window.addEventListener('DOMContentLoaded', async () => { } }); + rewritePendingBtn.addEventListener('click', async () => { + const selected = await window.electronAPI.getSelected(); + if (!selected?.path) return; + rewritePendingBtn.disabled = true; + rewritePendingBtn.textContent = 'Starting rewrite…'; + try { + const result = await window.electronAPI.rewritePendingCommits(selected.path); + if (!result?.success) { + alert('Rewrite could not start:\n' + (result?.error || 'Unknown error')); + } + } catch (err) { + alert('Rewrite could not start:\n' + (err.message || err)); + } finally { + const refreshed = await getFolderObjByPath(selected.path); + if (refreshed) await renderContent(refreshed, lastPage); + } + }); + // Drag and Drop document.body.addEventListener('dragover', e => { @@ -532,6 +551,7 @@ window.addEventListener('DOMContentLoaded', async () => { pushBtn.disabled = !isGit; pushBtn.classList.toggle('hidden', !isGit); if (!isGit) { + rewritePendingBtn.classList.add('hidden'); contentList.innerHTML = '
`
: ''
}