dev-1.7.0 #294

Merged
ZacharyZcR merged 73 commits from main into dev-1.7.0 2025-09-25 04:56:32 +00:00
2 changed files with 16 additions and 2 deletions
Showing only changes of commit 36ae41a4f1 - Show all commits
@@ -200,16 +200,23 @@ export function FileWindow({
// Check if file not found (common error messages from cat command) // Check if file not found (common error messages from cat command)
const errorMessage = errorData?.error || error.message || "Unknown error"; const errorMessage = errorData?.error || error.message || "Unknown error";
const isFileNotFound = const isFileNotFound =
(error as any).isFileNotFound ||
errorData?.fileNotFound || errorData?.fileNotFound ||
error.response?.status === 404 || error.response?.status === 404 ||
errorMessage.includes("File not found") ||
errorMessage.includes("No such file or directory") || errorMessage.includes("No such file or directory") ||
errorMessage.includes("cannot access") || errorMessage.includes("cannot access") ||
errorMessage.includes("not found"); errorMessage.includes("not found") ||
errorMessage.includes("Resource not found");
if (isFileNotFound && onFileNotFound) { if (isFileNotFound && onFileNotFound) {
// Notify parent component about the missing file for cleanup // Notify parent component about the missing file for cleanup
onFileNotFound(file); onFileNotFound(file);
toast.error(t("fileManager.fileNotFoundAndRemoved", { name: file.name })); toast.error(t("fileManager.fileNotFoundAndRemoved", { name: file.name }));
// Close this window since the file doesn't exist
closeWindow(windowId);
return; // Exit early to prevent showing empty editor
} else { } else {
toast.error(t("fileManager.failedToLoadFile", { toast.error(t("fileManager.failedToLoadFile", {
error: errorMessage.includes("Server error occurred") ? error: errorMessage.includes("Server error occurred") ?
+8 -1
View File
@@ -1051,7 +1051,14 @@ export async function readSSHFile(
params: { sessionId, path }, params: { sessionId, path },
}); });
return response.data; return response.data;
} catch (error) { } catch (error: any) {
// Preserve fileNotFound information for 404 errors
if (error.response?.status === 404) {
const customError = new Error("File not found");
(customError as any).response = error.response;
(customError as any).isFileNotFound = error.response.data?.fileNotFound || true;
throw customError;
}
handleApiError(error, "read SSH file"); handleApiError(error, "read SSH file");
} }
} }