diff --git a/electron/file-scan/file-scan-ipc.js b/electron/file-scan/file-scan-ipc.js
index 10a4568..f388001 100644
--- a/electron/file-scan/file-scan-ipc.js
+++ b/electron/file-scan/file-scan-ipc.js
@@ -2,7 +2,7 @@ const { ipcMain } = require("electron");
const Nucleus = require("nucleus-nodejs");
const ipcTypes = require("../../src/ipc.types");
const { ImportJob } = require("../decoder/decoder");
-const { GetListOfEstimates } = require("./file-scan");
+const { GetListOfEstimates, DeleteAllEms } = require("./file-scan");
ipcMain.on(
ipcTypes.default.fileScan.toMain.scanFilePaths,
@@ -22,3 +22,16 @@ ipcMain.on(
await ImportJob(filePath);
}
);
+
+ipcMain.on(
+ ipcTypes.default.fileScan.toMain.deleteAllEms,
+ async (event, filePath) => {
+ Nucleus.track("DELETE_ALLEMS");
+ await DeleteAllEms();
+ const ret = await GetListOfEstimates();
+ event.reply(
+ ipcTypes.default.fileScan.toRenderer.scanFilePathsResponse,
+ ret
+ );
+ }
+);
diff --git a/electron/file-scan/file-scan.js b/electron/file-scan/file-scan.js
index 17cf699..1b17158 100644
--- a/electron/file-scan/file-scan.js
+++ b/electron/file-scan/file-scan.js
@@ -6,6 +6,7 @@ const fsPromises = fs.promises;
const _ = require("lodash");
const { DecodeEstimate } = require("../decoder/decoder");
const Nucleus = require("nucleus-nodejs");
+const { format } = require("path");
async function GetListOfEstimates() {
Nucleus.track("SCAN_ALL_ESTIMATES");
@@ -42,4 +43,32 @@ async function GetEnvFiles() {
return allFilePaths;
}
+async function DeleteAllEms() {
+ try {
+ const filePaths = store.get("filePaths");
+ const allFilePaths = [];
+ await Promise.all(
+ filePaths.map(async (fp) => {
+ const allFilesinDir = await fsPromises.readdir(fp);
+
+ allFilesinDir.map((envFileName) => {
+ allFilePaths.push(path.join(fp, envFileName));
+ return null;
+ });
+ })
+ );
+
+ await Promise.all(
+ allFilePaths.map(async (file) => {
+ await fsPromises.unlink(file);
+ })
+ );
+
+ return true;
+ } catch (error) {
+ return false;
+ }
+}
+
exports.GetListOfEstimates = GetListOfEstimates;
+exports.DeleteAllEms = DeleteAllEms
\ No newline at end of file
diff --git a/src/components/atoms/delete-all-ems/delete-all-ems.atom.jsx b/src/components/atoms/delete-all-ems/delete-all-ems.atom.jsx
new file mode 100644
index 0000000..6d39ffd
--- /dev/null
+++ b/src/components/atoms/delete-all-ems/delete-all-ems.atom.jsx
@@ -0,0 +1,17 @@
+import { Button, Popconfirm } from "antd";
+import React from "react";
+import ipcTypes from "../../../ipc.types";
+
+const { ipcRenderer } = window;
+export default function DeleteAllEmsAtom() {
+ return (
+