From 288ff0d18c048525bc05336a5ad1ce53c6f519b6 Mon Sep 17 00:00:00 2001
From: Sean Hatfield <seanhatfield5@gmail.com>
Date: Mon, 22 Jan 2024 13:03:05 -0800
Subject: [PATCH] fix vector cache not deleting cache after unembedding items
 with folders (#630)

---
 collector/utils/extensions/YoutubeTranscript/index.js         | 1 +
 .../Modals/MangeWorkspace/Documents/Directory/index.jsx       | 3 ++-
 server/utils/files/purgeDocument.js                           | 4 +++-
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/collector/utils/extensions/YoutubeTranscript/index.js b/collector/utils/extensions/YoutubeTranscript/index.js
index 7e88bb7a0..22540dbb0 100644
--- a/collector/utils/extensions/YoutubeTranscript/index.js
+++ b/collector/utils/extensions/YoutubeTranscript/index.js
@@ -88,6 +88,7 @@ async function loadYouTubeTranscript({ url }) {
     data: {
       title: metadata.title,
       author: metadata.author,
+      destination: outFolder,
     },
   };
 }
diff --git a/frontend/src/components/Modals/MangeWorkspace/Documents/Directory/index.jsx b/frontend/src/components/Modals/MangeWorkspace/Documents/Directory/index.jsx
index 8a140a410..af8ae32ab 100644
--- a/frontend/src/components/Modals/MangeWorkspace/Documents/Directory/index.jsx
+++ b/frontend/src/components/Modals/MangeWorkspace/Documents/Directory/index.jsx
@@ -91,7 +91,8 @@ export default function Directory({
             ) : !!files.items ? (
               files.items.map(
                 (item, index) =>
-                  item.type === "folder" && (
+                  (item.name === "custom-documents" ||
+                    (item.type === "folder" && item.items.length > 0)) && (
                     <FolderRow
                       key={index}
                       item={item}
diff --git a/server/utils/files/purgeDocument.js b/server/utils/files/purgeDocument.js
index 7f32bd427..b0c295ab9 100644
--- a/server/utils/files/purgeDocument.js
+++ b/server/utils/files/purgeDocument.js
@@ -47,7 +47,9 @@ async function purgeFolder(folderName = null) {
 
   const filenames = fs
     .readdirSync(subFolderPath)
-    .map((file) => path.join(subFolderPath, file));
+    .map((file) =>
+      path.join(subFolderPath, file).replace(documentsPath + "/", "")
+    );
   const workspaces = await Workspace.where();
 
   const purgePromises = [];