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();
+});