MCPcopy Create free account
hub / github.com/error311/FileRise / refreshVisibleFolderForToolResult

Function refreshVisibleFolderForToolResult

public/js/aiChat.js:1194–1261  ·  view source on GitHub ↗
(tool, ws)

Source from the content-addressed store, hash-verified

1192 };
1193
1194 const refreshVisibleFolderForToolResult = (tool, ws) => {
1195 if (!tool || typeof tool !== 'object') return;
1196 const result = (tool.result && typeof tool.result === 'object') ? tool.result : null;
1197 if (!result || !result.ok) return;
1198
1199 const op = String(tool.operation || '').toLowerCase();
1200 const mutatingOps = new Set([
1201 'create_file',
1202 'create_folder',
1203 'delete_files',
1204 'copy_files',
1205 'move_files',
1206 'rename_file',
1207 'delete_folder',
1208 'move_folder',
1209 'move_folders',
1210 'save_file_tag'
1211 ]);
1212 if (!mutatingOps.has(op)) return;
1213
1214 const activeFolder = getActiveFolder();
1215 const activeSourceId = getActiveSourceId();
1216 const wsSourceId = normalizeSourceId((ws && typeof ws === 'object') ? ws.sourceId : 'local');
1217 if (activeSourceId !== wsSourceId) return;
1218
1219 const isCurrentFolder = (folder) => normalizeFolderPath(folder) === activeFolder;
1220 let refreshFolder = '';
1221
1222 if (op === 'create_file' || op === 'delete_files' || op === 'rename_file' || op === 'save_file_tag') {
1223 if (isCurrentFolder(result.folder || 'root')) {
1224 refreshFolder = activeFolder;
1225 }
1226 } else if (op === 'create_folder') {
1227 const parent = normalizeFolderPath(result.parent || 'root');
1228 if (activeFolder === parent) {
1229 refreshFolder = activeFolder;
1230 }
1231 } else if (op === 'copy_files' || op === 'move_files') {
1232 const src = normalizeFolderPath(result.source || 'root');
1233 const dst = normalizeFolderPath(result.destination || 'root');
1234 if (activeFolder === src || activeFolder === dst) {
1235 refreshFolder = activeFolder;
1236 }
1237 } else if (op === 'delete_folder') {
1238 const deleted = normalizeFolderPath(result.folder || '');
1239 if (deleted !== 'root' && (activeFolder === deleted || activeFolder.startsWith(`${deleted}/`))) {
1240 refreshFolder = parentFolderPath(deleted);
1241 window.currentFolder = refreshFolder;
1242 } else if (activeFolder === parentFolderPath(deleted)) {
1243 refreshFolder = activeFolder;
1244 }
1245 } else if (op === 'move_folder' || op === 'move_folders') {
1246 const source = normalizeFolderPath(result.source || '');
1247 const target = normalizeFolderPath(result.target || '');
1248 if (
1249 source !== 'root'
1250 && (activeFolder === source || activeFolder.startsWith(`${source}/`))
1251 ) {

Callers 1

sendMessageFunction · 0.85

Calls 7

getActiveFolderFunction · 0.85
isCurrentFolderFunction · 0.85
parentFolderPathFunction · 0.85
refreshFolderViewFunction · 0.85
getActiveSourceIdFunction · 0.70
normalizeSourceIdFunction · 0.70
normalizeFolderPathFunction · 0.70

Tested by

no test coverage detected