Skip to content

Commit bc73a72

Browse files
committed
fix(file-manager): persist folder and view in URL so refresh keeps current location
- Add updateUrlFromState() and call it from navigateToFolder and switchView - Use goto(..., { replaceState: true }) with view and folderId query params - Existing onMount already reads view and folderId from URL so refresh restores state
1 parent 0d4a4d7 commit bc73a72

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

  • platforms/file-manager/src/routes/(protected)/files

platforms/file-manager/src/routes/(protected)/files/+page.svelte

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -705,8 +705,17 @@
705705
}
706706
}
707707
708+
function updateUrlFromState() {
709+
const params = new URLSearchParams();
710+
if (currentView === "shared") params.set("view", "shared");
711+
if (currentFolderId) params.set("folderId", currentFolderId);
712+
const query = params.toString();
713+
goto(query ? `/files?${query}` : "/files", { replaceState: true });
714+
}
715+
708716
async function navigateToFolder(folderId: string | null) {
709717
currentFolderId = folderId;
718+
updateUrlFromState();
710719
await loadFiles();
711720
await updateBreadcrumbs();
712721
}
@@ -715,6 +724,7 @@
715724
if (currentView === view) return; // Don't reload if already on this view
716725
currentView = view;
717726
currentFolderId = null; // Reset to root when switching views
727+
updateUrlFromState();
718728
await loadFiles(); // Reload files when switching views
719729
await updateBreadcrumbs(); // Update breadcrumbs with correct root name
720730
}

0 commit comments

Comments
 (0)