diff --git a/src/interface/desktop/config.html b/src/interface/desktop/config.html index 3f8e19d9..c63a2a5c 100644 --- a/src/interface/desktop/config.html +++ b/src/interface/desktop/config.html @@ -96,6 +96,9 @@
+
+ +
diff --git a/src/interface/desktop/main.js b/src/interface/desktop/main.js index 045144cc..e6524d73 100644 --- a/src/interface/desktop/main.js +++ b/src/interface/desktop/main.js @@ -317,6 +317,19 @@ async function syncData (regenerate = false) { } } +async function deleteAllFiles () { + try { + store.set('files', []); + store.set('folders', []); + pushDataToKhoj(true); + const date = new Date(); + console.log('Pushing data to Khoj at: ', date); + } catch (err) { + console.error(err); + } +} + + let firstRun = true; let win = null; const createWindow = (tab = 'chat.html') => { @@ -397,6 +410,7 @@ app.whenReady().then(() => { ipcMain.handle('syncData', (event, regenerate) => { syncData(regenerate); }); + ipcMain.handle('deleteAllFiles', deleteAllFiles); createWindow() diff --git a/src/interface/desktop/preload.js b/src/interface/desktop/preload.js index 3228fdb0..eb5a6cc2 100644 --- a/src/interface/desktop/preload.js +++ b/src/interface/desktop/preload.js @@ -45,7 +45,8 @@ contextBridge.exposeInMainWorld('hostURLAPI', { }) contextBridge.exposeInMainWorld('syncDataAPI', { - syncData: (regenerate) => ipcRenderer.invoke('syncData', regenerate) + syncData: (regenerate) => ipcRenderer.invoke('syncData', regenerate), + deleteAllFiles: () => ipcRenderer.invoke('deleteAllFiles') }) contextBridge.exposeInMainWorld('tokenAPI', { diff --git a/src/interface/desktop/renderer.js b/src/interface/desktop/renderer.js index 26765bf0..849a8293 100644 --- a/src/interface/desktop/renderer.js +++ b/src/interface/desktop/renderer.js @@ -206,3 +206,9 @@ syncForceButton.addEventListener('click', async () => { loadingBar.style.display = 'block'; await window.syncDataAPI.syncData(true); }); + +const deleteAllButton = document.getElementById('delete-all'); +deleteAllButton.addEventListener('click', async () => { + loadingBar.style.display = 'block'; + await window.syncDataAPI.deleteAllFiles(); +});